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

# Listar planos de ação

> Lista os planos de ação gerados a partir das respostas de avaliação, no formato 5W2H (`what`, `why`, `whenDate`, `whoUser`, `how` e `howMuch`; o onde não vem na resposta), com a resposta e a avaliação de origem, a situação e as etiquetas. As datas `whenDate` e `whenDeadlineDate` vêm em yyyy-MM-dd; as demais, em UTC ISO 8601.



## OpenAPI

````yaml /api-reference/openapi-v2.json get /api/v2/checklist/action-plan/list
openapi: 3.1.0
info:
  title: API do SULTS v2
  version: '2.0'
  description: >-
    A nova geração da API do SULTS, em migração módulo a módulo (Compras
    primeiro). Autenticação por token v2 no cabeçalho `Authorization`; tokens v1
    não funcionam aqui. Nas requisições com corpo, envie `Content-Type:
    application/json;charset=UTF-8`.
  contact:
    name: Suporte SULTS
    url: https://ajuda.sults.com.br
servers:
  - url: https://api.sults.com.br
security:
  - apiKeyAuth: []
tags:
  - name: Produtos
    description: >-
      Cadastro, preço, estoque, variações e variantes de produto no módulo de
      Compras da v2. A API do SULTS é REST sobre HTTPS e responde em JSON. Cada
      requisição leva o token no cabeçalho `Authorization`, enviado puro, sem o
      prefixo `Bearer`. O token é gerado por um administrador na plataforma, em
      Segurança > API > Gestão de Tokens v2. O limite é de 2 requisições por
      segundo, por IP.
  - name: Mix de produtos
    description: >-
      Sortimento de produtos por empresa. Disponível apenas quando o recurso de
      mix está habilitado na plataforma, em Comercial > Configuração > Mix de
      produto. A API do SULTS é REST sobre HTTPS e responde em JSON. Cada
      requisição leva o token no cabeçalho `Authorization`, enviado puro, sem o
      prefixo `Bearer`. O token é gerado por um administrador na plataforma, em
      Segurança > API > Gestão de Tokens v2. O limite é de 2 requisições por
      segundo, por IP.
  - name: Pedidos e etapas
    description: >-
      Pedidos de compra da v2 e o fluxo de etapas, que é configurável por
      operação. A API do SULTS é REST sobre HTTPS e responde em JSON. Cada
      requisição leva o token no cabeçalho `Authorization`, enviado puro, sem o
      prefixo `Bearer`. O token é gerado por um administrador na plataforma, em
      Segurança > API > Gestão de Tokens v2. O limite é de 2 requisições por
      segundo, por IP.
  - name: Comunicados
    description: >-
      Comunicados publicados na plataforma, com o público de cada um, a
      confirmação de leitura e o conteúdo publicado. A API do SULTS é REST sobre
      HTTPS e responde em JSON. Cada requisição leva o token no cabeçalho
      `Authorization`, enviado puro, sem o prefixo `Bearer`. O token é gerado
      por um administrador na plataforma, em Segurança > API > Gestão de Tokens
      v2. O limite é de 2 requisições por segundo, por IP.
  - name: Chamados
    description: >-
      Chamados da plataforma: abertura, timeline, interações, apoios, etiquetas,
      prazo e conclusão. A API do SULTS é REST sobre HTTPS e responde em JSON.
      Cada requisição leva o token no cabeçalho `Authorization`, enviado puro,
      sem o prefixo `Bearer`. O token é gerado por um administrador na
      plataforma, em Segurança > API > Gestão de Tokens v2. O limite é de 2
      requisições por segundo, por IP.
  - name: Checklist
    description: >-
      Avaliações de checklist com respostas, check-in e check-out, os modelos
      com seções e questões, e os planos de ação com a timeline. A API do SULTS
      é REST sobre HTTPS e responde em JSON. Cada requisição leva o token no
      cabeçalho `Authorization`, enviado puro, sem o prefixo `Bearer`. O token é
      gerado por um administrador na plataforma, em Segurança > API > Gestão de
      Tokens v2. O limite é de 2 requisições por segundo, por IP.
paths:
  /api/v2/checklist/action-plan/list:
    get:
      tags:
        - Checklist
      summary: Listar planos de ação
      description: >-
        Lista os planos de ação gerados a partir das respostas de avaliação, no
        formato 5W2H (`what`, `why`, `whenDate`, `whoUser`, `how` e `howMuch`; o
        onde não vem na resposta), com a resposta e a avaliação de origem, a
        situação e as etiquetas. As datas `whenDate` e `whenDeadlineDate` vêm em
        yyyy-MM-dd; as demais, em UTC ISO 8601.
      operationId: listarPlanosAcao
      parameters:
        - name: id
          in: query
          schema:
            type: integer
          description: Código do plano de ação.
          example: 119
        - name: assessmentId
          in: query
          schema:
            type: integer
          description: Código da avaliação.
          example: 171
        - name: questionId
          in: query
          schema:
            type: integer
          description: Código da questão.
          example: 7895
        - name: status
          in: query
          schema:
            type: string
            enum:
              - NEW
              - RESOLVED
              - CLOSED
              - IN_PROGRESS
              - REJECTED
          description: |-
            Situação do plano de ação.

            | Valor | Significado |
            | ----- | ----------- |
            | `NEW` | Novo |
            | `RESOLVED` | Resolvido |
            | `CLOSED` | Concluído |
            | `IN_PROGRESS` | Em andamento |
            | `REJECTED` | Rejeitado |
          example: IN_PROGRESS
      responses:
        '200':
          description: Lista de planos de ação.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PlanoAcaoV2'
              example:
                - id: 119
                  status: IN_PROGRESS
                  justification: Reincidência
                  assessmentAnswer:
                    id: 1212
                    answer: Ruim
                    question:
                      id: 7895
                      title: Qual o nível de limpeza das estantes?
                      secao:
                        id: 5132
                        name: Estoque seco
                  assessment:
                    id: 171
                    scheduledDate: '2026-10-06T13:00:00Z'
                    earlyStartEnabled: true
                    createdAt: '2026-10-01T18:20:00Z'
                    startedAt: '2026-10-06T13:01:10Z'
                    closedAt: '2026-10-06T14:42:18Z'
                    company:
                      id: 12
                      name: Sabor Mineiro Savassi
                      cnpj: '42274696002561'
                    template:
                      id: 25
                      name: Inspeção de qualidade da unidade
                    asset: {}
                  createdByUser:
                    id: 55
                    name: Carlos Mendes
                  createdAt: '2026-10-06T14:40:00Z'
                  what: Comprar organizadores para as estantes
                  why: Estantes sujas na última inspeção
                  whenDate: '2026-10-08'
                  whenDeadlineDate: '2026-10-20'
                  how: Solicitar a compra ao fornecedor padrão
                  howMuch: '300.5'
                  note: Prioridade alta
                  whoName: Maria Silva
                  whoUser:
                    id: 845
                    name: Maria Silva
                  tags:
                    - id: 3
                      name: Urgente
                      color: '#FF0000'
        '400':
          $ref: '#/components/responses/ErroValidacao'
        '401':
          $ref: '#/components/responses/TokenInvalido'
        '404':
          $ref: '#/components/responses/NaoEncontrado'
        '429':
          $ref: '#/components/responses/LimiteDeRequisicoes'
        5XX:
          $ref: '#/components/responses/ErroDoServidor'
components:
  schemas:
    PlanoAcaoV2:
      type: object
      description: >-
        Plano de ação gerado a partir de uma resposta de avaliação, no formato
        5W2H.
      properties:
        id:
          type: integer
          description: Código do plano de ação.
          example: 119
        status:
          $ref: '#/components/schemas/SituacaoPlanoAcaoV2'
          description: Situação do plano de ação.
        justification:
          type: string
          description: Justificativa do plano de ação.
          example: Reincidência
        assessmentAnswer:
          type: object
          description: Resposta que gerou o plano de ação.
          properties:
            id:
              type: integer
              description: Código da resposta.
              example: 1212
            answer:
              type: string
              description: Resposta dada.
              example: Ruim
            question:
              type: object
              description: Questão respondida.
              properties:
                id:
                  type: integer
                  description: Código da questão.
                  example: 7895
                title:
                  type: string
                  description: Título da questão.
                  example: Qual o nível de limpeza das estantes?
                secao:
                  $ref: '#/components/schemas/ChecklistSecaoResumoV2'
                  description: >-
                    Seção da questão. O nome do campo é em português, diferente
                    do `section` dos demais endpoints de Checklist.
        assessment:
          type: object
          description: Avaliação do plano de ação.
          properties:
            id:
              type: integer
              description: Código da avaliação.
              example: 171
            scheduledDate:
              type: string
              description: Data agendada, em UTC ISO 8601.
              example: '2026-10-06T13:00:00Z'
              format: date-time
            earlyStartEnabled:
              type: boolean
              description: Permite iniciar a avaliação antes da data agendada.
              example: true
            createdAt:
              type: string
              description: Data de criação, em UTC ISO 8601.
              example: '2026-10-01T18:20:00Z'
              format: date-time
            startedAt:
              type: string
              description: Data de início, em UTC ISO 8601.
              example: '2026-10-06T13:01:10Z'
              format: date-time
            closedAt:
              type: string
              description: Data de conclusão, em UTC ISO 8601.
              example: '2026-10-06T14:42:18Z'
              format: date-time
            company:
              $ref: '#/components/schemas/ChecklistUnidadeV2'
              description: Unidade avaliada.
            template:
              $ref: '#/components/schemas/ChecklistModeloResumoV2'
              description: Modelo aplicado.
            asset:
              description: >-
                Objeto em avaliação. Vem vazio quando a avaliação não tem
                objeto.
              oneOf:
                - $ref: '#/components/schemas/ChecklistObjetoV2'
                - type: 'null'
        createdByUser:
          $ref: '#/components/schemas/ChecklistUsuarioV2'
          description: Usuário que criou o plano de ação.
        createdAt:
          type: string
          description: Data de criação, em UTC ISO 8601.
          example: '2026-10-06T14:40:00Z'
          format: date-time
        closedAt:
          type:
            - string
            - 'null'
          description: Data de conclusão, em UTC ISO 8601.
          example: '2026-10-21T17:05:00Z'
          format: date-time
        what:
          type: string
          description: O que será feito.
          example: Comprar organizadores para as estantes
        why:
          type: string
          description: Por que será feito.
          example: Estantes sujas na última inspeção
        whenDate:
          type:
            - string
            - 'null'
          description: Data de início, em yyyy-MM-dd.
          example: '2026-10-08'
          format: date
        whenDeadlineDate:
          type: string
          description: Prazo, em yyyy-MM-dd.
          example: '2026-10-20'
          format: date
        how:
          type: string
          description: Como será feito.
          example: Solicitar a compra ao fornecedor padrão
        howMuch:
          type: string
          description: Quanto custará. Vem como texto.
          example: '300.5'
        whoName:
          type: string
          description: Quem fará, como texto livre.
          example: Maria Silva
        whoUser:
          description: Quem fará, como usuário da plataforma.
          oneOf:
            - $ref: '#/components/schemas/ChecklistUsuarioV2'
            - type: 'null'
        note:
          type: string
          description: Observação.
          example: Prioridade alta
        tags:
          type: array
          description: Etiquetas do plano de ação.
          items:
            $ref: '#/components/schemas/ChecklistEtiquetaV2'
    SituacaoPlanoAcaoV2:
      type: string
      enum:
        - NEW
        - RESOLVED
        - CLOSED
        - IN_PROGRESS
        - REJECTED
      description: |-
        Situação do plano de ação.

        | Valor | Significado |
        | ----- | ----------- |
        | `NEW` | Novo |
        | `RESOLVED` | Resolvido |
        | `CLOSED` | Concluído |
        | `IN_PROGRESS` | Em andamento |
        | `REJECTED` | Rejeitado |
      example: IN_PROGRESS
    ChecklistSecaoResumoV2:
      type: object
      description: Seção do modelo em forma resumida.
      properties:
        id:
          type: integer
          description: Código da seção.
          example: 5132
        name:
          type: string
          description: Nome da seção.
          example: Estoque seco
    ChecklistUnidadeV2:
      type: object
      description: Unidade avaliada.
      properties:
        id:
          type: integer
          description: Código da unidade.
          example: 12
        name:
          type: string
          description: Nome da unidade.
          example: Sabor Mineiro Savassi
        cnpj:
          type: string
          description: CNPJ da unidade, sem máscara.
          example: '42274696002561'
    ChecklistModeloResumoV2:
      type: object
      description: Modelo de checklist (questionário) em forma resumida.
      properties:
        id:
          type: integer
          description: Código do modelo.
          example: 25
        name:
          type: string
          description: Nome do modelo.
          example: Inspeção de qualidade da unidade
    ChecklistObjetoV2:
      type: object
      description: Objeto em avaliação.
      properties:
        id:
          type: integer
          description: Código do objeto.
          example: 19
        name:
          type: string
          description: Nome do objeto.
          example: Cozinha
    ChecklistUsuarioV2:
      type: object
      description: Usuário em forma resumida.
      properties:
        id:
          type: integer
          description: Código do usuário.
          example: 55
        name:
          type: string
          description: Nome do usuário.
          example: Carlos Mendes
    ChecklistEtiquetaV2:
      type: object
      description: Etiqueta do plano de ação.
      properties:
        id:
          type: integer
          description: Código da etiqueta.
          example: 3
        name:
          type: string
          description: Nome da etiqueta.
          example: Urgente
        color:
          type: string
          description: Cor da etiqueta, em hexadecimal.
          example: '#FF0000'
    Erro:
      type: object
      description: >-
        Corpo padrão de erro da API. Não existe código de erro interno: decida a
        sua lógica pelo status HTTP e use a mensagem apenas para logs e
        diagnóstico.
      required:
        - error
      properties:
        error:
          type: string
          description: >-
            Mensagem legível, em português, descrevendo a falha. O texto pode
            mudar: nunca o use como condição de código.
          example: Campo supplierId não pode ser vazio ou nulo.
  responses:
    ErroValidacao:
      description: >-
        Erro de validação ou formato errado nos dados de entrada. A API aponta
        **um campo por vez**: corrija o campo indicado na mensagem, reenvie e
        repita até o 200.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Erro'
          example:
            error: Campo supplierId não pode ser vazio ou nulo.
    TokenInvalido:
      description: >-
        Token ausente ou inválido. Confira: copiado por completo, cabeçalho
        `Authorization` com o nome exato, valor sem o prefixo `Bearer` e gerado
        na **Gestão de Tokens v2** (tokens v1 não funcionam aqui). Sem retry
        automático. O corpo real é `{"error": "Acesso não autorizado."}`.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Erro'
          example:
            error: Acesso não autorizado.
    NaoEncontrado:
      description: >-
        Recurso inexistente, ou recurso condicionado desabilitado (por exemplo,
        endpoints de Mix sem o recurso de mix habilitado na operação). Reenviar
        sem corrigir devolve o mesmo erro.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Erro'
    LimiteDeRequisicoes:
      description: >-
        Limite de requisições excedido: **2 requisições por segundo, por IP**. A
        resposta é a página HTML padrão do servidor, não JSON, e não há o header
        `Retry-After`: trate pelo status 429, sem fazer parse do corpo, com
        espera crescente a partir de 1 segundo.
      content:
        text/html:
          schema:
            type: string
            description: >-
              Página HTML padrão do servidor. Não faça parse; decida pelo
              status.
    ErroDoServidor:
      description: >-
        Falha inesperada do servidor (raro). Repita com espera crescente;
        persistindo, acione o suporte com data, hora e endpoint.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Erro'
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Token  gerado na Gestão de Tokens v2 do SULTS. Deve ser enviado no
        cabeçalho `Authorization` de todas as requisições.

````

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