Skip to content

Patch a subscription

PATCH
/api/tenant/{tenantId}/Subscriptions/{id}
curl --request PATCH \
--url https://api.nimles.com/e-commerce/api/tenant/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/Subscriptions/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '[ { "op": "example", "path": "example", "from": "example", "value": "example" } ]'

Applies JSON Patch operations (add, remove, replace, move, copy and test) to the member the seats PUT changes: /seatCount. Plan, status, billing and period members are changed by the subscription’s own endpoints only. A changed seat count is pushed to the payment processor, like the seats PUT does.

id
required
string format: uuid

The subscription’s id.

tenantId
required
string format: uuid

Your tenant id.

The operations, applied in order.

Media typeapplication/json
Array<object>
object
op
required
string
>= 1 characters /^(add|remove|replace|move|copy|test)$/
path
required
string
>= 1 characters
from
string
nullable
value
nullable

Example generated

[
{
"op": "example",
"path": "example",
"from": "example",
"value": "example"
}
]

OK

Media typeapplication/json
object
fields
object
key
additional properties
string
data
object
fields
object
key
additional properties
object
value
required
nullable
valueType
string
nullable
accessibility
string
nullable
id
string format: uuid
relations
Array<object>
nullable
object
fields
object
key
additional properties
object
value
required
nullable
valueType
string
nullable
accessibility
string
nullable
id
string format: uuid
name
string
nullable
entityId
required
string format: uuid
entityType
required
string
>= 1 characters
relationType
required
string
>= 1 characters
tenantId
string format: uuid
nullable
resourceGroupId
string format: uuid
nullable
creatorId
string format: uuid
nullable
createdDate
string format: date-time
nullable
version
integer format: int32
nullable
lastModified
string format: date-time
nullable
workspaceId
string format: uuid
organizationId
string format: uuid
nullable
plan
string
nullable
status
string
nullable
seatCount
integer format: int32
billingOwnerId
string format: uuid
stripeSubscriptionId
string
nullable
stripeCustomerId
string
nullable
trialEndsAt
string format: date-time
nullable
currentPeriodEnd
string format: date-time
nullable
canceledAt
string format: date-time
nullable
cancelAtPeriodEnd
boolean

Example generated

{
"data": {
"fields": {
"additionalProperty": {
"value": "example",
"valueType": "example"
}
},
"accessibility": "example",
"id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"relations": [
{
"fields": {
"additionalProperty": {
"value": "example",
"valueType": "example"
}
},
"accessibility": "example",
"id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"name": "example",
"entityId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"entityType": "example",
"relationType": "example"
}
],
"tenantId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"resourceGroupId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"creatorId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"createdDate": "2026-04-15T12:00:00Z",
"version": 1,
"lastModified": "2026-04-15T12:00:00Z",
"workspaceId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"organizationId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"plan": "example",
"status": "example",
"seatCount": 1,
"billingOwnerId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"stripeSubscriptionId": "example",
"stripeCustomerId": "example",
"trialEndsAt": "2026-04-15T12:00:00Z",
"currentPeriodEnd": "2026-04-15T12:00:00Z",
"canceledAt": "2026-04-15T12:00:00Z",
"cancelAtPeriodEnd": true
}
}

No Content: done, with no item to return.

Unauthorized: no bearer token, or one that is expired or not for this API.

Forbidden: the caller holds no role that allows this action at this scope. The body is empty, or a problem whose detail names the action.

Media typeapplication/json

An RFC 9457 problem.

object
detail
string
nullable
instance
string
nullable
status
integer format: int32
nullable
title
string
nullable
type
string
nullable
key
additional properties

Example generated

{
"detail": "example",
"instance": "example",
"status": 1,
"title": "example",
"type": "example"
}

Not found: no such item in the tenant.

Media typeapplication/problem+json

An RFC 9457 problem.

object
detail
string
nullable
instance
string
nullable
status
integer format: int32
nullable
title
string
nullable
type
string
nullable
key
additional properties

Example generated

{
"detail": "example",
"instance": "example",
"status": 1,
"title": "example",
"type": "example"
}

Conflict: the item kept changing under concurrent writes; read it again and retry.

Media typeapplication/problem+json

An RFC 9457 problem.

object
detail
string
nullable
instance
string
nullable
status
integer format: int32
nullable
title
string
nullable
type
string
nullable
key
additional properties

Example generated

{
"detail": "example",
"instance": "example",
"status": 1,
"title": "example",
"type": "example"
}

Unprocessable: the body or the change is invalid. The errors are keyed by member.

Media typeapplication/problem+json

A validation problem: the messages by member (or by JSON Pointer for a patch).

object
errors
object
key
additional properties
Array<string>
status
integer format: int32
nullable
title
string
nullable
type
string
nullable
key
additional properties

Example generated

{
"errors": {
"additionalProperty": [
"example"
]
},
"status": 1,
"title": "example",
"type": "example"
}