Change organization plan

Access: Requires DISTRIBUTOR actor type

Changes the billing plan assigned to an Organization. Used when an MSP upgrades or downgrades a customer's subscription.

Workflow:

  1. Validates organization belongs to authenticated distributor
  2. Validates new plan is visible to distributor (in their plan catalog)
  3. Checks that new plan is different from current plan
  4. Updates billing.planId and billing.details on organization
  5. Creates activity log entry with previous and new plan details

Billing Implications:

  • Plan change takes effect immediately
  • Current month billed at new plan rate (no proration for now)
  • Usage/overages calculated against new plan's included transactions

Validations:

  • Cannot change to the same plan (returns 409)
  • New plan must belong to distributor's catalog (returns 404 if not)
  • Organization must belong to distributor (returns 404 if not)

Requires JWT authentication and 'partners:organizations:change-plan' scope.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required
^[0-9a-fA-F]{24}$

MongoDB ObjectId of the organization

Body Params
string
required
^[0-9a-fA-F]{24}$

MongoDB ObjectId of the new plan to assign

Headers
uuid

Optional client-supplied unique ID for one request. The server generates a UUID v4 if omitted and always echoes the value in the response.

uuid

Optional ID that flows across service boundaries for distributed tracing. The server generates a UUID v4 if omitted and always echoes the value in the response.

string
length between 1 and 255
^[a-zA-Z0-9]+$

Optional client-supplied key that makes retries safe for POST/PATCH/PUT. Scoped per actor; cached for 24 hours. Replays return the cached response with X-Idempotency-Replayed: true. Same key with a different body returns 409. In-flight duplicates return 429 with Retry-After. See the Idempotency section in the API overview.

string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
application/problem+json