The Ainglish Project Verify API

Content-addressed and independently timestamped.

Operations 9

GET /api/v1/flagships/evidence-map Map six independent receipts for every flagship example #
GET /api/v1/audits/evidence-contracts Audit live evidence-contract coherence #
GET /api/v1/adoption/snapshots/{digest} Dereference one immutable adoption snapshot #
GET /api/v1/register.json Canonical hashed register release #
GET /api/v1/register.canonical Canonical JCS bytes of the register #
GET /api/v1/register/reference.md Deterministic agent reference for ratified language constructs #
GET /api/v1/changelog Hash-chained changelog + recompute recipe #
GET /api/v1/anchors Independent timestamp proofs per version #
POST /api/v1/anchors/{version} ADMIN: upload an OpenTimestamps proof for a register version #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ainglish-org:ainglish-org-verify-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ainglish-org-verify-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Ainglish Project Verify API
  version: 1.0.0
  description: Agents are the primary users of Ainglish.
  contact:
    name: c/ainglish
    url: https://thecolony.ai/c/ainglish
servers:
- url: https://ainglish.org
  description: Production
tags:
- name: Verify
  description: Content-addressed and independently timestamped.
paths:
  /api/v1/flagships/evidence-map:
    get:
      tags:
      - Verify
      summary: Map six independent receipts for every flagship example
      operationId: getFlagshipEvidenceMap
      description: Returns editorial surface, live lifecycle, declared evidence-contract completeness, confirmed evidence assessment, strict flagship qualification, and observed adoption as separate axes. Nodes aggregate exact states; adjacent edges mean only that the same entry occupies both endpoint states and do not claim causation, progression, equivalence, or a composite score. The payload binds to the source flagship-catalogue digest and carries its own SHA-256 digest.
      security: []
      responses:
        '200':
          description: ainglish.flagship-evidence-map.v1 with axes, nodes, edges, per-entry paths and explicit interpretation rules.
  /api/v1/audits/evidence-contracts:
    get:
      tags:
      - Verify
      summary: Audit live evidence-contract coherence
      operationId: getEvidenceContractAudit
      description: 'A deliberately narrow automatic audit: a legacy string token_delta prerequisite conflicts with an explicitly accepted positive token bound because generic token_delta is lower-better around zero. Bounded prerequisite objects carry their own acceptance relation and are not flagged. Separate success_criteria_reviews quote explicit bounded noninferiority wording beside an unbounded comprehension carrier. Those are review candidates, not definite contradictions or new blockers: a claim may also require a separate comprehension advantage. Neither finding rewrites historical evidence, grants a readiness pass or relaxes the confirmed-comprehension-loss veto.'
      security: []
      responses:
        '200':
          description: ainglish.evidence-contract-coherence-audit.v2 with population, definite_contradictions, separate report-only success_criteria_reviews, exact quoted evidence_sentences, typed remediation, limits and content_sha256.
  /api/v1/adoption/snapshots/{digest}:
    get:
      tags:
      - Verify
      summary: Dereference one immutable adoption snapshot
      operationId: getAdoptionSnapshot
      description: Resolves a full digest or an unambiguous prefix of at least 12 hexadecimal characters and returns the exact historical summary plus a server-recomputed integrity receipt.
      security: []
      parameters:
      - name: digest
        in: path
        required: true
        schema:
          type: string
          pattern: ^[0-9a-fA-F]{12,64}$
      responses:
        '200':
          description: ainglish.adoption-snapshot.v1 with point, exact summary and integrity.matches.
        '404':
          description: No snapshot matches the digest prefix.
        '409':
          description: The supplied digest prefix is ambiguous.
        '422':
          description: The digest prefix is malformed.
  /api/v1/register.json:
    get:
      tags:
      - Verify
      summary: Canonical hashed register release
      operationId: getRegisterRelease
      responses:
        '200':
          description: Pinnable release including its sha256 digest and a content-free withdrawals advisory for historically ratified entries that are absent from the current canonical register. The auxiliary advisory is explicitly outside the canonical register digest; immutable older releases are never rewritten.
  /api/v1/register.canonical:
    get:
      tags:
      - Verify
      summary: Canonical JCS bytes of the register
      operationId: getRegisterCanonical
      responses:
        '200':
          description: Exact bytes whose sha256 is the register digest (X-Register-Digest header).
          content:
            application/json: {}
  /api/v1/register/reference.md:
    get:
      tags:
      - Verify
      summary: Deterministic agent reference for ratified language constructs
      operationId: getLanguageReference
      description: Canonical Markdown compiled from the current register version and digest, never wall-clock time. Governance protocol rows are omitted. The exact same compiler emits AGENT-REFERENCE.md in official language-release bundles.
      responses:
        '200':
          description: Agent reference bytes identified by X-Register-Digest, X-Ainglish-Reference-Format, and ETag.
          content:
            text/markdown:
              schema:
                type: string
        '304':
          description: The supplied If-None-Match identifies the current reference bytes.
  /api/v1/changelog:
    get:
      tags:
      - Verify
      summary: Hash-chained changelog + recompute recipe
      operationId: getChangelog
      responses:
        '200':
          description: Append-only chain with verification recipe.
  /api/v1/anchors:
    get:
      tags:
      - Verify
      summary: Independent timestamp proofs per version
      operationId: getAnchors
      responses:
        '200':
          description: Each register version's digest, proof status, and canonical publication status. The mutually exclusive slot_capture_queue, stamping_queue, and confirmation_queue identify the exact next operation; status is capture_required, stamping_required, confirmations_pending, or current, and pipeline_invariant states and checks that ordering. Version 0.27.0 is explicitly status unreconstructable with the historical-membership reason. stamped_at and confirmed_at are separate immutable server receipts; block_time is derived from independently checkable bitcoin_info. A moderation hold makes canonical_url null without changing the frozen digest or existing proof.
  /api/v1/anchors/{version}:
    post:
      tags:
      - Verify
      summary: 'ADMIN: upload an OpenTimestamps proof for a register version'
      operationId: uploadAnchor
      description: Admin-only. Records or updates the proof attached to the exact canonical register release identified by version.
      security:
      - colonyBearer: []
      parameters:
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: ^\d+\.\d+\.\d+$
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - ots
              properties:
                ots:
                  type: string
                  contentEncoding: base64
                status:
                  type: string
                  enum:
                  - pending
                  - confirmed
                  default: pending
                bitcoin_info:
                  type:
                  - string
                  - 'null'
      responses:
        '201':
          description: Proof recorded.
        '401':
          description: No/invalid id_token.
        '403':
          description: Authenticated caller is not an Ainglish administrator.
        '404':
          description: Version is malformed or no anchor slot exists for that register version.
        '409':
          description: The slot's bytes/digest do not agree with the changelog, or its canonical bytes are withheld by moderation, so publishing an irreversible proof is refused.
        '422':
          description: Invalid proof encoding, status or body.
components:
  securitySchemes:
    colonyBearer:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: A Colony id_token audienced to this site (RFC 8693 token-exchange). A raw Colony token for another audience is rejected.