Equity Grants
/v1/equity-grantsList equity grants
The ledger's equity grants, each with what has vested and its schedule. Values are in the market's currency (USD).
Parameters
limit integer · query | Page size, 1–200. |
cursor string | null · query | The next_cursor of the previous page. |
account_id integer | null · query | Only grants whose shares land in this account. |
X-Organization-Id string | null · header |
Returns 200 · EquityGrantList
data | |
has_more boolean · required | |
next_cursor string | null · required |
curl -X GET "https://api.lumaledger.app/v1/equity-grants" \
-H "Authorization: Bearer $LUMALEDGER_TOKEN"/v1/equity-grantsCreate an equity grant
Record a grant and its vesting schedule. Every tranche already vested posts as wages at its vest-day close, with the withheld shares as tax; later tranches post on their dates.
Parameters
Idempotency-Key string | null · header | Any unique string (a UUID is ideal). A retry with the same key returns the first attempt's response instead of doing the work twice. Keys are kept for 24 hours. |
X-Organization-Id string | null · header |
Body · EquityGrantCreate
account_id integer · required | The investment account vested shares land in. |
cliff_months integer | 0–240. Default: 0. |
duration_months integer · required | 1–240. |
frequency_months integer · required | 1–120. |
grant_date date · required | |
grant_type string | Pattern: ^rsu$. Default: "rsu". |
label string | null | |
symbol string · required | |
total_shares string · required | Pattern: ^\d+(\.\d+)?$. |
vest_start date | null | Omitted: the grant date. |
withholding_rate string | null | Share of each vest withheld for tax, 0–1. Omitted: 0.22. Pattern: ^(0(\.\d+)?|1(\.0+)?)$. |
Returns 201 · EquityGrant
account_id integer · required | The investment account vested shares land in (see accounts.list). |
account_name string · required | |
cliff_months integer · required | |
duration_months integer · required | |
frequency_months integer · required | |
grant_date date · required | |
grant_type string · required | rsu. |
id integer · required | |
label string | null · required | |
next_vest | |
schedule | |
symbol string · required | |
total_shares string · required | Pattern: ^-?\d+(\.\d+)?$. |
unvested_shares string · required | Not the holder's yet: never part of net worth. Pattern: ^-?\d+(\.\d+)?$. |
unvested_value | unvested_shares at the latest close. |
vest_start date · required | |
vested_income Money · required | Wages the vested tranches paid, at their vest-day closes. |
vested_shares string · required | Pattern: ^-?\d+(\.\d+)?$. |
withholding_rate string · required | Share of each vest withheld for tax, 0–1. Pattern: ^-?\d+(\.\d+)?$. |
curl -X POST "https://api.lumaledger.app/v1/equity-grants" \
-H "Authorization: Bearer $LUMALEDGER_TOKEN" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"account_id": 1,
"duration_months": 48,
"frequency_months": 3,
"grant_date": "2026-09-01",
"symbol": "…",
"total_shares": "4000"
}'/v1/equity-grants/{equity_grant_id}Delete an equity grant
Remove a grant and everything its vests posted.
Parameters
equity_grant_id integer · path · required | |
X-Organization-Id string | null · header |
Returns 204 with no body.
curl -X DELETE "https://api.lumaledger.app/v1/equity-grants/{equity_grant_id}" \
-H "Authorization: Bearer $LUMALEDGER_TOKEN"/v1/equity-grants/{equity_grant_id}Get an equity grant
One equity grant by its id.
Parameters
equity_grant_id integer · path · required | |
X-Organization-Id string | null · header |
Returns 200 · EquityGrant
account_id integer · required | The investment account vested shares land in (see accounts.list). |
account_name string · required | |
cliff_months integer · required | |
duration_months integer · required | |
frequency_months integer · required | |
grant_date date · required | |
grant_type string · required | rsu. |
id integer · required | |
label string | null · required | |
next_vest | |
schedule | |
symbol string · required | |
total_shares string · required | Pattern: ^-?\d+(\.\d+)?$. |
unvested_shares string · required | Not the holder's yet: never part of net worth. Pattern: ^-?\d+(\.\d+)?$. |
unvested_value | unvested_shares at the latest close. |
vest_start date · required | |
vested_income Money · required | Wages the vested tranches paid, at their vest-day closes. |
vested_shares string · required | Pattern: ^-?\d+(\.\d+)?$. |
withholding_rate string · required | Share of each vest withheld for tax, 0–1. Pattern: ^-?\d+(\.\d+)?$. |
curl -X GET "https://api.lumaledger.app/v1/equity-grants/{equity_grant_id}" \
-H "Authorization: Bearer $LUMALEDGER_TOKEN"Objects
EquityGrant
A grant, what has vested, and the schedule for the rest.
Fields
account_id integer · required | The investment account vested shares land in (see accounts.list). |
account_name string · required | |
cliff_months integer · required | |
duration_months integer · required | |
frequency_months integer · required | |
grant_date date · required | |
grant_type string · required | rsu. |
id integer · required | |
label string | null · required | |
next_vest | |
schedule | |
symbol string · required | |
total_shares string · required | Pattern: ^-?\d+(\.\d+)?$. |
unvested_shares string · required | Not the holder's yet: never part of net worth. Pattern: ^-?\d+(\.\d+)?$. |
unvested_value | unvested_shares at the latest close. |
vest_start date · required | |
vested_income Money · required | Wages the vested tranches paid, at their vest-day closes. |
vested_shares string · required | Pattern: ^-?\d+(\.\d+)?$. |
withholding_rate string · required | Share of each vest withheld for tax, 0–1. Pattern: ^-?\d+(\.\d+)?$. |
EquityGrantCreate
Fields
account_id integer · required | The investment account vested shares land in. |
cliff_months integer | 0–240. Default: 0. |
duration_months integer · required | 1–240. |
frequency_months integer · required | 1–120. |
grant_date date · required | |
grant_type string | Pattern: ^rsu$. Default: "rsu". |
label string | null | |
symbol string · required | |
total_shares string · required | Pattern: ^\d+(\.\d+)?$. |
vest_start date | null | Omitted: the grant date. |
withholding_rate string | null | Share of each vest withheld for tax, 0–1. Omitted: 0.22. Pattern: ^(0(\.\d+)?|1(\.0+)?)$. |
EquityGrantList
A page of equity grants, by id.
Fields
data | |
has_more boolean · required | |
next_cursor string | null · required |
Money
An amount and its currency. `amount` is a base-10 string with two
decimal places and an optional leading minus sign. Parse it with a
decimal type, not a float.
Fields
amount string · required | Pattern: ^-?\d+\.\d{2}$. |
currency string · required | ISO 4217 code. Pattern: ^[A-Z]{3}$. |
UnitPrice
A price per share or per unit. Unlike `Money` it keeps the
precision the institution quoted (up to 8 places): a coin or a penny
stock is not priced in whole cents.
Fields
amount string · required | Pattern: ^-?\d+(\.\d+)?$. |
currency string · required | ISO 4217 code. Pattern: ^[A-Z]{3}$. |
Vest
Fields
date date · required | |
price | The close it vested at, or today's for a tranche still ahead. |
shares string · required | Pattern: ^-?\d+(\.\d+)?$. |
shares_withheld string | null · required | Kept back to cover tax; vested tranches only. Pattern: ^-?\d+(\.\d+)?$. |
value | shares × price: wages on a vested tranche, an estimate on a future one. |
vested boolean · required | True once the date has passed: the shares are the holder's. |