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: '![General Availability](#section/Versioning/API-Lifecycle-Policy) `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: '![General Availability](#section/Versioning/API-Lifecycle-Policy) 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)