Create a product
POST
/v1/admin/products
const url = 'https://api.sealcord.com/v1/admin/products';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"id":"example","name":"example","key_prefix":"example","current_major":1,"machines_per_seat":3,"licence_signing_domain":"example","verdict_signing_domain":"example"}'};
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://api.sealcord.com/v1/admin/products \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "id": "example", "name": "example", "key_prefix": "example", "current_major": 1, "machines_per_seat": 3, "licence_signing_domain": "example", "verdict_signing_domain": "example" }'The API generates the product’s Ed25519 signing key and stores it encrypted; the response carries its public key, never the private key. An organization’s product is its own and counts against its plan.
Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
id
required
string
name
required
string
key_prefix
required
string
current_major
required
integer
machines_per_seat
integer
licence_signing_domain
string
verdict_signing_domain
string
Responses
Section titled “Responses”Missing or invalid API key.
Needs scope products:write.