Cernion Tenant Quotas API
Tenant quota snapshots, events, and admin overrides
Tenant quota snapshots, events, and admin overrides
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/cernion-de:cernion-de-tenant-quotas-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Cernion Energy Tools Tenant Quotas API
version: 0.99.22
description: 'MicroService Agent System for Energy Markets - REST API with AI integration.
CERNION_TOKEN: request at https://cernion.de/ or by email: dev@stromdao.com.
For the public instance at https://api.cernion.de/, create your token at https://cernion.de/cet-token/.'
servers:
- url: https://api.cernion.de
description: API Server
tags:
- name: Tenant Quotas
description: Tenant quota snapshots, events, and admin overrides
paths:
/api/tenant-quota/tenants/:id/quotas:
get:
summary: Get current quota and usage snapshot for one tenant
tags:
- Tenant Quotas
operationId: tenant_quota_getQuotas
parameters:
- name: id
in: path
required: true
schema:
type: string
example: stadtwerk-a
description: Tenant identifier.
- $ref: '#/components/parameters/TokenQuery'
responses:
'200':
description: Quota snapshot for the tenant.
'403':
description: Tenant scope violation or missing full-access authorization.
description: Phase-1 read-only quota endpoint (v0.48.4). Returns configured rate-limit defaults, active quota windows, driver info, and recent quota events for the selected tenant.
put:
summary: Update tenant quota and rate-limit configuration
tags:
- Tenant Quotas
operationId: tenant_quota_setQuotas
parameters:
- name: id
in: path
required: true
schema:
type: string
example: stadtwerk-a
description: Tenant identifier.
- $ref: '#/components/parameters/TokenQuery'
responses:
'200':
description: Updated tenant quota snapshot.
'403':
description: Tenant scope violation or missing full-access authorization.
'422':
description: Invalid payload (unknown keys or non-numeric values).
description: Write/admin endpoint for tenant-specific quota and endpoint-class rate-limit overrides. Requires full-access token at gateway level and tenant-scope check in service.
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
rateLimits:
type: object
properties:
read:
type: integer
minimum: 0
example: 600
write:
type: integer
minimum: 0
example: 60
compute:
type: integer
minimum: 0
example: 30
quotas:
type: object
properties:
project_max_bytes:
type: integer
minimum: 0
example: 2147483648
description: Project byte limit; 0 inherits CET_PROJECT_MAX_BYTES.
project_max_files:
type: integer
minimum: 0
example: 10000
description: Project object limit; 0 inherits CET_PROJECT_MAX_FILES.
project_max_file_bytes:
type: integer
minimum: 0
example: 2147483648
description: Object byte limit; 0 inherits CET_PROJECT_MAX_FILE_BYTES.
project_chunk_bytes:
type: integer
minimum: 0
example: 8388608
description: Upload chunk size; 0 inherits CET_PROJECT_CHUNK_BYTES.
llm_tokens_per_day:
type: integer
minimum: 0
example: 250000
llm_tokens_per_month:
type: integer
minimum: 0
example: 5000000
max_async_jobs_per_day:
type: integer
minimum: 0
example: 250
max_rag_chunks_per_month:
type: integer
minimum: 0
example: 100000
token:
type: string
description: Optional Cernion MCP token for this request. Overrides CERNION_TOKEN when provided.
/api/tenant-quota/tenants/:id/rate-limit-events:
get:
summary: List recent rate-limit and quota events for one tenant
tags:
- Tenant Quotas
operationId: tenant_quota_listEvents
parameters:
- name: id
in: path
required: true
schema:
type: string
example: stadtwerk-a
- name: limit
in: query
required: false
schema:
type: integer
default: 50
minimum: 1
maximum: 200
- name: type
in: query
required: false
schema:
type: string
enum:
- quota.threshold.reached
- quota.exhausted
- rate_limit.exceeded
example: quota.threshold.reached
- $ref: '#/components/parameters/TokenQuery'
responses:
'200':
description: Recent tenant events.
description: Returns the most recent tenant-scoped quota/rate events recorded by the new rate-quota foundation layer. Phase 1 exposes read-only visibility for operational review.
/api/tenants/:id/quotas:
get:
summary: Get current quota and usage snapshot for one tenant
tags:
- Tenant Quotas
operationId: getApiTenants:idQuotas
parameters:
- name: id
in: path
required: true
schema:
type: string
example: stadtwerk-a
description: Tenant identifier.
- $ref: '#/components/parameters/TokenQuery'
responses:
'200':
description: Quota snapshot for the tenant.
'403':
description: Tenant scope violation or missing full-access authorization.
description: Phase-1 read-only quota endpoint (v0.48.4). Returns configured rate-limit defaults, active quota windows, driver info, and recent quota events for the selected tenant.
x-operation-id-source: normalized
x-operation-id-original: tenant_quota_getQuotas
put:
summary: Update tenant quota and rate-limit configuration
tags:
- Tenant Quotas
operationId: putApiTenants:idQuotas
parameters:
- name: id
in: path
required: true
schema:
type: string
example: stadtwerk-a
description: Tenant identifier.
- $ref: '#/components/parameters/TokenQuery'
responses:
'200':
description: Updated tenant quota snapshot.
'403':
description: Tenant scope violation or missing full-access authorization.
'422':
description: Invalid payload (unknown keys or non-numeric values).
description: Write/admin endpoint for tenant-specific quota and endpoint-class rate-limit overrides. Requires full-access token at gateway level and tenant-scope check in service.
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
rateLimits:
type: object
properties:
read:
type: integer
minimum: 0
example: 600
write:
type: integer
minimum: 0
example: 60
compute:
type: integer
minimum: 0
example: 30
quotas:
type: object
properties:
project_max_bytes:
type: integer
minimum: 0
example: 2147483648
description: Project byte limit; 0 inherits CET_PROJECT_MAX_BYTES.
project_max_files:
type: integer
minimum: 0
example: 10000
description: Project object limit; 0 inherits CET_PROJECT_MAX_FILES.
project_max_file_bytes:
type: integer
minimum: 0
example: 2147483648
description: Object byte limit; 0 inherits CET_PROJECT_MAX_FILE_BYTES.
project_chunk_bytes:
type: integer
minimum: 0
example: 8388608
description: Upload chunk size; 0 inherits CET_PROJECT_CHUNK_BYTES.
llm_tokens_per_day:
type: integer
minimum: 0
example: 250000
llm_tokens_per_month:
type: integer
minimum: 0
example: 5000000
max_async_jobs_per_day:
type: integer
minimum: 0
example: 250
max_rag_chunks_per_month:
type: integer
minimum: 0
example: 100000
token:
type: string
description: Optional Cernion MCP token for this request. Overrides CERNION_TOKEN when provided.
x-operation-id-source: normalized
x-operation-id-original: tenant_quota_setQuotas
/api/tenants/:id/rate-limit-events:
get:
summary: List recent rate-limit and quota events for one tenant
tags:
- Tenant Quotas
operationId: getApiTenants:idRateLimitEvents
parameters:
- name: id
in: path
required: true
schema:
type: string
example: stadtwerk-a
- name: limit
in: query
required: false
schema:
type: integer
default: 50
minimum: 1
maximum: 200
- name: type
in: query
required: false
schema:
type: string
enum:
- quota.threshold.reached
- quota.exhausted
- rate_limit.exceeded
example: quota.threshold.reached
- $ref: '#/components/parameters/TokenQuery'
responses:
'200':
description: Recent tenant events.
description: Returns the most recent tenant-scoped quota/rate events recorded by the new rate-quota foundation layer. Phase 1 exposes read-only visibility for operational review.
x-operation-id-source: normalized
x-operation-id-original: tenant_quota_listEvents
components:
parameters:
TokenQuery:
name: token
in: query
required: false
schema:
type: string
description: Optional Cernion MCP token as URL query parameter. If provided, it overrides CERNION_TOKEN for this request. Prefer Authorization Bearer header in production to reduce token exposure in URLs/logs.
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: X-API-Key
BearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: 'Optional Cernion MCP token. If not provided, falls back to CERNION_TOKEN from environment. Request token at https://cernion.de/ or by email: dev@stromdao.com.'