Skip to content

List branches

GET
/v1/branches
curl --request GET \
--url https://api2.recruso.co.uk/v1/branches \
--header 'Authorization: <Authorization>'

Returns your agency’s active branches, ordered by name. Deleted branches are excluded.

The list is further narrowed to the branches the Recruso user behind your API app can access, so it is not necessarily every branch in the agency. If a branch you expect is missing, check that user’s branch access in the Recruso UI.

The response is not paged.

Access. Requires a client-credentials access token. Tokens issued through the interactive user login are rejected.

OK

Media typeapplication/json

The agency’s active branches that the user behind your API app can access.

object
branches
required

The branches, ordered by name. Empty if none are accessible.

Array<object>

One branch in a ListBranches result. Carries the same fields as GetBranchById.

object
branchId

The branch’s identifier. Use this on the cost-centre endpoints as branchId.

integer format: int16
branchLocation

The branch name. Unique across the agency’s branches, and the field this list is ordered by.

string
address1

First line of the branch address.

string
nullable
address2

Second line of the branch address.

string
nullable
town

Town or city of the branch address.

string
nullable
county

County of the branch address.

string
nullable
postcode

Postcode of the branch address.

string
nullable
country

Country of the branch address.

string
nullable
telephone1

Primary contact telephone number for the branch.

string
nullable
telephone2

Secondary contact telephone number for the branch.

string
nullable
mobile

Mobile contact number for the branch.

string
nullable
fax

Fax number for the branch.

string
nullable
email

Contact email address for the branch.

string
nullable
website

Website address for the branch.

string
nullable
sageDepartmentId

The branch’s Sage department. Cost centres carry a sageDepartmentId of their own; which one a posting uses is decided by the Sage integration, not by this endpoint.

integer format: int32
nullable
clientName
string
nullable
agencyNameForEmail

The agency name used as the sender identity on emails sent from this branch.

string
nullable
displayInSelfRegistration

Whether the branch is offered as a choice when a worker self-registers.

boolean
nullable
modifiedBy

The Recruso user who last changed the branch, as a tblUsers user id rendered as a string. Null if the branch has not been changed since it was created.

string
nullable
modifiedOn

The date the branch was last changed, in UK local time (GMT/BST) — not UTC. The underlying column stores a date, so the time is always midnight. Null if the branch has not been changed since it was created.

string format: date-time
nullable
Example
{
"branches": [
{
"branchId": 4,
"branchLocation": "Manchester Central",
"address1": "Unit 7, Ashton House",
"address2": "14 Deansgate",
"town": "Manchester",
"county": "Greater Manchester",
"postcode": "M3 2BW",
"country": "United Kingdom",
"telephone1": "0161 496 0114",
"telephone2": "0161 496 0115",
"mobile": "07700 900432",
"fax": "0161 496 0116",
"email": "manchester@example-recruitment.co.uk",
"website": "https://www.example-recruitment.co.uk",
"sageDepartmentId": 21,
"agencyNameForEmail": "Example Recruitment (Manchester)",
"displayInSelfRegistration": true,
"modifiedBy": "87",
"modifiedOn": "2026-08-14T00:00:00"
}
]
}

Unauthorized

Media typeapplication/problem+json
object
type
string
nullable
title
string
nullable
status
integer format: int32
nullable
detail
string
nullable
instance
string
nullable
Examplegenerated
{
"type": "example",
"title": "example",
"status": 1,
"detail": "example",
"instance": "example"
}

Forbidden

Media typeapplication/problem+json
object
type
string
nullable
title
string
nullable
status
integer format: int32
nullable
detail
string
nullable
instance
string
nullable
Examplegenerated
{
"type": "example",
"title": "example",
"status": 1,
"detail": "example",
"instance": "example"
}