vestingTermsId. Vesting milestones track discrete events tied to an individual security (for example, “product launch” or “Series A close”) that trigger a percentage of the grant to vest when you mark them complete. The two resources can be used independently or together depending on the grant structure.
Vesting terms endpoints
Vesting milestones endpoints
List vesting terms
Returns a cursor-paginated list of all vesting term records for your organization.Query parameters
number
default:"25"
Maximum results per page. Capped at 100.
string
Opaque cursor from the previous response’s
nextCursor field.Response
object[]
Array of vesting terms objects.
string | null
Cursor for the next page.
null on the last page.Create vesting terms
Creates a reusable vesting schedule. Once saved, reference the record by itsid in vestingTermsId when issuing securities.
Request body
string
required
Human-readable name. Maximum 100 characters.
string
required
Description of the vesting schedule. Used in the Launchboard UI and grant notices.
string
default:"CUMULATIVE_ROUNDING"
Rounding strategy for share quantities across vesting periods. One of:
CUMULATIVE_ROUNDING, CUMULATIVE_ROUND_DOWN, FRONT_LOADED, BACK_LOADED, FRONT_LOADED_TO_SINGLE_TRANCHE, BACK_LOADED_TO_SINGLE_TRANCHE, FRACTIONAL.string
default:"TIME_BASED"
Whether vesting is driven by time, events, or a combination:
TIME_BASED, EVENT_BASED, or HYBRID.object[]
required
Array of vesting condition objects. At least one is required.
object
Simplified schedule summary for display purposes.
number
Total vesting duration in months. Convenience field that mirrors
schedule.totalMonths.number
Cliff duration in months. Convenience field that mirrors
schedule.cliffMonths.string
Free-text notes.
Response
Returns201 Created with the full vesting terms object and a Location header.
Get vesting terms
Update vesting terms
Partial update — include only the fields you want to change.PATCH. Returns 200 OK with the updated object.
Delete vesting terms
204 No Content on success.
List vesting milestones
Returns a cursor-paginated list of all vesting milestones for your organization.Query parameters
number
default:"25"
Maximum results per page. Capped at 100.
string
Opaque cursor from the previous response’s
nextCursor field.Response
object[]
Array of vesting milestone objects.
string | null
Cursor for the next page.
null on the last page.Create a vesting milestone
Creates a new milestone for a security. The milestone starts inPENDING status.
Request body
string
required
Short name for the milestone. Maximum 100 characters.
string
Detailed description of the milestone condition. Maximum 500 characters.
string
Expected completion date in
YYYY-MM-DD format.Response
Returns201 Created with the full milestone object and a Location header.
Get a vesting milestone
Update a vesting milestone
Partial update for pending milestones. Use this to adjust the target date or description before the milestone is completed.PATCH. Returns 200 OK with the updated milestone object.
Delete a vesting milestone
204 No Content on success.
Mark a milestone as completed
Transitions aPENDING milestone to COMPLETED and records a completedAt timestamp. Optionally attach an evidence note describing how the milestone was satisfied.
Request body
string
Optional note documenting how the milestone was satisfied. Maximum 1000 characters.
Response
Returns200 OK with the updated milestone object. The completedAt field will be populated with the current timestamp and status will be COMPLETED.
Common errors
Completing a milestone is an irreversible action. If you need to correct a milestone that was completed in error, contact support or delete the milestone and recreate it.