Skip to main content

Get Requisition

GET/requisitions/{id}

Summary

Returns one requisition by its id or internal nanoid, including its project, trade, requested workers, dates, status, rates, and supplier responses.

URL Parameters

NameTypeRequiredDescription
idstringYesRequisition identifier

Query Parameters

NameTypeRequiredDescription
includeStageTrackingbooleanNoInclude worker recruitment stage tracking. Only returned when this is true and the company has stage tracking enabled in company config.

Request Example

curl -X GET 'https://api.requidex.com/api/open/v1/requisitions/{id}' \
-H 'Authorization: Bearer <API_KEY>' \
-H 'Accept: application/json'

Response Fields

FieldTypeDescription
activityobjectOptional. Omitted when no activity is set.
Show child attributes
  • id string - Entity id
  • name string - Entity name
agenciesarray[object]
Show child attributes
  • id string - Agency id
  • name string - Agency name
  • offered integer - Workers offered
  • assigned integer - Workers assigned
  • dateReceived string - Date received
  • dateAccepted string - Date accepted
  • submissions array - Submitted workers
    Show child attributes
    • worker object - Submitted worker id and name
      Show child attributes
      • id string - Worker id
      • name string - Worker name
    • submittedAt string or null - Submission timestamp
    • isRejected boolean - Whether rejected
    • rejectionReason string or null - Rejection reason
approvedDatestringFinal approval timestamp when approved
approvalStagesarray[object]Approval workflow stages in order. approvedAt is an ISO 8601 timestamp for approvals recorded after stage timestamps were introduced; completed historical stages may return null.
Show child attributes
  • stage integer - Stage number
  • name string - Stage name
  • approved boolean - Whether the stage is complete
  • approvedAt string or null - Stage approval timestamp
  • approver object or null - Approver name and email
approverobject
Show child attributes
  • name string - User name
  • email string - User email address
autoAssignbooleanWhether auto-assignment is enabled for the requisition
cancellationobjectOptional. Cancellation details for a currently cancelled requisition. Omitted when unavailable.
Show child attributes
  • reason string - Cancellation reason
  • date string or null - Cancellation timestamp
  • comments string - Cancellation comments
companyobject
Show child attributes
  • id string - Entity id
  • name string - Entity name
createdAtstringCreation timestamp
endDatestringPlanned end date
idstringRequisition id
projectobject
Show child attributes
  • id string - Entity id
  • name string - Entity name
quantitynumberRequested worker quantity
referencestringRequisition reference
regionobject
Show child attributes
  • id string - Entity id
  • name string - Entity name
requestorobject
Show child attributes
  • name string - User name
  • email string - User email address
sectorobject
Show child attributes
  • id string - Entity id
  • name string - Entity name
siteobject
Show child attributes
  • id string - Entity id
  • name string - Entity name
stageTrackingarray[object]Optional. Returned only when includeStageTracking=true and the company has stage tracking enabled in company config. Agency-scoped keys only receive records for their scoped agency.
Show child attributes
  • worker object - Worker id and name
  • agency object - Agency id and name
  • submittedAt string - Worker submission timestamp
  • isRejected boolean - Whether the submitted worker was rejected
  • stage enum - Current stage (submitted, cvReviewed, interviewRequested, interviewed, offerMade, offerAccepted, offerRejected, assigned, missingCompliance)
  • stageLabel string - Human-readable current stage
  • history array[object] - Stage history entries (stage, stageLabel, at, byUserId, byName, comments)
startDatestringPlanned start date
statusenum(raised, approved, filled, cancelled, rejected)Derived requisition status
tradeobject
Show child attributes
  • id string - Entity id
  • name string - Entity name
updatedAtstringLast update timestamp

Each agencies[].submissions[] item can also include submittedBy and assignedBy objects with the responsible user's id and name. These fields are omitted when attribution is unavailable for a historical record.

Response Example (200)

{
"success": true,
"data": {
"id": "67bc36db80a1616ec3f48123",
"reference": "REQ-R1002",
"status": "cancelled",
"cancellation": {
"reason": "Project no longer proceeding",
"date": "2026-02-24T09:15:00.000Z",
"comments": "Client withdrew the requirement"
},
"quantity": 4,
"autoAssign": true,
"requestor": {
"name": "Riley Requestor",
"email": "riley.requestor@example.com"
},
"approver": {
"name": "Avery Approver",
"email": "avery.approver@example.com"
},
"approvalStages": [
{
"stage": 1,
"name": "Commercial approval",
"approved": true,
"approvedAt": "2026-02-10T10:00:00.000Z",
"approver": {
"name": "Avery Approver",
"email": "avery.approver@example.com"
}
},
{
"stage": 2,
"name": "Project approval",
"approved": false,
"approvedAt": null,
"approver": null
}
],
"company": {
"id": "67bc36db80a1616ec3f47001",
"name": "Requidex Construction Ltd"
},
"project": {
"id": "67bc36db80a1616ec3f47011",
"name": "Northern Rail Electrification"
},
"region": {
"id": "67bc36db80a1616ec3f47002",
"name": "North West"
},
"sector": {
"id": "67bc36db80a1616ec3f47003",
"name": "Rail"
},
"site": {
"id": "67bc36db80a1616ec3f47055",
"name": "Manchester Central"
},
"agencies": [
{
"id": "67bc36db80a1616ec3f47101",
"name": "Northline Labour Desk",
"offered": 1,
"assigned": 1,
"dateReceived": "2026-02-21T09:00:00.000Z",
"dateAccepted": "2026-02-21T10:00:00.000Z",
"submissions": [
{
"worker": {
"id": "67bc36db80a1616ec3f47201",
"name": "Jordan Taylor"
},
"submittedAt": "2026-02-21T11:00:00.000Z",
"isRejected": true,
"rejectionReason": "Required qualification not held",
"submittedBy": {
"id": "67bc36db80a1616ec3f47301",
"name": "Sam Recruiter"
},
"assignedBy": {
"id": "67bc36db80a1616ec3f47302",
"name": "Alex Manager"
}
}
]
},
{
"id": "67bc36db80a1616ec3f47102",
"name": "Summit Trades",
"offered": 2,
"assigned": 1,
"dateReceived": "2026-02-22T09:00:00.000Z",
"dateAccepted": "2026-02-22T10:00:00.000Z",
"submissions": [
{
"worker": {
"id": "67bc36db80a1616ec3f47202",
"name": "Alex Morgan"
},
"submittedAt": "2026-02-22T11:00:00.000Z",
"isRejected": false,
"rejectionReason": null
}
]
}
],
"trade": {
"id": "67bc36db80a1616ec3f47077",
"name": "Electrician"
},
"activity": {
"id": "67bc36db80a1616ec3f47099",
"name": "Install containment"
},
"startDate": "2026-03-01T00:00:00.000Z",
"endDate": "2026-03-31T23:59:59.999Z",
"createdAt": "2026-02-20T11:10:00.000Z",
"updatedAt": "2026-02-24T09:15:00.000Z"
}
}

MCP Tool

The MCP server exposes this operation as open_api_get_requisition with the inputs id and includeStageTracking.

Errors

HTTP StatusDescription
401Missing, invalid, revoked, or expired API key
403Forbidden due to scope or IP restrictions
404Requisition not found
405Method not allowed on Open API routes
429Rate limit exceeded
500Unexpected internal error

Submission answers

Each returned record includes submissionAnswers (an empty array when there are no applicable answers), unless omitted by list response fields selection. It contains only answers configured to display on this entity. Requisitions expose the saved submission answers, including amendments made while pending; assignments and timesheets expose the saved assignment snapshot.

Agency-scoped callers receive only answers belonging to agencies in their authenticated API key scope, even when another agency submitted the same worker. Query filters and fields selection cannot expand that scope. Company-scoped callers receive answers within their existing company and project access. Existing endpoint read scopes apply; this is read-only access.

Each answer includes:

FieldDescription
fieldId, label, fieldType, valueField identifier, captured question and type, and answer value (text, date string, selected option array, or null)
answerScopesubmission for a whole-submission answer or worker for a per-worker answer
submissionId, workerIdsSubmission batch identifier and the workers covered by the answer
agency, workerIdentifier and name objects; worker is null for whole-submission answers
displayLocationsConfigured display locations captured with the answer
submittedAt, submittedByOriginal submission timestamp and submitter identifier/name
updatedAt, updatedByLatest amendment timestamp and editor identifier/name, or null