> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cadanapay.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List filings

> **Beta** — contact Cadana to enable access for your business.

Returns filings across all jurisdictions for a business. Use this as
both a compliance calendar ("what's due?") and a filing history
("what's done?").

The response includes a `summary` object with counts by status —
use this to power compliance health dashboards without additional
API calls.




## OpenAPI

````yaml /openapi/statutory-compliance.yaml get /v1/statutory/filings
openapi: 3.0.0
info:
  title: Statutory Compliance API
  version: 0.1.0
  description: Statutory filing, government remittance, and compliance tracking API
  termsOfService: https://cadanapay.com/terms-and-conditions
  contact:
    email: api@cadanapay.com
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
  - url: https://api.cadanapay.com
    description: Prod Server
  - url: https://dev-api.cadanapay.com
    description: Dev Server
security:
  - Authorization: []
tags:
  - name: Jurisdictions
    description: Discover supported countries, required fields, and filing types
  - name: Filings
    description: >-
      Create, submit, and track statutory returns — from upcoming obligations
      through acceptance
  - name: Remittances
    description: Government payments linked to filings
  - name: Requirements
    description: Prerequisites that must be satisfied before filing
  - name: Events
    description: Immutable audit trail
  - name: Statutory Fields
    description: Submit and read entity-level statutory filing data
paths:
  /v1/statutory/filings:
    get:
      tags:
        - Filings
      summary: List filings
      description: |
        **Beta** — contact Cadana to enable access for your business.

        Returns filings across all jurisdictions for a business. Use this as
        both a compliance calendar ("what's due?") and a filing history
        ("what's done?").

        The response includes a `summary` object with counts by status —
        use this to power compliance health dashboards without additional
        API calls.
      operationId: listFilings
      parameters:
        - $ref: '#/components/parameters/XMultiTenantKey'
        - name: businessId
          in: query
          schema:
            type: string
          description: Filter by business
        - name: countryCode
          in: query
          schema:
            type: string
          description: Filter by jurisdiction (ISO 3166-1 alpha-2)
        - name: status
          in: query
          schema:
            type: string
            enum:
              - pending
              - blocked
              - in_review
              - approved
              - submitted
              - accepted
              - rejected
              - cancelled
          description: Filter by filing status
      responses:
        '200':
          description: List of filings with compliance summary
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/FilingListItem'
                  summary:
                    $ref: '#/components/schemas/FilingSummary'
components:
  parameters:
    XMultiTenantKey:
      name: X-MultiTenantKey
      in: header
      required: false
      schema:
        type: string
      description: >-
        Required when using a Platform API token. The tenant key identifying
        which business to operate on.
  schemas:
    FilingListItem:
      type: object
      description: |
        Reduced filing entry returned in list responses. Use
        `GET /v1/statutory/filings/{id}` for full details.
      properties:
        id:
          type: string
          example: fil_01HQ3K4N7XYZABC
        businessId:
          type: string
          example: biz_01HQ3K4N7XYZABC
        countryCode:
          type: string
          example: MX
        source:
          type: string
          enum:
            - cadana
            - external
          description: >-
            Whether Cadana prepared the filing (`cadana`) or you filed
            externally and provided the data (`external`).
          example: cadana
        filingTypeId:
          type: string
          example: ft_mx_isr_monthly
        filingTypeName:
          type: string
          example: ISR Withholding
        authorityName:
          type: string
          example: SAT
        status:
          type: string
          enum:
            - pending
            - blocked
            - in_review
            - approved
            - submitted
            - accepted
            - rejected
            - cancelled
        period:
          type: object
          properties:
            start:
              type: string
              format: date
            end:
              type: string
              format: date
            label:
              type: string
        dueAt:
          type: string
          example: '2026-02-10'
        workerCount:
          type: integer
          example: 15
        createdAt:
          type: number
          format: epoch
          example: 1709280000
        updatedAt:
          type: number
          format: epoch
          example: 1709280000
    FilingSummary:
      type: object
      description: |
        Status counts for the filtered set of filings. Use this to power
        compliance health dashboards.
      properties:
        total:
          type: integer
        pending:
          type: integer
        inReview:
          type: integer
        approved:
          type: integer
        submitted:
          type: integer
        accepted:
          type: integer
        blocked:
          type: integer
        cancelled:
          type: integer
        rejected:
          type: integer
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer
      bearerFormat: API_SECRET_KEY

````