Register a new API client
const url = 'https://apisandbox.puurk.com/auth/clients';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"id":"example","name":"example","scopes":[{"resource":"example","oid":"example","public":true,"actions":["read"]}],"keys":["example"],"allowed_ips":["example"],"allowed_origins":["example"],"cert_fingerprint":"example","metadata":{},"active":true,"created_at":"2026-04-15T12:00:00Z","updated_at":"2026-04-15T12:00:00Z"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://apisandbox.puurk.com/auth/clients \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "id": "example", "name": "example", "scopes": [ { "resource": "example", "oid": "example", "public": true, "actions": [ "read" ] } ], "keys": [ "example" ], "allowed_ips": [ "example" ], "allowed_origins": [ "example" ], "cert_fingerprint": "example", "metadata": {}, "active": true, "created_at": "2026-04-15T12:00:00Z", "updated_at": "2026-04-15T12:00:00Z" }'Create a new API client with scopes and credentials
Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”API client to create
object
Unique identifier
Client name
Authorized scopes
object
Resource the scope applies to (e.g. checkout)
Organization ID (null for all organizations)
Marks a publishable (browser) scope. Only honored on a checkout scope bound to one organization, on a client with allowed_origins.
Permitted actions
API key IDs
Allowed IP addresses
Browser origins (e.g. https://shop.example.com) allowed to use this client as a publishable client. Required, and must be non-empty, for a public checkout scope to be honored.
Certificate fingerprint
Custom metadata
object
Whether the client is active
Creation date
Last update date
Responses
Section titled “Responses”API client created
object
Unique identifier
Client name
Authorized scopes
object
Resource the scope applies to (e.g. checkout)
Organization ID (null for all organizations)
Marks a publishable (browser) scope. Only honored on a checkout scope bound to one organization, on a client with allowed_origins.
Permitted actions
API key IDs
Allowed IP addresses
Browser origins (e.g. https://shop.example.com) allowed to use this client as a publishable client. Required, and must be non-empty, for a public checkout scope to be honored.
Certificate fingerprint
Custom metadata
object
Whether the client is active
Creation date
Last update date
Example
{ "scopes": [ { "actions": [ "read" ] } ]}Invalid input
Unauthorized