Reference

Public API

Every endpoint of the public API that your end users reach on your brand domain, with the credential each one needs.

The public API serves your end users: sign-in and sign-up, their organizations and members, your plans, checkout and subscriptions, invoices and usage. The hosted pages, the customer portal and the React components call it, and so can your own pages. This page is an index of the endpoints; request and response bodies are not described here yet.

Common conventions

Where it is served. On your verified brand domain, under /rest: for the brand domain account.example.com, each path below is preceded by https://account.example.com/rest. The region picks your application from the host name of the request, so every call must arrive with your brand domain as its Host; from a browser, forward a path on your own origin as described in The React components.

Credentials. The Credential column names what an endpoint needs in Authorization: Bearer <token>:

CredentialWhat it is
End-user sessionThe access token of a signed-in end user, issued by POST /public/v1/auth/login, POST /public/v1/auth/register or POST /public/v1/auth/verification/confirm, and renewed with POST /public/v1/auth/refresh. The session belongs to one organization of your customer; POST /public/v1/auth/switch changes it
NoneNo bearer token. The endpoint relies on something else: credentials, a refresh token or a one-time token in the request body, or the request's host

Changing billing, members and invitations needs the end user to be an owner or admin of their organization. Paths with {orgId} must name the session's organization. Your backend checks the same session tokens with the Server SDK.

Requests and answers. Bodies are JSON. Unknown fields in a request body are dropped. An error answers with the body described in Error codes, with a stable code.

Lists. The Query column names the query parameters an endpoint takes. Lists that page take limit together with either page or cursor.

Endpoints

Sign-in and session

MethodPathCredentialQueryPurpose
POST/public/v1/auth/oauth/{provider}/authorizationNoneGet the provider authorization URL to start a social sign-in with PKCE
POST/public/v1/auth/oauth/{provider}/tokenNoneExchange a social sign-in authorization code for an end-user session
POST/public/v1/auth/registerNoneRegister an end-user account with a new organization or by invitation
POST/public/v1/auth/loginNoneSign an end user in with email and password and obtain a session
GET/public/v1/auth/meEnd-user sessionRead the signed-in end user profile, memberships and current context
PATCH/public/v1/auth/meEnd-user sessionUpdate the profile of the signed-in end user, such as display name
PUT/public/v1/auth/me/avatarEnd-user sessionUpload a profile picture for the signed-in end user; anyone with the picture's URL can view it
DELETE/public/v1/auth/me/avatarEnd-user sessionRemove the profile picture of the signed-in end user
POST/public/v1/auth/logoutEnd-user sessionSign the end user out of the current session
POST/public/v1/auth/change-passwordEnd-user sessionChange the password of the signed-in end user
POST/public/v1/auth/verify-emailNoneVerify an email address using a token from an older verification link
POST/public/v1/auth/password-reset/requestNoneRequest a password reset link to be emailed to an end user
POST/public/v1/auth/password-reset/confirmNoneSet a new end-user password using a password reset token
POST/public/v1/auth/resend-verificationEnd-user sessionResend an email verification link to the signed-in end user
POST/public/v1/auth/verification/confirmNoneConfirm an email verification code and sign the end user in
POST/public/v1/auth/verification/resendNoneSend a new email verification code for an unverified account
POST/public/v1/auth/verification/emailNoneChange the email of an unverified account and send a new code
POST/public/v1/auth/refreshNoneObtain a fresh end-user access token using a refresh token
POST/public/v1/auth/switchEnd-user sessionSwitch the end-user session to another organization or application

Sign-in gate

MethodPathCredentialQueryPurpose
GET/public/v1/identity/resolveNoneprojectIdResolve the identity gate, branding and enabled social providers for this host

Organizations and members

MethodPathCredentialQueryPurpose
GET/public/v1/organizationsEnd-user sessionList the organizations the signed-in end user belongs to
GET/public/v1/organizations/{orgId}End-user sessionRead the details of the end user active organization
PATCH/public/v1/organizations/{orgId}End-user sessionRename the organization that is active in the end user session
GET/public/v1/organizations/{orgId}/membersEnd-user sessionList the members of the end user active organization
PATCH/public/v1/organizations/{orgId}/members/{membershipId}End-user sessionChange the role of a member of the end user organization
DELETE/public/v1/organizations/{orgId}/members/{membershipId}End-user sessionRemove a member from the end user organization
GET/public/v1/organizations/{orgId}/invitationsEnd-user sessionList the invitations of the end user active organization
POST/public/v1/organizations/{orgId}/invitationsEnd-user sessionInvite a person by email to join the end user organization
DELETE/public/v1/organizations/{orgId}/invitations/{invitationId}End-user sessionRevoke an outstanding invitation to the end user organization

Invitations

MethodPathCredentialQueryPurpose
GET/public/v1/invitations/infoNonetokenPreview an invitation by its token before accepting it
POST/public/v1/invitations/acceptEnd-user sessionAccept an invitation and join the inviting organization

Plans

MethodPathCredentialQueryPurpose
GET/public/v1/catalog/plansEnd-user sessionList the published plans offered by the current application

Checkout and subscriptions

MethodPathCredentialQueryPurpose
POST/public/v1/checkout/sessionsEnd-user sessionCreate a payment provider checkout session to subscribe to a plan version
POST/public/v1/subscriptions/freeEnd-user sessionSubscribe the buyer organization to a plan that needs no payment method
GET/public/v1/subscriptionsEnd-user sessionRead the current subscription of the buyer organization
POST/public/v1/subscriptions/changeEnd-user sessionChange the plan of the buyer organization current subscription
POST/public/v1/subscriptions/cancelEnd-user sessionCancel the buyer organization subscription at the end of the period

Invoices and billing portal

MethodPathCredentialQueryPurpose
GET/public/v1/invoicesEnd-user sessionList the invoices issued to the buyer organization by the payment provider
POST/public/v1/customer-portal/sessionsEnd-user sessionOpen a payment provider customer portal session for the buyer organization

Wallet

MethodPathCredentialQueryPurpose
GET/public/v1/walletEnd-user sessionRead the wallet of the buyer organization
POST/public/v1/wallet/topup/checkoutEnd-user sessionCreate a checkout session that adds to the wallet of the buyer organization
GET/public/v1/wallet/transactionsEnd-user sessionpage, limitList the transactions recorded on the buyer organization wallet
GET/public/v1/wallet/auto-rechargeEnd-user sessionRead the wallet settings of the buyer organization
PATCH/public/v1/wallet/auto-rechargeEnd-user sessionUpdate the wallet settings of the buyer organization

Usage

MethodPathCredentialQueryPurpose
GET/public/v1/usage/summaryEnd-user sessionRead capability usage and remaining quota for the buyer organization
GET/public/v1/usage/seriesEnd-user sessioncapability_key, daysRead the daily usage series of one capability for the buyer organization
GET/public/v1/usage/eventsEnd-user sessioncapability_key, limit, cursorList individual usage events of one capability for the buyer organization

Occupancies

MethodPathCredentialQueryPurpose
POST/public/v1/occupancies/reserveEnd-user sessionReserve one slot of a countable entitlement for the buyer organization
POST/public/v1/occupancies/{occupancyId}/confirmEnd-user sessionConfirm a reserved entitlement slot; repeating returns the same slot
POST/public/v1/occupancies/{occupancyId}/releaseEnd-user sessionRelease an occupied entitlement slot; repeating returns the same slot

Upstream credentials

MethodPathCredentialQueryPurpose
GET/public/v1/organizations/{orgId}/upstream-credentialsEnd-user sessionList the upstream client credentials of this organization, newest first
POST/public/v1/organizations/{orgId}/upstream-credentialsEnd-user sessionIssue an upstream client credential for this organization and a region
DELETE/public/v1/organizations/{orgId}/upstream-credentials/{credentialId}End-user sessionRevoke an upstream client credential; repeating returns the same view

© 2026 ShipRev