How it works
- Discover requirements: Query what fields are required for your jurisdiction and entity type. Requirements vary by state.
- Collect the required data: Use the requirements response to build your collection flow. Only ask for what the target state requires.
- Submit the formation: Send the business data, owner information, and principal address. Palm validates the request, including name availability, and creates a filing.
- Track the filing: The filing moves through the status lifecycle (
queuedthroughcompleted). You receive a webhook at each transition. - Handle information requests: If Palm needs more information, it opens a case on the filing. Respond programmatically.
- Retrieve the result: When complete, the filing includes the state-assigned registration number and confirmation documents.
Discover requirements
Before collecting data from your customer, query the requirements endpoint to learn what fields are needed for a given jurisdiction and entity type.Bash
Collect the required data
Use the requirements response to build your collection flow dynamically: required fields differ significantly between states, so don’t hardcode field lists. The response tells you exactly which fields are required, optional, and conditional for the target jurisdiction and entity type, so you only ask your customer for what’s actually needed.Submit a formation
Bash
- A filing record in
queuedstatus. - A business record linked to the filing, immediately available via the Business API.
Name availability
As part of validation, Palm checks whether the requested business name is available by searching active entities with the state. If the name conflicts with an existing registration, the request returns an error so you can prompt your customer for an alternative before the filing is submitted. To catch naming problems before you submit (a missing designator, a restricted word, or a name already taken), run the name past Check name eligibility first. The same naming rules run again at submission, so a name that passes there is not re-litigated here.Entity types
Today, Palm supports LLC and Corporation (C-Corp) entity types across all 50 US states and DC.Add-ons
You can bundle additional services with a formation request:- EIN application: Include an
einobject in the formation request. The EIN filing is created inqueuedstatus and automatically advances toready_to_filewhen the formation completes. See Apply for an EIN for the full field reference. - Registered agent: Opt in to Palm’s registered agent service as part of the formation. See Registered agent for status, mail forwarding, change, and termination.
related_filings on the parent formation record.
Track the filing
The filing moves through the status lifecycle:Bash
Bash
filing.* webhook. See Webhooks for event types and payloads.
Handle information requests
If Palm needs additional information to complete the filing (a correction, or a detail not collected at submission), it opens a case on the filing with a structured request describing what’s needed, and notifies you with acase.opened webhook.
Respond via:
Bash
Retrieve the result
When the filing reachescompleted, the result includes:
- Registration number: The state-assigned entity number, available on
filing.result.registration_number. - Formation date: Available on
filing.result.formation_date. - Documents: Articles of Organization (LLC) or Articles of Incorporation (Corporation), state certificate, and receipts. Each document is downloadable from its
url(see Download a document).
JSON
Fees
Formation fees vary by state and entity type. Use the requirements endpoint to get fee estimates before submitting. The final amount paid is available on the filing record once it reachescompleted, broken down by component (base, expedite, etc.).

