Skip to main content
POST
Register an existing business in another state

Authorizations

Authorization
string
header
required

Enter your API key in the format: sk_test_xxxxx or sk_live_xxxxx

Headers

Idempotency-Key
string

Use one key per logical submission and reuse it for every retry of that submission. A key is bound to the first request that succeeds with it and honored for 24 hours: retrying with the same key and payload returns the previously created filing with the Idempotent-Replayed: true response header instead of creating a second one. Reusing a key with a different payload or on a different operation is rejected with a 409 idempotency_key_conflict problem carrying existing_filing_id. Keys are 1-255 characters, unique per organization and mode.

Maximum string length: 255

Body

application/json
jurisdiction
string
required

The state to register in (ISO 3166-2). Becomes the registration jurisdiction of the new business record.

Example:

"US-TX"

business_id
string<uuid>
required

The existing business in your account, as registered in its formation state. Its legal name, entity type, formation jurisdiction, formation date and registration number are read from the record and are never accepted on this request.

Example:

"987e6543-e21a-45b6-c789-012345678901"

contact
object
required

Primary contact for questions about this filing. Used by Palm operations; never sent to the state.

email
string
required

Business email address

Example:

"info@acme.com"

principal_address
object
required

Principal office address, as you hold it

phone
string

Business phone number

Example:

"512-555-1234"

website
string

Business website

Example:

"https://acme.com"

mailing_address
object

Mailing address if different from the principal office. Defaults to principal_address when omitted.

governing_persons
object[]

Members or managers of the LLC, where the target state asks for them. The requirement endpoint says whether the state does.

purpose
string

Purpose of the business in the target state, where the state asks for one.

Example:

"Any lawful purpose"

registered_agent
object

Your own registered agent in the target state. If omitted, Palm provides registered agent service there.

effective_date
string

Delayed effective date (YYYY-MM-DD), where the state offers one. Omit to register immediately.

Example:

"2026-10-01"

expedited_tier
string

Expedited processing tier. Omit for standard processing. Valid values are jurisdiction-specific — discover them via GET /v1/filing/foreign-qualification/requirement (expedited_tiers) and price them via GET /v1/filing/foreign-qualification/fee (expedited_tiers). Rejected with 400 if the value is not offered by the jurisdiction.

Example:

"expedited"

metadata
object

Partner-defined metadata. Round-tripped on webhooks and the filing record.

Response

Foreign qualification filing created

id
string<uuid>
required

Unique identifier for the resource

Example:

"123e4567-e89b-12d3-a456-426614174000"

object
enum<string>
required

Object type

Available options:
filing
Example:

"filing"

mode
enum<string>
required

Whether this resource was created with test or live credentials. Test and live data are fully isolated — a test resource never appears in live results and vice versa.

Available options:
test,
live
Example:

"live"

created_at
string<date-time>
required

ISO 8601 timestamp of when the resource was created

Example:

"2025-10-24T10:30:00Z"

updated_at
string<date-time>
required

ISO 8601 timestamp of when the resource was last updated

Example:

"2025-10-24T15:45:00Z"

metadata
object
required

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.

Example:
type
enum<string>
required

Filing type

Available options:
formation,
ein,
amendment,
scorp_election,
foreign_qualification
status
enum<string>
required

Current status

Available options:
queued,
ready_to_file,
processing,
filed,
completed,
canceled
entity_type
enum<string>

Entity type. Set on formations and foreign qualifications (derived from the referenced business).

Available options:
llc,
professional_llc,
corporation,
professional_corporation
jurisdiction
string

Jurisdiction the filing is made in (ISO 3166-2). For a foreign qualification this is the target state.

Example:

"US-NC"

Business name the filing is being made under, as sent on the request. For a foreign qualification, the legal name being registered. Changes when a legal_name_change case resolves.

Example:

"Acme Holdings LLC"

name
string
deprecated

Deprecated: use legal_name. The same value.

Example:

"Acme Holdings LLC"

expedited_tier
string

Expedited processing tier requested for this filing, or null for standard processing. Only set on filings submitted with an expedited_tier.

Example:

"same_day"

business_id
string<uuid>

Linked business ID. For a foreign qualification this is the new business record created for the target-state registration, whose formation_jurisdiction and registration_jurisdiction say where the entity was formed and where it is registered.

result
object

Filing result — populated on completion, null until then. Shape depends on the filing type: formation → { registration_number, formation_date }; foreign qualification → { registration_number, registration_date, palm_id }; EIN → { ein_number, legal_name }. Other filing types have no result.

parent_filing_id
string<uuid>

Parent filing ID (for bundled EIN/RA)

Bundle of obligations tracked under this filing, each with its own object type and status: filings (state registration, EIN) and the registered agent (id is the business, resolvable at GET /business/:id/registered-agent).

documents
object[]

Documents associated with this filing

fee
object | null

Fee components keyed by type (base, dynamic, late, credit_card, ach), plus a convenience total grand total (assumes credit-card payment). 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.

status_reason
string

Reason the filing was canceled (partner request, parent off-boarded, duplicate, etc.). Only present when status is canceled.

canceled_by
string

Role that initiated the cancellation. One of: partner, palm. Only present when status is canceled.

canceled_at
string<date-time>

Timestamp the filing was canceled

cases
object[]

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.