The Compliance Calendar Preview API generates a compliance calendar from a corporation profile without creating or persisting any records. It is intended for stateless preview experiences (for example, a marketing-site calculator or a pre-onboarding flow) where you want to show prospective customers which filings their entity would be subject to in a given fiscal year. Two endpoints are available:Documentation Index
Fetch the complete documentation index at: https://docs.commenda.io/llms.txt
Use this file to discover all available pages before exploring further.
POST /compliance/public/calendar— generate a preview calendar in memory.GET /compliance/public/supported— enumerate the(country, jurisdiction, corporationType)combinations that the preview supports.
These endpoints are server-to-server only. They are not intended to be called directly from a browser and are not part of the standard partner API surface. Contact the Commenda team to obtain an API key.
Authentication
Pass your API key in thex-api-key header on every request.
401 Unauthorized.
Generate a preview calendar
POST /compliance/public/calendar
Returns a list of compliance items (obligations) generated for the supplied corporation profile and target fiscal year. The response is computed in memory; no corporation, compliance, or filing records are created.
Responses include Cache-Control: no-store.
Request body
ISO 3166-1 alpha-2 country code where the corporation is incorporated (for example,
US).Sub-national jurisdiction code (for example,
JUR_US_DE for Delaware). Use the /compliance/public/supported endpoint to discover supported values.Corporation type for the entity (for example,
CCorp, LLC, SCorp). Supported values vary by jurisdiction — see /compliance/public/supported.ISO 8601 date the entity was formed, for example
2024-03-15. Must be a real calendar date with a year between 1900 and currentYear + 10.Day of the month the fiscal year begins (
1–31). Must combine with fiscalYearStartMonth to form a real calendar date — for example, (31, 4) (April 31) is rejected.Month the fiscal year begins (
1–12).The target fiscal year to generate obligations for. Must be
>= 1900 and no more than 10 years in the future from the current UTC year.Optional federal tax election that overrides how the entity is treated when generating obligations. Supported values:
C_CORPORATIONS_CORPORATIONPARTNERSHIPINDIVIDUAL_OR_SOLE_PROPRIETORSHIPDISREGARDED_ENTITYFOREIGN_CORPORATIONFOREIGN_PARTNERSHIPNONPROFITTAX_EXEMPT_ENTITYREITTRUSTCOOPERATIVEESTATETAX_RESIDENT_COMPANYLISTED_COMPANY
taxElection: C_CORPORATION returns the C-Corp obligation set).Optional array of obligation categories to filter by. When omitted or empty, all applicable categories are returned. Maximum size: 15.Active values:
DIRECT_TAXINDIRECT_TAXTRANSFER_PRICINGENTITY_COMPLIANCEPAYROLL_AND_EMPLOYMENTCUSTOMS_AND_TRADE
HR_AND_PAYROLL, CORPORATE_SECRETARIAL, STATISTIC_AUTHORITY, CORPORATE_INCOME_TAX, OTHER, INDIRECT_TAX_COMPLIANCE, DIRECT_TAX_COMPLIANCE, PAYROLL_AND_EMPLOYMENT_COMPLIANCE, REGISTRATIONS_AND_IDENTIFIER, CORPORATE_COMPLIANCE_SECRETARIAL, FINANCIAL_REPORTING, LICENSES_AND_REGULATORY_COMPLIANCE. Prefer the active values above for new integrations.Request example
Response
Array of preview compliance items generated for the supplied profile and fiscal year. The array is empty when no obligations apply.
Error responses
| Status | Code | Description |
|---|---|---|
400 | UNSUPPORTED_JURISDICTION | The (incorporationCountry, jurisdiction, corporationType) combination is not supported. The response body echoes the values you submitted. |
400 | (validation) | One or more fields failed validation (missing field, invalid enum, out-of-range fiscal year, impossible fiscalYearStartDay/fiscalYearStartMonth, unknown field). |
401 | — | Missing or invalid x-api-key header. |
UNSUPPORTED_JURISDICTION example:
Unknown fields in the request body are rejected with
400. Submit only the documented properties.Enumerate supported jurisdictions
GET /compliance/public/supported
Returns the list of (country, jurisdiction, corporationType) tuples that produce a non-empty calendar from POST /compliance/public/calendar. Use it to constrain pickers and dropdowns in your UI rather than probing the calendar endpoint and handling UNSUPPORTED_JURISDICTION errors.
Responses include Cache-Control: max-age=3600, must-revalidate. The set changes only when a jurisdiction is added or removed, so caching for an hour is safe.
Request example
Response
Array of supported tuples.
Error responses
| Status | Description |
|---|---|
401 | Missing or invalid x-api-key header. |
When to use this API
- Marketing-site previews — generate a quick “what would my compliance calendar look like?” preview for prospects without creating an entity.
- Pre-onboarding flows — show new customers the obligations they would inherit before they commit to onboarding.
- Form constraint — drive country, jurisdiction, and corporation-type pickers from
GET /compliance/public/supportedso callers cannot submit unsupported tuples.
Preview results are computed from the same obligation rules that power the production compliance engine, but no compliance items, filings, or corporation records are created. To produce a persisted, trackable calendar, use the authenticated
POST /compliance/calendar endpoint with a real corporation.