Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.launchboard.xyz/llms.txt

Use this file to discover all available pages before exploring further.

An equity plan (internally called a stock plan) defines a pool of shares reserved for equity compensation. Plans are associated with one or more share classes and track how many shares have been reserved versus how many remain available for future grants. You link individual securities — options, RSUs, and similar awards — to a plan when you issue them. Launchboard automatically adjusts currentSharesReserved as grants are issued and cancelled.

Endpoints

MethodPathDescription
GET/api/v1/equity-plansList equity plans (cursor-paginated)
POST/api/v1/equity-plansCreate an equity plan
GET/api/v1/equity-plans/{id}Get a single equity plan
PATCH/api/v1/equity-plans/{id}Partially update an equity plan
DELETE/api/v1/equity-plans/{id}Delete an equity plan

List equity plans

Returns a cursor-paginated list of all equity plans for your organization.
curl https://launchboard.xyz/api/v1/equity-plans \
  -H "Authorization: Bearer pg_live_your_key"

Query parameters

query.limit
number
default:"25"
Maximum results per page. Capped at 100.
query.cursor
string
Opaque cursor from the previous response’s nextCursor field.

Response

items
object[]
Array of equity plan objects.
nextCursor
string | null
Cursor for the next page. null on the last page.

Create an equity plan

Creates a new equity incentive plan. Supports the Idempotency-Key header for safe retries.
curl -X POST https://launchboard.xyz/api/v1/equity-plans \
  -H "Authorization: Bearer pg_live_your_key" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: create-2020-plan" \
  -d '{
    "planName": "2020 Equity Incentive Plan",
    "initialSharesReserved": "10000000",
    "stockClassIds": ["sc_common01"],
    "defaultCancellationBehavior": "RETURN_TO_POOL",
    "boardApprovalDate": "2020-06-01",
    "stockholderApprovalDate": "2020-06-15"
  }'

Request body

planName
string
required
Human-readable name for the plan. Maximum 100 characters.
initialSharesReserved
string
required
Number of shares reserved in the pool at adoption, as a positive numeric string.
stockClassIds
string[]
default:"[]"
Array of share class UUIDs this plan draws from. Typically a single common stock class.
defaultCancellationBehavior
string
default:"RETURN_TO_POOL"
How cancelled grants are treated: RETURN_TO_POOL (shares revert to the available pool) or RETIRE (shares are permanently retired).
boardApprovalDate
string
Date the board approved the plan, in YYYY-MM-DD format.
stockholderApprovalDate
string
Date stockholders approved the plan, in YYYY-MM-DD format.
comments
string
Free-text notes. Maximum 2000 characters.
sourceDocumentId
string
UUID of the plan document to associate with this equity plan.

Response

Returns 201 Created with the full equity plan object and a Location header.

Get an equity plan

curl https://launchboard.xyz/api/v1/equity-plans/abc123 \
  -H "Authorization: Bearer pg_live_your_key"
Returns the equity plan object. Field schema is identical to the list response items.

Update an equity plan

Partial update — include only the fields you want to change.
curl -X PATCH https://launchboard.xyz/api/v1/equity-plans/abc123 \
  -H "Authorization: Bearer pg_live_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "planName": "2020 Equity Incentive Plan (as Amended)",
    "initialSharesReserved": "15000000",
    "comments": "Pool increased by 5M shares per board resolution dated 2024-03-01."
  }'

Request body

All fields from the create request body are accepted; all are optional for PATCH. Returns 200 OK with the updated equity plan object.

Delete an equity plan

curl -X DELETE https://launchboard.xyz/api/v1/equity-plans/abc123 \
  -H "Authorization: Bearer pg_live_your_key"
Returns 204 No Content on success.

Common errors

StatusWhen it occurs
400Malformed JSON in the request body.
401Missing or invalid Authorization header.
403The API key role does not have EDITOR permission. Required for POST, PATCH, and DELETE.
404No equity plan with the given id exists, or a referenced stockClassId does not exist.
422Request body failed schema validation. The response includes a field-level errors array.
currentSharesReserved is computed automatically by Launchboard as grants are issued and cancelled. Do not attempt to set it directly — update initialSharesReserved instead to reflect a board-approved pool increase.