Skip to content

Update agency details

PUT
/v1/agency
curl --request PUT \
--url https://api2.recruso.co.uk/v1/agency \
--header 'Authorization: <Authorization>' \
--header 'Content-Type: application/json' \
--data '{ "ownerName": "example", "businessType": "example", "address1": "example", "address2": "example", "postcode": "example", "telephone1": "example", "telephone2": "example", "mobile": "example", "fax": "example", "email": "example", "website": "example", "vatNumber": "example", "companyRegNumber": "example", "endOfTaxYear": "2026-04-15T12:00:00Z", "yearStartDate": "2026-04-15T12:00:00Z", "weekEndingDateOfFirstWeek": "2026-04-15T12:00:00Z", "smsPurchased": 1, "customAccountNumber": true, "blockTimesheetAgreement": "example", "firstDayOfWeek": "example", "postCodeSearch": true, "subbyNameInPlan": true, "modifiedBy": "example", "modifiedOn": "2026-04-15T12:00:00Z", "holidayAccrualMethodId": 1, "holidayYearStartDate": "2026-04-15T12:00:00Z", "holidayYearByWorkStartDate": true, "weeklyCappedHours": 1, "weeksToCalculateAveragePay": 1, "authorizedPassword": "example", "town": "example", "county": "example", "country": "example", "pageSize": 1, "sendSmsAs": "example", "workerDefaultStatus": 1, "textMarketerUserName": "example", "textMarketerPassword": "example", "customSubContractorAccountNumber": true, "bankDetails": "example", "healthAndSafety": "example", "ppe": "example", "assessmentDetails": "example", "trainingDetails": "example", "inductionDetails": "example", "smsPerBranch": true, "pension": 1, "ssp": 1, "isRolledUpHoliday": true, "calculateVatOnRateType": true, "calculateVatOnClient": true }'

Updates the mutable settings of your own agency: trading name, contact details, the financial and holiday year start dates, the first day of the working week, and the weekly capped hours. Fields not listed on the request are left unchanged. There is no agency identifier to pass — the agency is always your own. Changing the year start dates or the first day of the week affects how future weeks are aligned; it does not restate weeks already worked.

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

Media typeapplication/json
object
ownerName
required
string
businessType
required
string
nullable
address1
required
string
nullable
address2
required
string
nullable
postcode
required
string
nullable
telephone1
required
string
nullable
telephone2
required
string
nullable
mobile
required
string
nullable
fax
required
string
nullable
email
required
string
nullable
website
required
string
nullable
vatNumber
required
string
nullable
companyRegNumber
required
string
nullable
endOfTaxYear
required
string format: date-time
nullable
yearStartDate
required
string format: date-time
nullable
weekEndingDateOfFirstWeek
required
string format: date-time
nullable
smsPurchased
required
integer format: int32
nullable
customAccountNumber
required
boolean
nullable
blockTimesheetAgreement
required
string
nullable
firstDayOfWeek
required
string
nullable
postCodeSearch
required
boolean
nullable
subbyNameInPlan
required
boolean
nullable
modifiedBy
required
string
nullable
modifiedOn
required
string format: date-time
nullable
holidayAccrualMethodId
required
integer format: uint8
nullable
holidayYearStartDate
required
string format: date-time
nullable
holidayYearByWorkStartDate
required
boolean
nullable
weeklyCappedHours
required
number format: double
nullable
weeksToCalculateAveragePay
required
number format: double
nullable
authorizedPassword
required
string
nullable
town
required
string
nullable
county
required
string
nullable
country
required
string
nullable
pageSize
required
integer format: int32
nullable
sendSmsAs
required
string
nullable
workerDefaultStatus
required
integer format: int16
nullable
textMarketerUserName
required
string
nullable
textMarketerPassword
required
string
nullable
customSubContractorAccountNumber
required
boolean
nullable
bankDetails
required
string
nullable
healthAndSafety
required
string
nullable
ppe
required
string
nullable
assessmentDetails
required
string
nullable
trainingDetails
required
string
nullable
inductionDetails
required
string
nullable
smsPerBranch
required
boolean
nullable
pension
required
number format: float
nullable
ssp
required
number format: float
nullable
isRolledUpHoliday
required
boolean
nullable
calculateVatOnRateType
required
boolean
nullable
calculateVatOnClient
required
boolean
nullable
Examplegenerated
{
"ownerName": "example",
"businessType": "example",
"address1": "example",
"address2": "example",
"postcode": "example",
"telephone1": "example",
"telephone2": "example",
"mobile": "example",
"fax": "example",
"email": "example",
"website": "example",
"vatNumber": "example",
"companyRegNumber": "example",
"endOfTaxYear": "2026-04-15T12:00:00Z",
"yearStartDate": "2026-04-15T12:00:00Z",
"weekEndingDateOfFirstWeek": "2026-04-15T12:00:00Z",
"smsPurchased": 1,
"customAccountNumber": true,
"blockTimesheetAgreement": "example",
"firstDayOfWeek": "example",
"postCodeSearch": true,
"subbyNameInPlan": true,
"modifiedBy": "example",
"modifiedOn": "2026-04-15T12:00:00Z",
"holidayAccrualMethodId": 1,
"holidayYearStartDate": "2026-04-15T12:00:00Z",
"holidayYearByWorkStartDate": true,
"weeklyCappedHours": 1,
"weeksToCalculateAveragePay": 1,
"authorizedPassword": "example",
"town": "example",
"county": "example",
"country": "example",
"pageSize": 1,
"sendSmsAs": "example",
"workerDefaultStatus": 1,
"textMarketerUserName": "example",
"textMarketerPassword": "example",
"customSubContractorAccountNumber": true,
"bankDetails": "example",
"healthAndSafety": "example",
"ppe": "example",
"assessmentDetails": "example",
"trainingDetails": "example",
"inductionDetails": "example",
"smsPerBranch": true,
"pension": 1,
"ssp": 1,
"isRolledUpHoliday": true,
"calculateVatOnRateType": true,
"calculateVatOnClient": true
}

OK

Media typeapplication/json
object
ownerName
required
string
businessType
required
string
nullable
address1
required
string
nullable
address2
required
string
nullable
postcode
required
string
nullable
telephone1
required
string
nullable
telephone2
required
string
nullable
mobile
required
string
nullable
fax
required
string
nullable
email
required
string
nullable
website
required
string
nullable
vatNumber
required
string
nullable
companyRegNumber
required
string
nullable
endOfTaxYear
required
string format: date-time
nullable
yearStartDate
required
string format: date-time
nullable
weekEndingDateOfFirstWeek
required
string format: date-time
nullable
currentNi
required
number format: float
nullable
freepay
required
number format: float
nullable
vatRate
required
number format: double
nullable
smsPurchased
required
integer format: int32
nullable
employeeDefaultTaxCode
required
string
nullable
customAccountNumber
required
boolean
nullable
blockTimesheetAgreement
required
string
nullable
firstDayOfWeek
required
string
nullable
postCodeSearch
required
boolean
nullable
subbyNameInPlan
required
boolean
nullable
modifiedBy
required
string
nullable
modifiedOn
required
string format: date-time
nullable
holidayAccrualMethodId
required
integer format: uint8
nullable
awRBreakWeeks
required
integer format: int16
nullable
awRSicknessBreakWeeks
required
integer format: int16
nullable
awRJuryServiceBreakWeeks
required
integer format: int16
nullable
awRMaternityBreakWeeks
required
integer format: int16
nullable
awRPaternityBreakWeeks
required
integer format: int16
nullable
awRAdoptionBreakWeeks
required
integer format: int16
nullable
awRUnpaidLeaveBreakWeeks
required
integer format: int16
nullable
holidayYearStartDate
required
string format: date-time
nullable
holidayYearByWorkStartDate
required
boolean
nullable
weeklyCappedHours
required
number format: double
nullable
weeksToCalculateAveragePay
required
number format: double
nullable
town
required
string
nullable
county
required
string
nullable
country
required
string
nullable
pageSize
required
integer format: int32
nullable
sendSmsAs
required
string
nullable
workerDefaultStatus
required
integer format: int16
nullable
customSubContractorAccountNumber
required
boolean
nullable
bankDetails
required
string
nullable
healthAndSafety
required
string
nullable
ppe
required
string
nullable
assessmentDetails
required
string
nullable
trainingDetails
required
string
nullable
inductionDetails
required
string
nullable
smsPerBranch
required
boolean
nullable
pension
required
number format: float
nullable
ssp
required
number format: float
nullable
isRolledUpHoliday
required
boolean
nullable
calculateVatOnRateType
required
boolean
nullable
calculateVatOnClient
required
boolean
nullable
Examplegenerated
{
"ownerName": "example",
"businessType": "example",
"address1": "example",
"address2": "example",
"postcode": "example",
"telephone1": "example",
"telephone2": "example",
"mobile": "example",
"fax": "example",
"email": "example",
"website": "example",
"vatNumber": "example",
"companyRegNumber": "example",
"endOfTaxYear": "2026-04-15T12:00:00Z",
"yearStartDate": "2026-04-15T12:00:00Z",
"weekEndingDateOfFirstWeek": "2026-04-15T12:00:00Z",
"currentNi": 1,
"freepay": 1,
"vatRate": 1,
"smsPurchased": 1,
"employeeDefaultTaxCode": "example",
"customAccountNumber": true,
"blockTimesheetAgreement": "example",
"firstDayOfWeek": "example",
"postCodeSearch": true,
"subbyNameInPlan": true,
"modifiedBy": "example",
"modifiedOn": "2026-04-15T12:00:00Z",
"holidayAccrualMethodId": 1,
"awRBreakWeeks": 1,
"awRSicknessBreakWeeks": 1,
"awRJuryServiceBreakWeeks": 1,
"awRMaternityBreakWeeks": 1,
"awRPaternityBreakWeeks": 1,
"awRAdoptionBreakWeeks": 1,
"awRUnpaidLeaveBreakWeeks": 1,
"holidayYearStartDate": "2026-04-15T12:00:00Z",
"holidayYearByWorkStartDate": true,
"weeklyCappedHours": 1,
"weeksToCalculateAveragePay": 1,
"town": "example",
"county": "example",
"country": "example",
"pageSize": 1,
"sendSmsAs": "example",
"workerDefaultStatus": 1,
"customSubContractorAccountNumber": true,
"bankDetails": "example",
"healthAndSafety": "example",
"ppe": "example",
"assessmentDetails": "example",
"trainingDetails": "example",
"inductionDetails": "example",
"smsPerBranch": true,
"pension": 1,
"ssp": 1,
"isRolledUpHoliday": true,
"calculateVatOnRateType": true,
"calculateVatOnClient": true
}

Bad Request

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"
}

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"
}

Not Found

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"
}