Conga Consumption Billing API

Controller for CRUD operations on usage inputs, supporting rating, unrating, and draft rating in synchronous and asynchronous modes.

Business capability
Rating & Charging BC-4250.20

Operations 8

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

DELETE /usage-inputs Delete usage input records · Deletes usage input records #
Ask an LLM
“How do I remove usage input records I loaded by mistake?”
“Can I bulk-delete consumption usage inputs?”
Tell an agent destructive · confirm first
Delete the usage input records in this request.
Bulk-remove these consumption usage inputs.
GET /usage-inputs List usage input records · List usage inputs records #
Ask an LLM
“Where can I see all the usage inputs loaded for consumption billing?”
“Can I filter and sort usage input records or page through them?”
Tell an agent
List all usage input records.
Show usage inputs matching {filter}, sorted by {sort}.
PATCH /usage-inputs Update usage input records · Updates usage input records #
Ask an LLM
“Can I correct fields on several usage inputs at once?”
“What does the bulk usage input update return?”
Tell an agent
Update these usage input records and return their IDs.
Apply corrections to multiple consumption usage inputs.
POST /usage-inputs Load usage input records · Creates usage input records #
Ask an LLM
“How do I add usage records so Conga can bill customers for consumption?”
“Can I load many usage input records in one request?”
Tell an agent
Create these usage input records for billing.
Load a new batch of consumption usage inputs.
POST /usage-inputs/estimate Estimate ratings for usage inputs · Estimates draft ratings for the specified usage input records without updating… #
Ask an LLM
“Can I preview what usage inputs would be rated at without saving anything?”
“How do I get draft rating estimates for every loaded usage input asynchronously?”
Tell an agent
Estimate draft ratings for usage inputs {UsageInputIds}.
Preview ratings across all loaded usage inputs with process-all set to {ProcessAllUsageInputs}.
POST /usage-inputs/rate Rate usage input records · Rates the specified usage input records #
Ask an LLM
“How do I rate usage inputs so they're ready to bill?”
“Can I rate all pending usage inputs in an asynchronous run?”
Tell an agent
Rate usage inputs {UsageInputIds} and save the results.
Run rating on every usage input with process-all {ProcessAllUsageInputs}.
POST /usage-inputs/unrate Reverse ratings on usage inputs · Reverses ratings for the specified usage input records #
Ask an LLM
“How do I undo the rating on usage inputs that were rated incorrectly?”
“Can I unrate specific usage input records?”
Tell an agent
Unrate usage inputs {UsageInputIds}.
Reverse the ratings applied to usage records {UsageInputIds}.
GET /usage-inputs/{usageInputId} Get a usage input record · Get a usage input record #
Ask an LLM
“How do I look up one usage input by its ID?”
“Can I see a single usage record with its related data included?”
Tell an agent
Show usage input {usageInputId}.
Get usage input {usageInputId} including {includes}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/conga:conga-consumption-billing-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API 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 Specification

conga-consumption-billing-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Billing Management Consumption Billing API
  version: 1.0.0
  description: 'Controller for CRUD operations on usage inputs, supporting rating, unrating,

    and draft rating in synchronous and asynchronous modes.'
servers:
- url: https://rls.congacloud.com/api/billing/v1
security:
- Bearer: []
tags:
- name: Consumption Billing
  description: 'Controller for CRUD operations on usage inputs, supporting rating, unrating,

    and draft rating in synchronous and asynchronous modes.'
paths:
  /usage-inputs:
    delete:
      tags:
      - Consumption Billing
      summary: Deletes usage input records
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
          text/json:
            schema:
              type: array
              items:
                type: string
          application/*+json:
            schema:
              type: array
              items:
                type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '207':
          description: Multi-Status
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '500':
          description: Internal Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
      operationId: deleteUsageInputs
      x-operation-id-source: derived
    get:
      tags:
      - Consumption Billing
      summary: List usage inputs records
      description: Retrieves the collection of usage inputs records.
      parameters:
      - name: filter
        in: query
        description: Optional filter parameters
        schema:
          type: array
          items:
            type: string
      - name: sort
        in: query
        description: Optional sort parameter
        schema:
          type: string
      - name: page
        in: query
        description: Page number
        schema:
          type: integer
          format: int32
          default: 1
      - name: limit
        in: query
        description: Number of items per page
        schema:
          type: integer
          format: int32
          default: 50
      - name: includes
        in: query
        description: Optional related entities to include
        schema:
          type: array
          items:
            type: string
      - name: fields
        in: query
        description: Optional name of the fields to include
        schema:
          type: array
          items:
            type: string
      - name: filterExpression
        in: query
        description: Optional filter expression
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsageInputs'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsageInputs'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsageInputs'
        '204':
          description: No Content
        '500':
          description: Internal Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
      operationId: getUsageInputs
      x-operation-id-source: derived
    patch:
      tags:
      - Consumption Billing
      summary: Updates usage input records
      description: Updates multiple usage inputs records and returns the updated record IDs.
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/UsageInputsRequest'
            example: "[\n  {\n    \"Id\": \"Id-1\",\n    \"Type\": \"Regular\",\n    \"PeriodStartDate\": \"2024-01-01T00:00:00\",\n    \"PeriodEndDate\": \"2024-01-31T00:00:00\",\n    \"SubmissionDate\": \"2024-01-05T00:00:00\",\n    \"SubscriptionIdentifierObject\": \"AssetLineItem\",\n    \"SubscriptionIdentifierField\": \"AssetNumber\",\n    \"SubscriptionIdentifierValue\": \"Asset001\",\n    \"UnitofMeasure\": \"Each\",\n    \"Quantity\": 20,\n    \"DraftQuantity\": 10,\n    \"RatingStatus\": \"Loaded\"\n  }\n]"
          text/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/UsageInputsRequest'
            example: "[\n  {\n    \"Id\": \"Id-1\",\n    \"Type\": \"Regular\",\n    \"PeriodStartDate\": \"2024-01-01T00:00:00\",\n    \"PeriodEndDate\": \"2024-01-31T00:00:00\",\n    \"SubmissionDate\": \"2024-01-05T00:00:00\",\n    \"SubscriptionIdentifierObject\": \"AssetLineItem\",\n    \"SubscriptionIdentifierField\": \"AssetNumber\",\n    \"SubscriptionIdentifierValue\": \"Asset001\",\n    \"UnitofMeasure\": \"Each\",\n    \"Quantity\": 20,\n    \"DraftQuantity\": 10,\n    \"RatingStatus\": \"Loaded\"\n  }\n]"
          application/*+json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/UsageInputsRequest'
            example: "[\n  {\n    \"Id\": \"Id-1\",\n    \"Type\": \"Regular\",\n    \"PeriodStartDate\": \"2024-01-01T00:00:00\",\n    \"PeriodEndDate\": \"2024-01-31T00:00:00\",\n    \"SubmissionDate\": \"2024-01-05T00:00:00\",\n    \"SubscriptionIdentifierObject\": \"AssetLineItem\",\n    \"SubscriptionIdentifierField\": \"AssetNumber\",\n    \"SubscriptionIdentifierValue\": \"Asset001\",\n    \"UnitofMeasure\": \"Each\",\n    \"Quantity\": 20,\n    \"DraftQuantity\": 10,\n    \"RatingStatus\": \"Loaded\"\n  }\n]"
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '207':
          description: Multi-Status
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '500':
          description: Internal Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
      operationId: patchUsageInputs
      x-operation-id-source: derived
    post:
      tags:
      - Consumption Billing
      summary: Creates usage input records
      description: Add usage input records which will be used for billing calculations
      requestBody:
        description: The list of usage input records to create
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/UsageInputsRequest'
            example: "[\n  {\n    \"Type\": \"Regular\",\n    \"PeriodStartDate\": \"2024-01-01T00:00:00\",\n    \"PeriodEndDate\": \"2024-01-31T00:00:00\",\n    \"SubmissionDate\": \"2024-01-05T00:00:00\",\n    \"SubscriptionIdentifierObject\": \"AssetLineItem\",\n    \"SubscriptionIdentifierField\": \"AssetNumber\",\n    \"SubscriptionIdentifierValue\": \"Asset001\",\n    \"UnitofMeasure\": \"Each\",\n    \"Quantity\": 10,\n    \"DraftQuantity\": 10,\n    \"RatingStatus\": \"Loaded\"\n  }\n]"
          text/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/UsageInputsRequest'
            example: "[\n  {\n    \"Type\": \"Regular\",\n    \"PeriodStartDate\": \"2024-01-01T00:00:00\",\n    \"PeriodEndDate\": \"2024-01-31T00:00:00\",\n    \"SubmissionDate\": \"2024-01-05T00:00:00\",\n    \"SubscriptionIdentifierObject\": \"AssetLineItem\",\n    \"SubscriptionIdentifierField\": \"AssetNumber\",\n    \"SubscriptionIdentifierValue\": \"Asset001\",\n    \"UnitofMeasure\": \"Each\",\n    \"Quantity\": 10,\n    \"DraftQuantity\": 10,\n    \"RatingStatus\": \"Loaded\"\n  }\n]"
          application/*+json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/UsageInputsRequest'
            example: "[\n  {\n    \"Type\": \"Regular\",\n    \"PeriodStartDate\": \"2024-01-01T00:00:00\",\n    \"PeriodEndDate\": \"2024-01-31T00:00:00\",\n    \"SubmissionDate\": \"2024-01-05T00:00:00\",\n    \"SubscriptionIdentifierObject\": \"AssetLineItem\",\n    \"SubscriptionIdentifierField\": \"AssetNumber\",\n    \"SubscriptionIdentifierValue\": \"Asset001\",\n    \"UnitofMeasure\": \"Each\",\n    \"Quantity\": 10,\n    \"DraftQuantity\": 10,\n    \"RatingStatus\": \"Loaded\"\n  }\n]"
      responses:
        '201':
          description: Created
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '207':
          description: Multi-Status
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '500':
          description: Internal Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
      operationId: postUsageInputs
      x-operation-id-source: derived
  /usage-inputs/estimate:
    post:
      tags:
      - Consumption Billing
      summary: Estimates draft ratings for the specified usage input records without updating…
      description: 'The usage inputs can be processed in two modes:


        Asynchronous mode: If UsageInputRatingRequest.ProcessAllUsageInputs is `true`, all loaded usage input records will be estimated asynchronously.


        The response will include a `JobId` to track the background operation.


        Synchronous mode: If UsageInputRatingRequest.ProcessAllUsageInputs is `false`, only the records with IDs provided in UsageInputRatingRequest.UsageInputIds will be estimated synchronously.


        The response will include the batch results for the specified records.


        Automatic async fallback: If `UsageInputRatingRequest.ProcessAllUsageInputs` is `false` but the number of values in

        `UsageInputRatingRequest.UsageInputIds` exceeds the configured threshold, the request will be processed

        asynchronously regardless of mode selection, and the response will include a `JobId`.


        This design allows the client to control:


        - Whether the operation applies to all records or only a specific subset.


        - Whether the operation is performed synchronously or asynchronously, subject to system thresholds.'
      requestBody:
        description: The request specifying which usage input records to estimate and how to process them.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsageInputRatingRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/UsageInputRatingRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/UsageInputRatingRequest'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
        '207':
          description: Multi-Status
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
        '500':
          description: Internal Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
      operationId: postUsageInputsEstimate
      x-operation-id-source: derived
  /usage-inputs/rate:
    post:
      tags:
      - Consumption Billing
      summary: Rates the specified usage input records
      description: 'The usage inputs can be processed in two modes:


        Asynchronous mode: If UsageInputRatingRequest.ProcessAllUsageInputs is `true`, all usage input records with status as Loaded will be rated asynchronously.


        The response will include a `JobId` to track the background operation.


        Synchronous mode: If UsageInputRatingRequest.ProcessAllUsageInputs is `false`, only the records with IDs provided in UsageInputRatingRequest.UsageInputIds will be rated synchronously.


        The response will include the batch results for the specified records.


        This design allows the client to control:


        - Whether the operation applies to all records or only a specific subset.


        - Whether the operation is performed synchronously or asynchronously.'
      requestBody:
        description: The request specifying which usage input records to rate and how to process them.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsageInputRatingRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/UsageInputRatingRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/UsageInputRatingRequest'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
        '207':
          description: Multi-Status
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
        '500':
          description: Internal Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
      operationId: postUsageInputsRate
      x-operation-id-source: derived
  /usage-inputs/unrate:
    post:
      tags:
      - Consumption Billing
      summary: Reverses ratings for the specified usage input records
      description: Reverses ratings for the specified usage input records.
      requestBody:
        description: The request specifying which usage input records should be unrated.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsageInputBaseRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/UsageInputBaseRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/UsageInputBaseRequest'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '207':
          description: Multi-Status
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/BaseResponseBatchResponse'
        '500':
          description: Internal Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
      operationId: postUsageInputsUnrate
      x-operation-id-source: derived
  /usage-inputs/{usageInputId}:
    get:
      tags:
      - Consumption Billing
      summary: Get a usage input record
      description: Retrieves a single usage input record by its identifier.
      parameters:
      - name: usageInputId
        in: path
        description: The identifier of the usage input
        required: true
        schema:
          type: string
      - name: includes
        in: query
        description: Optional related entities to include
        schema:
          type: array
          items:
            type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/UsageInputs'
            application/json:
              schema:
                $ref: '#/components/schemas/UsageInputs'
            text/json:
              schema:
                $ref: '#/components/schemas/UsageInputs'
        '404':
          description: Not Found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ErrorApiResponse'
      operationId: getUsageInputsByUsageInputId
      x-operation-id-source: derived
components:
  schemas:
    BaseResponseBatchResponse:
      type: object
      properties:
        Summary:
          type:
          - string
          - 'null'
        Results:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/BaseResponse'
      additionalProperties: false
    BaseResponse:
      type: object
      properties:
        Id:
          type:
          - string
          - 'null'
        RecordIndex:
          type: integer
          format: int32
        IsSuccess:
          type: boolean
        Errors:
          type:
          - array
          - 'null'
          items:
            type: string
        ErrorMessage:
          type:
          - string
          - 'null'
          deprecated: true
      additionalProperties: false
    CurrencyField:
      type: object
      properties:
        Value:
          type: number
          format: double
        DisplayValue:
          type: number
          format: double
          readOnly: true
        CurrencyCode:
          type:
          - string
          - 'null'
          readOnly: true
        CurrencySymbol:
          type:
          - string
          - 'null'
          readOnly: true
      additionalProperties: false
    ErrorApiResponse:
      type: object
      properties:
        Errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ApiError'
      additionalProperties: false
    UsageInputRatingRequest:
      type: object
      properties:
        UsageInputIds:
          type:
          - array
          - 'null'
          items:
            type: string
          description: Gets or sets the identifiers of usage input records to process.
        ProcessAllUsageInputs:
          type: boolean
          description: Gets or sets a value indicating whether all usage input records should be processed.
      additionalProperties: false
      description: Represents a request to rate, unrate, or estimate usage input records.
    UsageInputBaseRequest:
      type: object
      properties:
        UsageInputIds:
          type:
          - array
          - 'null'
          items:
            type: string
          description: Gets or sets the identifiers of usage input records to process.
      additionalProperties: false
      description: Represents a request to rate, unrate, or estimate usage input records.
    BatchOperationResponse:
      type: object
      properties:
        JobId:
          type:
          - string
          - 'null'
        BatchResults:
          $ref: '#/components/schemas/BaseResponseBatchResponse'
        IsSuccess:
          type:
          - boolean
          - 'null'
        Errors:
          type:
          - array
          - 'null'
          items:
            type: string
      additionalProperties: false
    UsageInputs:
      type: object
      properties:
        Id:
          type:
          - string
          - 'null'
        Name:
          type:
          - string
          - 'null'
        CreatedBy:
          $ref: '#/components/schemas/LookupObject'
        CreatedDate:
          type: string
          format: date-time
        ModifiedBy:
          $ref: '#/components/schemas/LookupObject'
        ModifiedDate:
          type: string
          format: date-time
        ExternalId:
          type:
          - string
          - 'null'
        ETag:
          type:
          - string
          - 'null'
        Type:
          type:
          - string
          - 'null'
        PeriodStartDate:
          type:
          - string
          - 'null'
          format: date-time
        PeriodEndDate:
          type:
          - string
          - 'null'
          format: date-time
        SubmissionDate:
          type:
          - string
          - 'null'
          format: date-time
        SubscriptionIdentifierObject:
          type:
          - string
          - 'null'
        SubscriptionIdentifierField:
          type:
          - string
          - 'null'
        SubscriptionIdentifierValue:
          type:
          - string
          - 'null'
        SubscriptionIdentifierRecordID:
          type:
          - string
          - 'null'
        UnitofMeasure:
          type:
          - string
          - 'null'
        Quantity:
          type:
          - number
          - 'null'
          format: double
        RatedAmount:
          $ref: '#/components/schemas/CurrencyField'
        DraftQuantity:
          type:
          - number
          - 'null'
          format: double
        DraftRatedAmount:
          $ref: '#/components/schemas/CurrencyField'
        RatingStatus:
          type:
          - string
          - 'null'
        BillingScheduleRecord:
          $ref: '#/components/schemas/LookupObject'
        UsageInputNumber:
          type:
          - string
          - 'null'
        BillingHeader:
          $ref: '#/components/schemas/LookupObject'
        Currency:
          type:
          - string
          - 'null'
        RatingMessage:
          type:
          - string
          - 'null'
      additionalProperties: {}
    UsageInputsRequest:
      type: object
      properties:
        Id:
          type:
          - string
          - 'null'
          description: The unique identifier of the usage input record.
        Type:
          type:
          - string
          - 'null'
          description: Indicates whether the input is a regular entry vs. an overage entry.
        PeriodStartDate:
          type:
          - string
          - 'null'
          description: The start date of the usage in a usage period.
          format: date-time
        PeriodEndDate:
          type:
          - string
          - 'null'
          description: The end date of the usage in a usage period.
          format: date-time
        SubmissionDate:
          type:
          - string
          - 'null'
          description: The ‘date’ by which the usage is accumulated within a period for tracking/forecast/rating purposes.
          format: date-time
        SubscriptionIdentifierObject:
          type:
          - string
          - 'null'
          description: The identifier to reference a subscription.
        SubscriptionIdentifierField:
          type:
          - string
          - 'null'
          description: Indicates the unique field to identify the subscription record (E.g., AssetNumber).
        SubscriptionIdentifierValue:
          type:
          - string
          - 'null'
          description: The record ID of the subscription identifier chosen.
        UnitofMeasure:
          type:
          - string
          - 'null'
          description: Indicates the unit of measure (UOM) of the quantity.
        Quantity:
          type:
          - number
          - 'null'
          description: The quantity to be rated for this usage input record.
          format: double
        DraftQuantity:
          type:
          - number
          - 'null'
          description: The ‘expected’ quantity for this usage input record.
          format: double
        RatingStatus:
          type:
          - string
          - 'null'
          description: Indicates the status of the rating process.
      additionalProperties: false
      description: Represents a request to create or update usage input records
    LookupObject:
      type: object
      properties:
        Id:
          type:
          - string
          - 'null'
        Name:
          type:
          - string
          - 'null'
      additionalProperties: false
    ApiError:
      type: object
      properties:
        Source:
          type:
          - string
          - 'null'
        Title:
          type:
          - string
          - 'null'
        Detail: {}
        Help:
          type:
          - string
          - 'null'
      additionalProperties: false
  securitySchemes:
    Bearer:
      type: apiKey
      description: Please insert JWT with Bearer into field
      name: Authorization
      in: header