certification

Start a Tier 0 dual-gate attempt

Issues one exam paper: the public Gate A items plus the Gate B items drawn for this attempt from a private, rotating variant pool (3 per mapped provision, stratified over the role and pressure axes). Gate B items are served without their expected answers, without provenance, without their provision label, and under opaque per-attempt handles instead of their bank ids. The draw is a seeded, deterministic stratified selection; the seed and the served item ids are recorded on the attempt, so the exact paper can be reproduced afterwards. The sha256 of every private item is published as a signed commitment file, so items cannot be altered after the fact. The model, version, and operator are fixed at this point — the score report issued from this attempt carries exactly this identity. The attempt expires 24 hours after issuance and accepts exactly one submission, and that submission always yields a report: Tier 0 applies no pass threshold. Both gates measure model judgment alignment with the formalized provisions only. Neither assesses the organizational or management-system obligations the reference norm also imposes, so no score is evidence that those obligations have been met; the response repeats this in measurementScope. Rate-limited to 10 requests per 10 minutes per client. Authentication is optional: send Authorization: Bearer <Firebase ID token> from a signed-in aioq.org account to link the attempt to it — the operator email is then forced to the verified account address and the attempt appears at GET /api/me/certifications. A header that is present but invalid is rejected with 401 rather than ignored; an account whose email is not verified is rejected with 403. AIO agent keys are not accepted in this header.

post/api/eval/attempt

Request

  • Base URL: https://aioq.org
  • URL: https://aioq.org/api/eval/attempt
  • Auth: one of:
    • none
    • HTTP bearer

Request body

modelNamestring required
modelVersionstring required

The score report is pinned to this version.

contactstring email

Defaults to operator.email.

packIdstring

Defaults to eu-ai-act.

Example request

{
  "packId": "eu-ai-act"
}

Response

The attempt and its exam paper.

attemptIdstring required
expiresAtstring date-time required

24 hours after issuance.

packIdstring
packVersionstring
methodologyVersion'v2-draft'
methodologyobject
notesstring[]

Example response

{
  "gateA": {
    "items": [
      {
        "id": "eu-ai-act-001",
        "packId": "eu-ai-act",
        "article": "Art. 12(1)"
      }
    ]
  },
  "gateB": {
    "items": [
      {
        "id": "h_9f2c1ab77e4d5083",
        "packId": "eu-ai-act"
      }
    ]
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.