Docs

Get Procurement

GET /procurements/{procurementId}

GET/procurements/{procurementId}

Required Tokens

FieldTypeRequiredDescription
BearerAuthorization: Bearer <api-key>OptionalYour API key. Pass it as the Bearer token on every request.
Event tokenx-Event-TokenOptionalRun **Get Tokens** in the Authorization folder, or call `GET /Events/{eventId}/authorize` manually.

Returns one procurement with every need, its schedule, pricing breakdown, order lines and linked advance requests.

Event scoping: This endpoint does not include {eventId} in the URL. The event is determined automatically from your x-Event-Token.

Path Parameters

FieldTypeRequiredDescription
procurementIdGuidRequiredThe procurement.

Response Fields

FieldTypeDescription
idGuidProcurement.
name / descriptionstringDisplay fields.
statusstringRolled-up status.
totalCost / totalChargedecimalSum of top-level needs; component needs are counted through their parent.
groupsarray`{ id, name, notes, index }`.
resourcesarrayThe needs.
resources[].idGuidThe need.
resources[].statusstring`NeedsOrdered`, `Short`, `OnOrder` or `Excess`.
resources[].quantitydecimalQuantity needed.
resources[].groupIdGuid| nullThe group it sits in.
resources[].areaobject| null`{ id, name }`.
resources[].cloneGroupIdGuid| nullShared by needs cloned from the same source.
resources[].rateCardId / rateCardNameGuid? / stringThe need's own card.
resources[].costPerUnit / chargePerUnit / totalCost / totalChargedecimalPriced money. A composite parent's totals are the composite's.
resources[].typeobject`{ id, label, trackingType, icon, lineItemLabel }`.
resources[].attributeValuesarray`{ id, resourceAttributeId, value }`.
resources[].parentProcurementResourceIdGuid| nullSet on a composite's component need.
resources[].componentId / componentLabelGuid? / stringThe composite slot a component need fills.
resources[].allowedResourceVariantIdsGuid[]A component need's allowed variants: empty = any.
resources[].chargeReplacedByCompositeboolTrue on a component need whose parent has a composite card: its charge is not applied (totals already exclude it).
resources[].compositeCoverageobject| nullA parent's fill: `{ fulfilledUnits, openUnits, isFilled, status, perComponent[] }`.
resources[].compositeMoneyobject| nullA parent's money: `{ cost, charge, margin, isChargeDeclared, isPartial }`.
resources[].scheduleBlocksarray`{ id, type: { id, name, color, icon }, name, startDateTime, endDateTime, activityId, notes, area, collaboratorId, costAmount, chargeAmount, requests: [{ id }] }`.
resources[].costSegmentsarray`{ stateName, period, durationHours, costAmount, chargeAmount, isFallback }`.
resources[].costMinimumsarray`{ spanStart, spanEnd, costAmount, chargeAmount }`.
resources[].costModifiersarray`{ modifierId, label, value, application, costAmount, chargeAmount }`.
resources[].ruleSetsarray`{ id, name }`.
resources[].ownerGuid| nullOwning department.
resources[].isUnbilledScopeboolBought but never sold: no funded proposal line and no budget assignment.
resources[].startDateTime / endDateTimeDateTimeOffset| nullMin and max of the need's blocks.
resources[].collaboratorIdGuid| nullCollaborator context.
resources[].orderLinesarray`{ id, orderId, orderName, quantity, revisesOnEdit }`.
resources[].requestsarrayAdvance requests linked to the need: `{ id }`.
resources[].incompleteobject| null`{ missingRequired: [{ resourceAttributeId, label, pricingRole }], blocksPricing }`. Null when complete.

Error Codes

HTTP StatusDescription
404Procurement not found.