Platform
platform.subscriptions.assign
Tenant-scoped tRPC mutation platform.subscriptions.assign. Requires a verified session cookie or an OAuth Bearer token; OAuth callers additionally need the simrs:write scope. Mutations are RBAC-gated server-side (requireRoles) — a broad scope never widens the user's roles.
AuthorizationBearer <token>
OAuth 2.0 / OIDC issued by the API itself (better-auth oidcProvider). Dynamic client registration per RFC 7591 at /api/auth/oauth2/register.
In: header
Scope: simrs:write
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
tenantId*string
Match
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$Format
uuidplanCode*string
Length
1 <= lengthResponse Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/trpc/platform.subscriptions.assign" \ -H "Content-Type: application/json" \ -d '{ "tenantId": "f97df110-f4de-492e-8849-4a6af68026b0", "planCode": "string" }'{ "result": { "data": null }}{ "error": { "message": "string", "code": 0, "data": { "code": "string", "httpStatus": 0, "path": "string" } }}{ "error": { "message": "string", "code": 0, "data": { "code": "string", "httpStatus": 0, "path": "string" } }}{ "error": { "message": "string", "code": 0, "data": { "code": "string", "httpStatus": 0, "path": "string" } }}{ "error": { "message": "string", "code": 0, "data": { "code": "string", "httpStatus": 0, "path": "string" } }}Is this page helpful?