Ir al contenido

AiKYNETIX API

Esta página aún no está disponible en tu idioma.

Upload a short video of an athlete and get back joint angles, ground-contact times, peak forces, a technique score, and an annotated playback video. It is the same API the AiKYNETIX web app runs on — there is no separate “partner” backend, so anything the product can do, an integration can do too.

https://api.ai.aikynetix.app

The API is organised around REST. It has predictable, resource-oriented URLs, accepts JSON request bodies, returns JSON responses, and uses standard HTTP status codes and verbs.

Almost every integration is the same loop, and it is worth reading once before you write any code:

  1. Reserve an upload. You ask for a place to put the video and get back a session id plus a presigned URL.
  2. Upload the bytes. Straight to storage, not through the API.
  3. Create the session. This is what starts the analysis and debits one session of quota.
  4. Poll until it finishes. Then read the metrics.
sequenceDiagram
    participant You
    participant API
    participant Storage
    You->>API: 1. reserve an upload
    API-->>You: session_id + presigned url
    You->>Storage: 2. PUT the bytes
    You->>API: 3. create the session
    API-->>You: 201 pending
    loop 4. every ~2.5 s
        You->>API: GET the session
    end
    API-->>You: completed + metrics

Three schemes exist. Partner integrations use the first one; the other two are how the web and mobile apps talk to the same API.

Scheme Header Use case
API key Authorization: Bearer aik_… Server-to-server partner integrations. Minted by the team owner on the Organization plan or above. Scoped to that team and its quota.
Firebase ID token Authorization: Bearer <token> Short-lived (1 h) token from the web/mobile SDK. Refresh with getIdToken(true).
Session cookie Authorization: Session <cookie> First-party only — the web app’s server tier rendering on a signed-in user’s behalf. Not available to integrations.

Any Bearer token starting with aik_ is routed to the API-key authenticator; anything else falls through to Firebase. See Authentication for minting, rotation and the plan gate.

JSON everywhere. All write endpoints accept JSON bodies and return JSON.

Lists are paginated as { results, count, next, previous }, limit defaulting to 50 and capped at 200. Aggregate endpoints — the dashboard, the catalogue — return a single object with no envelope.

Errors carry a machine-readable detail. Branch on that string, never on the prose. Errors has the full table.

One version, 1.0.0. Additive changes — new optional fields, new operations, looser validation — ship under the same version. Anything slated for removal is marked deprecated on its operation at least one release ahead.

No rate limits in v1, with one exception: email-verification attempts are capped at five. Please still back off on polling; see The analysis lifecycle for the cadence we actually recommend.

The reference documents every operation, generated from the same schema the API publishes. For anything it does not answer, email support@aikynetix.com.