REST Endpoints

Inklura exposes a REST bridge at /api/v1/<router>/<procedure>, generated from the tRPC routers via trpc-to-openapi. It is partial and experimental — most of the API is only reachable over tRPC.

Warning

The REST bridge is not a complete mirror of the API. Build against tRPC, which is the canonical surface. Reach for REST only for the few procedures listed below, and expect coverage to change.

The /api/v1 bridge

A tRPC procedure appears under /api/v1 only if it is annotated with OpenAPI metadata. Today that annotation exists on just a few users and products operations — so those are the only procedures currently reachable over REST. Everything else must go through tRPC.

GET https://manage.inklura.fr/api/v1/<router>/<procedure>

Authentication is the same as the rest of the API — a Bearer JWT plus optional tenant/site scope headers (see Sessions & Tokens). The OpenAPI specs advertise bearerAuth together with X-Tenant-ID / X-Site-ID.

Note

The generated OpenAPI specifications are stale — the current set is dated 2026-05-18. Do not treat a spec as an authoritative list of what is live; verify against the actual endpoint.

OpenAPI portals

The bridge publishes several OpenAPI portals, scoped by audience:

Portal Audience
public General/public consumers
partner Partner integrations
admin Administrative operations
internal Internal use
permissions Permission-related surface

Because the specs are stale and coverage is partial, use the portals for orientation only.

Separate hand-written REST

Two REST surfaces are not part of the /api/v1 tRPC bridge and are documented elsewhere:

  • /api/auth/* — the authentication endpoints (OIDC login/callback, invite acceptance, and related flows). See Authentication.
  • /api/webhooks/* — inbound webhooks from payment, email, and commerce providers. See Webhooks.

These are hand-written routes with their own contracts, independent of the tRPC-to-OpenAPI generator.

Recommendation

For any new integration, use tRPC. It covers all ~350 routers and ~6,567 procedures; the REST bridge covers only a small, annotated subset and its specs lag behind the code.