Skip to main content

GET /rates

Summary

List rates

URL Parameters

  • None

Query Parameters

NameTypeRequiredDescription
pageintegerNoPage number (default 1)
limitintegerNoRecords per page (default 50, max 200)
companystringNoFilter by company id(s). Pass a single id or comma-separated ids. If omitted, rates for all linked companies are returned.
regionstringNoFilter by region id
sectorstringNoFilter by sector id
projectstringNoFilter by project id
agencystringNoFilter by agency id
querystringNoCase-insensitive search against trade, region, sector, project, and agency names
fromstringNoCreated date filter start (YYYY-MM-DD)
tostringNoCreated date filter end (YYYY-MM-DD)
sortByenum(createdAt, updatedAt, tradeName, regionName, sectorName, projectName, supplierName)NoSort field (default tradeName)
sortOrderenum(asc, desc)NoSort direction (default asc)
fieldsstringNoComma-separated list of response fields or dot-path nested fields to return

Request Example

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

Response Fields

FieldTypeDescription
agencyobjectReturned only when the rate is agency-specific.
Show child attributes
  • id string - Agency id
  • name string - Agency name
companyobject
Show child attributes
  • id string - Company id
  • name string - Company name
createdAtstringCreation timestamp
dayRatesobjectDaily rate sets
Show child attributes
  • cis object - CIS day-rate set with pay, emp, margin, charge, and comparablePayRate
  • paye object - PAYE day-rate set with pay, emp, margin, charge, and comparablePayRate
  • psc object - PSC day-rate set with pay, emp, margin, charge, and comparablePayRate
idstringRate id
pieceRatesarrayPiece-rate rows for this rate.
Show child attributes
  • id string - Piece rate id
  • code string - Generated piece-rate code
  • name string - Piece-rate name
  • active boolean - Whether the piece rate is active
  • unitLabel string - Singular unit label
  • unitLabelPlural string - Plural unit label
  • frequency enum - daily or weekly
  • values object - CIS, PAYE, and PSC value sets with pay, emp, margin, and charge
projectobjectReturned only when the rate is project-specific.
Show child attributes
  • id string - Project id
  • name string - Project name
ratesobjectHourly rate sets
Show child attributes
  • cis object - CIS rate set with pay, emp, margin, charge, and comparablePayRate
  • paye object - PAYE rate set with pay, emp, margin, charge, and comparablePayRate
  • psc object - PSC rate set with pay, emp, margin, charge, and comparablePayRate
regionobject
Show child attributes
  • id string - Region id
  • name string - Region name
sectorobject
Show child attributes
  • id string - Sector id
  • name string - Sector name
tradeobject
Show child attributes
  • id string - Trade id
  • name string - Trade name
updatedAtstringLast update timestamp

Response Example (200)

{
"success": true,
"data": [
{
"id": "67bc36db80a1616ec3f47040",
"trade": {
"id": "67bc36db80a1616ec3f47031",
"name": "Electrician"
},
"company": {
"id": "67bc36db80a1616ec3f47001",
"name": "Requidex Construction Ltd"
},
"region": {
"id": "67bc36db80a1616ec3f47010",
"name": "South East"
},
"sector": {
"id": "67bc36db80a1616ec3f47020",
"name": "Commercial"
},
"project": {
"id": "67bc36db80a1616ec3f47050",
"name": "Project Alpha"
},
"agency": {
"id": "67bc36db80a1616ec3f47060",
"name": "Agency One"
},
"rates": {
"cis": {
"pay": 21,
"emp": 2.5,
"margin": 3,
"charge": 26.5,
"comparablePayRate": 21
},
"paye": null,
"psc": null
},
"dayRates": {
"cis": null,
"paye": null,
"psc": null
},
"pieceRates": [
{
"id": "pr_9X2KLM",
"code": "PR-A1B2C3",
"name": "Meters installed",
"active": true,
"unitLabel": "metre",
"unitLabelPlural": "metres",
"frequency": "daily",
"values": {
"cis": {
"pay": 12.5,
"emp": 0,
"margin": 2.5,
"charge": 15
},
"paye": null,
"psc": null
}
}
],
"createdAt": "2026-01-10T12:00:00.000Z",
"updatedAt": "2026-02-20T14:03:12.111Z"
}
],
"meta": {
"page": 1,
"limit": 50,
"total": 1
}
}

Errors

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