BitGo Keychains API

The Keychains API from BitGo — 1 operation(s) for keychains.

OpenAPI Specification

bitgo-keychains-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: BitGo Platform Addresses Keychains API
  description: Representative specification of the BitGo Platform REST API v2 for institutional digital-asset custody. Covers wallets, addresses, transactions and transfers, keychains, webhooks, wallet policies, staking, trading and settlement over the Go Network, and enterprise / user surfaces. Most endpoints are namespaced under a coin (for example `btc`, `eth`, `hteth`) via the `{coin}` path parameter. Authentication uses a Bearer access token. Transaction-signing operations that require private-key material are typically issued against a self-hosted BitGo Express proxy.
  termsOfService: https://www.bitgo.com/legal/terms-of-service/
  contact:
    name: BitGo Support
    url: https://developers.bitgo.com/
  version: '2.0'
servers:
- url: https://app.bitgo.com/api/v2
  description: BitGo production platform
- url: https://app.bitgo-test.com/api/v2
  description: BitGo test environment
- url: http://localhost:3080/api/v2
  description: Self-hosted BitGo Express signing proxy (default port)
security:
- accessToken: []
tags:
- name: Keychains
paths:
  /{coin}/key:
    get:
      operationId: listKeychains
      tags:
      - Keychains
      summary: List keychains
      description: List the keychains associated with the authenticated user for a coin.
      parameters:
      - $ref: '#/components/parameters/coin'
      responses:
        '200':
          description: A paginated list of keychains.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KeychainList'
    post:
      operationId: createKeychain
      tags:
      - Keychains
      summary: Add keychain
      description: Register a keychain (user, backup, or BitGo) by its public key and, optionally, encrypted private-key material.
      parameters:
      - $ref: '#/components/parameters/coin'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateKeychainRequest'
      responses:
        '200':
          description: The created keychain.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Keychain'
components:
  parameters:
    coin:
      name: coin
      in: path
      required: true
      description: The coin or token ticker (for example `btc`, `eth`, `hteth`, `sol`, `matic`). Testnet coins are prefixed with `t` (for example `tbtc`).
      schema:
        type: string
      example: btc
  schemas:
    Keychain:
      type: object
      properties:
        id:
          type: string
        pub:
          type: string
          description: The public key (xpub, extended, or coin-specific format).
        encryptedPrv:
          type: string
          description: The client-side encrypted private key, when present.
        source:
          type: string
          enum:
          - user
          - backup
          - bitgo
        coinSpecific:
          type: object
          additionalProperties: true
      required:
      - id
      - pub
    KeychainList:
      type: object
      properties:
        keys:
          type: array
          items:
            $ref: '#/components/schemas/Keychain'
        nextBatchPrevId:
          type: string
    CreateKeychainRequest:
      type: object
      properties:
        pub:
          type: string
        encryptedPrv:
          type: string
        source:
          type: string
      required:
      - pub
  securitySchemes:
    accessToken:
      type: http
      scheme: bearer
      bearerFormat: accessToken
      description: 'BitGo access token passed as `Authorization: Bearer <token>`.'
Where this information came from

This is an independent, third-party profile of BitGo Keychains API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.