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

> Lista os arquivos enviados pelo upload que estão disponíveis para uso nos endpoints de escrita, com o id, o nome, o tamanho, a data do upload e a data de expiração de cada um. Arquivos já usados ou expirados não aparecem; o arquivo expira uma hora depois do upload. Os arquivos listados são os que contam no limite de 100 arquivos disponíveis do upload. Veja [Upload de arquivos](/v2/upload-de-arquivos).



## OpenAPI

````yaml /api-reference/openapi-v2.json get /api/v2/attachment/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
      questionários 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.
  - name: Arquivos
    description: >-
      Upload de arquivos para anexar nos endpoints de escrita da v2, em duas
      etapas: o upload devolve o id do arquivo, e o id vai no campo de anexos da
      escrita. O arquivo fica disponível até ser usado ou expirar, com até 100
      disponíveis; a listagem mostra os disponíveis, com a data de expiração, e
      eles podem ser removidos. 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/attachment/list:
    get:
      tags:
        - Arquivos
      summary: Listar arquivos
      description: >-
        Lista os arquivos enviados pelo upload que estão disponíveis para uso
        nos endpoints de escrita, com o id, o nome, o tamanho, a data do upload
        e a data de expiração de cada um. Arquivos já usados ou expirados não
        aparecem; o arquivo expira uma hora depois do upload. Os arquivos
        listados são os que contam no limite de 100 arquivos disponíveis do
        upload. Veja [Upload de arquivos](/v2/upload-de-arquivos).
      operationId: listarArquivosV2
      responses:
        '200':
          description: Arquivos enviados.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ArquivoV2'
              example:
                - id: c810e86e-616d-45b7-8a5e-669319021829
                  name: fachada-unidade-centro.jpg
                  fileLength: 3344244
                  uploadedAt: '2026-11-05T13:31:12Z'
                  expiresAt: '2026-11-05T14:31:12Z'
                - id: 54e12530-0d99-4292-b849-088692932f70
                  name: estoque-unidade-centro.jpg
                  fileLength: 2871502
                  uploadedAt: '2026-11-05T13:32:40Z'
                  expiresAt: '2026-11-05T14:32:40Z'
        '401':
          $ref: '#/components/responses/TokenInvalido'
        '429':
          $ref: '#/components/responses/LimiteDeRequisicoes'
        5XX:
          $ref: '#/components/responses/ErroDoServidor'
components:
  schemas:
    ArquivoV2:
      type: object
      description: Arquivo enviado pelo upload e disponível para uso.
      properties:
        id:
          type: string
          format: uuid
          description: >-
            Id do arquivo, o mesmo devolvido pelo upload. Vai no campo de anexos
            dos endpoints de escrita e serve para remover o arquivo.
          example: c810e86e-616d-45b7-8a5e-669319021829
        name:
          type: string
          description: Nome do arquivo enviado.
          example: fachada-unidade-centro.jpg
        fileLength:
          type: integer
          description: Tamanho do arquivo, em bytes.
          example: 3344244
        uploadedAt:
          type: string
          format: date-time
          description: Data e hora do upload, em UTC. Formato exato `yyyy-MM-ddTHH:mm:ssZ`.
          example: '2026-11-05T13:31:12Z'
        expiresAt:
          type: string
          format: date-time
          description: >-
            Data e hora em que o arquivo expira, uma hora depois do upload, em
            UTC. Formato exato `yyyy-MM-ddTHH:mm:ssZ`. Depois dela, o arquivo
            fica indisponível para os endpoints de escrita, deixa de aparecer na
            listagem e não conta no limite de 100 arquivos disponíveis.
          example: '2026-11-05T14:31:12Z'
    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:
    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.
    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.