Cookbook
Establish your governance baseline
Bylaws, indemnification agreements for directors and officers, the initial board consent, and standing committee charters.
Last updated
Bylaws, D&O indemnification agreements, the initial board consent, and standing committee charters — the package every new entity needs before it can sign anything material.
Trigger
An entity has just been formed. Before issuing equity, signing leases, or taking outside money, it needs a governance baseline.
Call sequence
1. Adopt bylaws
POST /v1/documents { entity, template: 'tpl_de_bylaws_v3' }2. Issue indemnification agreements to each director and officer
POST /v1/indemnification_agreements { entity, holder }3. Run the organizational board consent
POST /v1/board_consents { entity, actions: [adopt_bylaws, appoint_officers, …] }4. Authorize the equity incentive plan
POST /v1/equity_plans { entity, pool: 1500000 }5. Adopt committee charters
POST /v1/documents { entity, template: 'tpl_audit_charter_v1' }Idempotency
Each document is idempotent on `(entity, template, version)`. Re-running the recipe on a fully-baselined entity is a no-op.
Webhooks
| Event | Description |
|---|---|
document.signed | Each baseline document, as it executes. |
board_consent.signed | Organizational consent fully executed. |
equity_plan.adopted | The pool is live. |
Errors
| Status | Code | Description |
|---|---|---|
409 | baseline_partial | A previous run partially executed. Inspect GET /v1/entities/{id}/governance_baseline and resume. |
Related
Variations
For founders who set up a custom RA before formation and want to skip bank-account authorization (e.g., they already have a relationship with a bank that doesn't require a board resolution).
{
"entity_id": "ent_Nq3KcAbc",
"adopt_bylaws": true,
"ratify_formation": true,
"officer_appointments": [
{"stakeholder_id": "stk_jane_F0und3r", "title": "CEO"},
{"stakeholder_id": "stk_jane_F0und3r", "title": "Secretary"}
],
"registered_agent": null,
"authorize_bank_account_opening": false
}If you've already drafted an EquityPlan but the consent hasn't run yet, fold the stock-plan ratification into the same envelope — fewer round-trips and one director-signature-event instead of two.
{
"entity_id": "ent_Nq3KcAbc",
"adopt_bylaws": true,
"ratify_formation": true,
"officer_appointments": [
{"stakeholder_id": "stk_jane_F0und3r", "title": "CEO"}
],
"registered_agent": {"provider": "matter"},
"authorize_bank_account_opening": true,
"ratify_stock_plan": {
"equity_plan_id": "plan_2026_eip",
"authorized_pool": 2000000
}
}The board-side ratification fires here; the stockholder-side approval still needs to run separately — see run a stockholder consent.
If the entity has two directors, the same call works — pass both
stakeholder_ids on each appointment and set signature_threshold: unanimous.
{
"entity_id": "ent_Nq3KcAbc",
"adopt_bylaws": true,
"ratify_formation": true,
"officer_appointments": [
{"stakeholder_id": "stk_jane_F0und3r", "title": "CEO"},
{"stakeholder_id": "stk_michael_C0Tech0", "title": "CTO"},
{"stakeholder_id": "stk_jane_F0und3r", "title": "Secretary"},
{"stakeholder_id": "stk_michael_C0Tech0", "title": "Treasurer"}
],
"registered_agent": {"provider": "matter"},
"authorize_bank_account_opening": true,
"signature_threshold": "unanimous"
}The workflow above is the recommended shape, but the underlying primitive
is POST /entities/{id}/resolutions.
Use it directly when you need finer control — e.g., the consent ratifies
a non-standard set of artifacts, or the substance lives outside the
organizational_consent template.
{
"kind": "written_consent",
"subject": "Organizational consent of the sole director",
"signatory_stakeholder_ids": ["stk_jane_F0und3r"],
"template_id": "matter:board_consent:organizational_consent:2026-04-26",
"cover_page_fields": {
"subject": "Organizational consent of the sole director",
"recitals": [
"WHEREAS, the Corporation was incorporated under the laws of the State of Delaware on April 25, 2026;",
"WHEREAS, the undersigned, being the sole director of the Corporation, desires to take the actions set forth herein by written consent in lieu of an organizational meeting pursuant to DGCL §141(f);"
],
"resolved_clauses": [
"RESOLVED, that the Bylaws attached hereto as Exhibit A be, and they hereby are, adopted as the Bylaws of the Corporation.",
"RESOLVED FURTHER, that all actions taken by the incorporator on behalf of the Corporation, including the filing of the Certificate of Incorporation, are hereby ratified, confirmed, and approved.",
"RESOLVED FURTHER, that Jane Doe is hereby appointed as Chief Executive Officer, President, Secretary, and Treasurer of the Corporation.",
"RESOLVED FURTHER, that Matter Mode, Inc. is hereby appointed as the registered agent of the Corporation in the State of Delaware.",
"RESOLVED FURTHER, that the officers of the Corporation be, and each of them hereby is, authorized to open one or more bank accounts in the name of the Corporation and to execute the bank's standard account-opening documents on the Corporation's behalf."
],
"effective_date": "2026-04-25",
"kind_hint": "organizational_consent"
}
}The downside: every artifact (bylaws, RA appointment, bank authorization) needs a separate downstream call to bind back to this resolution. The workflow shape above does the binding for you.
Related
- Adopt an equity plan — authorize the pool and file the plan document
- Run a board consent — generic board consent recipe
- Run a stockholder consent — for ISO eligibility ratification
- Indemnification agreements — D&O protection primitive