Provision an organization
Creates a new kelviq user + organization on behalf of the partner, issues API keys, and emails the user a link to set their password. Fails with 409 if email belongs to an existing kelviq user, or with 400 if externalId already exists for this partner.
Authorizations
Partner integration secret issued by kelviq. Send the raw secret (prefixed kvqp_) in the X-Kelviq-Partner-Key header on every partner API request.
Body
Payload to provision a new organization on behalf of a partner. The owner user is created (or an error is returned if the email is already taken), an organization is set up, API keys are issued, and a welcome / set-password email is sent to the user.
Partner-side identifier for this organization. Must be unique within the partner. Used later by GET /partner/organizations/by-external-id/{externalId}/.
128"acme-corp"
Email address of the organization owner. Must not match any existing kelviq user.
"owner@acme.example.com"
Optional business name for the organization. If provided, the organization's name and slug are set from this value (slug is auto-deduplicated).
200"Acme Corp"
Response
Organization provisioned.
Organization owned by a partner. Returned by all partner organization endpoints.
Internal kelviq user ID of the organization owner.
4271
Stable UUID identifier for the organization.
"8e1d7b1a-6c4d-4e3a-9b2d-3f6e4c2b1ad0"
URL-safe slug for the organization.
"acme-corp"
Public client key for the organization's API integration.
"ck_live_a1b2c3d4e5f6"
Private server key for the organization. Treat as a secret.
"sk_live_9z8y7x6w5v4u"
Partner-side identifier supplied at provisioning time.
"acme-corp"