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

# Get activities for a specific visit

> Get activities for a specific visit



## OpenAPI

````yaml /generated/specs/operations.json get /api/v1/activity/by-visit/{visitId}
openapi: 3.0.0
info:
  title: Raul API - Operaciones
  description: Suscripciones, GPS, actividades, visitas y operacion tecnica.
  version: 2.0.0
  contact: {}
servers:
  - url: https://api.raul.ugps.io
    description: Production
security: []
tags: []
paths:
  /api/v1/activity/by-visit/{visitId}:
    get:
      tags:
        - Activities
      summary: Get activities for a specific visit
      description: Get activities for a specific visit
      operationId: ActivityController_getByVisit
      parameters:
        - name: visitId
          required: true
          in: path
          description: Visit Detail UUID
          schema:
            type: string
        - name: activity_type_id
          required: false
          in: query
          description: Filter by activity type
          schema:
            type: number
        - name: contact_id
          required: false
          in: query
          description: Filtrar por contacto
          schema:
            type: string
        - name: date_from
          required: false
          in: query
          description: Filter from date (ISO)
          schema:
            type: string
            example: '2026-01-01'
        - name: date_to
          required: false
          in: query
          description: Filter to date (ISO)
          schema:
            example: '2026-12-31'
            type: string
        - name: include_emails
          required: false
          in: query
          description: 'Incluir emails en el timeline (default: true)'
          schema:
            default: true
            type: boolean
        - name: group_threads
          required: false
          in: query
          description: >-
            Agrupar emails por thread_id cuando tienen conversaciones (default:
            true)
          schema:
            default: true
            type: boolean
        - name: whatsapp_gap_hours
          required: false
          in: query
          description: >-
            WhatsApp: separar conversaciones en sesiones cuando hay inactividad
            >= N horas (0 = no separar). Recomendado: 24.
          schema:
            default: 0
            type: number
      responses:
        '200':
          description: Activities for the visit sorted by date DESC
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ActivityResponseDto'
      security:
        - bearerAuth: []
components:
  schemas:
    ActivityResponseDto:
      type: object
      properties:
        activity_id:
          type: string
          description: ID de la actividad
        client_id:
          type: string
          description: ID del cliente
        contact_id:
          type: object
          description: ID del contacto
        visit_id:
          type: object
          description: ID de visita vinculada
        activity_type_id:
          type: number
          description: ID del tipo de actividad
        activity_type_name:
          type: string
          description: Nombre del tipo de actividad
        content:
          type: string
          description: Contenido de la actividad
        created_by:
          type: object
          description: ID del usuario creador
        created_by_name:
          type: object
          description: Nombre del usuario creador
        created_at:
          format: date-time
          type: string
          description: Fecha de creación
        updated_at:
          format: date-time
          type: string
          description: Fecha de actualización
        files_count:
          type: number
          description: Cantidad de archivos adjuntos
        contact_name:
          type: object
          description: Nombre del contacto asociado
        item_type:
          type: string
          description: Tipo de item para el timeline
      required:
        - activity_id
        - client_id
        - activity_type_id
        - activity_type_name
        - content
        - created_at
        - updated_at
        - files_count
        - item_type
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Bearer token authentication

````