> ## 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.

# Get status workflow

> Retrieve the public status workflow for a selected incorporation jurisdiction and type. The response is derived from the active workflow template and includes ordered public stages.

Retrieves the public status workflow for a selected incorporation jurisdiction and type.

Use this endpoint after the customer chooses `country` and `countryOptions` if you want to render a progress UI before the incorporation is created.

The workflow is informational and versioned. Incorporation progress is returned by [Get incorporation status](/engine/incorporation/partner-incorporation-status-GET).

## Query shape

Use the same deep-object query syntax as the requirements endpoint.

```bash theme={null}
curl --request GET \
  --url 'https://api.prod.commenda.io/api/v1/partner/incorporation/status-workflow?country=SG&countryOptions[corporationType]=PRIVATE_LIMITED_COMPANY' \
  --header 'x-api-key: <partner_api_key>'
```

## Response

```json theme={null}
{
  "statusWorkflow": {
    "schemaVersion": "2026-04-26",
    "definitionVersion": "1.0.0",
    "key": "singapore-incorporation-partner-api",
    "country": "SG",
    "countryOptions": {
      "corporationType": "PRIVATE_LIMITED_COMPANY"
    },
    "name": "Singapore Private Limited Company Incorporation",
    "description": "Track the public progress of a Singapore private limited company incorporation.",
    "stages": [
      {
        "id": "intake",
        "label": "Intake",
        "description": "Collect required incorporation information and documents.",
        "owner": "PARTNER",
        "position": 1
      },
      {
        "id": "kyc",
        "label": "KYC",
        "description": "Review required identity, ownership, and compliance materials.",
        "owner": "COMMENDA",
        "position": 2
      }
    ]
  }
}
```

## Stage owners

| Owner      | Meaning                                                 |
| ---------- | ------------------------------------------------------- |
| `PARTNER`  | The partner integration or partner team owns the stage. |
| `CUSTOMER` | The end customer must provide input.                    |
| `COMMENDA` | Commenda owns the stage.                                |

If the status workflow is not active for the selected incorporation type, the endpoint returns `404`.


## OpenAPI

````yaml GET /partner/incorporation/status-workflow
openapi: 3.0.1
info:
  title: Commenda Public APIs
  description: >-
    APIs for Commenda entity management, partner incorporation, indirect tax,
    compliance, and corporate operations.
  license:
    name: NONE
    url: NONE
  version: 1.0.0
servers:
  - url: https://api.prod.commenda.io/api/v1
    description: Commenda platform APIs, including Partner Incorporation and Commenda OS.
  - url: https://transaction-tax.api.in.commenda.io/api/v1
    description: Global Indirect Tax API.
security:
  - bearerAuth: []
paths:
  /partner/incorporation/status-workflow:
    get:
      summary: Get incorporation status workflow
      description: >-
        Retrieve the public status workflow for a selected incorporation
        jurisdiction and type. The response is derived from the active workflow
        template and includes ordered public stages.
      operationId: getPartnerIncorporationStatusWorkflow
      parameters:
        - name: country
          in: query
          required: true
          schema:
            $ref: '#/components/schemas/PartnerIncorporationCountry'
          description: Incorporation country.
          example: SG
        - name: countryOptions
          in: query
          required: true
          style: deepObject
          explode: true
          schema:
            $ref: '#/components/schemas/PartnerIncorporationCountryOptions'
          description: >-
            Country-specific options using deep-object query syntax, for example
            `countryOptions[corporationType]=PRIVATE_LIMITED_COMPANY`.
      responses:
        '200':
          description: Status workflow retrieved successfully
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/PartnerIncorporationStatusWorkflowResponse
        '400':
          description: Unsupported or malformed incorporation selection
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AffiliatePublicError'
        '401':
          description: Missing or invalid partner API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AffiliatePublicError'
        '404':
          description: >-
            Status workflow is not available or active for the requested
            selection
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AffiliatePublicError'
      security:
        - xApiKeyAuth: []
      servers:
        - url: https://api.prod.commenda.io/api/v1
components:
  schemas:
    PartnerIncorporationCountry:
      type: string
      description: ISO 3166-1 alpha-2 country code for the incorporation jurisdiction.
      example: SG
      enum:
        - AE
        - CA
        - GB
        - IE
        - IN
        - KY
        - NZ
        - SG
        - US
    PartnerIncorporationCountryOptions:
      type: object
      description: >-
        Country-specific incorporation options. Use the jurisdiction catalog for
        the currently supported fields and values.
      additionalProperties: true
      example:
        corporationType: PRIVATE_LIMITED_COMPANY
    PartnerIncorporationStatusWorkflowResponse:
      type: object
      required:
        - statusWorkflow
      properties:
        statusWorkflow:
          $ref: '#/components/schemas/PartnerIncorporationStatusWorkflow'
    AffiliatePublicError:
      type: object
      required:
        - statusCode
        - message
        - error
      properties:
        statusCode:
          type: integer
          example: 403
        message:
          oneOf:
            - type: string
            - type: array
              items:
                type: string
          example: Company does not belong to this affiliate firm
        error:
          type: string
          example: Forbidden
    PartnerIncorporationStatusWorkflow:
      type: object
      required:
        - schemaVersion
        - definitionVersion
        - key
        - country
        - countryOptions
        - name
        - description
        - stages
      properties:
        schemaVersion:
          type: string
          description: Public status workflow schema version.
          example: '2026-04-26'
        definitionVersion:
          type: string
          description: >-
            Active workflow definition version used to produce this public
            workflow.
          example: 1.0.0
        key:
          type: string
          description: Workflow template key.
          example: singapore-incorporation-partner-api
        country:
          $ref: '#/components/schemas/PartnerIncorporationCountry'
        countryOptions:
          $ref: '#/components/schemas/PartnerIncorporationCountryOptions'
        name:
          type: string
          example: Singapore Private Limited Company Incorporation
        description:
          type: string
          example: >-
            Track the public progress of a Singapore private limited company
            incorporation.
        stages:
          type: array
          items:
            $ref: '#/components/schemas/PartnerIncorporationStatusWorkflowStage'
    PartnerIncorporationStatusWorkflowStage:
      type: object
      required:
        - id
        - label
        - description
        - owner
        - position
      properties:
        id:
          type: string
          description: >-
            Stable stage identifier. Issue scopes may reference this as
            `stageId`.
          example: kyc
        label:
          type: string
          example: KYC
        description:
          type: string
          example: Review required identity, ownership, and compliance materials.
        owner:
          $ref: '#/components/schemas/PartnerIncorporationStatusStageOwner'
        position:
          type: integer
          description: One-based display order.
          example: 2
    PartnerIncorporationStatusStageOwner:
      type: string
      description: Party expected to own work in a public status stage.
      enum:
        - PARTNER
        - CUSTOMER
        - COMMENDA
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
    xApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````