---
title: "Create Partner"
method: POST
path: "/api/network/v1/enterprises/{enterpriseId}/partners"
tags: ["Onboarding"]
---

# Create Partner

`POST /api/network/v1/enterprises/{enterpriseId}/partners`

Create a new OES Partner. This endpoint allows enterprise users to add themselves as a partner in OES for
clients to connect to.

Before calling this endpoint, a configuration for the partner must exist.

If a config is not present for the partner, the request will fail with a 422 error.

To initiate the creation of a partner config, please reach out to the
Go Network Engineering team at: go-network-eng@bitgo.com.

Error scenarios:
- 400: Invalid Request Error
- Occurs when the request parameters are invalid or incomplete.
- Examples: Empty string supplied for enterpriseId, invalid connection key schema.

- 401: Authentication Error
- Occurs when the request is not authorized.
- Examples: Caller is not a member of the enterprise.

- 403: Permission Denied Error
- Occurs when the authenticated partner doesn't have access to create a partner.
- Examples: Enterprise does not have OES license.

- 422: Unprocessable Entity Error
- Returned when a required partner configuration is missing.
- Examples: Partner configuration is missing.

- 500: Internal Server Error
- Occurs when there's an unexpected error processing the request
- Examples: Database connection failure, transient network error.

**Requires access token scopes:** `settlement_network_read`, `settlement_network_write`

## Path parameters

- `enterpriseId` string, required

## Request body

- object
  - `name` string, required — The name of the partner. This will be displayed in the UI.
  - `broker` boolean, required — Indicates whether the partner is a broker. If true, the partner can facilitate trading between clients. If false, the partner acts as an exchange with its own trading accounts.
  - `institutionId` string — Optional UUID for the partner's institution record. Links the partner to an institution in the BitGo system.
  - `institutionIdentifier` string, required — External identifier for the partner's institution. Provides an alternative way to identify the institution.
  - `connectionKeySchema` 'token' | 'tokenAndSignature' | 'apiKeyAndSecret' | 'clearloop', required
  - `clientDisputeWindowMinutes` number — Optional window (in minutes) for clients to dispute settlements. Defines how long after a settlement clients have to raise disputes. Null means no dispute window is configured.
  - `topUpWindowMinutes` number — Optional window (in minutes) for topping up settlements. Defines the period during which a settlement can be topped up. Null means no top-up window is configured.
  - `allocationPoliciesEnabled` boolean — Optional flag to enable or disable allocation policies for the partner. When true, policy evaluation features (allocation/deallocation) are enabled. When false or not provided, defaults to false for backward compatibility.

## Response `200`

OK

- V1PartnersPostOkPayload
  - `partner` V1PartnersOutput, required
    - `id` string, required
    - `enterpriseId` string, required
    - `trustOrg` 'BitGo Trust' | 'BitGo New York' | 'BitGo Germany' | 'BitGo Switzerland' | 'BitGo Europe ApS' | 'Frankfurt DE Trust' | 'BitGo Singapore' | 'BitGo Korea' | 'BitGo Custody MENA FZE' | 'BitGo India' | 'BitGo Sister Trust 1', required
    - `institutionId` string
    - `institutionIdentifier` string, required
    - `name` string, required
    - `connectionKeySchema` 'token' | 'tokenAndSignature' | 'apiKeyAndSecret' | 'clearloop', required
    - `createdAt` string, date-time, required — Timestamp when the partner was created in the system.
    - `updatedAt` string, date-time, required — Timestamp of the most recent update to the partner record.
    - `clientId` string, required
    - `broker` boolean, required
    - `active` boolean, required
    - `settlementTransactionRouteId` string
    - `clientDisputeWindowMinutes` number
    - `topUpWindowMinutes` number
    - `allocationPoliciesEnabled` boolean, required
    - `publicKey` string — Optional RSA public key associated with the partner. This key is used for secure communication and encrypting connection keys. If not supplied, encryption is not required for the partner.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `422` — Unprocessable Entity
- `500` — Internal Server Error

---

[API](https://skmtc.net/bitgo/apis/bitgo-api.md) · [All operations](https://skmtc.net/bitgo/apis/bitgo-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bitgo/bitgo-api/revisions/e445c15e5bee/schema)
