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

> ## Agent Instructions
> Authenticate with the raw API key in the Authorization header. Never add a Bearer prefix.
> Use the sandbox base URL https://api.test.doola.com and a dk_test_ key in examples unless the user asks for production.
> Send an Idempotency-Key header on POST /v1/partner/customers and POST /v1/partner/companies. No other endpoint takes one.
> Every response is wrapped as {payload, error}. Read fields from payload and branch on error.code, never on the message.
> Drive formation progress from webhooks plus a reconciliation sweep, never a polling loop.
> Embedded SDK (@doola/js): the dk_ key stays on the server and mints customer sessions; the browser gets only a pk_ key and the session. onFormed carries only companyId and can fire more than once. Before charging, read the company with the dk_ key, require formationSubmissionStatus AWAITING_PAYMENT, check the owner's email, and price on the server. Then POST payment-confirmed, which answers 200 with an empty body, and replace the SDK element with a new doola.create() (never append a second one).
> The doola Formation MCP server at https://mcp.doola.com is for founders forming their own company with their own doola account. Partners integrate the Partner API or the Embedded SDK. The /mcp endpoint on this docs site only searches these docs.
> For a full capability summary with the rules above, read https://docs.doola.com/skill.md.

# List open required actions across your companies

> Every open required action across all of your companies, most recently changed first. Closed actions are excluded — use the per-company listing to reconcile those. `total` carries the tenant-wide open count whatever the page size. Histories are omitted; read a single action for those.



## OpenAPI

````yaml /api-reference/openapi.json get /v1/partner/required-actions
openapi: 3.1.0
info:
  title: doola Partner API
  description: >-
    REST API for doola partners to create and manage customers and companies,
    retrieve formation documents, and look up reference data.


    Authenticate every request with a partner API key in the `Authorization`
    header. Generate keys and manage your webhook endpoint in the doola Partner
    Portal.
  contact:
    name: doola
    url: https://www.doola.com
  version: v1
servers:
  - url: https://api.test.doola.com
    description: Sandbox — use test keys (dk_test_…)
  - url: https://api.doola.com
    description: Production — use live keys (dk_live_…)
security:
  - PartnerApiKey: []
tags:
  - name: Playground (sandbox only)
    description: >-
      Sandbox-only helpers to drive a test company through the Formation and
      EinCreation milestones end to end.
  - name: Required Actions
    description: >-
      Actions doola needs you to take on a company, such as supplying new name
      options after a state rejection.
  - name: Customers
    description: Create and look up customers under your partner tenant.
  - name: Documents
    description: List and download a company's formation documents.
  - name: Compliance
    description: Track a company's compliance obligations and their due dates.
  - name: Annual Report Filing
    description: >-
      File a company's annual report with its state: what to collect, what it
      costs, submission, confirmation and status.
  - name: Customer sessions
    description: Mint the token the doola SDK uses in your customer's browser.
  - name: Signatures
    description: Request embedded signing sessions for pending company documents.
  - name: Companies
    description: Create companies for your customers, then track formation status.
  - name: SDK
    description: Keys for the doola Embedded SDK.
  - name: Reference data
    description: >-
      Static lookups for building company-creation requests: NAICS codes,
      states, countries, and state filing fees.
paths:
  /v1/partner/required-actions:
    get:
      tags:
        - Required Actions
      summary: List open required actions across your companies
      description: >-
        Every open required action across all of your companies, most recently
        changed first. Closed actions are excluded — use the per-company listing
        to reconcile those. `total` carries the tenant-wide open count whatever
        the page size. Histories are omitted; read a single action for those.
      operationId: listOpenRequiredActions
      parameters:
        - name: page
          in: query
          description: Zero-based page index.
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - name: size
          in: query
          description: Page size (max 100).
          required: false
          schema:
            type: integer
            format: int32
            default: 20
            minimum: 1
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PartnerSearchPagePartnerRequiredActionDto'
components:
  schemas:
    PartnerSearchPagePartnerRequiredActionDto:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/PartnerRequiredActionDto'
        page:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        total:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
    PartnerRequiredActionDto:
      type: object
      description: An action doola needs you to take on a company
      properties:
        requiredActionId:
          type: string
          example: 31pLdpvMh4OfO90moxLgLT8AuQr
        doolaCompanyId:
          type: string
          example: 31pLD0Tq2lm2FsgRBoHv4x3BpzZ
        actionCode:
          type: string
          description: What is needed
          enum:
            - FORMATION_NAME_OPTIONS_EXHAUSTED
            - FORMATION_SIGNATURE_SS4_RESET
            - FORMATION_SIGNATURE_FORM8821_REQUIRED
          example: FORMATION_NAME_OPTIONS_EXHAUSTED
        actionName:
          type: string
          description: Human-readable label for the action
          example: New company names needed
        status:
          type: string
          enum:
            - created
            - delivered
            - delivery_failed
            - submitted
            - rejected
            - resolved
          example: delivered
        reason:
          type: string
          description: Human-readable explanation you can surface to your user
          example: >-
            All submitted company name options were rejected by the state.
            Submit new options.
        open:
          type: boolean
        awaitingResponse:
          type: boolean
          description: >-
            True while doola is waiting for you to act on this action; false
            once you have submitted a resolution or the action is closed
        updatedAt:
          type: string
          format: date-time
          description: When this action last changed
        history:
          type: array
          items:
            $ref: '#/components/schemas/PartnerRequiredActionEventDto'
    PartnerRequiredActionEventDto:
      type: object
      description: A single step in a required action's history
      properties:
        status:
          type: string
          description: Status this step set
          enum:
            - created
            - delivered
            - delivery_failed
            - submitted
            - rejected
            - resolved
          example: delivered
        submittedPayload:
          $ref: '#/components/schemas/SubmittedResolutionPayload'
          description: >-
            The resolution exactly as you submitted it. Present on submitted
            steps only; a historical record of that step, not the company's
            current state.
        createdAt:
          type: string
          format: date-time
          description: When this step happened
    SubmittedResolutionPayload:
      type: object
      description: The resolution exactly as the partner submitted it
      properties:
        actionCode:
          type: string
          example: FORMATION_NAME_OPTIONS_EXHAUSTED
        nameOptions:
          type: array
          description: The name options as sent, in the order they were sent
          items:
            $ref: '#/components/schemas/SubmittedNameOption'
    SubmittedNameOption:
      type: object
      description: A candidate company name as the partner submitted it
      properties:
        name:
          type: string
          example: Acme Holdings
        entityTypeEnding:
          type: string
          example: LLC
        position:
          type: integer
          format: int32
          description: Preference order, present only when the partner sent one
  securitySchemes:
    PartnerApiKey:
      type: apiKey
      description: >-
        Partner API key. Send the raw key as the `Authorization` header value —
        e.g. `dk_test_…` in sandbox or `dk_live_…` in production. Generate and
        rotate keys in the doola Partner Portal.
      name: Authorization
      in: header

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.