const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.getpalm.com/v1/filing/formation/requirement', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.getpalm.com/v1/filing/formation/requirement"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)curl --request GET \
--url https://api.getpalm.com/v1/filing/formation/requirement \
--header 'Authorization: Bearer <token>'{
"type": "formation",
"schema": {
"type": "object",
"required": [
"jurisdiction",
"legal_name",
"purpose",
"email",
"contact",
"principal_address",
"organizers"
],
"properties": {
"legal_name": {
"type": "string"
},
"purpose": {
"type": "string"
},
"email": {
"type": "string",
"format": "email",
"description": "Business email address"
},
"contact": {
"type": "object",
"required": [
"name",
"email"
],
"properties": {
"name": {
"type": "string"
},
"email": {
"type": "string",
"format": "email"
},
"phone": {
"type": "string"
}
}
},
"principal_address": {
"type": "object",
"description": "Principal office address",
"required": [
"street_line_1",
"city",
"region",
"postal_code",
"country"
],
"properties": {
"street_line_1": {
"type": "string"
},
"city": {
"type": "string"
},
"region": {
"type": "string",
"description": "State or region code"
},
"postal_code": {
"type": "string"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code"
}
}
},
"mailing_address": {
"type": "object",
"description": "Mailing address if different from principal office",
"properties": {
"street_line_1": {
"type": "string"
},
"city": {
"type": "string"
},
"region": {
"type": "string",
"description": "State or region code"
},
"postal_code": {
"type": "string"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code"
}
}
},
"registered_agent": {
"type": "object",
"required": [
"type",
"name",
"address"
],
"properties": {
"type": {
"type": "string",
"enum": [
"person",
"organization"
]
},
"name": {
"type": "object",
"description": "A person or an entity. Discriminated by `type`.",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"person",
"entity"
]
},
"first": {
"type": "string",
"description": "Required when type is \"person\""
},
"last": {
"type": "string",
"description": "Required when type is \"person\""
},
"entity_name": {
"type": "string",
"description": "Required when type is \"entity\""
}
}
},
"address": {
"type": "object",
"description": "Registered office address (must be in the formation jurisdiction)",
"properties": {
"street_line_1": {
"type": "string"
},
"city": {
"type": "string"
},
"region": {
"type": "string"
},
"postal_code": {
"type": "string"
},
"country": {
"type": "string"
}
}
}
}
},
"organizers": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": [
"name",
"address"
],
"properties": {
"name": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"person",
"entity"
]
},
"first": {
"type": "string"
},
"last": {
"type": "string"
},
"entity_name": {
"type": "string"
}
}
},
"address": {
"type": "object",
"description": "Party address"
},
"title": {
"type": "string"
}
}
}
},
"tax_accounts": {
"type": "array",
"items": {
"type": "string",
"enum": [
"sales_tax"
]
}
},
"fein": {
"type": "string"
},
"ldr_sales_tax": {
"type": "object"
}
},
"allOf": [
{
"if": {
"properties": {
"tax_accounts": {
"contains": {
"const": "sales_tax"
}
}
},
"required": [
"tax_accounts"
]
},
"then": {
"required": [
"ldr_sales_tax",
"fein"
]
}
}
]
},
"entity_type": "llc",
"jurisdiction": "US-NC",
"expedited_tiers": [
"24_hour",
"same_day",
"1_hour"
],
"prerequisites": [
{
"type": "certificate_of_good_standing",
"description": "A certificate of existence from the home jurisdiction, dated within six months of filing.",
"required": true,
"condition": null,
"issuer": "Secretary of State of the home jurisdiction",
"max_age": {
"value": 6,
"unit": "months"
},
"accepted_formats": [
"pdf"
],
"provided_by": "palm"
}
],
"post_filing_obligations": [
{
"type": "publication",
"description": "Publish a copy of the application in two newspapers within 120 days of filing.",
"deadline": {
"value": 120,
"unit": "days",
"from": "filing"
}
}
]
}Get formation requirements
⚠️ Early access (corporations) — Corporation support on this endpoint is in preview and may change in backwards-incompatible ways before it is marked stable. LLC support is stable. Avoid depending on the corporation behavior in production, and reach out before building on it.
Discover which fields a formation needs for a given jurisdiction and entity type. Call this before building a formation request so you know what to collect from the user.
The response groups fields into:
- Common fields — required everywhere (name, principal address, people, etc.)
- Jurisdiction-specific fields — extra fields the state requires
- Available add-ons — whether registered-agent service and EIN bundling are supported
expedited_tiers lists the expedited processing tiers the state offers (the accepted expedited_tier values on create); price each one with the formation fee endpoint.
If Palm does not yet support formations in a jurisdiction, the jurisdiction-specific list comes back empty and submitting a formation there returns 501.
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.getpalm.com/v1/filing/formation/requirement', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.getpalm.com/v1/filing/formation/requirement"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)curl --request GET \
--url https://api.getpalm.com/v1/filing/formation/requirement \
--header 'Authorization: Bearer <token>'{
"type": "formation",
"schema": {
"type": "object",
"required": [
"jurisdiction",
"legal_name",
"purpose",
"email",
"contact",
"principal_address",
"organizers"
],
"properties": {
"legal_name": {
"type": "string"
},
"purpose": {
"type": "string"
},
"email": {
"type": "string",
"format": "email",
"description": "Business email address"
},
"contact": {
"type": "object",
"required": [
"name",
"email"
],
"properties": {
"name": {
"type": "string"
},
"email": {
"type": "string",
"format": "email"
},
"phone": {
"type": "string"
}
}
},
"principal_address": {
"type": "object",
"description": "Principal office address",
"required": [
"street_line_1",
"city",
"region",
"postal_code",
"country"
],
"properties": {
"street_line_1": {
"type": "string"
},
"city": {
"type": "string"
},
"region": {
"type": "string",
"description": "State or region code"
},
"postal_code": {
"type": "string"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code"
}
}
},
"mailing_address": {
"type": "object",
"description": "Mailing address if different from principal office",
"properties": {
"street_line_1": {
"type": "string"
},
"city": {
"type": "string"
},
"region": {
"type": "string",
"description": "State or region code"
},
"postal_code": {
"type": "string"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code"
}
}
},
"registered_agent": {
"type": "object",
"required": [
"type",
"name",
"address"
],
"properties": {
"type": {
"type": "string",
"enum": [
"person",
"organization"
]
},
"name": {
"type": "object",
"description": "A person or an entity. Discriminated by `type`.",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"person",
"entity"
]
},
"first": {
"type": "string",
"description": "Required when type is \"person\""
},
"last": {
"type": "string",
"description": "Required when type is \"person\""
},
"entity_name": {
"type": "string",
"description": "Required when type is \"entity\""
}
}
},
"address": {
"type": "object",
"description": "Registered office address (must be in the formation jurisdiction)",
"properties": {
"street_line_1": {
"type": "string"
},
"city": {
"type": "string"
},
"region": {
"type": "string"
},
"postal_code": {
"type": "string"
},
"country": {
"type": "string"
}
}
}
}
},
"organizers": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": [
"name",
"address"
],
"properties": {
"name": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"person",
"entity"
]
},
"first": {
"type": "string"
},
"last": {
"type": "string"
},
"entity_name": {
"type": "string"
}
}
},
"address": {
"type": "object",
"description": "Party address"
},
"title": {
"type": "string"
}
}
}
},
"tax_accounts": {
"type": "array",
"items": {
"type": "string",
"enum": [
"sales_tax"
]
}
},
"fein": {
"type": "string"
},
"ldr_sales_tax": {
"type": "object"
}
},
"allOf": [
{
"if": {
"properties": {
"tax_accounts": {
"contains": {
"const": "sales_tax"
}
}
},
"required": [
"tax_accounts"
]
},
"then": {
"required": [
"ldr_sales_tax",
"fein"
]
}
}
]
},
"entity_type": "llc",
"jurisdiction": "US-NC",
"expedited_tiers": [
"24_hour",
"same_day",
"1_hour"
],
"prerequisites": [
{
"type": "certificate_of_good_standing",
"description": "A certificate of existence from the home jurisdiction, dated within six months of filing.",
"required": true,
"condition": null,
"issuer": "Secretary of State of the home jurisdiction",
"max_age": {
"value": 6,
"unit": "months"
},
"accepted_formats": [
"pdf"
],
"provided_by": "palm"
}
],
"post_filing_obligations": [
{
"type": "publication",
"description": "Publish a copy of the application in two newspapers within 120 days of filing.",
"deadline": {
"value": 120,
"unit": "days",
"from": "filing"
}
}
]
}Authorizations
Enter your API key in the format: sk_test_xxxxx or sk_live_xxxxx
Query Parameters
Entity type
llc, professional_llc, corporation, professional_corporation Jurisdiction (e.g., US-NC)
Response
Formation requirements
Filing type
"formation"
JSON Schema describing the request body for this filing.
{
"type": "object",
"required": [
"jurisdiction",
"legal_name",
"purpose",
"email",
"contact",
"principal_address",
"organizers"
],
"properties": {
"legal_name": { "type": "string" },
"purpose": { "type": "string" },
"email": {
"type": "string",
"format": "email",
"description": "Business email address"
},
"contact": {
"type": "object",
"required": ["name", "email"],
"properties": {
"name": { "type": "string" },
"email": { "type": "string", "format": "email" },
"phone": { "type": "string" }
}
},
"principal_address": {
"type": "object",
"description": "Principal office address",
"required": [
"street_line_1",
"city",
"region",
"postal_code",
"country"
],
"properties": {
"street_line_1": { "type": "string" },
"city": { "type": "string" },
"region": {
"type": "string",
"description": "State or region code"
},
"postal_code": { "type": "string" },
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code"
}
}
},
"mailing_address": {
"type": "object",
"description": "Mailing address if different from principal office",
"properties": {
"street_line_1": { "type": "string" },
"city": { "type": "string" },
"region": {
"type": "string",
"description": "State or region code"
},
"postal_code": { "type": "string" },
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code"
}
}
},
"registered_agent": {
"type": "object",
"required": ["type", "name", "address"],
"properties": {
"type": {
"type": "string",
"enum": ["person", "organization"]
},
"name": {
"type": "object",
"description": "A person or an entity. Discriminated by `type`.",
"required": ["type"],
"properties": {
"type": {
"type": "string",
"enum": ["person", "entity"]
},
"first": {
"type": "string",
"description": "Required when type is \"person\""
},
"last": {
"type": "string",
"description": "Required when type is \"person\""
},
"entity_name": {
"type": "string",
"description": "Required when type is \"entity\""
}
}
},
"address": {
"type": "object",
"description": "Registered office address (must be in the formation jurisdiction)",
"properties": {
"street_line_1": { "type": "string" },
"city": { "type": "string" },
"region": { "type": "string" },
"postal_code": { "type": "string" },
"country": { "type": "string" }
}
}
}
},
"organizers": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": ["name", "address"],
"properties": {
"name": {
"type": "object",
"required": ["type"],
"properties": {
"type": {
"type": "string",
"enum": ["person", "entity"]
},
"first": { "type": "string" },
"last": { "type": "string" },
"entity_name": { "type": "string" }
}
},
"address": {
"type": "object",
"description": "Party address"
},
"title": { "type": "string" }
}
}
},
"tax_accounts": {
"type": "array",
"items": { "type": "string", "enum": ["sales_tax"] }
},
"fein": { "type": "string" },
"ldr_sales_tax": { "type": "object" }
},
"allOf": [
{
"if": {
"properties": {
"tax_accounts": { "contains": { "const": "sales_tax" } }
},
"required": ["tax_accounts"]
},
"then": { "required": ["ldr_sales_tax", "fein"] }
}
]
}
Entity type
"llc"
Jurisdiction (ISO 3166-2)
"US-NC"
Expedited processing tiers this jurisdiction offers, accepted as the expedited_tier value on the formation create endpoints. Empty array when the state offers no expedited option. Present only when a jurisdiction is supplied. For the cost of each tier, call GET /v1/filing/formation/fee — the expedited_tiers field prices them.
["24_hour", "same_day", "1_hour"]
Foreign qualification only: documents the target state needs alongside the application, each with whether it is always required and who supplies it. Empty when none have been captured for the state, which is not a claim that none are needed.
Show child attributes
Show child attributes
Foreign qualification only: obligations the registration starts once accepted.
Show child attributes
Show child attributes
Was this page helpful?

