API reference · Enrolment

Read enrolment status

GET/v1/enrollments/{invitationId}/status

Where the key stands: waiting for proof, waiting for Anis staff, active, or being replaced. Once the key is active it also carries the key’s end date, keyExpiresAt: ask Anis staff for a replacement weeks before it.

PermissionNone
AuthenticationEnrolment token
Anis’s answerSigned
Staff-set limits it counts towardNone
.NET SDKenrollment.GetStatusAsync()
  • Once your key is submitted, the status read keeps answering with the same token after the invitation’s own expiry, until the key ends. resource_not_found here means the invitation or token is unknown, the invitation lapsed before any key was submitted, or the key has ended (revoked, retired after a replacement, or past its end date): ask Anis staff.

Parameters

NameInTypeNotes
invitationIdrequiredpathUUIDA UUID, lower-case with hyphens.

Request

Authorised with Authorization: Enrollment <token>; not signed.

Headers: Accept-Language (optional). The SDKs set all of them for you.

Body: none.

Responses

StatusMeaningBody
200Success.EnrollmentStatus
401Refused: not authenticated.Problem
404Refused: not found, or not yours.Problem
429Refused: a limit was reached.Problem
503No decision: a dependency was unavailable.Problem

Every answer of this call is signed by Anis — success and every refusal. Require the signature and verify it before you act on the answer; an answer without one is a failure, never an answer (how).

Refusals

Every refusal of this call is a signed problem. Branch on its code; each links to what it means and what to do.

ErrorCodeStatus
Invitation invalidinvitation_invalid401
Not foundresource_not_found404
Rate limitedrate_limited429
Service unavailabledependency_unavailable503
Request timeoutrequest_timeout504
Internal errorinternal_error500

Types

EnrollmentStatus

FieldTypeNotes
keyIdUUIDYour key id.
challengeGenerationintegerThe current challenge generation.
proofStatestringpending, accepted or failed — a proof that did not verify or came too late. After five failed proofs the next one is refused as invitation_invalid: ask Anis staff to restart the enrolment.
approvalStatestringpending while Anis staff have not confirmed the key, approved once it is active, notApplicable otherwise.
statestringpendingInvitation, pendingProof, pendingApproval, active — the key signs requests — or unavailable (the key is being replaced by a newer one). A revoked, retired or expired key is not reported: the status read answers resource_not_found.
expiresAtstring (date-time)When the current enrolment step lapses: the invitation, while it is still open. Absent once the key is active or no longer available — the key’s own end date is keyExpiresAt.
keyExpiresAtstring (date-time)The date your active key stops working (absent until the key is active). Ask Anis staff for a replacement weeks before it: a key past its end date is refused as invalid_credentials on every call, including reveals of cards you already bought.