Create partner
Creates a new partner (MSP) and automatically provisions a SMAO organization for them.
Side effects:
- A new internal SMAO organization is created with the partner's name and billing managed by the distributor.
- A free trial is attempted when a trial plan is available; trial setup is best-effort.
- If contactEmail is provided, invitation creation and email delivery are attempted as best-effort side effects.
- The partner's organizationId in the response references this auto-created organization.
After dashboard access is established, the MSP can create customer organizations from the UI.
Authorization
DistributorApiKey Long-lived distributor API key scoped to a channel partner on the shared smao instance.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/partners" \ -H "Content-Type: application/json" \ -d '{ "name": "MSP Hamburg GmbH", "externalPartnerId": "MSP-001", "contactEmail": "admin@msp-hamburg.de", "contactName": "Ada Admin", "timezone": "Europe/Berlin" }'{ "status": "success", "partner": { "id": "665abc123def456789012345", "name": "MSP Hamburg GmbH", "externalPartnerId": "MSP-001", "contactEmail": "admin@msp-hamburg.de", "contactName": "Hans Mueller", "isActive": true, "notes": null, "organizationId": "665abc123def456789012346", "organizationCount": 12, "createdAt": "2026-03-20T10:41:14.553Z" }}List partners GET
Returns a paginated list of all partners (MSPs) under your distributor account. Each partner includes an **organizationCount** showing how many customer organizations are linked to it. Use the **externalPartnerId** query parameter to filter by your own partner identifier.
Get partner GET
Get partner