Skip to content

Update a rate type

PUT
/v1/rate-types/{id}
curl --request PUT \
--url https://api2.recruso.co.uk/v1/rate-types/1 \
--header 'Authorization: <Authorization>' \
--header 'Content-Type: application/json' \
--data '{ "rateTypeName": "example", "isExpense": true, "calculateInAverageRate": true, "priorityOrder": 1, "sagePayElementId": 1, "isExpenseTaxable": true, "primaryRateTypeId": 1, "marginRate": 1, "isVatable": true }'

Updates one of your agency’s rate types. A rate type is one of the rates a worker’s hours can be paid at — basic, overtime, Saturday, Sunday, basic nights, night out, and pre- and post-tax expenses.

Send the complete record: the fields you supply replace the stored values.

Names are not checked for uniqueness.

You only ever see and change your own agency’s records; there is no owner id on the request, and an id belonging to another agency returns 404 rather than 403 so that its existence is never disclosed.

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

id
required
integer format: int32

The id path parameter

Media typeapplication/json
object
rateTypeName
required
string
isExpense
required
boolean
nullable
calculateInAverageRate
required
boolean
nullable
priorityOrder
required
integer format: int16
nullable
sagePayElementId
required
integer format: int32
nullable
isExpenseTaxable
required
boolean
nullable
primaryRateTypeId
required
integer format: int16
nullable
marginRate
required
number format: double
nullable
isVatable
required
boolean
nullable
Examplegenerated
{
"rateTypeName": "example",
"isExpense": true,
"calculateInAverageRate": true,
"priorityOrder": 1,
"sagePayElementId": 1,
"isExpenseTaxable": true,
"primaryRateTypeId": 1,
"marginRate": 1,
"isVatable": true
}

OK

Media typeapplication/json
object
rateTypeId
required
integer format: int16
rateTypeName
required
string
isExpense
required
boolean
nullable
calculateInAverageRate
required
boolean
nullable
priorityOrder
required
integer format: int16
nullable
sagePayElementId
required
integer format: int32
nullable
isExpenseTaxable
required
boolean
nullable
primaryRateTypeId
required
integer format: int16
nullable
marginRate
required
number format: double
nullable
isVatable
required
boolean
nullable
Examplegenerated
{
"rateTypeId": 1,
"rateTypeName": "example",
"isExpense": true,
"calculateInAverageRate": true,
"priorityOrder": 1,
"sagePayElementId": 1,
"isExpenseTaxable": true,
"primaryRateTypeId": 1,
"marginRate": 1,
"isVatable": 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"
}