ampr docs

Tokens

Driver authorization tokens (RFID / app / virtual idTags)

GET /tokens List tokens

Parameters

Name In Type Required Description
page query integer
per_page query integer

Responses

200 Token list

PropertyTypeRequiredDescription
dataarray<Token>
PropertyTypeRequiredDescription
idstringrequired
uidstringrequiredPhysical RFID uid / MIFARE / virtual string the charger presents as OCPP idTag. Unique per org.
typeenum
  • rfid
  • app
  • other
required
validbooleanrequiredWhether this token may currently authorize a charging session.
labelstringnullableHuman-friendly label (e.g. driver name).
issuer_party_idstringnullableOCPI party id of the issuer; null for CPO-native tokens.
created_atstringformat: date-timerequired
paginationPagination
PropertyTypeRequiredDescription
totalintegerrequired
pageintegerrequired
per_pageintegerrequired
has_morebooleanrequired

401 Missing or invalid API key application/problem+json

PropertyTypeRequiredDescription
typestringformat: urirequired
titlestringrequired
statusintegerrequired
detailstringnullable
instancestringnullable

Request example

curl -X GET "https://api.ampr.dev/v1/tokens" \
  -H "Authorization: Bearer $AMPR_API_KEY"
Note
This endpoint requires an API key. Send it as a Bearer token in the Authorization header.

POST /tokens Pre-register a driver token

Pre-register a driver token (fleet card) into the org allowlist before charger cutover. Strict insert — a duplicate (org, uid) returns 409.

Request body

PropertyTypeRequiredDescription
uidstringrequiredRFID uid / MIFARE / virtual idTag; non-empty, bounded length + charset.
typeenum
  • rfid
  • app
  • other
validboolean
labelstring

Responses

201 Token created

PropertyTypeRequiredDescription
dataToken
PropertyTypeRequiredDescription
idstringrequired
uidstringrequiredPhysical RFID uid / MIFARE / virtual string the charger presents as OCPP idTag. Unique per org.
typeenum
  • rfid
  • app
  • other
required
validbooleanrequiredWhether this token may currently authorize a charging session.
labelstringnullableHuman-friendly label (e.g. driver name).
issuer_party_idstringnullableOCPI party id of the issuer; null for CPO-native tokens.
created_atstringformat: date-timerequired

400 Invalid request parameters application/problem+json

PropertyTypeRequiredDescription
typestringformat: urirequired
titlestringrequired
statusintegerrequired
detailstringnullable
instancestringnullable

401 Missing or invalid API key application/problem+json

PropertyTypeRequiredDescription
typestringformat: urirequired
titlestringrequired
statusintegerrequired
detailstringnullable
instancestringnullable

409 Resource conflict (e.g., duplicate serial, active session) application/problem+json

PropertyTypeRequiredDescription
typestringformat: urirequired
titlestringrequired
statusintegerrequired
detailstringnullable
instancestringnullable

Request example

curl -X POST "https://api.ampr.dev/v1/tokens" \
  -H "Authorization: Bearer $AMPR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "uid": "string",
    "type": "rfid",
    "valid": true,
    "label": "string"
  }'
Note
This endpoint requires an API key. Send it as a Bearer token in the Authorization header.

GET /tokens/{token_id} Get a token

Parameters

Name In Type Required Description
token_id path string required

Responses

200 Token detail

PropertyTypeRequiredDescription
dataToken
PropertyTypeRequiredDescription
idstringrequired
uidstringrequiredPhysical RFID uid / MIFARE / virtual string the charger presents as OCPP idTag. Unique per org.
typeenum
  • rfid
  • app
  • other
required
validbooleanrequiredWhether this token may currently authorize a charging session.
labelstringnullableHuman-friendly label (e.g. driver name).
issuer_party_idstringnullableOCPI party id of the issuer; null for CPO-native tokens.
created_atstringformat: date-timerequired

401 Missing or invalid API key application/problem+json

PropertyTypeRequiredDescription
typestringformat: urirequired
titlestringrequired
statusintegerrequired
detailstringnullable
instancestringnullable

404 Resource not found application/problem+json

PropertyTypeRequiredDescription
typestringformat: urirequired
titlestringrequired
statusintegerrequired
detailstringnullable
instancestringnullable

Request example

curl -X GET "https://api.ampr.dev/v1/tokens/trk_example" \
  -H "Authorization: Bearer $AMPR_API_KEY"
Note
This endpoint requires an API key. Send it as a Bearer token in the Authorization header.

PATCH /tokens/{token_id} Update a token

Toggle `valid` (e.g. block a lost card) or edit `label`.

Parameters

Name In Type Required Description
token_id path string required

Request body

PropertyTypeRequiredDescription
validboolean
labelstringnullable

Responses

200 Token updated

PropertyTypeRequiredDescription
dataToken
PropertyTypeRequiredDescription
idstringrequired
uidstringrequiredPhysical RFID uid / MIFARE / virtual string the charger presents as OCPP idTag. Unique per org.
typeenum
  • rfid
  • app
  • other
required
validbooleanrequiredWhether this token may currently authorize a charging session.
labelstringnullableHuman-friendly label (e.g. driver name).
issuer_party_idstringnullableOCPI party id of the issuer; null for CPO-native tokens.
created_atstringformat: date-timerequired

400 Invalid request parameters application/problem+json

PropertyTypeRequiredDescription
typestringformat: urirequired
titlestringrequired
statusintegerrequired
detailstringnullable
instancestringnullable

401 Missing or invalid API key application/problem+json

PropertyTypeRequiredDescription
typestringformat: urirequired
titlestringrequired
statusintegerrequired
detailstringnullable
instancestringnullable

404 Resource not found application/problem+json

PropertyTypeRequiredDescription
typestringformat: urirequired
titlestringrequired
statusintegerrequired
detailstringnullable
instancestringnullable

Request example

curl -X PATCH "https://api.ampr.dev/v1/tokens/trk_example" \
  -H "Authorization: Bearer $AMPR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "valid": true,
    "label": "string"
  }'
Note
This endpoint requires an API key. Send it as a Bearer token in the Authorization header.