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

# Crear sesión de Interact

> Inicia una sesión de navegador independiente de Interact que controlas con código (no requiere scraping previo).

<div id="headers">
  ## Cabeceras
</div>

| Cabecera        | Valor              |
| --------------- | ------------------ |
| `Authorization` | `Bearer <API_KEY>` |
| `Content-Type`  | `application/json` |

<div id="request-body">
  ## Cuerpo de la solicitud
</div>

| Parámetro             | Tipo    | Obligatorio | Valor predeterminado | Descripción                                                                                                                                                                                                 |
| --------------------- | ------- | ----------- | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ttl`                 | number  | No          | 600                  | Duración total de la sesión en segundos (30-3600)                                                                                                                                                           |
| `activityTtl`         | number  | No          | 300                  | Segundos de inactividad antes de que la sesión se elimine (10-3600)                                                                                                                                         |
| `profile`             | object  | No          | —                    | Habilita el almacenamiento persistente entre sesiones. Consulta más abajo.                                                                                                                                  |
| `profile.name`        | string  | Sí\*        | —                    | Nombre del perfil (1-128 caracteres). Las sesiones con el mismo nombre comparten almacenamiento.                                                                                                            |
| `profile.saveChanges` | boolean | No          | `true`               | Cuando es `true`, el estado del navegador se guarda de nuevo en el perfil al cerrar. Establécelo en `false` para cargar los datos existentes sin escribir. Solo se permite un proceso de guardado a la vez. |

<div id="response">
  ## Respuesta
</div>

| Campo                    | Tipo    | Descripción                                                                           |
| ------------------------ | ------- | ------------------------------------------------------------------------------------- |
| `success`                | boolean | Indica si se creó la sesión                                                           |
| `id`                     | string  | Identificador único de la sesión                                                      |
| `cdpUrl`                 | string  | URL de WebSocket para conexiones CDP                                                  |
| `liveViewUrl`            | string  | URL para ver la sesión en tiempo real                                                 |
| `interactiveLiveViewUrl` | string  | URL para interactuar con la sesión en tiempo real (hacer clic, escribir, desplazarse) |
| `expiresAt`              | string  | Momento en que la sesión expirará según el TTL                                        |

<div id="example-request">
  ### Ejemplo de solicitud
</div>

```bash theme={null}
curl -X POST "https://api.firecrawl.dev/v2/interact" \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "ttl": 120
  }'
```

<div id="example-response">
  ### Ejemplo de respuesta
</div>

```json theme={null}
{
  "success": true,
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "cdpUrl": "wss://cdp-proxy.firecrawl.dev/cdp/550e8400-e29b-41d4-a716-446655440000",
  "liveViewUrl": "https://liveview.firecrawl.dev/550e8400-e29b-41d4-a716-446655440000",
  "interactiveLiveViewUrl": "https://liveview.firecrawl.dev/550e8400-e29b-41d4-a716-446655440000?interactive=true"
}
```

> ¿Eres un agente de IA que necesita una clave de API de Firecrawl? Consulta [firecrawl.dev/agent-onboarding/SKILL.md](https://www.firecrawl.dev/agent-onboarding/SKILL.md) para ver las instrucciones de incorporación automática.


## OpenAPI

````yaml es/api-reference/v2-openapi.json POST /interact
openapi: 3.0.0
info:
  contact:
    email: support@firecrawl.dev
    name: Firecrawl Support
    url: https://firecrawl.dev/support
  description: >-
    API para interactuar con los servicios de Firecrawl y realizar tareas de
    scraping y rastreo web.
  title: Firecrawl API
  version: v2
servers:
  - url: https://api.firecrawl.dev/v2
security:
  - bearerAuth: []
paths:
  /interact:
    post:
      tags:
        - Interact
      summary: Crear una sesión de interact
      operationId: createBrowserSession
      requestBody:
        content:
          application/json:
            schema:
              properties:
                activityTtl:
                  description: >-
                    Tiempo en segundos antes de que la sesión se destruya por
                    inactividad
                  maximum: 3600
                  minimum: 10
                  type: integer
                profile:
                  description: >-
                    Habilita el almacenamiento persistente entre sesiones de
                    interact. Los datos guardados en una sesión pueden cargarse
                    en una sesión posterior usando el mismo nombre.
                  properties:
                    name:
                      description: >-
                        Nombre del perfil. Las sesiones con el mismo nombre
                        comparten almacenamiento.
                      maxLength: 128
                      minLength: 1
                      type: string
                    saveChanges:
                      default: true
                      description: >-
                        Cuando es true, el estado del navegador se guarda de
                        nuevo en el perfil al cerrar. Establece false para
                        cargar datos existentes sin escribir. Se permiten varias
                        sesiones sin guardado, pero solo una sesión con guardado
                        a la vez.
                      type: boolean
                  required:
                    - name
                  type: object
                streamWebView:
                  default: true
                  description: Si se debe transmitir una vista en vivo del navegador
                  type: boolean
                ttl:
                  default: 300
                  description: Tiempo de vida total en segundos de la sesión de interact
                  maximum: 3600
                  minimum: 30
                  type: integer
              type: object
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  cdpUrl:
                    description: URL de WebSocket para acceder al Chrome DevTools Protocol
                    type: string
                  expiresAt:
                    description: Cuándo expirará la sesión según el TTL
                    format: date-time
                    type: string
                  id:
                    description: El identificador único de la sesión
                    type: string
                  interactiveLiveViewUrl:
                    description: >-
                      URL para interactuar con la sesión de interact en tiempo
                      real (clic, escribir, desplazarse)
                    type: string
                  liveViewUrl:
                    description: URL para ver la sesión de interact en tiempo real
                    type: string
                  success:
                    type: boolean
                type: object
          description: Sesión de interact creada correctamente
        '402':
          content:
            application/json:
              schema:
                properties:
                  error:
                    example: Payment required to access this resource.
                    type: string
                type: object
          description: Pago requerido
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http

````