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

# Transições de etapas



## OpenAPI

````yaml /api-reference/openapi.json get /api/management/project-funnels/{project_funnel_id}/step-transitions
openapi: 3.0.0
info:
  title: Olie API
  version: 1.0.0
  description: >
    # Introdução 👋


    Olá! Esta é a documentação oficial da API da [olie.ai](https://olie.ai/).
    Aqui você encontra as referências e exemplos de uso dos nossos endpoints.


    Para uma visão completa, recomendamos fortemente que você leia a
    [documentação oficial](https://docs.olie.ai/api-reference/introduction). Lá
    estão detalhados tópicos essenciais como
    [autenticação](https://docs.olie.ai/api-reference/introduction/authentication),
    [estrutura de
    respostas](https://docs.olie.ai/api-reference/general/response-structure),
    [paginação](https://docs.olie.ai/api-reference/general/pagination) e outros
    guias de integração.


    No Postman, esta coleção foca nas informações específicas de cada requisição
    (endpoints, parâmetros e exemplos), servindo como apoio rápido para testes e
    desenvolvimento.
servers:
  - url: https://api.olie.ai
security:
  - BearerAuth: []
paths:
  /api/management/project-funnels/{project_funnel_id}/step-transitions:
    parameters:
      - name: project_funnel_id
        in: path
        required: true
        schema:
          type: integer
        example: 40
    get:
      tags:
        - project-funnels
        - '{project_funnel_id}'
      summary: Transições de etapas
      parameters:
        - name: project_id
          in: query
          required: false
          description: ID do projeto utilizado para filtrar as transições do funil
          deprecated: false
          schema:
            type: string
          example: 019dd427-5d13-71bf-9a09-d75aa2bf4bd7
        - name: start_date
          in: query
          description: >-
            Data inicial do período de busca das transições. Retorna apenas
            registros com entrada igual ou posterior à data informada
          schema:
            type: string
          example: '2026-05-01'
        - name: end_date
          in: query
          description: >-
            Data final do período de busca das transições. Retorna apenas
            registros com entrada igual ou anterior à data informada
          schema:
            type: string
          example: '2026-05-15'
        - name: funnel_step_id
          in: query
          description: ID da etapa do funil utilizado para filtrar as transições
          schema:
            type: integer
          example: 197
        - name: user_id
          in: query
          description: ID do usuário responsável pela movimentação do projeto entre etapas
          schema:
            type: string
          example: 019c75de-509e-711a-8933-175cb2514cc5
        - name: page
          in: query
          description: Página atual em que os registros serão trazidos
          schema:
            type: integer
          example: 1
      responses:
        '200':
          description: Sucesso
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
              example: '*'
            Access-Control-Expose-Headers:
              schema:
                type: string
              example: '*'
            Cache-Control:
              schema:
                type: string
              example: no-cache, private
          content:
            application/json:
              schema:
                description: >-
                  Resposta contendo o histórico de transições entre etapas do
                  funil de um projeto.
                type: object
                properties:
                  funnel_step_transitions:
                    type: array
                    description: Lista de movimentações do projeto entre etapas do funil.
                    items:
                      description: Representa uma transição de etapa do funil.
                      type: object
                      properties:
                        id:
                          type: integer
                          description: Identificador único da transição.
                        entry_time:
                          type: string
                          description: Data e hora em que o projeto entrou na etapa.
                          format: date-time
                        exit_time:
                          type: string
                          description: >-
                            Data e hora em que o projeto saiu da etapa. Será
                            null caso ainda esteja ativo nesta etapa.
                          format: date-time
                        project_id:
                          type: string
                          description: ID do projeto relacionado à transição.
                        funnel_step_id:
                          type: integer
                          description: ID da etapa do funil.
                        exit_parent_id:
                          type: integer
                          description: ID da próxima transição relacionada.
                        entry_user_id:
                          type: string
                          description: ID do usuário responsável pela entrada na etapa.
                        exit_user_id:
                          type: string
                          description: ID do usuário responsável pela saída da etapa.
                        duration_seconds:
                          type: integer
                          description: Tempo total de permanência na etapa em segundos.
                        funnel_step:
                          type: object
                          description: Informações da etapa do funil.
                          properties:
                            id:
                              type: integer
                              description: ID da etapa.
                            name:
                              type: string
                              description: Nome da etapa do funil.
                        exit_parent:
                          type: object
                          description: Próxima transição vinculada a esta movimentação.
                          properties:
                            id:
                              type: integer
                              description: ID da transição.
                            entry_time:
                              type: string
                              description: Data e hora de entrada na etapa.
                              format: date-time
                            exit_time:
                              type: string
                              description: Data e hora de saída da etapa.
                              format: date-time
                            project_id:
                              type: string
                              description: ID do projeto relacionado.
                            funnel_step_id:
                              type: integer
                              description: ID da etapa.
                            exit_parent_id:
                              type: integer
                              description: ID da próxima transição vinculada.
                            entry_user_id:
                              type: string
                              description: ID do usuário responsável pela entrada.
                            exit_user_id:
                              type: string
                              description: ID do usuário responsável pela saída.
                            duration_seconds:
                              type: integer
                              description: Tempo de permanência na etapa em segundos.
                            funnel_step:
                              type: object
                              description: Informações da etapa relacionada.
                              properties:
                                id:
                                  type: integer
                                  description: ID da etapa.
                                name:
                                  type: string
                                  description: Nome da etapa.
                        entry_user:
                          type: object
                          description: Usuário responsável pela entrada na etapa.
                          properties:
                            id:
                              type: string
                              description: ID do usuário.
                            name:
                              type: string
                              description: Nome do usuário.
                            avatar_url:
                              type: string
                              description: URL da imagem de avatar do usuário.
                              format: uri
                        exit_user:
                          type: object
                          description: Usuário responsável pela saída da etapa.
                          properties:
                            id:
                              type: string
                              description: ID do usuário.
                            name:
                              type: string
                              description: Nome do usuário.
                            avatar_url:
                              type: string
                              description: URL da imagem de avatar do usuário.
                              format: uri
                  meta:
                    type: object
                    description: Metadados de paginação da resposta.
                    properties:
                      current_page:
                        type: integer
                        description: Página atual.
                      from:
                        type: integer
                        description: Índice inicial dos registros retornados.
                      last_page:
                        type: integer
                        description: Última página disponível.
                      per_page:
                        type: integer
                        description: Quantidade de registros por página.
                      to:
                        type: integer
                        description: Índice final dos registros retornados.
                      total:
                        type: integer
                        description: Quantidade total de registros.
                  response:
                    type: boolean
                    description: Indica se a requisição foi concluída com sucesso.
              example:
                funnel_step_transitions:
                  - id: 938
                    entry_time: '2026-05-07T12:01:19.000000Z'
                    exit_time: null
                    project_id: 019dd427-5d13-71bf-9a09-d75aa2bf4bd7
                    funnel_step_id: 197
                    exit_parent_id: null
                    entry_user_id: 019c75de-509e-711a-8933-175cb2514cc5
                    exit_user_id: null
                    duration_seconds: null
                    funnel_step:
                      id: 197
                      name: Desenvolvimento Conceitual
                    exit_parent: null
                    entry_user:
                      id: 019c75de-509e-711a-8933-175cb2514cc5
                      name: Test User
                      avatar_url: https://via.placeholder.com/124x124.png/00aa99?text=quas
                    exit_user: null
                  - id: 936
                    entry_time: '2026-05-07T11:52:43.000000Z'
                    exit_time: '2026-05-07T12:01:19.000000Z'
                    project_id: 019dd427-5d13-71bf-9a09-d75aa2bf4bd7
                    funnel_step_id: 200
                    exit_parent_id: 938
                    entry_user_id: 019c75de-50f0-7366-a948-b8cbdd1841be
                    exit_user_id: 019c75de-509e-711a-8933-175cb2514cc5
                    duration_seconds: 516
                    funnel_step:
                      id: 200
                      name: Aprovação do Cliente
                    exit_parent:
                      id: 938
                      entry_time: '2026-05-07T12:01:19.000000Z'
                      exit_time: null
                      project_id: 019dd427-5d13-71bf-9a09-d75aa2bf4bd7
                      funnel_step_id: 197
                      exit_parent_id: null
                      entry_user_id: 019c75de-509e-711a-8933-175cb2514cc5
                      exit_user_id: null
                      duration_seconds: null
                      funnel_step:
                        id: 197
                        name: Desenvolvimento Conceitual
                    entry_user:
                      id: 019c75de-50f0-7366-a948-b8cbdd1841be
                      name: Cotestr User
                      avatar_url: https://via.placeholder.com/124x124.png/00aa99?text=quas
                    exit_user:
                      id: 019c75de-509e-711a-8933-175cb2514cc5
                      name: Test User
                      avatar_url: https://via.placeholder.com/124x124.png/00aa99?text=quas
                  - id: 935
                    entry_time: '2026-05-07T11:52:39.000000Z'
                    exit_time: '2026-05-07T11:52:43.000000Z'
                    project_id: 019dd427-5d13-71bf-9a09-d75aa2bf4bd7
                    funnel_step_id: 197
                    exit_parent_id: 936
                    entry_user_id: 019c75de-50f0-7366-a948-b8cbdd1841be
                    exit_user_id: 019c75de-50f0-7366-a948-b8cbdd1841be
                    duration_seconds: 4
                    funnel_step:
                      id: 197
                      name: Desenvolvimento Conceitual
                    exit_parent:
                      id: 936
                      entry_time: '2026-05-07T11:52:43.000000Z'
                      exit_time: '2026-05-07T12:01:19.000000Z'
                      project_id: 019dd427-5d13-71bf-9a09-d75aa2bf4bd7
                      funnel_step_id: 200
                      exit_parent_id: 938
                      entry_user_id: 019c75de-50f0-7366-a948-b8cbdd1841be
                      exit_user_id: 019c75de-509e-711a-8933-175cb2514cc5
                      duration_seconds: 516
                      funnel_step:
                        id: 200
                        name: Aprovação do Cliente
                    entry_user:
                      id: 019c75de-50f0-7366-a948-b8cbdd1841be
                      name: Cotestr User
                      avatar_url: https://via.placeholder.com/124x124.png/00aa99?text=quas
                    exit_user:
                      id: 019c75de-50f0-7366-a948-b8cbdd1841be
                      name: Cotestr User
                      avatar_url: https://via.placeholder.com/124x124.png/00aa99?text=quas
                  - id: 923
                    entry_time: '2026-04-28T12:54:10.000000Z'
                    exit_time: '2026-05-07T11:52:39.000000Z'
                    project_id: 019dd427-5d13-71bf-9a09-d75aa2bf4bd7
                    funnel_step_id: 201
                    exit_parent_id: 935
                    entry_user_id: 019c75de-509e-711a-8933-175cb2514cc5
                    exit_user_id: 019c75de-50f0-7366-a948-b8cbdd1841be
                    duration_seconds: 773909
                    funnel_step:
                      id: 201
                      name: sTeste de Produto
                    exit_parent:
                      id: 935
                      entry_time: '2026-05-07T11:52:39.000000Z'
                      exit_time: '2026-05-07T11:52:43.000000Z'
                      project_id: 019dd427-5d13-71bf-9a09-d75aa2bf4bd7
                      funnel_step_id: 197
                      exit_parent_id: 936
                      entry_user_id: 019c75de-50f0-7366-a948-b8cbdd1841be
                      exit_user_id: 019c75de-50f0-7366-a948-b8cbdd1841be
                      duration_seconds: 4
                      funnel_step:
                        id: 197
                        name: Desenvolvimento Conceitual
                    entry_user:
                      id: 019c75de-509e-711a-8933-175cb2514cc5
                      name: Test User
                      avatar_url: https://via.placeholder.com/124x124.png/00aa99?text=quas
                    exit_user:
                      id: 019c75de-50f0-7366-a948-b8cbdd1841be
                      name: Cotestr User
                      avatar_url: https://via.placeholder.com/124x124.png/00aa99?text=quas
                meta:
                  current_page: 1
                  from: 1
                  last_page: 1
                  per_page: 30
                  to: 4
                  total: 4
                response: true
        '401':
          description: Não autorizado
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
              example: '*'
            Access-Control-Expose-Headers:
              schema:
                type: string
              example: '*'
            Cache-Control:
              schema:
                type: string
              example: no-cache, private
          content:
            application/json:
              schema:
                type: object
                properties:
                  response:
                    type: boolean
                  message:
                    type: string
                  error:
                    type: string
              example:
                response: false
                message: unauthorized
                error: Unauthenticated.
        '422':
          description: Campos inválidos
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
              example: '*'
            Access-Control-Expose-Headers:
              schema:
                type: string
              example: '*'
            Cache-Control:
              schema:
                type: string
              example: no-cache, private
          content:
            application/json:
              schema:
                type: object
                properties:
                  response:
                    type: boolean
                  message:
                    type: string
                  error:
                    type: string
                  validation:
                    type: object
                    properties:
                      project_id:
                        type: array
                        items:
                          type: string
              example:
                response: false
                message: validation_errors
                error: O campo project id deve ser um UUID válido.
                validation:
                  project_id:
                    - O campo project id deve ser um UUID válido.
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````