---
title: "Create an external party"
method: POST
path: "/external-parties"
tags: ["External Parties"]
---

# Create an external party

`POST /external-parties`

Create an external party to transact with over Direct

## Headers

- `Idempotency-Key` string, required
- `X-Agent-ID` string, nullable
- `X-Instance-ID` string, nullable

## Request body

- object
  - `data` object, required
    - `attributes` object, required
      - `customerPartyId` string — Customer party ID (pty_*). Omit to create for your own party; provide for delegated creation.
      - `kind` 'individual' | 'business', required — External party type.
      - `name` string, required — External party name.
      - `email` string, email — External party email address.
      - `phone` string — External party phone number. It is normalized to E.164.
      - `address` object — External party address.
        - `line1` string
        - `line2` string
        - `city` string
        - `state` string
        - `postalCode` string
        - `countryCode` string

## Response `201`

Successful Response

- object
  - `data` object, required
    - `id` string, required
    - `type` 'external_party', required — Resource type.
    - `attributes` object, required
      - `kind` 'individual' | 'business', required — External party type.
      - `name` string, required — External party display or legal name.
      - `email` string, nullable, required — Normalized email address, if supplied.
      - `phone` string, nullable, required — Normalized E.164 phone number, if supplied.
      - `address` object, nullable, required — External party address.
        - `line1` string, nullable, required
        - `line2` string, nullable, required
        - `city` string, nullable, required
        - `state` string, nullable, required
        - `postalCode` string, nullable, required
        - `countryCode` string, nullable, required
      - `screeningStatus` 'clear' | 'under_review' | 'rejected', required — Sanctions screening disposition.
      - `archivedAt` string, nullable, required — ISO archive timestamp, or null when active.
      - `createdAt` string, required — ISO creation timestamp.
      - `updatedAt` string, required — ISO update timestamp.
    - `relationships` object, required
      - `customer` object, required — Customer party.
        - `data` object, required — Related resource identifier.
          - `type` 'party', required
          - `id` string, required

## Other responses

- `400` — Validation Error
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found. Returned when the resource does not exist, or when it exists but is not accessible to your account. The two cases are intentionally indistinguishable, so that resource IDs cannot be enumerated by probing.
- `409` — Conflict
- `422` — Validation Error
- `428` — Precondition Required
- `429` — Too Many Requests
- `500` — Internal Server Error
- `501` — Not Implemented
- `502` — Bad Gateway
- `503` — Service Unavailable

---

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