BorgLayer Registrant Profiles API

The Registrant Profiles API from BorgLayer — 2 operation(s) for registrant profiles.

Operations 3

GET /registrant-profiles List registrant profiles #
POST /registrant-profiles Create a registrant profile #
DELETE /registrant-profiles/{id} Delete a registrant profile #

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/borglayer-com:borglayer-com-registrant-profiles-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

borglayer-com-registrant-profiles-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: BorgLayer Registrant Profiles API
  version: 1.0.0
  description: 'The BorgLayer API lets you — and AI agents, via the BorgLayer MCP connector —

    search and register domains, transfer domains in, manage DNS, set registrant

    details, and form US LLCs, all paid from a prepaid USDC account balance.


    - **Base URL:** `https://api.borglayer.com/api/v1`

    - **MCP connector:** `https://mcp.borglayer.com/mcp` (Streamable HTTP)

    - **Auth:** `Authorization: Bearer blrk_…` on every request


    ## Getting started


    1. Create a BorgLayer account and an API key (format `blrk_…`) in your

    dashboard. Each key has **scopes** that limit what it can do and is bound

    to your account''s prepaid USDC balance.

    2. Call the API with `Authorization: Bearer blrk_…`, or add the MCP connector

    in Claude (**Customize → Connectors → Add custom connector**) with URL

    `https://mcp.borglayer.com/mcp`, Authentication **No sign-in**, and request

    header `Authorization: Bearer blrk_…`.

    3. Top up your prepaid balance in the dashboard. Read actions are free; actions

    that cost money (register, transfer-in, formation) debit your balance.


    ## Money model


    Actions that cost money debit your prepaid USDC balance. If the balance is too

    low the API returns `402 insufficient_balance` and **nothing is charged**.


    ## Scopes


    | Scope | Grants |

    |-------|--------|

    | `domains.read` | search, list your domains |

    | `domains.register` | register a domain (debits balance) |

    | `domains.transfer` | transfer a domain in (may debit balance) |

    | `dns.read` | list DNS records |

    | `dns.write` | add/delete DNS records |

    | `registrant.read` | list registrant profiles |

    | `registrant.write` | create/delete registrant profiles |

    | `formation.read` | quote a formation, read order status |

    | `formation.write` | create (file) a formation (debits balance) |

    | `balance.read` | read your prepaid balance |


    A `403` with `required scope: ` means your key lacks that scope.'
  contact:
    name: BorgLayer
    url: https://borglayer.com
    email: support@borglayer.com
servers:
- url: https://api.borglayer.com/api/v1
  description: Production
security:
- ApiKey: []
tags:
- name: Registrant Profiles
paths:
  /registrant-profiles:
    get:
      summary: List registrant profiles
      description: 'Scope: `registrant.read`.'
      responses:
        '200':
          description: Registrant profiles
      tags:
      - Registrant Profiles
      operationId: getRegistrantProfiles
      x-operation-id-source: derived
    post:
      summary: Create a registrant profile
      description: 'Country-code TLDs require real owner data. Scope: `registrant.write`.'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RegistrantProfile'
      responses:
        '201':
          description: Profile created
      tags:
      - Registrant Profiles
      operationId: postRegistrantProfiles
      x-operation-id-source: derived
  /registrant-profiles/{id}:
    delete:
      summary: Delete a registrant profile
      description: 'Scope: `registrant.write`.'
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Profile deleted
      tags:
      - Registrant Profiles
      operationId: deleteRegistrantProfilesById
      x-operation-id-source: derived
components:
  schemas:
    RegistrantProfile:
      type: object
      properties:
        first_name:
          type: string
        last_name:
          type: string
        email:
          type: string
        phone:
          type: string
        address_line1:
          type: string
        city:
          type: string
        postal_code:
          type: string
        country:
          type: string
        organization_name:
          type: string
        is_default:
          type: boolean
  securitySchemes:
    ApiKey:
      type: http
      scheme: bearer
      bearerFormat: blrk_…