Vantage VirtualTags API

Operations about VirtualTags

Operations 8

GET /virtual_tag_configs Get all virtual tag configs #
POST /virtual_tag_configs Create virtual tag config #
GET /virtual_tag_configs/{token} Get virtual tag config by token #
PUT /virtual_tag_configs/{token} Update virtual tag config #
DELETE /virtual_tag_configs/{token} Delete virtual tag config #
GET /virtual_tag_configs/{token}/status Get virtual tag config processing status #
PUT /virtual_tag_configs/{token}/async Update virtual tag config asynchronously #
GET /virtual_tag_configs/async/{request_id} Get async virtual tag config update status #

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/vantage-sh-virtualtags-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

vantage-sh-virtualtags-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Vantage AccessGrants Virtual Tags API
  description: The Vantage API provides programmatic access to the Vantage cloud cost management and FinOps platform. It covers cost reporting and querying (Costs, Cost Reports, forecasts, unit costs), cost visibility and optimization (Resources, Recommendations, Financial Commitments, Kubernetes efficiency), governance and alerting (Budgets, Budget Alerts, Cost Alerts, Anomaly Alerts and Notifications), organization (Segments, Folders, Saved Filters, Dashboards, Workspaces, Teams), and billing (Billing Profiles, Billing Rules, Invoices). The API spans AWS, Azure, GCP, Kubernetes, Datadog, Snowflake, MongoDB, and other supported providers. Base URL https://api.vantage.sh/v2. Authentication is via OAuth2 (client credentials / bearer token) with read and write scopes.
  termsOfService: https://www.vantage.sh/terms-of-use
  contact:
    name: Vantage Support
    url: https://www.vantage.sh
    email: support@vantage.sh
  version: 2.0.0
servers:
- url: https://api.vantage.sh/v2
security:
- oauth2:
  - read
tags:
- name: VirtualTags
  description: Operations about VirtualTags
paths:
  /virtual_tag_configs:
    get:
      tags:
      - VirtualTags
      summary: Get all virtual tag configs
      description: Return all VirtualTagConfigs that the current API token has access to.
      operationId: getVirtualTagConfigs
      parameters:
      - name: q
        in: query
        description: A search query to filter VirtualTagConfigs by key.
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualTagConfigs'
              example:
                virtual_tag_configs:
                - token: vtag_eabf584ca1fe7769
                  created_by_token: usr_d2ad8c75f4fee21e
                  key: Product Team
                  overridable: false
                  backfill_until: '2025-12-01'
                  collapsed_tag_keys: []
                  values:
                  - filter: (costs.provider = 'aws' AND costs.service = 'Amazon Elastic Compute Cloud' AND costs.account_id IN ('1234', '5678'))
                    name: Growth
                    label_transforms: []
                    percentages: []
                    date_ranges: []
                  - filter: (costs.provider = 'aws' AND costs.account_id IN ('1234', '5678')) OR (costs.provider = 'gcp' AND costs.service = 'Google Compute Engine')
                    name: API
                    label_transforms: []
                    percentages: []
                    date_ranges: []
                  - filter: (costs.provider = 'aws' AND costs.service = 'AmazonEC2')
                    business_metric_token: bsnss_mtrc_60e1ffb95a9a00f0
                    label_transforms: []
                    percentages: []
                    date_ranges: []
                  - filter: (costs.provider = 'aws' AND costs.service != 'Amazon Elastic Compute Cloud')
                    cost_metric:
                      filter: costs.provider = 'aws' AND costs.service = 'Amazon Elastic Compute Cloud'
                      aggregation:
                        tag: aws:CreatedBy
                    label_transforms: []
                    percentages: []
                    date_ranges: []
                  - filter: (costs.provider = 'azure' AND costs.service = 'Azure Compute')
                    label_transforms: []
                    percentages:
                    - value: apples-a
                      pct: 50.0
                    - value: apples-b
                      pct: 50.0
                    date_ranges: []
      security:
      - oauth2:
        - read
    post:
      tags:
      - VirtualTags
      summary: Create virtual tag config
      description: Create a new VirtualTagConfig.
      operationId: createVirtualTagConfig
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/createVirtualTagConfig'
        required: true
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualTagConfig'
              example:
                token: vtag_d5503747c5ce9a21
                created_by_token: team_7589281b8e354c45
                key: Expense Code
                overridable: false
                backfill_until: '2024-07-01'
                collapsed_tag_keys: []
                values:
                - filter: 'costs.provider = ''aws'' AND

                    costs.service = ''Amazon Elastic Compute Cloud'' AND

                    costs.account_id IN (''1234'', ''5678'')

                    '
                  name: EXPC-1234
                  label_transforms: []
                  percentages: []
                  date_ranges:
                  - start_date: '2024-01-01'
                    end_date: '2024-12-31'
                - filter: "(\n  (costs.provider = 'aws' AND costs.account_id IN ('1234', '5678')) OR\n  (costs.provider = 'gcp' AND costs.service = 'Google Compute Engine')\n)\n"
                  name: EXPC-9876
                  label_transforms: []
                  percentages: []
                  date_ranges: []
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '400':
          description: BadRequest
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: UnprocessableEntity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
      - oauth2:
        - write
      x-codegen-request-body-name: createVirtualTagConfig
  /virtual_tag_configs/{token}:
    get:
      tags:
      - VirtualTags
      summary: Get virtual tag config by token
      description: Return a specific VirtualTagConfig.
      operationId: getVirtualTagConfig
      parameters:
      - name: token
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualTagConfig'
              example:
                token: vtag_9cefbbc5f17d06fc
                created_by_token: usr_f8c083243325740b
                key: Product Team
                overridable: false
                backfill_until: '2024-07-01'
                collapsed_tag_keys: []
                values:
                - filter: (costs.provider = 'aws' AND costs.service = 'Amazon Elastic Compute Cloud') AND (costs.provider = 'aws' AND costs.account_id IN ('1234', '5678'))
                  name: Growth
                  label_transforms: []
                  percentages: []
                  date_ranges:
                  - start_date: '2024-01-01'
                    end_date: '2024-12-31'
                - filter: (costs.provider = 'aws' AND costs.account_id IN ('1234', '5678')) OR (costs.provider = 'gcp' AND costs.service = 'Google Compute Engine')
                  name: API
                  label_transforms: []
                  percentages: []
                  date_ranges: []
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
      - oauth2:
        - read
    put:
      tags:
      - VirtualTags
      summary: Update virtual tag config
      description: Updates an existing VirtualTagConfig.
      operationId: updateVirtualTagConfig
      parameters:
      - name: token
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/updateVirtualTagConfig'
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualTagConfig'
              example:
                token: vtag_4430add8b8552a32
                created_by_token: usr_c3dedc15ebe12e03
                key: team
                overridable: true
                backfill_until: '2024-07-01'
                collapsed_tag_keys: []
                values:
                - filter: 'costs.provider = ''aws'' AND costs.service = ''Amazon Elastic Compute Cloud'' AND

                    costs.account_id IN (''1234'', ''5678'')

                    '
                  name: marketing
                  label_transforms: []
                  percentages: []
                  date_ranges:
                  - start_date: '2024-01-01'
                    end_date: '2024-12-31'
                - filter: '((costs.provider = ''aws'' AND costs.account_id IN (''1234'', ''5678'')) OR

                    (costs.provider = ''gcp'' AND costs.service = ''Google Compute Engine''))

                    '
                  name: third-party integrations
                  label_transforms: []
                  percentages: []
                  date_ranges: []
        '202':
          description: Request accepted for processing
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncVirtualTagConfigUpdate'
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '400':
          description: BadRequest
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: UnprocessableEntity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
      - oauth2:
        - write
      x-codegen-request-body-name: updateVirtualTagConfig
    delete:
      tags:
      - VirtualTags
      summary: Delete virtual tag config
      description: Deletes an existing VirtualTagConfig.
      operationId: deleteVirtualTagConfig
      parameters:
      - name: token
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualTagConfig'
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
      - oauth2:
        - write
  /virtual_tag_configs/{token}/status:
    get:
      tags:
      - VirtualTags
      summary: Get virtual tag config processing status
      description: Return the processing status of a specific VirtualTagConfig.
      operationId: getVirtualTagConfigStatus
      parameters:
      - name: token
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Processing is complete
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualTagConfigStatus'
              example:
                token: vtag_1234
                processing: true
                providers:
                - provider: aws
                  status: processing
                - provider: gcp
                  status: complete
        '202':
          description: Processing is still in progress
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualTagConfigStatus'
              example:
                token: vtag_1234
                processing: true
                providers:
                - provider: aws
                  status: processing
                - provider: gcp
                  status: complete
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
      - oauth2:
        - read
  /virtual_tag_configs/{token}/async:
    put:
      tags:
      - VirtualTags
      summary: Update virtual tag config asynchronously
      description: Asynchronously updates an existing VirtualTagConfig.
      operationId: updateAsyncVirtualTagConfig
      parameters:
      - name: token
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/updateAsyncVirtualTagConfig'
        required: true
      responses:
        '202':
          description: Request accepted for processing
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncVirtualTagConfigUpdate'
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '400':
          description: BadRequest
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: UnprocessableEntity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
      - oauth2:
        - write
      x-codegen-request-body-name: updateAsyncVirtualTagConfig
  /virtual_tag_configs/async/{request_id}:
    get:
      tags:
      - VirtualTags
      summary: Get async virtual tag config update status
      description: Check the status of an async VirtualTagConfig update.
      operationId: getAsyncVirtualTagConfigStatus
      parameters:
      - name: request_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Request completed successfully
          content: {}
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
      - oauth2:
        - read
components:
  schemas:
    VirtualTagConfigProviderStatus:
      required:
      - provider
      - status
      type: object
      properties:
        provider:
          type: string
          description: The provider name.
          example: aws
        status:
          type: string
          description: 'The processing status for this provider. Possible values: queued, processing, complete, failed.'
          example: processing
    Errors:
      required:
      - errors
      type: object
      properties:
        links:
          $ref: '#/components/schemas/Links'
        errors:
          type: array
          items:
            type: string
      description: Errors model
    VirtualTagConfigValueLabelTransform:
      required:
      - type
      type: object
      properties:
        type:
          type: string
          description: The label transform type.
          enum:
          - split
          - format
        delimiter:
          type:
          - string
          - 'null'
          description: Delimiter used by split transforms.
        index:
          type:
          - integer
          - 'null'
          description: Zero-based index used by split transforms.
          format: int32
        template:
          type:
          - string
          - 'null'
          description: Template used by format transforms.
    AsyncVirtualTagConfigUpdate:
      required:
      - request_id
      - status_url
      type: object
      properties:
        request_id:
          type: string
          description: The request ID of the async virtual tag config update.
          example: 550e8400-e29b-41d4-a716-446655440000
        status_url:
          type: string
          description: The status path of the async virtual tag config update.
          example: /v2/virtual_tag_configs/async/550e8400-e29b-41d4-a716-446655440000
      description: AsyncVirtualTagConfigUpdate model
    Links:
      type: object
      properties:
        self:
          type:
          - string
          - 'null'
          description: The URL of the current page of results.
        first:
          type:
          - string
          - 'null'
          description: The URL of the first page of results.
        next:
          type:
          - string
          - 'null'
          description: The URL of the next page of results, if one exists.
        last:
          type:
          - string
          - 'null'
          description: The URL of the last page of results, if one exists.
        prev:
          type:
          - string
          - 'null'
          description: The URL of the previous page of results, if one exists.
    updateVirtualTagConfig:
      type: object
      properties:
        key:
          type: string
          description: The key of the VirtualTagConfig.
        overridable:
          type:
          - boolean
          - 'null'
          description: Whether the VirtualTagConfig can override a provider-supplied tag on a matching Cost.
        backfill_until:
          type:
          - string
          - 'null'
          description: The earliest month the VirtualTagConfig should be backfilled to.
          format: date
        collapsed_tag_keys:
          type: array
          description: Tag keys to collapse values for.
          items:
            required:
            - key
            type: object
            properties:
              key:
                type: string
                description: The tag key to collapse values for.
              providers:
                type: array
                description: Provider-only scope for this collapsed tag key. Invalid when filter is set; include provider restrictions in filter instead. Defaults to all providers.
                items:
                  type: string
              filter:
                type: string
                description: The VQL filter this collapsed tag key applies to. When set, do not also set providers; include any provider restrictions directly in filter.
        values:
          type: array
          description: Values for the VirtualTagConfig, with match precedence determined by order in the list.
          items:
            required:
            - filter
            type: object
            properties:
              filter:
                type: string
                description: The filter query language to apply to the value. Additional documentation available at https://docs.vantage.sh/vql.
              name:
                type: string
                description: The name of the value.
              business_metric_token:
                type: string
                description: The token of an associated business metric.
              display_name:
                type: string
                description: The display name for an allocation value (cost_metric or percentages). Invalid when name is set.
              label_transforms:
                type: array
                items:
                  required:
                  - type
                  type: object
                  properties:
                    type:
                      type: string
                    delimiter:
                      type:
                      - string
                      - 'null'
                    index:
                      type:
                      - integer
                      - 'null'
                      format: int32
                    template:
                      type:
                      - string
                      - 'null'
                x-omitempty: true
              cost_metric:
                required:
                - aggregation
                - filter
                type: object
                properties:
                  filter:
                    type: string
                  aggregation:
                    required:
                    - tag
                    type: object
                    properties:
                      tag:
                        type: string
              percentages:
                type: array
                items:
                  required:
                  - pct
                  - value
                  type: object
                  properties:
                    value:
                      type: string
                    pct:
                      type: number
                      format: float
                x-omitempty: true
              date_ranges:
                type: array
                description: Date ranges restricting when this value applies. Each range has optional start_date and end_date (inclusive, YYYY-MM-DD).
                items:
                  type: object
                  properties:
                    start_date:
                      type: string
                      description: Inclusive start date (YYYY-MM-DD), or null for unbounded.
                    end_date:
                      type: string
                      description: Inclusive end date (YYYY-MM-DD), or null for unbounded.
                x-omitempty: true
      description: Updates an existing VirtualTagConfig.
    VirtualTagConfig:
      required:
      - backfill_until
      - collapsed_tag_keys
      - created_by_token
      - key
      - overridable
      - token
      - values
      type: object
      properties:
        token:
          type: string
          description: The token of the VirtualTagConfig.
          example: vtag_1234
        created_by_token:
          type:
          - string
          - 'null'
          description: The token of the Creator of the VirtualTagConfig.
          example: usr_1234
        key:
          type: string
          description: The key of the VirtualTagConfig.
          example: Cost Center
        overridable:
          type: boolean
          description: Whether the VirtualTagConfig can override a provider-supplied tag on a matching Cost.
        backfill_until:
          type: string
          description: The earliest month VirtualTagConfig should be backfilled to.
          example: '2026-01-01'
        collapsed_tag_keys:
          type: array
          description: Tag keys to collapse values for.
          items:
            $ref: '#/components/schemas/VirtualTagConfigCollapsedTagKey'
        values:
          type: array
          description: Values for the VirtualTagConfig, with match precedence determined by their relative order in the list.
          items:
            $ref: '#/components/schemas/VirtualTagConfigValue'
      description: VirtualTagConfig model
    VirtualTagConfigCollapsedTagKey:
      required:
      - filter
      - key
      - providers
      type: object
      properties:
        key:
          type: string
          description: The tag key to collapse values for.
          example: team
        providers:
          type: array
          description: The providers this collapsed tag key applies to. Empty when it applies to all providers.
          items:
            type: string
            example: ''
        filter:
          type:
          - string
          - 'null'
          description: The VQL filter this collapsed tag key applies to. Null when the key is provider-scoped or unset.
          example: (costs.provider = 'aws') OR (costs.provider = 'gcp')
    VirtualTagConfigs:
      required:
      - virtual_tag_configs
      type: object
      properties:
        virtual_tag_configs:
          type: array
          items:
            $ref: '#/components/schemas/VirtualTagConfig'
      description: VirtualTagConfigs model
    VirtualTagConfigValuePercentage:
      required:
      - pct
      - value
      type: object
      properties:
        value:
          type: string
          description: The tag value associated with a percentage of matched costs.
          example: cost-center-a
        pct:
          type: number
          description: The percentage of matched costs associated with the value.
          example: 50.0
    VirtualTagConfigValue:
      required:
      - date_ranges
      - filter
      - label_transforms
      - percentages
      type: object
      properties:
        filter:
          type:
          - string
          - 'null'
          description: The filter VQL for the Value.
          example: costs.provider = 'aws' AND costs.service = 'Amazon Simple Storage Service'
        name:
          type:
          - string
          - 'null'
          description: The name of the Value.
          example: Informatics
        business_metric_token:
          type:
          - string
          - 'null'
          description: The token of the associated BusinessMetric.
          example: bsnss_mtrc_abc123
        cost_metric:
          $ref: '#/components/schemas/VirtualTagConfigValueCostMetric'
        display_name:
          type:
          - string
          - 'null'
          description: The display name for this allocation value.
        label_transforms:
          type: array
          description: Label transforms applied to business metric labels.
          items:
            $ref: '#/components/schemas/VirtualTagConfigValueLabelTransform'
        percentages:
          type: array
          description: Labeled percentage allocations for matching costs.
          items:
            $ref: '#/components/schemas/VirtualTagConfigValuePercentage'
        date_ranges:
          type: array
          description: Date ranges restricting when this value applies.
          items:
            $ref: '#/components/schemas/VirtualTagConfigValueDateRange'
    VirtualTagConfigValueCostMetricAggregation:
      type: object
      properties:
        tag:
          type:
          - string
          - 'null'
          description: The tag to aggregate on.
    VirtualTagConfigStatus:
      required:
      - processing
      - providers
      - token
      type: object
      properties:
        token:
          type: string
          description: The token of the VirtualTagConfig.
          example: vtag_1234
        processing:
          type: boolean
          description: Whether the VirtualTagConfig is currently processing. True if any provider has not completed processing.
        providers:
          type: array
          description: Processing status broken down by provider.
          items:
            $ref: '#/components/schemas/VirtualTagConfigProviderStatus'
      description: VirtualTagConfigStatus model
    VirtualTagConfigValueDateRange:
      required:
      - end_date
      - start_date
      type: object
      properties:
        start_date:
          type:
          - string
          - 'null'
          description: The start date of the range (inclusive), or null for unbounded.
        end_date:
          type:
          - string
          - 'null'
          description: The end date of the range (inclusive), or null for unbounded.
    updateAsyncVirtualTagConfig:
      type: object
      properties:
        key:
          type: string
          description: The key of the VirtualTagConfig.
        overridable:
          type:
          - boolean
          - 'null'
          description: Whether the VirtualTagConfig can override a provider-supplied tag on a matching Cost.
        backfill_until:
          type:
          - string
          - 'null'
          description: The earliest month the VirtualTagConfig should be backfilled to.
          format: date
        collapsed_tag_keys:
          type: array
          description: Tag keys to collapse values for.
          items:
            required:
            - key
            type: object
            properties:
              key:
                type: string
                description: The tag key to collapse values for.
              providers:
                type: array
                description: Provider-only scope for this collapsed tag key. Invalid when filter is set; include provider restrictions in filter instead. Defaults to all providers.
                items:
                  type: string
              filter:
                type: string
                description: The VQL filter this collapsed tag key applies to. When set, do not also set providers; include any provider restrictions directly in filter.
        values:
          type: array
          description: Values for the VirtualTagConfig, with match precedence determined by order in the list.
          items:
            required:
            - filter
            type: object
            properties:
              filter:
                type: string
                description: The filter query language to apply to the value. Additional documentation available at https://docs.vantage.sh/vql.
              name:
                type: string
                description: The name of the value.
              business_metric_token:
                type: string
                description: The token of an associated business metric.
              display_name:
                type: string
                description: The display name for an allocation value (cost_metric or percentages). Invalid when name is set.
              label_transforms:
                type: array
                items:
                  required:
                  - type
                  type: object
                  properties:
                    type:
                      type: string
                    delimiter:
                      type:
                      - string
                      - 'null'
                    index:
                      type:
                      - integer
                      - 'null'
                      format: int32
                    template:
                      type:
                      - string
                      - 'null'
                x-omitempty: true
              cost_metric:
                required:
                - aggregation
                - filter
                type: object
                properties:
                  filter:
                    type: string
                  aggregation:
                    required:
                    - tag
                    type: object
                    properties:
                      tag:
                        type: string
              percentages:
                type: array
                items:
                  required:
                  - pct
                  - value
                  type: object
                  properties:
                    value:
                      type: string
                    pct:
                      type: number
                      format: float
                x-omitempty: true
              date_ranges:
                type: array
                description: Date ranges restricting when this value applies. Each range has optional start_date and end_date (inclusive, YYYY-MM-DD).
                items:
                  type: object
                  properties:
                    start_date:
                      type: string
                      description: Inclusive start date (YYYY-MM-DD), or null for unbounded.
                    end_date:
                      type: string
                      description: Inclusive end date (YYYY-MM-DD), or null for unbounded.
                x-omitempty: true
      description: Asynchronously updates an existing Vir

# --- truncated at 32 KB (36 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vantage-sh/refs/heads/main/openapi/vantage-sh-virtualtags-api-openapi.yml