Vai al contenuto principale
PATCH
/
workspaces
/
{workspaceId}
/
billing-accounts
/
{billingAccountId}
/
subscriptions
/
{subscriptionId}
Aggiorna un abbonamento
curl --request PATCH \
  --url https://api.altostrat.io/workspaces/{workspaceId}/billing-accounts/{billingAccountId}/subscriptions/{subscriptionId} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "action": "pause",
  "product_quantities": {
    "locations": 20,
    "users": 100
  },
  "add_products": {
    "sso": 1
  },
  "remove_products": [
    "sso"
  ],
  "metadata": {
    "project_id": "proj_def456"
  }
}'
{
  "id": "sub_a1b2c3d4e5f6g7h8",
  "billing_account_id": "cus_a1b2c3d4e5f6g7h8",
  "status": "active",
  "currency": "usd",
  "product_quantities": {
    "locations": {
      "price_id": "price_123abc",
      "quantity": 10,
      "interval": "month"
    },
    "users": {
      "price_id": "price_456def",
      "quantity": 50,
      "interval": "month"
    }
  },
  "metadata": {
    "order_id": "6735"
  },
  "current_period_start": "2025-10-15T00:00:00Z",
  "current_period_end": "2025-11-15T00:00:00Z",
  "created_at": "2025-10-15T12:30:00Z",
  "updated_at": "2025-10-20T09:00:00Z"
}

Authorizations

Authorization
string
header
required

Inserisci il tuo JWT nel formato: Bearer {token}

Path Parameters

workspaceId
string
required

L'ID del workspace.

Example:

"ws_a1b2c3d4e5f6g7h8"

billingAccountId
string
required

L'ID del conto di fatturazione, che corrisponde a un ID Cliente Stripe (cus_...).

Example:

"cus_a1b2c3d4e5f6g7h8"

subscriptionId
string
required

L'ID dell'abbonamento Stripe (sub_...).

Example:

"sub_a1b2c3d4e5f6g7h8"

Body

application/json

Specifica una delle seguenti operazioni: action, product_quantities, add_products o remove_products. metadata può essere combinato con product_quantities.

action
enum<string>

Esegui un'azione di cambio di stato sull'abbonamento.

Opzioni disponibili:
pause,
resume,
sync
product_quantities
object

Sostituisci tutte le quantità di prodotto attuali con questo nuovo set. Per rimuovere un prodotto, omettilo da questo oggetto. Una quantity di 0 non è permessa; ometti la chiave per rimuovere.

Example:
{ "locations": 20, "users": 100 }
add_products
object

Aggiungi nuovi prodotti all'abbonamento o aumenta la quantità di quelli esistenti.

Example:
{ "sso": 1 }
remove_products
enum<string>[]

Un elenco di tipi di prodotto da rimuovere dall'abbonamento.

Example:
["sso"]
metadata
object

Un insieme di coppie chiave-valore da memorizzare con l'abbonamento. Sarà unito ai metadati esistenti.

Example:
{ "project_id": "proj_def456" }

Response

L'abbonamento è stato aggiornato con successo.

id
string

Identificatore univoco per l'abbonamento (ID Abbonamento Stripe), con prefisso sub_.

Example:

"sub_a1b2c3d4e5f6g7h8"

billing_account_id
string

L'ID del conto di fatturazione a cui appartiene questo abbonamento.

Example:

"cus_a1b2c3d4e5f6g7h8"

status
enum<string>

Lo stato dell'abbonamento.

Opzioni disponibili:
active,
past_due,
unpaid,
canceled,
incomplete,
incomplete_expired,
trialing,
paused
Example:

"active"

currency
enum<string>

Il codice valuta ISO di tre lettere per l'abbonamento.

Opzioni disponibili:
usd,
zar,
eur,
gbp,
aud
Example:

"usd"

product_quantities
object

Una mappa dei tipi di prodotto misurabili alle loro quantità sottoscritte e ai dettagli di prezzo.

Example:
{
"locations": {
"price_id": "price_123abc",
"quantity": 10,
"interval": "month"
},
"users": {
"price_id": "price_456def",
"quantity": 50,
"interval": "month"
}
}
metadata
object

Un insieme di coppie chiave-valore che puoi allegare a un oggetto.

Example:
{ "order_id": "6735" }
current_period_start
string<date-time> | null

L'inizio del periodo di fatturazione corrente.

Example:

"2025-10-15T00:00:00Z"

current_period_end
string<date-time> | null

La fine del periodo di fatturazione corrente.

Example:

"2025-11-15T00:00:00Z"

created_at
string<date-time> | null

La data e ora di creazione dell'abbonamento.

Example:

"2025-10-15T12:30:00Z"

updated_at
string<date-time> | null

La data e ora dell'ultimo aggiornamento dell'abbonamento nel nostro sistema.

Example:

"2025-10-20T09:00:00Z"