Skip to content

Record a conviction against a worker's licence

POST
/v1/workers/{workerId}/licences/{licenceId}/convictions
curl --request POST \
--url https://api2.recruso.co.uk/v1/workers/1/licences/1/convictions \
--header 'Authorization: <Authorization>' \
--header 'Content-Type: application/json' \
--data '{ "workerId": 4821, "licenceId": 5120, "convictionCodeId": 12, "convictedDate": "2025-03-18", "convictionExpiryDate": "2029-03-17", "licencePoints": 3, "convictionNotes": "Speeding on the M60; fixed penalty accepted." }'

Records a driving conviction against one of a worker’s licences in your own agency.

A conviction is against the licence, not against the person: it is nested under the licence, and removing that licence removes its convictions too.

ConvictionCodeId must be an id from the platform Driving conviction codes vocabulary; one that does not exist returns 400. ConvictionExpiryDate must not be before ConvictedDate, and LicencePoints cannot be negative.

A worker or licence belonging to another agency returns 404 rather than 403, so its existence is never disclosed.

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

workerId
required
integer format: int32

The workerId path parameter

licenceId
required
integer format: int32

The licenceId path parameter

Media typeapplication/json

A conviction to record against one of a worker’s licences.

object
workerId

The worker the licence belongs to. Taken from the route; a value in the request body is ignored.

integer format: int32
Example
4821
licenceId

The licence the conviction is against. Taken from the route; a value in the request body is ignored.

integer format: int64
Example
5120
convictionCodeId

The offence, as an id from the platform Driving conviction codes vocabulary. Required.

integer format: int16
Example
12
convictedDate

The date of the conviction.

string format: date
nullable
Example
2025-03-18
convictionExpiryDate

The date the conviction drops off the licence. Must not be before the conviction date.

string format: date
nullable
Example
2029-03-17
licencePoints

The penalty points the conviction carries.

integer format: int16
nullable
Example
3
convictionNotes

Anything else recorded about the conviction.

string
nullable
Example
Speeding on the M60; fixed penalty accepted.

Created

Media typeapplication/json
object
workerConvictionId

The conviction record’s identifier.

integer format: int64
workerLicenceId

The licence the conviction is against.

integer format: int64
convictionCodeId

The offence, as an id from the platform Driving conviction codes vocabulary.

integer format: int16
convictedDate

The date of the conviction.

string format: date
nullable
convictionExpiryDate

The date the conviction drops off the licence.

string format: date
nullable
licencePoints

The penalty points the conviction carries.

integer format: int16
nullable
convictionNotes

Anything else recorded about the conviction.

string
nullable
Example
{
"workerConvictionId": 7740,
"workerLicenceId": 5120,
"convictionCodeId": 12,
"convictedDate": "2025-03-18",
"convictionExpiryDate": "2029-03-17",
"licencePoints": 3,
"convictionNotes": "Speeding on the M60; fixed penalty accepted."
}

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