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

# Listar produtos

> Lista os produtos do produtor autenticado, paginados. Escopo: `products:read`.



## OpenAPI

````yaml /api-reference/openapi.json get /api/v2/products
openapi: 3.0.3
info:
  title: Ticto API v2
  version: 2.0.0
  description: >-
    API pública da Ticto para criar produtos e ofertas e ler pedidos,
    assinaturas e saques. Autenticação por token Bearer com escopos granulares.
    Todo acesso é isolado ao produtor dono do token — por construção, não por
    checagem por endpoint.
servers:
  - url: https://api.ticto.cloud
    description: Produção (tokens ticto_live_)
  - url: https://sandbox.ticto.cloud
    description: Sandbox (tokens ticto_test_)
security:
  - bearerAuth: []
tags:
  - name: Produtos
    description: Criação e leitura de produtos.
  - name: Ofertas
    description: Criação e leitura de ofertas de um produto.
  - name: Pedidos
    description: Leitura de pedidos (paridade com a API v1).
  - name: Assinaturas
    description: Leitura de assinaturas (paridade com a API v1).
  - name: Saques
    description: Leitura de saques/cashouts (paridade com a API v1).
paths:
  /api/v2/products:
    get:
      tags:
        - Produtos
      summary: Listar produtos
      description: >-
        Lista os produtos do produtor autenticado, paginados. Escopo:
        `products:read`.
      operationId: listProducts
      parameters:
        - name: per_page
          in: query
          schema:
            type: integer
            default: 30
            maximum: 100
          description: Itens por página (máx. 100).
      responses:
        '200':
          description: Lista de produtos.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductList'
        '401':
          $ref: '#/components/responses/Unauthorized'
      security:
        - bearerAuth:
            - products:read
components:
  schemas:
    ProductList:
      type: object
      properties:
        object:
          type: string
          example: list
        data:
          type: array
          items:
            $ref: '#/components/schemas/Product'
        meta:
          $ref: '#/components/schemas/ListMeta'
    Product:
      type: object
      properties:
        object:
          type: string
          example: product
        id:
          type: string
          description: Hash do produto — identificador canônico da API.
          example: PABC123
        reference_id:
          type: integer
          description: >-
            ID numérico legado (reconcilia com a dashboard). Não é fronteira de
            segurança.
          example: 42
        name:
          type: string
          example: Curso de Marketing Digital
        type:
          type: string
          example: course
        status:
          type: string
          readOnly: true
          example: approved
          description: >-
            Status do produto, gerido pela plataforma. Somente leitura: não pode
            ser enviado nem alterado pela API.
        is_active:
          type: boolean
          example: true
          description: >-
            Se o produto está ativo (disponível). Controlado pelo produtor via
            `is_active` na criação.
        created_at:
          type: string
          format: date-time
    ListMeta:
      type: object
      description: Paginação das listas nativas da v2 (produtos).
      properties:
        page:
          type: integer
        per_page:
          type: integer
        total:
          type: integer
    Error:
      type: object
      properties:
        error:
          type: string
          example: insufficient_scope
        message:
          type: string
          example: 'Token is missing the required ability: orders:read.'
        request_id:
          type: string
          nullable: true
  responses:
    Unauthorized:
      description: Token ausente, inválido ou expirado.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: unauthorized
            message: Invalid or expired token.
            request_id: null
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Token opaco no formato `ticto_live_...` (produção) ou `ticto_test_...`
        (sandbox). Enviado como `Authorization: Bearer <token>`.

````

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