---
title: "Record shares"
method: POST
path: "/captable/issuances"
tags: ["issuance"]
---

# Record shares

`POST /captable/issuances`

## Request

- Base URL: `https://localhost:4410/api/v1`
- URL: `https://localhost:4410/api/v1/captable/issuances`
- Auth: HTTP bearer

Drafts a stock issuance from four fields: the holder (a party, or a name and email), the class (Common Stock when none is named, recorded if missing), the number of shares and the issue date. Price paid, consideration, vesting (48 months with a 12-month cliff from the issue date by default), a security ID and the purchase agreement are optional. It stays Unconfirmed, with its facts, until an officer confirms it.

## Request body

- object
  - `holder` union, required
    - object
      - `party_id` string, required
    - object
      - `name` string, required
      - `email` string, email
      - `kind` 'individual' | 'entity'
      - `address` object
        - `lines` string[], required
        - `country` string, required: ISO 3166-1 alpha-2
        - `region` string
  - `class_entry_id` string
  - `shares` integer, required
  - `issue_date` string, date, required
  - `price_per_share` string
  - `consideration` 'cash' | 'services' | 'assignment_of_assets'
  - `vesting` object
    - `start` string, date
    - `months` integer
    - `cliff_months` integer
  - `security_id` string
  - `document_id` string
  - `quotes` object[]
    - `field` string, required
    - `quote` string, required

## Response `200`

The result.

- object
  - `id` string, required
  - `version` integer, required
  - `status` 'unconfirmed' | 'confirmed' | 'void', required
  - `effective_on` string, date, required
  - `summary` string, required
  - `holder` object, nullable, required
    - `party_id` string, required
    - `name` string, required
  - `terms` union, required
    - object
      - `type` 'share_class', required
      - `name` string, required
      - `kind` 'common' | 'preferred', required
      - `authorized` integer, nullable, required
      - `par_value` string, nullable, required
      - `conversion_ratio` string, required
      - `liquidation` string, nullable, required
    - object
      - `type` 'option_plan', required
      - `name` string, required
      - `reserved` integer, required
      - `class_entry_id` string, nullable, required
    - object
      - `type` 'pool_change', required
      - `plan_entry_id` string, required
      - `shares` integer, required
    - object
      - `type` 'stock_issuance', required
      - `class_entry_id` string, required
      - `class_name` string, required
      - `shares` integer, required
      - `price_per_share` string, nullable, required
      - `consideration` 'cash' | 'services' | 'assignment_of_assets', nullable, required
      - `vesting` object, nullable, required
        - `start` string, date, required
        - `months` integer, required
        - `cliff_months` integer, required
      - `security_id` string, nullable, required
    - object
      - `type` 'option_grant', required
      - `plan_entry_id` string, required
      - `plan_name` string, required
      - `options` integer, required
      - `exercise_price` string, required
      - `option_type` 'iso' | 'nso', nullable, required
      - `grant_date` string, date, nullable, required
      - `vesting` object, nullable, required
        - `start` string, date, required
        - `months` integer, required
        - `cliff_months` integer, required
      - `expires_on` string, date, nullable, required
      - `post_termination_months` integer, nullable, required
      - `acceleration` object, nullable, required
        - `text` string, required
        - `page` integer, nullable, required
      - `outstanding` integer, required
      - `vested` integer, required
    - object
      - `type` 'grant_cancellation', required
      - `grant_entry_id` string, required
      - `options` integer, required
      - `kind` 'termination' | 'expiry' | 'other', required
      - `reason` string, required
    - object
      - `type` 'valuation', required
      - `price_per_share` string, required
      - `provider` string, nullable, required
  - `facts` object[], required
    - `key` string, required
    - `text` string, required
    - `source` object, nullable, required
      - `text` string, required
      - `url` string, required
    - `needs_reason` boolean, required
    - `reason` string, nullable, required
  - `documents` object[], required
    - `role` string, required
    - `document_id` string, required
    - `version_id` string, required
    - `title` string, required
    - `sha256` string, required
  - `entered_by_agent` boolean, required
  - `quotes` object[], required
    - `field` string, required
    - `quote` string, required
  - `drafted_by` string, nullable, required
  - `confirmed_by` string, nullable, required
  - `confirmed_at` string, date-time, nullable, required
  - `authorization` 'on_file' | 'not_on_file', nullable, required

## Other responses

- `default`: An RFC 9457 problem.

---

[API](https://skmtc.dev/binderwork/apis/binderwork-api.md) · [All operations](https://skmtc.dev/binderwork/apis/binderwork-api/llms.txt) · [OpenAPI document](https://skmtc.dev/binderwork/apis/binderwork-api/revisions/f8fab0ebee53?raw)
