Organization API: Catalog & Services: Staff
The 13 Organization API operations for staff.
Part of Catalog & Services.
POST /api/v1/orgs/{org_slug}/staff/services/{service_id}/cancel
Cancel on the customer's behalf: the same sequence their own button runs,
credit for unused time included, with the staff member on the audit row.
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
application/json
| Field |
Type |
Required |
immediate |
boolean |
no |
reason |
string or null |
no |
keep_snapshot |
boolean |
no |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |
POST /api/v1/orgs/{org_slug}/staff/services/{service_id}/cancel-plan-change
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |
GET /api/v1/orgs/{org_slug}/staff/services/{service_id}/cancel-preview
| Name |
In |
Type |
Required |
Description |
service_id |
path |
integer |
yes |
|
org_slug |
path |
string |
yes |
|
immediate |
query |
boolean |
no |
Default: True. |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |
POST /api/v1/orgs/{org_slug}/staff/services/{service_id}/change-plan
Move the service to another plan of the same cycle. An upgrade raises
the prorated invoice the customer pays; a downgrade credits the wallet
under the credit policy. The customer's own flow, run by staff.
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
application/json (required)
| Field |
Type |
Required |
org_pricing_id |
integer |
yes |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |
PATCH /api/v1/orgs/{org_slug}/staff/services/{service_id}/due-date
Move the next renewal. Extending is goodwill; pulling it in is a
correction. Only the organization's service moves: the platform service
behind it has no due date of its own, because Coritan charges the
organization wholesale when its customer's invoice is paid
(app.billing.wholesale), and a date there would start the platform's
invoice run billing the organization's owner at list price.
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
application/json (required)
| Field |
Type |
Required |
next_due_date |
string (date) |
yes |
reason |
string |
yes |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |
GET /api/v1/orgs/{org_slug}/staff/services/{service_id}/notes
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |
POST /api/v1/orgs/{org_slug}/staff/services/{service_id}/notes
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
application/json (required)
| Field |
Type |
Required |
body |
string |
yes |
| Status |
Meaning |
201 |
Success. |
422 |
The request is not valid. detail lists each problem. |
GET /api/v1/orgs/{org_slug}/staff/services/{service_id}/plan-options
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |
GET /api/v1/orgs/{org_slug}/staff/services/{service_id}/plan-preview
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
org_pricing_id |
query |
integer |
yes |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |
POST /api/v1/orgs/{org_slug}/staff/services/{service_id}/retry-provision
Re-queue provisioning for an order stuck before it had a server.
The order must be this brand's, still pending, provisioning or failed,
have no live server yet, be paid for (or never invoiced), and have no
provision job already queued for it: paying is what starts provisioning,
and this must not be a way around that, whatever the order's status says.
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |
POST /api/v1/orgs/{org_slug}/staff/services/{service_id}/suspend
Suspend an active service. Support and above; audited. The reason is
shown to the customer. 400 for a service that is not active, 404 for one
of another organization, and 429 past 120 suspensions an hour per staff
member.
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
application/json
| Field |
Type |
Required |
reason |
string or null |
no |
notify |
boolean |
no |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |
POST /api/v1/orgs/{org_slug}/staff/services/{service_id}/terminate
End a service now with no cancellation credit. This is for abuse, fraud,
or a refund already made. Admin only, after a step-up (403
reauth_required otherwise); the reason is kept and audited. 404 for a
service of another organization, and 429 past 30 an hour per staff member.
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
application/json (required)
| Field |
Type |
Required |
reason |
string |
yes |
notify_customer |
boolean |
no |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |
POST /api/v1/orgs/{org_slug}/staff/services/{service_id}/unsuspend
Lift a suspension and call off any deletion date it carried. Support and
above; audited. 400 for a service that is not suspended, 404 for one of
another organization, and 429 past 120 an hour per staff member.
| Name |
In |
Type |
Required |
service_id |
path |
integer |
yes |
org_slug |
path |
string |
yes |
| Status |
Meaning |
200 |
Success. |
422 |
The request is not valid. detail lists each problem. |