List Assignments
/assignmentsSummary
Returns a paginated list of assignments available to the API key, with filters for company, agency, project, worker, trade, requisition, status, and dates.
The response includes supplierType (agency or umbrella) from the company connection, defaulting to agency for existing connections. Project settings do not override this classification. For umbrella suppliers, display rate types without an Agency or Umbrella prefix. Stored rateType values remain unchanged.
URL Parameters
- None
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| company | string | No | Filter by company id(s). Pass a single id or comma-separated ids. If omitted, data for all companies linked to the API key is returned. |
| page | integer | No | Page number (default 1) |
| limit | integer | No | Records per page (default 50, max 200) |
| status | enum(pending, confirmed, cancelled, completed, ended) | No | Filter by assignment status |
| project | string | No | Filter by project id(s). Pass a single id or comma-separated ids. |
| site | string | No | Filter by site id(s). Pass a single id or comma-separated ids. |
| trade | string | No | Filter by trade id(s). Pass a single id or comma-separated ids. |
| worker | string | No | Filter by worker id(s). Pass a single id or comma-separated ids. |
| agency | string | No | Filter by agency id(s). Pass a single id or comma-separated ids. |
| requisition | string | No | Filter by requisition id(s). Pass a single id or comma-separated ids. |
| query | string | No | Case-insensitive search against assignment reference, worker name/reference, and agency name |
| dateField | enum(createdAt, updatedAt, startDate, endDate, completedDate, approvedDate) | No | Date field that from/to apply to. Default: createdAt. |
| from | string | No | Date filter start (YYYY-MM-DD); applies to dateField |
| to | string | No | Date filter end (YYYY-MM-DD); applies to dateField |
| sortBy | enum(createdAt, updatedAt, assignmentRef, startDate, endDate) | No | Sort field |
| sortOrder | enum(asc, desc) | No | Sort direction |
| fields | string | No | Comma-separated list of response fields or dot-path nested fields to return |
The fields value must be an evaluated comma-separated list, such as id,reference,worker.name. Omit it to return the full response. Each entry must name a supported top-level response field, optionally followed by a dot path. Empty values, empty entries, unsupported top-level fields, repeated fields parameters, and expressions such as Fields = "id,reference" return 400 BAD_REQUEST.
page and limit must be positive integers; limits above 200 are capped at 200. Pagination offsets must be safe integers. Invalid sort fields or directions and repeated or structured scalar parameters (such as status[]=confirmed) return 400 BAD_REQUEST. Company, agency, project, site, trade, worker and requisition filters continue to accept comma-separated IDs or repeated parameters.
Request Example
- cURL
- JavaScript
- Python
- Go
curl -X GET 'https://api.requidex.com/api/open/v1/assignments' \
-H 'Authorization: Bearer <API_KEY>' \
-H 'Accept: application/json'
const response = await fetch("https://api.requidex.com/api/open/v1/assignments", {
method: "GET",
headers: {
Authorization: "Bearer <API_KEY>",
Accept: "application/json",
},
});
const json = await response.json();
import requests
response = requests.request(
'GET',
'https://api.requidex.com/api/open/v1/assignments',
headers={
'Authorization': 'Bearer <API_KEY>',
'Accept': 'application/json',
},
timeout=30,
)
print(response.json())
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://api.requidex.com/api/open/v1/assignments", nil)
req.Header.Set("Authorization", "Bearer <API_KEY>")
req.Header.Set("Accept", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
payload, _ := io.ReadAll(resp.Body)
fmt.Println(string(payload))
}
Response Fields
| Field | Type | Description |
|---|---|---|
| customFields | array[object] | Present when saved custom fields exist. Show child attributes
|
| activities | array[object] | Assignment activity history. Show child attributes
|
| agency | object | Show child attributes
|
| assignedBy | object | Returned when attribution can be recovered from the assignment's audit history. Show child attributes
|
| cancellation | object | Show child attributes
|
| clone | object | Returned when the assignment was cloned. Show child attributes
|
| company | object | Show child attributes
|
| competencyRequirements | array[object] | Returned when assignment-specific custom competency requirements are present. Show child attributes
|
| completedDate | string | Completion timestamp in ISO 8601 date-time format |
| confirmationDate | string | Confirmation timestamp in ISO 8601 date-time format, when the assignment has been confirmed |
| costCode | object | Show child attributes
|
| createdAt | string | Creation timestamp in ISO 8601 date-time format |
| customDocuments | array[object] | Applicable custom document requirements merged with uploaded assignment documents. Show child attributes
|
| endDate | string | Assignment end date in ISO 8601 date-time format |
| ended | object | Show child attributes
|
| enhancedUplifts | object | Returned when enhanced uplifts are enabled. Show child attributes
|
| id | string | Assignment id |
| kid | string | KID attachment URL |
| lodge | object | Returned when lodge details are stored on the assignment. Show child attributes
|
| lodgeApplicable | boolean | Whether lodge/accommodation is applicable |
| metaFields | array[object] | Configured assignment meta fields with resolved values. Show child attributes
|
| payType | enum(hourly, daily) | Pay type |
| project | object | Show child attributes
|
| purchaseOrder | string | Purchase order reference |
| rates | object | Show child attributes
|
| rateType | enum(cis, paye, psc) | Rate type |
| rateUplifts | object | Returned when enhanced uplifts are disabled. Show child attributes
|
| reference | string | Assignment reference |
| region | object | Show child attributes
|
| reinstatement | object | Show child attributes
|
| replacement | object | Returned when the assignment is linked to replacement data. Show child attributes
|
| requisition | object | Show child attributes
|
| sdc | object | Show child attributes
|
| sds | object | Show child attributes
|
| sector | object | Show child attributes
|
| shiftPattern | object | Show child attributes
|
| site | object | Show child attributes
|
| startDate | string | Assignment start date in ISO 8601 date-time format |
| status | enum(pending, confirmed, cancelled, completed, ended) | Assignment status |
| tag | object | Show child attributes
|
| timesheetStartDate | string | Timesheet start date in ISO 8601 date-time format |
| trade | object | Show child attributes
|
| umbrella | string | Umbrella company name |
| updatedAt | string | Last update timestamp in ISO 8601 date-time format |
| values | object | Show child attributes
|
| weeksElapsed | integer | Full weeks elapsed since confirmation or start |
| workActivity | string | Work activity name |
| rateOverrides | object | Assignment-level rate overrides, when configured. Show child attributes
|
| worker | object | Show child attributes
|
| workerDistanceToSite | number | Worker distance to site, in miles |
| workerLodgeDistanceToSite | number | Worker lodge distance to site, in miles, when lodge travel distance is available |
Response Example (200)
{
"success": true,
"data": [
{
"id": "67bc36db80a1616ec3f49001",
"reference": "A1044",
"status": "confirmed",
"payType": "hourly",
"rateType": "cis",
"confirmationDate": "2026-02-24T09:00:00.000Z",
"cancellation": null,
"reinstatement": {
"reason": "Worker returned",
"date": "2026-02-25T09:00:00.000Z",
"comments": "Assignment reopened",
"user": {
"id": "67bc36db80a1616ec3f49091",
"name": "Alex Carter"
}
},
"ended": {
"reason": "Assignment ended",
"date": "2026-03-20T17:00:00.000Z",
"comments": "Ended early",
"user": {
"id": "67bc36db80a1616ec3f49092",
"name": "Riley Moore"
}
},
"activities": [
{
"created": "2026-02-25T09:00:00.000Z",
"activityType": "assignmentReinstated",
"user": "Alex Carter",
"userId": "67bc36db80a1616ec3f49091",
"entity": {
"id": "67bc36db80a1616ec3f49001",
"name": "A1044"
},
"reason": "Worker returned",
"comments": "Assignment reopened",
"message": "Assignment reinstated by Alex C."
}
],
"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"
},
"trade": {
"id": "67bc36db80a1616ec3f47077",
"name": "Electrician"
},
"tag": {
"id": "67bc36db80a1616ec3f47088",
"name": "Rail"
},
"agency": {
"id": "67bc36db80a1616ec3f47101",
"name": "Northline Labour Desk"
},
"umbrella": "UmbrellaCo",
"worker": {
"id": "67bc36db80a1616ec3f48999",
"reference": "WK-1044",
"name": "Jordan Smith"
},
"workerDistanceToSite": 12.4,
"workerLodgeDistanceToSite": 4.8,
"requisition": {
"id": "67bc36db80a1616ec3f48123",
"reference": "REQ-R1002",
"nanoid": "req01abcde"
},
"shiftPattern": {
"m": {
"start": 8,
"end": 17,
"active": true,
"break": 30,
"night": false
},
"t": {
"start": 8,
"end": 17,
"active": true,
"break": 30,
"night": false
},
"w": {
"start": 8,
"end": 17,
"active": true,
"break": 30,
"night": false
},
"th": {
"start": 8,
"end": 17,
"active": true,
"break": 30,
"night": false
},
"f": {
"start": 8,
"end": 17,
"active": true,
"break": 30,
"night": false
},
"s": {
"start": null,
"end": null,
"active": false,
"break": null,
"night": false
},
"su": {
"start": null,
"end": null,
"active": false,
"break": null,
"night": false
}
},
"costCode": {
"name": "CC-001",
"description": "Trackside installation"
},
"replacement": {
"replacedBy": {
"id": "67bc36db80a1616ec3f49002",
"reference": "A1045"
},
"replacementFor": {
"id": "67bc36db80a1616ec3f49003",
"reference": "A0999"
},
"requisition": {
"id": "67bc36db80a1616ec3f48124",
"reference": "REQ-R1003",
"nanoid": "req02abcde"
},
"reason": "Worker unavailable",
"type": "temporary"
},
"clone": {
"date": "2026-02-18T10:15:00.000Z",
"original": {
"id": "67bc36db80a1616ec3f49000",
"reference": "A1043"
}
},
"lodge": {
"dailyAmountOverride": 58.95,
"address": {
"lineOne": "2 Lodge Lane",
"city": "Manchester",
"country": "United Kingdom",
"code": "M1 2AB"
},
"distanceMiles": 4.8,
"travel": {
"walkMinutes": 18,
"busMinutes": 12,
"carMinutes": 7,
"trainMinutes": null,
"calculatedAt": "2026-02-25T08:45:00.000Z"
}
},
"workActivity": "Install containment",
"competencyRequirements": [
{
"rule": "mandatory",
"items": [{ "name": "CSCS Gold Card" }],
"groups": [
{
"items": [{ "name": "PASMA" }, { "name": "IPAF" }]
}
]
}
],
"rates": {
"pay": 21.5,
"charge": 28.75
},
"rateOverrides": {
"markup": { "active": false, "value": 0 },
"employerCosts": { "active": true, "value": 4.25 }
},
"values": {
"pay": 3440,
"charge": 4600
},
"rateUplifts": {
"bh": 100,
"bhNw": 125,
"wdOt": 50,
"sat": 50,
"sun": 100,
"wdNw": 25,
"weNw": 40
},
"lodgeApplicable": true,
"weeksElapsed": 6,
"purchaseOrder": "PO-44321",
"sds": null,
"sdc": {
"status": "confirmed",
"attachment": "https://files.requidex.com/sdc-confirmation.pdf"
},
"kid": "https://files.requidex.com/kid.pdf",
"customDocuments": [
{
"id": "67bc36db80a1616ec3f49051",
"name": "Passport copy",
"description": "Photo page",
"required": true,
"uploadPermissions": {
"company": true,
"supplier": false
},
"attachment": "https://files.requidex.com/passport-copy.pdf",
"uploadedBy": "67bc36db80a1616ec3f49091",
"uploadedAt": "2026-02-25T10:30:00.000Z",
"expiry": "2027-02-25T00:00:00.000Z"
}
],
"metaFields": [
{
"id": "meta-support",
"title": "Support email",
"type": "dynamicField",
"value": "support@project-alpha.test",
"display": ["ui"]
}
],
"startDate": "2026-03-01T00:00:00.000Z",
"endDate": "2026-03-31T23:59:59.999Z",
"timesheetStartDate": "2026-03-03T00:00:00.000Z",
"completedDate": null,
"createdAt": "2026-02-20T11:30:00.000Z",
"updatedAt": "2026-02-21T09:15:00.000Z"
}
],
"meta": {
"page": 1,
"limit": 50,
"total": 1
}
}
MCP Tool
The MCP server exposes this operation as open_api_list_assignments with the inputs company, page, limit, status, project, site, trade, worker, agency, requisition, query, dateField, from, to, sortBy, sortOrder, and fields.
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:
| Field | Description |
|---|---|
fieldId, label, fieldType, value | Field identifier, captured question and type, and answer value (text, date string, selected option array, or null) |
answerScope | submission for a whole-submission answer or worker for a per-worker answer |
submissionId, workerIds | Submission batch identifier and the workers covered by the answer |
agency, worker | Identifier and name objects; worker is null for whole-submission answers |
displayLocations | Configured display locations captured with the answer |
submittedAt, submittedBy | Original submission timestamp and submitter identifier/name |
updatedAt, updatedBy | Latest amendment timestamp and editor identifier/name, or null |