Form a corporation
⚠️ Early access — This endpoint is in preview and may change in backwards-incompatible ways before it is marked stable. Avoid depending on it in production, and reach out before building on it.
Form a new corporation by submitting a formation filing to the state.
What gets created. A filing record for the formation, plus a new business record in your Palm account populated with the legal name, entity type, jurisdiction, and principal address. Each person in incorporators and initial_directors is also created as a user and linked to the business as an owner.
Stock structure. Pass stock_structure to declare authorized shares and par value (required by most jurisdictions). Some states price the filing on share count or par value — preview the cost with GET /v1/filing/formation/fee before submitting.
Bundled add-ons. Pass registered_agent to specify your own RA; omit it to have Palm provision one (creates a child registered_agent filing). Pass ein to bundle an EIN application (creates a child ein filing tied to the formation).
Jurisdiction-specific fields. Some states require extra fields. Pass them as additional top-level properties — call GET /v1/filing/formation/requirement to discover what a given jurisdiction expects.
Result. Returns the new formation filing in queued status. The filing then advances through ready_to_file → processing → filed → completed, firing a filing.* webhook at each step. The state-issued registration number is available on filing.result.registration_number once the filing is completed. Child filings (RA, EIN) appear on related_filings and progress independently.
Authorizations
Enter your API key in the format: sk_test_xxxxx or sk_live_xxxxx
Body
Jurisdiction (ISO 3166-2)
"US-DE"
Legal name of the corporation being formed
"Acme Corp Inc."
Purpose clause for the articles of incorporation. Some states require user-supplied text; others (notably Delaware) use a statutory boilerplate clause that Palm fills in automatically. Distinct from the EIN principal_activity / principal_activity_detail fields, which describe the business's actual activity for IRS purposes.
"Any lawful purpose"
Business email address
"info@acme.com"
Primary contact for questions about this filing. Used by Palm operations; never sent on the filing itself.
Principal office address
Persons or entities executing the articles of incorporation (incorporators). At least one required.
Authorized capital stock structure
Business phone number
"919-555-1234"
Business website
"https://acme.com"
Delayed effective date (YYYY-MM-DD). If omitted, defaults to the date the formation request is received by Palm.
"2026-05-01"
Mailing address if different from the principal office. Defaults to principal_address when omitted.
Initial board of directors and/or corporate officers. Optional on most state formation forms but useful for downstream records.
Registered agent. If provided, the partner's RA is used on the filing. If omitted, Palm provides registered agent service.
Bundle an EIN application with the formation. Palm submits to IRS after the formation succeeds.
Partner-defined metadata. Round-tripped on webhooks and the filing record.
Response
Formation filing created
Unique identifier for the resource
"123e4567-e89b-12d3-a456-426614174000"
Object type
filing "filing"
ISO 8601 timestamp of when the resource was created
"2025-10-24T10:30:00Z"
ISO 8601 timestamp of when the resource was last updated
"2025-10-24T15:45:00Z"
Store up to 50 custom key-value pairs for application-specific data. Useful for storing references to external systems, feature flags, or other custom attributes.
{
"external_id": "user_123_in_my_system",
"customer_tier": "premium",
"signup_source": "mobile_app"
}Filing type
formation, ein, registered_agent, ra_change, amendment, scorp_election Current status
queued, ready_to_file, processing, filed, completed, rejected, canceled, failed Entity type (for formations)
llc, corporation Jurisdiction (ISO 3166-2)
"US-NC"
Business name for the filing
"Acme Holdings LLC"
Linked business ID
Filing result — populated on completion. Contents vary by filing type. Formation: { registration_number, formation_date }. EIN: { ein_number, entity_name }.
Parent filing ID (for bundled EIN/RA)
Related filings (EIN, registered agent)
Documents associated with this filing
Fee components keyed by type (base, dynamic, late, credit_card, ach). Only present components are included. When items is set, it lists each evaluated rule for itemized rendering — the component-keyed values are the sums across those items.
Reason the filing was canceled (partner request, parent off-boarded, duplicate, etc.). Only present when status is canceled.
Role that initiated the cancellation. One of: partner, palm. Only present when status is canceled.
Timestamp the filing was canceled
Cases attached to this filing. One entry per partner-visible case, in chronological order. Each case carries a typed request payload describing what Palm needs and, once submitted, a typed response. Partners respond via POST /v1/case/:case_id/response. An entry with status=needs_response is an outstanding ask — its presence is the signal that the filing needs partner action.

