For the complete documentation index, see llms.txt. This page is also available as Markdown.

Licensing

Soda Cloud API Licensing Endpoints

Get SPU consumption

get
/api/v1/licensing/spuConsumption

This endpoint returns the number of SPUs your organization consumed over a period.

Both bounds are inclusive whole days and any time component is discarded:

  • from: Optional. Defaults to the first day of the current calendar month.

  • to: Optional. Defaults to today.

Only organizations on SPU-based licensing accumulate consumption. Any other organization is refused with a 400 organisation_not_on_spu_plan error, so a zero total always means nothing was consumed over the period.

Authentication

User authentication required: true

This endpoint accepts authentication via API keys in the Basic authentication header, or a pre-authenticated token in HTTP cookie token. Cookie sessions extend automatically on each request.

Authorization

Users must have global role permission MANAGE_ORGANISATION_SETTINGS to execute this call.

Tags

Licensing

Rate limiting

60 requests/60 seconds

Authorizations
AuthorizationstringRequired
Query parameters
fromstring · date-timeOptional
tostring · date-timeOptional
Responses
200

Successful response

application/json
fromstring · date-timeOptional
spusConsumedinteger · int64Optional
tostring · date-timeOptional
get/api/v1/licensing/spuConsumption
GET /api/v1/licensing/spuConsumption HTTP/1.1
Host: cloud.soda.io
Authorization: Basic username:password
Accept: */*
{
  "from": "2026-01-01T00:00:00.000Z",
  "spusConsumed": 1,
  "to": "2026-01-01T00:00:00.000Z"
}

Get licensing plan

get
/api/v1/organisation/licensing

This endpoint returns the licensing plan your organization is on, along with the limits that plan grants.

Use it to find out what your organization is entitled to before a tool or pipeline decides what it may do. It reports the limits only, not how much of them is already used: pair it with /api/v1/licensing/spuConsumption for the SPUs consumed over a period.

An organization that is on no plan at all is answered with a 404 licensing_not_found error, so a 200 always carries a plan.

Authentication

User authentication required: true

This endpoint accepts authentication via API keys in the Basic authentication header, or a pre-authenticated token in HTTP cookie token. Cookie sessions extend automatically on each request.

Authorization

Users must have global role permission MANAGE_ORGANISATION_SETTINGS to execute this call.

Tags

Licensing

Rate limiting

60 requests/60 seconds

Authorizations
AuthorizationstringRequired
Responses
200

Successful response

application/json
planobject · enumOptionalPossible values:
trialExpirationTimestring · date-timeOptional

Only set while the organization is on the trial plan.

get/api/v1/organisation/licensing
GET /api/v1/organisation/licensing HTTP/1.1
Host: cloud.soda.io
Authorization: Basic username:password
Accept: */*
{
  "plan": "trial",
  "planFeatures": {
    "activeChecks": 1,
    "authorUsers": 1,
    "concurrentScans": 1,
    "datasetCount": 1,
    "prepaidSPUs": 1,
    "users": 1
  },
  "subscription": {
    "endDate": "2026-01-01T00:00:00.000Z",
    "startDate": "2026-01-01T00:00:00.000Z"
  },
  "trialExpirationTime": "2026-01-01T00:00:00.000Z"
}

Last updated

Was this helpful?