openapi: 3.2.0
info:
title: Confluent Cloud Costs (billing/v1) API
version: ''
x-api-id: 46234552-5833-42eb-ba0f-883ad3f70d2b
x-audience: external-public
x-logo:
url: https://assets.confluent.io/m/1661ef5e4ff82d3d/
description: '# Introduction
Note
This documents the collection of Confluent Cloud APIs.'
servers:
- url: https://api.confluent.cloud
description: Confluent Cloud API
tags:
- name: Costs (billing/v1)
description: '
`Cost` objects represent the aggregated billing costs for an organization
Related guide: Retrieve costs for a range of dates.
## The Costs Model'
paths:
/billing/v1/costs:
x-lifecycle-stage: General Availability
x-self-access: true
get:
x-lifecycle-stage: General Availability
x-self-access: true
operationId: listBillingV1Costs
summary: List of Costs
description: '
Retrieve a sorted, filtered, paginated list of all costs.'
parameters:
- name: start_date
in: query
required: true
schema:
$ref: '#/components/schemas/SearchFilter'
example: '2022-10-12'
description: Filter the results by exact match for start_date.
- name: end_date
in: query
required: true
schema:
$ref: '#/components/schemas/SearchFilter'
example: '2022-10-15'
description: Filter the results by exact match for end_date.
- name: page_size
in: query
required: false
schema:
type: integer
default: 5000
maximum: 10000
x-max-page-items: 500
description: A pagination size for collection requests.
- name: page_token
in: query
required: false
schema:
type: string
maxLength: 255
description: An opaque pagination token for collection requests.
tags:
- Costs (billing/v1)
security:
- cloud-api-key: []
- confluent-sts-access-token: []
responses:
'200':
description: Cost.
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/billing.v1.CostList'
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
X-RateLimit-Limit:
schema:
type: integer
description: The maximum number of requests you're permitted to make per time period.
X-RateLimit-Remaining:
schema:
type: integer
description: The number of requests remaining in the current rate limit window.
X-RateLimit-Reset:
schema:
type: integer
description: "The relative time in seconds until the current rate-limit window resets. \n \n**Important:** This differs from Github and Twitter's same-named header which uses UTC epoch seconds. We use relative time to avoid client/server time synchronization issues."
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthenticatedError'
'403':
$ref: '#/components/responses/UnauthorizedError'
'429':
$ref: '#/components/responses/RateLimitError'
'500':
$ref: '#/components/responses/DefaultSystemError'
components:
schemas:
billing.v1.CostList:
type: object
description: '`Cost` objects represent the aggregated billing costs for an organization
Related guide: [Retrieve costs for a range of dates](https://docs.confluent.io/cloud/current/billing/overview.html#retrieve-costs-for-a-range-of-dates).
## The Costs Model
'
required:
- api_version
- kind
- metadata
- data
properties:
api_version:
type: string
enum:
- billing/v1
description: APIVersion defines the schema version of this representation of a resource.
readOnly: true
kind:
type: string
description: Kind defines the object this REST resource represents.
readOnly: true
enum:
- CostList
metadata:
allOf:
- $ref: '#/components/schemas/CostListMeta'
- properties:
next:
example: https://api.confluent.cloud/billing/v1/costs?page_token=UvmDWOB1iwfAIBPj6EYb
data:
type: array
description: A data property that contains an array of resource items. Each entry in the array is a separate resource.
items:
allOf:
- $ref: '#/components/schemas/billing.v1.Cost'
- type: object
required:
- id
- start_date
- end_date
- unit
- original_amount
uniqueItems: true
Error:
type: object
description: Describes a particular error encountered while performing an operation.
properties:
id:
description: A unique identifier for this particular occurrence of the problem.
type: string
maxLength: 255
status:
description: The HTTP status code applicable to this problem, expressed as a string value.
type: string
code:
description: An application-specific error code, expressed as a string value.
type: string
title:
description: A short, human-readable summary of the problem. It **SHOULD NOT** change from occurrence to occurrence of the problem, except for purposes of localization.
type: string
detail:
description: A human-readable explanation specific to this occurrence of the problem.
type: string
source:
type: object
description: If this error was caused by a particular part of the API request, the source will point to the query string parameter or request body property that caused it.
properties:
pointer:
description: A JSON Pointer [RFC6901] to the associated entity in the request document [e.g. "/spec" for a spec object, or "/spec/title" for a specific field].
type: string
parameter:
description: A string indicating which query parameter caused the error.
type: string
error_code:
type: integer
format: int32
message:
type:
- string
- 'null'
additionalProperties: false
billing.v1.Resource:
type: object
description: "The resource associated with this object. The resource can be one of Kafka Cluster ID (example: lkc-12345),\nConnector ID (example:\n lcc-12345), Schema Registry Cluster ID (example: lsrc-12345), or ksqlDB Cluster ID\n(example: lksqlc-12345).\nMay be null or omitted if not associated with a resource.\n"
properties:
id:
type: string
description: ID of the resource.
example: lkc-12345
display_name:
type: string
description: Display name of the resource.
example: prod-kafka-cluster
environment:
description: The environment associated with this resource
allOf:
- $ref: '#/components/schemas/billing.v1.Environment'
SearchFilter:
description: Filter a collection by a string search
type: string
CostListMeta:
type: object
description: CostListMeta describes metadata that resource collections may have
properties:
next:
description: A link to the next page of results. If a response does not contain a next link, then there is no more data available.
type:
- string
- 'null'
format: uri
example: https://api.confluent.cloud/v2/resourcekinds?page_token=UvmDWOB1iwfAIBPj6EYb
billing.v1.Environment:
type: object
description: 'The details of the environment for a given resource.
'
properties:
id:
type: string
description: ID of the environment.
example: env-123
Failure:
type: object
description: Provides information about problems encountered while performing an operation.
required:
- errors
properties:
errors:
description: List of errors which caused this operation to fail
type: array
items:
$ref: '#/components/schemas/Error'
uniqueItems: true
billing.v1.Cost:
type: object
description: '`Cost` objects represent the aggregated billing costs for an organization
Related guide: [Retrieve costs for a range of dates](https://docs.confluent.io/cloud/current/billing/overview.html#retrieve-costs-for-a-range-of-dates).
## The Costs Model
'
properties:
api_version:
type: string
enum:
- billing/v1
description: APIVersion defines the schema version of this representation of a resource.
readOnly: true
kind:
type: string
description: Kind defines the object this REST resource represents.
readOnly: true
enum:
- Cost
id:
description: ID is the "natural identifier" for an object within its scope/namespace; it is normally unique across time but not space. That is, you can assume that the ID will not be reclaimed and reused after an object is deleted ("time"); however, it may collide with IDs for other object `kinds` or objects of the same `kind` within a different scope/namespace ("space").
type: string
maxLength: 255
readOnly: true
example: dlz-f3a90de
start_date:
type: string
format: date
example: '2022-10-12'
description: Start date of time period (inclusive) to retrieve billing costs. It is represented in RFC3339 format and is in UTC.
end_date:
type: string
format: date
example: '2022-10-15'
description: End date of time period (exclusive) to retrieve billing costs. It is represented in RFC3339 format and is in UTC.
granularity:
type: string
x-extensible-enum:
- DAILY
default: DAILY
description: Granularity at which each line item is aggregated.
network_access_type:
type: string
x-extensible-enum:
- INTERNET
- TRANSIT_GATEWAY
- PRIVATE_LINK
- PEERED_VPC
- PNI
- MULTI
example: INTERNET
description: Network access type for the cluster.
product:
type: string
x-extensible-enum:
- KAFKA
- CONNECT
- KSQL
- AUDIT_LOG
- STREAM_GOVERNANCE
- CLUSTER_LINK
- CUSTOM_CONNECT
- FLINK
- TABLEFLOW
- SUPPORT_CLOUD_BASIC
- SUPPORT_CLOUD_DEVELOPER
- SUPPORT_CLOUD_BUSINESS
- SUPPORT_CLOUD_PREMIER
- USM
example: KAFKA
description: Product name.
line_type:
type: string
x-extensible-enum:
- KAFKA_STORAGE
- KAFKA_PARTITION
- KAFKA_NETWORK_READ
- KAFKA_NETWORK_WRITE
- KAFKA_BASE
- KAFKA_NUM_CKUS
- KAFKA_REST_PRODUCE
- KSQL_NUM_CSUS
- CONNECT_CAPACITY
- CONNECT_NUM_TASKS
- CONNECT_THROUGHPUT
- CONNECT_NUM_RECORDS
- SUPPORT
- CLUSTER_LINKING_PER_LINK
- CLUSTER_LINKING_WRITE
- CLUSTER_LINKING_READ
- AUDIT_LOG_READ
- GOVERNANCE_BASE
- SCHEMA_REGISTRY
- PROMO_CREDIT
- CUSTOM_CONNECT_NUM_TASKS
- CUSTOM_CONNECT_THROUGHPUT
- NUM_RULES
- FLINK_NUM_CFUS
- TABLEFLOW_DATA_PROCESSED
- TABLEFLOW_NUM_TOPICS
- TABLEFLOW_STORAGE
- USM_CONNECTED_NODE
- KAFKA_STREAMS
example: KAFKA_NUM_CKUS
description: Type of the line item.
price:
type: number
format: double
example: 1.5
description: Price for the line item in dollars.
unit:
type: string
example: GB
description: Unit of the line item.
quantity:
type: number
format: double
example: 99.9
description: Quantity of the line item.
original_amount:
type: number
format: double
example: 149.85
description: Original amount accrued for this line item.
discount_amount:
type: number
format: double
example: 20.85
description: Amount discounted from the original amount in dollars.
amount:
type: number
format: double
example: 129.0
description: Final amount after deducting discounts.
description:
type: string
example: KAFKA101
description: Additional details about promotional offers/credits.
tier_dimensions:
type: object
additionalProperties:
type: string
description: Tier dimensions which exist for tiered pricing cost items only.
x-go-type: map[string]string
example:
provider: aws
region: us-east-1
connector_type: BigQuerySink
resource:
description: The resource for a given object
allOf:
- $ref: '#/components/schemas/billing.v1.Resource'
responses:
UnauthenticatedError:
x-summary: Unauthorized
description: The request lacks valid authentication credentials for this resource.
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
WWW-Authenticate:
schema:
type: string
description: The unique identifier for the API request.
example: Basic error="invalid_key", error_description="The API Key is invalid"
content:
application/json:
schema:
$ref: '#/components/schemas/Failure'
example:
errors:
- id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
status: '401'
code: user_unauthenticated
title: Authentication Required
detail: Valid authentication credentials must be provided
DefaultSystemError:
description: Oops, something went wrong!
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
content:
application/json:
schema:
$ref: '#/components/schemas/Failure'
example:
errors:
- id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
status: '500'
code: out_of_gas
title: DeLorean Out Of Gas
detail: The DeLorean has run out of gas, but Doc Brown will fill 'er up for you asap
UnauthorizedError:
x-summary: Forbidden
description: The access credentials were considered insufficient to grant access
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
content:
application/json:
schema:
$ref: '#/components/schemas/Failure'
example:
errors:
- id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
status: '403'
code: user_unauthorized
title: User Access Unauthorized
detail: The user 'mcfly' is not allowed to access the 'delorean' resource without the 'plutonium' role.
BadRequestError:
description: Bad Request
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
content:
application/json:
schema:
$ref: '#/components/schemas/Failure'
example:
errors:
- id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
status: '400'
code: invalid_filter
title: Invalid Filter
detail: The 'delorean' resource can't be filtered by 'num_doors'
source:
parameter: num_doors
RateLimitError:
description: Rate Limit Exceeded
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
X-RateLimit-Limit:
schema:
type: integer
description: The maximum number of requests you're permitted to make per time period.
X-RateLimit-Remaining:
schema:
type: integer
description: The number of requests remaining in the current rate limit window.
X-RateLimit-Reset:
schema:
type: integer
description: "The relative time in seconds until the current rate-limit window resets. \n \n**Important:** This differs from Github and Twitter's same-named header which uses UTC epoch seconds. We use relative time to avoid client/server time synchronization issues."
Retry-After:
schema:
type: integer
description: The number of seconds to wait until the rate limit window resets. Only sent when the rate limit is reached.
securitySchemes:
cloud-api-key:
type: http
scheme: basic
description: Authenticate with Cloud API Keys using HTTP Basic Auth. Treat the Cloud API Key ID as the username and Cloud API Key Secret as the password.
confluent-sts-access-token:
type: oauth2
description: Authenticate with Confluent API using this credentials (JSON Web Tokens) following OAuth 2.0.
flows:
clientCredentials:
tokenUrl: https://api.confluent.cloud/sts/v1/oauth2/token
scopes: {}
global-api-key:
type: http
scheme: basic
description: Authenticate with Global API Keys using HTTP Basic Auth. Treat the Global API Key ID as the username and Global API Key Secret as the password.
resource-api-key:
type: http
scheme: basic
description: Authenticate with resource-specific API Keys using HTTP Basic Auth. Treat the resource-specific API Key ID as the username and resource-specific API Key Secret as the password.
external-access-token:
type: oauth2
description: Authenticate with Confluent API using this credentials (JSON Web Tokens) following OAuth 2.0.
flows:
clientCredentials:
tokenUrl: https://api.confluent.cloud/sts/v1/oauth2/token
scopes: {}
oauth:
type: oauth2
description: Authenticate with OAuth 2.0. Currently this is only supported for partner APIs.
flows:
clientCredentials:
tokenUrl: /oauth2/token
scopes:
partner:alter: enables partners to alter entitlements
partner:create: enables partners to create entitlements and signup on behalf of customers
partner:delete: enables partners to delete entitlements and organizations
partner:describe: enables partners to read and list entitlements and organizations
x-tagGroups:
- name: Identity Access Management (v2)
tags:
- API Keys (iam/v2)
- Users (iam/v2)
- Service Accounts (iam/v2)
- Invitations (iam/v2)
- IP Groups (iam/v2)
- IP Filters (iam/v2)
- IP Filter Summaries (iam/v2)
- Role Bindings (iam/v2)
- Identity Providers (iam/v2)
- Jwks (iam/v2)
- Identity Pools (iam/v2)
- Group Mappings (iam/v2/sso)
- Certificate Authorities (iam/v2)
- Certificate Identity Pools (iam/v2)
- name: Org API (v2)
tags:
- Environments (org/v2)
- Organizations (org/v2)
- name: Notifications API (v1)
tags:
- Subscriptions (notifications/v1)
- Integrations (notifications/v1)
- Notification Types (notifications/v1)
- Resource Preferences (notifications/v1)
- Resource Subscriptions (notifications/v1)
- User Notifications (notifications/v1)
- name: Cluster Mgmt for Kafka (v2)
tags:
- Clusters (cmk/v2)
- name: Cluster Mgmt for ksqlDB (v2)
tags:
- Clusters (ksqldbcm/v2)
- name: Connect API (v1)
tags:
- Connectors (connect/v1)
- Lifecycle (connect/v1)
- Status (connect/v1)
- Managed Connector Plugins (connect/v1)
- Offsets (connect/v1)
- Custom Connector Plugins (connect/v1)
- Presigned Urls (connect/v1)
- Custom Connector Runtimes (connect/v1)
- name: Connect Artifact Management (v1)
tags:
- Connect Artifacts (cam/v1)
- Presigned Urls (cam/v1)
- name: Kafka API (v3)
tags:
- Cluster (v3)
- Configs (v3)
- ACL (v3)
- Consumer Group (v3)
- Partition (v3)
- Topic (v3)
- Records (v3)
- Cluster Linking (v3)
- Share Group (v3)
- Streams Group (v3)
- name: Service Quota API (v1)
tags:
- Applied Quotas (service-quota/v1)
- Scopes (service-quota/v1)
- name: Partner API (v2)
tags:
- Entitlements (partner/v2)
- Organizations (partner/v2)
- Signup (partner/v2)
- name: Cluster Mgmt for Schema Registry (v2)
tags:
- Regions (srcm/v2)
- Clusters (srcm/v2)
- name: Cluster Mgmt for Schema Registry (v3)
tags:
- Clusters (srcm/v3)
- name: Schema Registry API (v1)
tags:
- Compatibility (v1)
- Config (v1)
- Contexts (v1)
- Exporters (v1)
- Modes (v1)
- Schemas (v1)
- Subjects (v1)
- Key Encryption Keys (v1)
- Data Encryption Keys (v1)
- name: Catalog API (v1)
tags:
- Entity (v1)
- Search (v1)
- Types (v1)
- name: Stream Sharing API (v1)
tags:
- Provider Shared Resources (cdx/v1)
- Provider Shares (cdx/v1)
- Consumer Shared Resources (cdx/v1)
- Consumer Shares (cdx/v1)
- Shared Tokens (cdx/v1)
- Opt Ins (cdx/v1)
- name: Networking (v1)
tags:
- Networks (networking/v1)
- Peerings (networking/v1)
- Transit Gateway Attachments (networking/v1)
- Private Link Accesses (networking/v1)
- Network Link Services (networking/v1)
- Network Link Endpoints (networking/v1)
- Network Link Service Associations (networking/v1)
- IP Addresses (networking/v1)
- Private Link Attachments (networking/v1)
- Private Link Attachment Connections (networking/v1)
- DNS Forwarders (networking/v1)
- Access Points (networking/v1)
- DNS Records (networking/v1)
- Gateways (networking/v1)
- name: Security Token Service (v1)
tags:
- OAuth Tokens (sts/v1)
- name: Kafka Quota (v1)
tags:
- Client Quotas (kafka-quotas/v1)
- name: Bring Your Own Key (BYOK) Management (v1)
tags:
- Keys (byok/v1)
- name: Billing API (v1)
tags:
- Costs (billing/v1)
- name: Compute Pool Mgmt for Flink (v2)
tags:
- Compute Pools (fcpm/v2)
- Regions (fcpm/v2)
- Org Compute Pool Configs (fcpm/v2)
- name: SQL API (v1)
tags:
- Statements (sql/v1)
- Statement Results (sql/v1)
- Statement Exceptions (sql/v1)
- Connections (sql/v1)
- Agents (sql/v1)
- Tools (sql/v1)
- Materialized Tables (sql/v1)
- Materialized Table Versions (sql/v1)
- name: Provider Integration Management (v1)
tags:
- Integrations (pim/v1)
- name: Provider Integration Management (v2)
tags:
- Integrations (pim/v2)
- name: Artifact API (v1)
tags:
- Flink Artifacts (artifact/v1)
- Presigned Urls (artifact/v1)
- Flink Artifact Versions (artifact/v1)
- name: Custom Code Logging API (v1)
tags:
- Custom Code Loggings (ccl/v1)
- name: Tableflow (v1)
tags:
- Regions (tableflow/v1)
- Tableflow Topics (tableflow/v1)
- Catalog Integrations (tableflow/v1)
- name: Custom Connect Plugin Management (v1)
tags:
- Custom Connect Plugins (ccpm/v1)
- Presigned Urls (ccpm/v1)
- Custom Connect Plugin Versions (ccpm/v1)
- name: Unified Stream Manager (v1)
tags:
- Kafka Clusters (usm/v1)
- Connect Clusters (usm/v1)
- name: Endpoint (v1)
tags:
- Endpoints (endpoint/v1)
- name: Real Time Context Engine (v1)
tags:
- Rtce Topics (rtce/v1)
- Regions (rtce/v1)
- name: Analytics (v1alpha1)
tags:
- Statements (query/v1alpha1)