Anchorage Digital Vesting API

These endpoints allow access to vesting balance information for allocations.

Operations 3

POST /vesting/balances Get vesting balances for multiple allocations #
GET /vesting/balances/{allocationId} Get vesting balances for an allocation #
GET /offchainvesting/schedules List offchain vesting schedules for an organization #

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/anchorage-vesting-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

anchorage-vesting-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 2.0.0
  title: Anchorage Digital API Reference Vesting API
  contact:
    email: api@anchorage.com
  description: '# Introduction

    *CONFIDENTIAL: Please do not distribute this documentation externally without prior Anchorage Digital approval.*


    The Anchorage Digital REST API v2.0 provides a set of operations and resources that allow Anchorage Digital clients and partners to:

    - Programmatically transfer funds from an Anchorage Digital vault or wallet without human intervention

    - Create and list deposit addresses in a vault

    - Read and monitor vault balances

    - Query transaction history including deposits

    …'
servers:
- url: https://api.anchorage-staging.com/v2
security:
- Api-Access-Key: []
tags:
- description: These endpoints allow access to vesting balance information for allocations.
  name: Vesting
paths:
  /vesting/balances:
    post:
      operationId: getVestingBalancesBatch
      summary: Get vesting balances for multiple allocations
      description: Get vesting balances for multiple allocation IDs in a single request. Returns per-allocation results with balance breakdowns including available, unvested, and locked amounts. Individual allocation errors are returned inline rather than failing the entire batch.
      parameters: []
      requestBody:
        description: The request body containing allocation IDs and optional stakeholder ID
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetVestingBalancesBatchRequest'
      responses:
        '200':
          description: Batch vesting balances for the requested allocations
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VestingBalancesBatchResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
      tags:
      - Vesting
      x-security:
        Read vault activity: present
  /vesting/balances/{allocationId}:
    get:
      operationId: getVestingBalances
      summary: Get vesting balances for an allocation
      description: Get vesting balances for a specific allocation ID. Returns the current balance breakdown including available, unvested, and locked amounts.
      parameters:
      - name: allocationId
        in: path
        description: The ID of the allocation to get vesting balances for
        required: true
        schema:
          type: string
      - name: stakeholderId
        in: query
        description: The external stakeholder ID (optional, used to retrieve wallet info when no transactions exist yet)
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Vesting balances for the specified allocation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VestingBalancesResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
      tags:
      - Vesting
      x-security:
        Read vault activity: present
  /offchainvesting/schedules:
    get:
      operationId: getOffchainVestingSchedules
      summary: List offchain vesting schedules for an organization
      description: Get all offchain vesting schedules for an organization.
      parameters:
      - name: afterId
        in: query
        description: When paginating this is used to provide the starting point for the page to fetch (retrieved from the previous response body)
        schema:
          type: string
      - name: limit
        in: query
        description: Maximum number of results to return per query
        schema:
          type: integer
          format: int64
          default: 25
          maximum: 100
          minimum: 1
      responses:
        '200':
          description: List of offchain vesting schedules
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OffchainVestingSchedulesResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetails'
      tags:
      - Vesting
      x-security:
        Read vault activity: present
components:
  schemas:
    GetVestingBalancesBatchRequest:
      type: object
      properties:
        allocationIds:
          description: List of allocation IDs to get vesting balances for
          type: array
          items:
            type: string
            minLength: 1
          maxItems: 100
          minItems: 1
        stakeholderId:
          description: The external stakeholder ID (optional, used to retrieve wallet info when no transactions exist yet)
          type: string
      required:
      - allocationIds
      title: GetVestingBalancesBatchRequest
    ErrorType:
      description: The type of error returned.
      type: string
      enum:
      - InternalError
      - InvalidRequest
      - Unauthenticated
      - Forbidden
      - NotFound
      - Conflict
      - UnprocessableEntity
      - TooManyRequests
      - ServiceUnavailable
      - QuoteExpired
      - InsufficientFunds
      - NotImplemented
      title: ErrorType
    OffchainVestingWalletAllocation:
      type: object
      properties:
        totalAmount:
          description: Total amount being vested for this wallet
          type: string
        vestedAmount:
          description: Amount already vested for this wallet
          type: string
        vestingHolds:
          description: Vesting holds associated with this wallet
          type: array
          items:
            $ref: '#/components/schemas/OffchainVestingHold'
        walletId:
          description: Unique wallet identifier
          type: string
      required:
      - walletId
      - totalAmount
      - vestedAmount
      - vestingHolds
      title: OffchainVestingWalletAllocation
    OffchainVestingSchedule:
      type: object
      properties:
        accountId:
          description: The account ID associated with this schedule
          type: string
        allocations:
          description: Breakdown of vesting schedule by wallet
          type: array
          items:
            $ref: '#/components/schemas/OffchainVestingWalletAllocation'
        assetType:
          description: The asset type abbreviation for this vesting schedule (e.g. BTC, ETH)
          type: string
        endTime:
          description: End time of the vesting schedule in UTC following [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) 'date-time' format. A valid format example is `2021-01-01T00:00:00Z`.
          type: string
          format: date-time
        organizationKeyId:
          description: The organization key ID
          type: string
        startTime:
          description: Start time of the vesting schedule in UTC following [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) 'date-time' format. A valid format example is `2021-01-01T00:00:00Z`.
          type: string
          format: date-time
        status:
          description: Status of the vesting schedule
          type: string
          enum:
          - ACTIVE
          - CANCELLED
          - COMPLETED
        totalAmount:
          description: Total amount being vested
          type: string
        unstakeable:
          description: Whether the unvested tokens cannot be staked
          type: boolean
        vestedAmount:
          description: Amount that has already vested
          type: string
        vestingScheduleId:
          description: Unique identifier for the vesting schedule
          type: string
      required:
      - allocations
      - vestingScheduleId
      - accountId
      - organizationKeyId
      - totalAmount
      - vestedAmount
      - startTime
      - endTime
      - status
      - unstakeable
      - assetType
      title: OffchainVestingSchedule
    VestingBalance:
      type: object
      properties:
        assetType:
          description: A string representing a type of crypto-asset, which usually corresponds to the crypto asset's ticker symbol.
          type: string
          example: BTC
        availableBalance:
          description: Amount of tokens unlocked for this allocation
          type: string
          example: '1000.50000000'
        externalTokenId:
          description: The ID of the asset assigned by the external provider that funds these wallets
          type: string
          example: magna_token_123
        lockedBalance:
          description: Amount of tokens on hold to be released to this stakeholder for this allocation
          type: string
          example: '100.10000000'
        networkId:
          description: The network identifier for the blockchain network
          type: string
          example: ETHHOODI
        unvestedBalance:
          description: Amount of tokens still scheduled to be released to this stakeholder for this allocation
          type: string
          example: '500.25000000'
      required:
      - assetType
      - externalTokenId
      - networkId
      - availableBalance
      - unvestedBalance
      - lockedBalance
      title: VestingBalance
    OffchainVestingSchedulesResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/OffchainVestingSchedule'
        page:
          $ref: '#/components/schemas/Page'
      required:
      - data
      - page
      title: OffchainVestingSchedulesResponse
    VestingBalancesResponse:
      type: object
      properties:
        balance:
          $ref: '#/components/schemas/VestingBalance'
        walletInfo:
          $ref: '#/components/schemas/WalletInfo'
      required:
      - walletInfo
      - balance
      title: VestingBalancesResponse
    VestingBalancesBatchResponse:
      type: object
      properties:
        errorCount:
          description: Number of allocations that failed
          type: integer
          example: 1
        results:
          description: Per-allocation vesting balance results
          type: array
          items:
            $ref: '#/components/schemas/VestingBalancesResult'
        successCount:
          description: Number of allocations successfully processed
          type: integer
          example: 3
      required:
      - results
      - successCount
      - errorCount
      title: VestingBalancesBatchResponse
    VestingBalancesResult:
      type: object
      properties:
        allocationId:
          description: The allocation ID this result corresponds to
          type: string
          example: alloc-123
        balance:
          $ref: '#/components/schemas/VestingBalance'
        error:
          description: Error message if this allocation failed, null on success
          type:
          - string
          - 'null'
        walletInfo:
          $ref: '#/components/schemas/WalletInfo'
      required:
      - allocationId
      title: VestingBalancesResult
    ErrorDetails:
      type: object
      properties:
        errorType:
          $ref: '#/components/schemas/ErrorType'
        message:
          description: A human-readable message providing more details about the error.
          type: string
          example: Missing required field 'amount'.
      required:
      - errorType
      - message
      title: ErrorDetails
    OffchainVestingHold:
      type: object
      properties:
        endTime:
          description: End time for this hold in UTC following [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) 'date-time' format. A valid format example is `2021-01-01T00:00:00Z`.
          type: string
          format: date-time
        holdAmount:
          description: Amount held by this vesting hold
          type: string
        holdId:
          description: Unique hold identifier
          type: string
        holdType:
          description: Type of vesting hold
          type: string
        startTime:
          description: Start time for this hold in UTC following [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) 'date-time' format. A valid format example is `2021-01-01T00:00:00Z`.
          type: string
          format: date-time
      required:
      - holdId
      - holdAmount
      - holdType
      - startTime
      - endTime
      title: OffchainVestingHold
    Page:
      description: Pagination info
      type: object
      properties:
        next:
          description: URL to use to query for the next page or null if no additional results are available
          type:
          - string
          - 'null'
          example: <next page url>
          x-omitempty: false
      title: Page
    WalletInfo:
      type: object
      properties:
        address:
          description: The public address of the wallet associated with this allocation
          type: string
          example: 0x1234567890abcdef...
        walletId:
          description: The ID of the wallet associated with this allocation
          type: string
          example: 3d293c0d64c703023692216e9b4f5280
      required:
      - walletId
      - address
      title: WalletInfo
  securitySchemes:
    Api-Access-Key:
      type: apiKey
      name: Api-Access-Key
      in: header
      description: An API key associated with a security role
x-tagGroups:
- name: Under Development
  tags:
  - Collateral Management
  - Holds
  - Deposit Attribution
  - Onboarding
  - Trusted Destinations
  - Atlas Settlement Network
  - Tax
- name: API Endpoints
  tags:
  - Addresses
  - Asset Types
  - Transactions
  - Transfers
  - Wallets
  - Vaults
  - Vesting
  - Tagging
  - Subaccounts
  - Stablecoins
  - Webhook Notifications
  - API Key
  - Statements
  - Tax Reporting
  - Trading
- name: Models
  tags:
  - Transfer Model
  - Transaction Model
  - Vault Model
  - Deposit Attribution Model