Prolifto
API reference

API reference

Authenticate and call the Prolifto admin API.

The Prolifto API is a REST/OpenAPI surface generated from the admin's oRPC router. This reference is generated from the same spec the admin app serves.

Base URL

http://localhost:3000/api

In production, use your admin app URL followed by /api:

https://admin.example.com/api

Most store-scoped endpoints include the organization slug:

/api/{organizationSlug}/products

Some endpoints operate on the organization resolved from the API key or session instead of a slug. Check each operation's path.

Authentication

Send the store API key in the ApiKey header:

curl https://admin.example.com/api/my-store/products \
  -H "ApiKey: sk_live_..."
  • Create keys in Settings → API.
  • The key is shown once; copy it immediately.
  • The key must belong to the organization in the path.
  • Keys are limited to 100 requests per minute.
  • API access depends on the store's plan; the Free plan has no API keys.

Session cookies also work for requests made from the admin app, but external integrations should use API keys.

Common inputs

List endpoints accept:

ParameterMeaning
pagePage number, starting at 1
limitPage size, up to 100
searchFree-text search where supported
orderByOrdering, e.g. created_desc

Endpoints that create or update records validate input with Zod. Required fields, formats, and limits are shown in each operation.

Errors

Errors return a non-2xx status and a JSON body:

{
  "message": "Unauthorized"
}

Common statuses:

StatusMeaning
400Validation error or invalid state transition
401Missing or invalid session/API key
403The key or user lacks permission
404Store, order, product, or other entity not found
409Conflict, such as a locked invoice
500Unexpected server error

Pagination and ordering

Responses return the requested page and pagination metadata from the query layer. Use page and limit together and keep orderBy stable for consistent pages.

Modules

Generated operation reference

The pages in this section are generated from apps/docs/openapi.json. Do not edit them by hand.

To refresh them:

pnpm docs:sync-api

Conventions

  • Currency amounts are strings or numbers depending on the endpoint; check the schema.
  • Dates use ISO 8601 strings.
  • IDs are opaque strings; do not parse them.
  • Financial documents and payments are never deleted in place; use void or refund flows.
  • Internal-only operations such as database seeding and setup are excluded from this reference.

SDK

For TypeScript integrations, prefer @prolifto/sdk. See API and SDK.

On this page