MyEZToll
POST/api/partner/v1/violations

Add a mailed ticket

Save a ticket that came by mail; it is attached to the booking and looked up on the agency portal.

For a ticket that came by mail (parking, red-light or speed camera, toll notice) that no scan finds. It becomes an ordinary violation of the car: attached to the booking that had the car at that moment and listed by GET /violations like any other.

issuedLocal is the agency's **local** wall clock as printed; we convert it to UTC with the time zone of issuingState (default: the car's plate state). A date without a time is taken as noon.

When we can read that agency's portal, the ticket is looked up by its number (and PIN) straight away and then re-checked every few hours until paid; lookup.outcome says what happened. The PIN is stored encrypted and never returned. You can read a photo first with POST /violations/notice/read.

Authorization

X-Api-Key header

Send your partner key on every request. An owner key acts for its one owner; an integration token also needs the owner's id in the X-Owner-Id header.

Body

application/json
carIdstringrequired

Our car id or your external car id.

citationNumberstringrequired

The number the agency portal asks for.

issuedLocalstringrequired

Agency local time as printed, YYYY-MM-DDTHH:mm or YYYY-MM-DD (taken as noon).

issuingStatestring

2-letter state of the issuing agency; default the plate state.

amountnumberrequired
agencystring
locationstring
paymentUrlstring <uri>

http/https only.

pinstring

PIN or access code printed beside the number. Stored encrypted and never returned.

Response

201 · application/json
successbooleanrequired
dataobject
violationobject
lookupobject
errorstringnullable

Status codes

201Saved (and looked up, when possible).
400Validation error.
401Missing, unknown or revoked API key.
404The resource does not exist under this owner.
409This citation is already on file; data.violation is the existing one. Nothing was saved.