Alphaus Cover API

(BETA) Cover API. Base URL: https://api.alphaus.cloud/m/blue/cover

Operations 164

POST /v1/account Registers GCP/Azure account. #
POST /v1/account/all:read Lists Azure and GCP accounts. #
POST /v1/account/unregistered:read Lists unregistered linked accounts #
GET /v1/account/{target} Gets the current account. For GCP and Azure. #
DELETE /v1/account/{target} Deletes GCP or Azure accounts based on the provided request. #
PUT /v1/account/{target} Update GCP/Azure account info #
DELETE /v1/acctaccess/{target} Deletes the current account access role attached to this target account. This does not delete the CloudFormation deployment in your account. #
POST /v1/ai/costusage #
POST /v1/alerts/anomaly Create Anomaly Alert #
POST /v1/alerts/anomaly/all:read List all the Anomaly Alert Data #
GET /v1/alerts/anomaly/{id} Get Anomaly Alert Data #
DELETE /v1/alerts/anomaly/{id} Delete Anomaly Alert #
PUT /v1/alerts/anomaly/{id} Update Anomaly Alert #
GET /v1/alerts/cost Get Alerts under organization #
POST /v1/alerts/cost Create Alerts under organization #
GET /v1/alerts/cost/{id} Get Specific Alert under organization #
DELETE /v1/alerts/cost/{id} Delete Specific Alert under organization #
PUT /v1/alerts/cost/{id} Update Specific Alert under organization #
POST /v1/alerts/expire/discount Create discount Expiration Alert. #
POST /v1/alerts/expire/discount/all:read List all discount Expiration Alert Data #
GET /v1/alerts/expire/discount/{id} Get discount Expiration Alert Data #
DELETE /v1/alerts/expire/discount/{id} Delete selected discount Expiration Alert Data #
PUT /v1/alerts/expire/discount/{id} Update discount Expiration Alert #
POST /v1/allocations:read WORK-IN-PROGRESS: Get all available allocation items for the specified cost group #
GET /v1/allocators WORK-IN-PROGRESS: Lists all the allocators #
POST /v1/allocators WORK-IN-PROGRESS: Creates cost allocator item #
GET /v1/allocators/attribute Get all available attributes for the charges #
GET /v1/allocators/source Get all values of the allocation source #
DELETE /v1/allocators/{id} WORK-IN-PROGRESS: Deletes a cost allocator #
PUT /v1/allocators/{id} WORK-IN-PROGRESS: Updates a cost allocator item #
POST /v1/anomaly Get the data of a cost group containing anomaly values #
GET /v1/apiaccess/verify #
GET /v1/assets/summary/{costGroupId} WORK-IN-PROGRESS: Assets summary for costgroup #
POST /v1/assets:read WORK-IN-PROGRESS: Lists assets for costgroup #
POST /v1/attributes WORK-IN-PROGRESS: Get Cost Group by Attribute Type #
GET /v1/aws/acctaccess Gets a CloudFormation launch URL for enabling the account access. #
POST /v1/aws/acctaccess Starts validation of the account access stack deployment. If successful, the IAM role created from the CloudFormation stack will be registered to the target. #
POST /v1/aws/acctaccess/cur Starts validation of the account access cur stack deployment. If successful, the IAM role created from the CloudFormation stack will be registered to the target. #
POST /v1/aws/acctaccess/stackset Starts validation of the account access stackset deployment. If successful, the IAM role created from the CloudFormation stackset will be registered to the linked accounts. #
PUT /v1/aws/acctaccess/{target} Starts an update to an existing account access CloudFormation stack for template changes, if any. Only call this API if the status of your account access is 'outdated'. #
POST /v1/azure/credentials/mpn WORK-IN-PROGRESS: Adding MpnSetting for Azure #
POST /v1/azure/credentials/partnercenter WORK-IN-PROGRESS: PartnerCenterCredentials for Azure #
GET /v1/billing/status Get the Customer Subscription status from marketplace #
POST /v1/billingacct Add Billing Account ID for GCP. #
POST /v1/budget WORK-IN-PROGRESS: Create Budget for specific cost group in an organization #
GET /v1/budget/{id} WORK-IN-PROGRESS: Get specific Budget data for a cost group in an organization #
DELETE /v1/budget/{id} WORK-IN-PROGRESS: Delete Budget for specific cost group in an organization #
PUT /v1/budget/{id} WORK-IN-PROGRESS: Update Budget for specific cost group in an organization #
POST /v1/budget:read WORK-IN-PROGRESS: List all Budgets in an organization or Budgets under specific cost group #
GET /v1/categories Retrieve the categories to be utilized in the creation of the cost group. #
POST /v1/channels WORK-IN-PROGRESS: Create Channel under organization #
GET /v1/channels/{id} WORK-IN-PROGRESS: Get Specific Channel under organization #
DELETE /v1/channels/{id} WORK-IN-PROGRESS: Delete Specific Channel under organization #
PUT /v1/channels/{id} WORK-IN-PROGRESS: Update Specific Channel under organization #
POST /v1/channels:read WORK-IN-PROGRESS: Get Channels under organization #
POST /v1/containers/costusage #
GET /v1/costgroups Get all the cost groups #
POST /v1/costgroups Create a cost group #
GET /v1/costgroups/resolve/{costGroupId} #
GET /v1/costgroups/{costGroupId} Get the details of the cost group #
DELETE /v1/costgroups/{costGroupId} Deletes a cost group #
POST /v1/costgroups/{costGroupId}/anomaly Sets Cost group's anomaly options #
PUT /v1/costgroups/{costGroupId}/colortheme Update cost group's color theme #
PUT /v1/costgroups/{costGroupId}/combinations Update cost group's combinations #
PUT /v1/costgroups/{costGroupId}/description Update cost group's description #
POST /v1/costgroups/{costGroupId}/eventIndicator Sets Cost group's event indicator #
PUT /v1/costgroups/{costGroupId}/icon Update cost group's icon #
PUT /v1/costgroups/{costGroupId}/image Update cost group's image #
PUT /v1/costgroups/{costGroupId}/name Update cost group's name #
POST /v1/costusage #
POST /v1/costusage:read WORK-IN-PROGRESS: Get usage and usage-based costs for the specified costgroup #
POST /v1/demo/populate WORK-IN-PROGRESS: Populate demo data #
POST /v1/demo/reset WORK-IN-PROGRESS: Reset demo data #
POST /v1/forecasts #
POST /v1/forecasts/data:read #
GET /v1/forecasts/{id} #
DELETE /v1/forecasts/{id} #
PUT /v1/forecasts/{id} #
POST /v1/forecasts:read #
POST /v1/marketplace/info Adding orgId to marketplace customers #
GET /v1/me Get the details of the logged-in user #
PUT /v1/me/apptheme Modify user's app theme #
PUT /v1/me/attributes Modify attributes #
PUT /v1/me/avatar Modify user's avatar #
PUT /v1/me/colortheme Modify user's color theme #
PUT /v1/me/costgroupcreation WORK-IN-PROGRESS: Set user preference in cost group creation UI #
PUT /v1/me/email Modify user's email #
PUT /v1/me/icon Modify user's icon #
PUT /v1/me/locale Modify user's locale #
PUT /v1/me/mainview Modify user's main view #
PUT /v1/me/name Modify user's name #
POST /v1/me/password Reset user's password #
GET /v1/me/roles Lists the roles and cost groups assigned to the authenticated user. #
PUT /v1/me/timezone Modify user's timezone #
POST /v1/members/activate Activate the added user #
POST /v1/members/auth0 WORK-IN-PROGRESS: Add or read user from Auth0 #
POST /v1/members/aws/subscription WORK-IN-PROGRESS:Resolve user for aws marketplace subscription integration #
POST /v1/members/onboard Onboard an organization with an admin account and default cost group #
POST /v1/members/profile Profiling for new users. #
GET /v1/members/profile/{email} Octo getting user profile #
PUT /v1/members/profile/{email} Update user profile #
POST /v1/members/register Octo new user registration #
POST /v1/members/resetpassword Reset member's password #
GET /v1/organizations/currency Get Org's reference of currency exchange rate #
POST /v1/organizations/currency Sets Org's reference of currency exchange rate #
GET /v1/organizations/rates Get list of exchange rates for a fixed report #
GET /v1/organizations/transfer/{target} WORK-IN-PROGRESS: Transfer the account from the original organization to Alphaus payer account #
POST /v1/recommendation/execute #
GET /v1/recommendations #
POST /v1/recommendations/all:read Lists recommendations based on specified criteria. #
GET /v1/recommendations/details/{id} Retrieves a specific recommendation by its ID. (Version 2) #
POST /v1/recommendations/summaries #
GET /v1/reports/fiscalmonth Get Org's starting month/ fiscal month #
POST /v1/reports/fiscalmonth Sets Org's starting month/ fiscal month #
GET /v1/reports/insight/summary/{costGroupId} Get data for insights reports summary #
POST /v1/reports/rate/nonperforming:read #
POST /v1/reports/resources/untagged:read #
GET /v1/unitcost Lists Unit Types #
POST /v1/unitcost Create Unit Type #
GET /v1/unitcost/autosuggest List Suggested Unit Types #
POST /v1/unitcost/autosuggest/create Create Unit from Suggested Units #
POST /v1/unitcost/autosuggest/merge Merge Suggested Units #
POST /v1/unitcost/merge Merge Existing Unit Types #
GET /v1/unitcost/metrics List all Unit Metrics #
POST /v1/unitcost/metrics Create Unit Metric #
GET /v1/unitcost/metrics/cloudwatch/metadata Get Cloudwatch Metadata #
POST /v1/unitcost/metrics/googlesheet/confirm Confirm Google Sheet Access #
POST /v1/unitcost/metrics/googlesheet/preview Preview Google Sheet Data #
GET /v1/unitcost/metrics/{id} Get Specific Unit Metric #
DELETE /v1/unitcost/metrics/{id} Delete Specific Unit Metric #
PUT /v1/unitcost/metrics/{id} Update Specific Unit Metric #
GET /v1/unitcost/sharedresources List all Shared Resources #
POST /v1/unitcost/sharedresources Create Shared Resource #
GET /v1/unitcost/sharedresources/{id} Get Specific Shared Resource #
DELETE /v1/unitcost/sharedresources/{id} Delete Specific Shared Resource #
PUT /v1/unitcost/sharedresources/{id} Update Specific Shared Resource #
GET /v1/unitcost/{id} Get Specific Unit Type #
DELETE /v1/unitcost/{id} Delete Specific Unit Type #
PUT /v1/unitcost/{id} Update Specific Unit Type #
GET /v1/users Lists all users in the organization #
POST /v1/users/invite Invites users to join the organization and assigns them roles. #
GET /v1/users/{id} Retrieves a user's details by their ID. #
DELETE /v1/users/{id} Deletes a user from the organization. #
POST /v1/users/{id}/reinvite Reinvites a user to join the organization. This can be used when the user did not receive or lost the original invitation email. #
PUT /v1/users/{userId} Updates a user's role and cost group access. #
GET /v1/views Get all the views #
POST /v1/views Create a view #
PUT /v1/views/favorite/add Add to favorites #
PUT /v1/views/favorite/remove Remove from favorites #
GET /v1/views/favorites Get favorite views #
PUT /v1/views/layout/{viewId} Updates the view's layout #
PUT /v1/views/layout/{viewId}/{widgetId} Updates the view's widget #
POST /v1/views/publish Publish current view #
GET /v1/views/{viewId} Get the details of the current view #
DELETE /v1/views/{viewId} Deletes a view #
PUT /v1/views/{viewId} Updates the view details #
PUT /v1/views/{viewId}/colortheme Update view's color theme #
PUT /v1/views/{viewId}/currency Update report's currency settings #
POST /v1/views/{viewId}/sidemenufavorite Add as side menu favorite #
PUT /v1/views/{viewId}/sidemenustate Updates the side menu state #
POST /v1/views/{viewId}/sidemenuunfavorite Remove from side menu favorite #
POST /v1/{vendor_1}/payers Assign payer to a linked account #
POST /v1/{vendor}/account Registers an account #
POST /v1/{vendor}/discountplan/{orgId}:read Get discount plan details for an organization (or MSP). #

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/alphaus-cover-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

alphaus-cover-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Blue API reference Admin Cover API
  description: 'Alphaus provides an API for interacting with its services. Blue API is a RESTful API that can be accessed by an HTTP client such as `curl`, or any HTTP library which is part of most modern programming languages. This API reference is autogenerated from [protocol buffers](https://developers.google.com/protocol-buffers) defined in this [repository](https://github.com/alphauslabs/blueapi), together with our supported [client libraries](https://alphauslabs.github.io/docs/blueapi/client-sdks/). See the official [documentation](https://alphauslabs.github.io/docs/blueapi/overview/) for more information.


    You may encounter the following feature maturity indicators:

    - **(WORK-IN-PROGRESS)** - Development is ongoing, don''t use yet;

    - **(BETA)** - New or experimental features, subject to changes; and

    - **(DEPRECATED)** - Outdated or replaced features.


    Some endpoints, especially those that return lists of resources, have streaming responses; newline-separated stream of “chunks”. Each chunk is an envelope that can contain either a response message or an error. Only the last chunk will include an error, if any.'
  version: v1
servers:
- url: https://api.alphaus.cloud/m/blue
  description: Base URL reconciled from apis.yml
tags:
- name: Cover
  description: '(BETA) Cover API. Base URL: https://api.alphaus.cloud/m/blue/cover'
  externalDocs:
    description: Service definition
    url: https://github.com/alphauslabs/blueapi/tree/main/cover/
paths:
  /v1/account:
    post:
      summary: Registers GCP/Azure account.
      operationId: Cover_RegisterDataAccess
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: object
                properties: {}
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1RegisterDataAccessRequest'
        description: Request message for Register Data Access. For azure and gcp.
        required: true
  /v1/account/all:read:
    post:
      summary: Lists Azure and GCP accounts.
      operationId: Cover_ListDataAccess
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/v1DataAccess'
                  error:
                    $ref: '#/components/schemas/rpcStatus'
                title: Stream result of v1DataAccess
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
  /v1/account/unregistered:read:
    post:
      summary: Lists unregistered linked accounts
      operationId: Cover_ListUnregisteredAccounts
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ListUnregisteredAccountsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
  /v1/account/{target}:
    get:
      summary: Gets the current account. For GCP and Azure.
      operationId: Cover_GetDataAccess
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1DataAccess'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: target
        description: Required. (Billing ID for GCP / Account ID for Azure)
        in: path
        required: true
        schema:
          type: string
      - name: vendor
        description: Vendor (GCP/Azure)
        in: query
        required: false
        schema:
          type: string
      - name: accountType
        description: In the context of fetching account details, specifying the account type is necessary. This is because the target alone might not uniquely identify an account and could result in multiple data points.
        in: query
        required: false
        schema:
          type: string
      tags:
      - Cover
    delete:
      summary: Deletes GCP or Azure accounts based on the provided request.
      operationId: Cover_DeleteDataAccess
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: object
                properties: {}
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: target
        description: Required. (Billing ID for GCP / Account ID for Azure)
        in: path
        required: true
        schema:
          type: string
      - name: vendor
        description: Vendor (GCP/Azure)
        in: query
        required: false
        schema:
          type: string
      - name: accountType
        description: In the context of fetching account details, specifying the account type is necessary. This is because the target alone might not uniquely identify an account and could result in multiple data points.
        in: query
        required: false
        schema:
          type: string
      tags:
      - Cover
    put:
      summary: Update GCP/Azure account info
      operationId: Cover_UpdateDataAccess
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: object
                properties: {}
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: target
        description: Billing Id for GCP, Account Id for Azure
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CoverUpdateDataAccessBody'
        required: true
  /v1/acctaccess/{target}:
    delete:
      summary: Deletes the current account access role attached to this target account. This does not delete the CloudFormation deployment in your account.
      operationId: Cover_DeleteAccountAccess
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1DeleteAccountAccessResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: target
        description: Required. The target AWS account to delete.
        in: path
        required: true
        schema:
          type: string
      - name: vendor
        in: query
        required: false
        schema:
          type: string
      tags:
      - Cover
  /v1/ai/costusage:
    post:
      operationId: Cover_GetAICostAndUsage
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1GetAICostAndUsageResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1GetAICostAndUsageRequest'
        required: true
  /v1/alerts/anomaly:
    post:
      summary: Create Anomaly Alert
      operationId: Cover_CreateAnomalyAlert
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: object
                properties: {}
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1CreateAnomalyAlertRequest'
        required: true
  /v1/alerts/anomaly/all:read:
    post:
      summary: List all the Anomaly Alert Data
      operationId: Cover_ListAnomalyAlert
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/v1AnomalyAlertData'
                  error:
                    $ref: '#/components/schemas/rpcStatus'
                title: Stream result of v1AnomalyAlertData
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
  /v1/alerts/anomaly/{id}:
    get:
      summary: Get Anomaly Alert Data
      operationId: Cover_GetAnomalyAlert
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AnomalyAlertData'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: required. Id
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
    delete:
      summary: Delete Anomaly Alert
      operationId: Cover_DeleteAnomalyAlert
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: object
                properties: {}
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: required. Id
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
    put:
      summary: Update Anomaly Alert
      operationId: Cover_UpdateAnomalyAlert
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: object
                properties: {}
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: required. Id
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CoverUpdateAnomalyAlertBody'
        required: true
  /v1/alerts/cost:
    get:
      summary: Get Alerts under organization
      operationId: Cover_GetAlerts
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/v1GetAlertsResponse'
                  error:
                    $ref: '#/components/schemas/rpcStatus'
                title: Stream result of v1GetAlertsResponse
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
    post:
      summary: Create Alerts under organization
      operationId: Cover_CreateAlert
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1CreateAlertResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1CreateAlertRequest'
        required: true
  /v1/alerts/cost/{id}:
    get:
      summary: Get Specific Alert under organization
      operationId: Cover_GetAlertDetails
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1GetAlertDetailsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: Required. Alert ID.
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
    delete:
      summary: Delete Specific Alert under organization
      operationId: Cover_DeleteAlert
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1DeleteAlertResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: Required. Alert ID.
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
    put:
      summary: Update Specific Alert under organization
      operationId: Cover_UpdateAlertDetails
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1UpdateAlertDetailsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: Required. Alert ID.
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CoverUpdateAlertDetailsBody'
        required: true
  /v1/alerts/expire/discount:
    post:
      summary: Create discount Expiration Alert.
      operationId: Cover_CreateDiscountExpirationAlert
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: object
                properties: {}
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1CreateDiscountExpirationAlertRequest'
        required: true
  /v1/alerts/expire/discount/all:read:
    post:
      summary: List all discount Expiration Alert Data
      operationId: Cover_ListDiscountExpirationAlert
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/v1DiscountExpiryAlertData'
                  error:
                    $ref: '#/components/schemas/rpcStatus'
                title: Stream result of v1DiscountExpiryAlertData
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
  /v1/alerts/expire/discount/{id}:
    get:
      summary: Get discount Expiration Alert Data
      operationId: Cover_GetDiscountExpirationAlert
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1DiscountExpiryAlertData'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: required. Id
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
    delete:
      summary: Delete selected discount Expiration Alert Data
      operationId: Cover_DeleteDiscountExpirationAlert
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: object
                properties: {}
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: required. Id
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
    put:
      summary: Update discount Expiration Alert
      operationId: Cover_UpdateDiscountExpirationAlert
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: object
                properties: {}
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: required. Id
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CoverUpdateDiscountExpirationAlertBody'
        required: true
  /v1/allocations:read:
    post:
      summary: 'WORK-IN-PROGRESS: Get all available allocation items for the specified cost group'
      operationId: Cover_GetCostGroupAllocation
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/v1AllocationItem'
                  error:
                    $ref: '#/components/schemas/rpcStatus'
                title: Stream result of v1AllocationItem
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1GetCostGroupAllocationRequest'
        description: Request message for the GetCostGroupAllocation rpc.
        required: true
  /v1/allocators:
    get:
      summary: 'WORK-IN-PROGRESS: Lists all the allocators'
      operationId: Cover_ListAllocators
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/v1CostAllocatorDetails'
                  error:
                    $ref: '#/components/schemas/rpcStatus'
                title: Stream result of v1CostAllocatorDetails
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
    post:
      summary: 'WORK-IN-PROGRESS: Creates cost allocator item'
      operationId: Cover_CreateAllocator
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1CostAllocatorDetails'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1CreateAllocatorRequest'
        description: Request message for the CreateAllocator rpc.
        required: true
  /v1/allocators/attribute:
    get:
      summary: Get all available attributes for the charges
      operationId: Cover_GetAllocationAttributes
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1GetAllocationAttributesResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: category
        in: query
        required: false
        schema:
          type: string
      tags:
      - Cover
  /v1/allocators/source:
    get:
      summary: Get all values of the allocation source
      operationId: Cover_GetAllocationSources
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1GetAllocationSourcesResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: type
        in: query
        required: false
        schema:
          type: string
      - name: accountId
        in: query
        required: false
        schema:
          type: string
      tags:
      - Cover
  /v1/allocators/{id}:
    delete:
      summary: 'WORK-IN-PROGRESS: Deletes a cost allocator'
      operationId: Cover_DeleteAllocator
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: object
                properties: {}
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: Required. The id of the allocator to delete.
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
    put:
      summary: 'WORK-IN-PROGRESS: Updates a cost allocator item'
      operationId: Cover_UpdateAllocator
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1CostAllocatorDetails'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CoverUpdateAllocatorBody'
        required: true
  /v1/anomaly:
    post:
      summary: Get the data of a cost group containing anomaly values
      operationId: Cover_GetAnomalyinCostGroup
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/v1AnomalyData'
                  error:
                    $ref: '#/components/schemas/rpcStatus'
                title: Stream result of v1AnomalyData
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1GetAnomalyinCostGroupRequest'
        required: true
  /v1/apiaccess/verify:
    get:
      operationId: Cover_VerifyAPIAccess
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1VerifyAPIAccessResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: vendor
        description: 'Required: gcp'
        in: query
        required: false
        schema:
          type: string
      - name: target
        description: 'Required: projectId'
        in: query
        required: false
        schema:
          type: string
      tags:
      - Cover
  /v1/assets/summary/{costGroupId}:
    get:
      summary: 'WORK-IN-PROGRESS: Assets summary for costgroup'
      operationId: Cover_GetAssetsSummary
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1GetAssetsSummaryResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: costGroupId
        description: Required. Cost Group Id.
        in: path
        required: true
        schema:
          type: string
      - name: startMonth
        description: 'Optional. If not set, current month will be used. Format: `yyyymm`.'
        in: query
        required: false
        schema:
          type: string
      - name: endMonth
        description: 'Optional. If not set, current month will be used. Format: `yyyymm`.'
        in: query
        required: false
        schema:
          type: string
      - name: combineDates
        description: Optional. If true, return the assets summary for the requested period. Else, summary per month is returned.
        in: query
        required: false
        schema:
          type: boolean
      tags:
      - Cover
  /v1/assets:read:
    post:
      summary: 'WORK-IN-PROGRESS: Lists assets for costgroup'
      operationId: Cover_ListAssets
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/blueapiCoverV1Resource'
                  error:
                    $ref: '#/components/schemas/rpcStatus'
                title: Stream result of blueapiCoverV1Resource
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1ListAssetsRequest'
        description: Request message for the Asset.ListResources rpc.
        required: true
  /v1/attributes:
    post:
      summary: 'WORK-IN-PROGRESS: Get Cost Group by Attribute Type'
      operationId: Cover_GetCostGroupAttribute
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1GetCostGroupAttributeResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1GetCostGroupAttributeRequest'
        required: true
  /v1/aws/acctaccess:
    get:
      summary: Gets a CloudFormation launch URL for enabling the account access.
      operationId: Cover_GetAccountAccessTemplateUrl
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1GetAccountAccessTemplateUrlResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: type
        description: All templates are publicly available from the reponse link (`templateUrl`) if you want to audit the included permissions.
        in: query
        required: false
        schema:
          type: string
      tags:
      - Cover
    post:
      summary: Starts validation of the account access stack deployment. If successful, the IAM role created from the CloudFormation stack will be registered to the target.
      operationId: Cover_CreateAccountAccess
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AccountAccess'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Cover
      requestBody:
        content:
          application/json:
            sc

# --- truncated at 32 KB (317 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/alphaus/refs/heads/main/openapi/alphaus-cover-api-openapi.yml