# Tu primera petición

> Mariner arranca con una pequeña colección de ejemplo para que envíes algo en los primeros diez segundos. Esta página recorre esa petición y nombra cada parte de la ventana que usarás después.

## Envía la petición de ejemplo

En el primer arranque Mariner crea un workspace llamado **Personal** con una colección **Welcome to Mariner**: peticiones contra `httpbin.org` que devuelven lo mismo que les mandas — tres en la raíz y una carpeta por superficie del editor (Auth, Variables, Body, Post-Response, Contract, Response states). La primera ya está abierta.

1. Pulsa <kbd>⌘↵</kbd> (o el botón **Send**). La respuesta aparece en el panel inferior con su estado, tamaño y tiempo.
2. Abre la pestaña **Tiempos** para ver en qué se fueron los milisegundos — DNS, TCP, TLS, espera, descarga.
3. Abre la segunda petición, **POST · Echo body**, y vuelve a pulsar <kbd>⌘↵</kbd>: el body JSON del editor vuelve dentro de la respuesta.
4. Abre **GET · Variables in action**. Su URL empieza por `{{baseUrl}}`, una variable ya definida en el entorno **Default**. Pasa el cursor por el token para ver a qué resuelve.

## El editor de peticiones

La barra sobre el editor se lee de izquierda a derecha: método, URL, el menú <code>⋯</code> y **Send**. Al entrar en la URL, el campo deja de recortar: envuelve y crece hacia abajo sobre el panel, así que una URL larga se lee mientras la editas y vuelve a ser compacta en cuanto sales.

Debajo están la URL resuelta — la que saldrá de verdad por la red — y un chip <code>{}</code> con el número de tokens de los que depende la petición. Abre el chip para ver la URL entera en tantas líneas como necesite, y la lista de cada <code>{{token}}</code> y cada <code>:slug</code> con lo que aporta; ver [Configurar entornos](/es/docs/environments).

- **Params** — parámetros de query, más lo que escribiste directamente en la URL (en solo lectura), más las **variables de path** como `:id`.
- **Headers** — filas clave/valor con autocompletado de nombres estándar. Las cabeceras que Mariner añade por su cuenta (`Content-Type` para un body JSON, por ejemplo) aparecen en una sección de *cabeceras temporales* en solo lectura.
- **Body** — ninguno, raw, JSON, form-urlencoded o multipart. El JSON tiene formateador e indicador de válido/inválido en vivo; multipart permite adjuntar archivos.
- **Auth** — ver [Autenticación](/es/docs/auth).
- **Variables** — valores que pertenecen solo a esta petición; ver [Variables y secretos](/es/docs/variables).
- **Contract** — la forma contra la que se mide cada respuesta a esta petición; ver [Contratos](/es/docs/contracts).
- **Post-Response** — reglas que copian valores de la respuesta a variables.

Toda tabla clave/valor tiene un botón **Bulk edit**: pega líneas `clave: valor` y aplica con <kbd>⌘↵</kbd>.

## El panel de respuesta

- **Body** — *Pretty*, *Raw*, *Tree* (solo JSON) y *Preview* (HTML). <kbd>⌘F</kbd> busca dentro del body; <kbd>⌘G</kbd> salta a la siguiente coincidencia. Los bodies grandes se recortan en el visor, nunca en el archivo que guardas con *Save body to file…*.
- **Headers** y **Cookies** — una fila por elemento, con el recuento en la pestaña.
- **Tiempos** — la cascada. Las fases grises son preparación de Mariner; las de color, la red.

<figure class="shot">
<img src="/docs/es/response.webp" alt="La pestaña Tiempos de un GET a httpbin.org: una cascada con Preparación, Resolución DNS, Conexión TCP, Handshake TLS, Petición enviada, Esperando (TTFB), Descarga y Procesamiento, y un total de 688 ms" width="1600" height="1000" loading="lazy">
<figcaption>TIEMPOS · en qué se fueron 688 ms — 157 de ellos esperando el primer byte</figcaption>
</figure>

- **Captures** — lo que extrajeron las reglas de Post-Response esta vez.

La franja sobre las pestañas muestra el estado, el tiempo total, si se reutilizó la conexión, la versión HTTP, la IP remota, el tamaño, el ahorro por gzip y — cuando el servidor las envía — las cabeceras de rate limit y el desfase de reloj entre el servidor y tu Mac.

## Arranque en frío y cancelar

Clic derecho en **Send** para **Send (cold start)**: Mariner descarta la conexión en caché para que el siguiente timing incluya DNS, TCP y TLS desde cero. El menú <code>⋯</code> tiene además un **Cold mode** persistente para una petición que nunca deba tocar caché.

Mientras una petición corre, **Send** se convierte en **Cancel**. Cada pestaña tiene su propio ejecutor, así que cancelar una nunca afecta a otra.

## Pestañas y paleta

- <kbd>⌘T</kbd> crea una petición en la colección activa.
- Las peticiones se abren en pestañas: <kbd>⌘1</kbd>–<kbd>⌘9</kbd> salta a una, <kbd>⌘⌥→</kbd> / <kbd>⌘⌥←</kbd> se mueve entre ellas, <kbd>⌘W</kbd> cierra la actual. El techo son veinte: cada pestaña retiene su última respuesta, así que el tope es lo que evita que una sesión larga se vaya sumando. Mariner rechaza la vigesimoprimera en vez de cerrarte una.
- <kbd>⌘⌥9</kbd> oculta el editor y <kbd>⌘⌥0</kbd> la respuesta, para que cualquiera de los dos ocupe toda la ventana.
- <kbd>⌘K</kbd> abre la paleta de comandos: cada petición, colección, entorno y acción en una sola lista con búsqueda difusa. Es la forma más rápida de enviar una petición que aún no has abierto.

<aside class="callout" data-label="EL MES GRATIS">
Todas las funciones son gratis durante el primer mes, sin cuenta. Después, Mariner es una suscripción anual o una compra única; sin ninguna de las dos sigue pudiéndose leer y exportar, pero enviar tiene que esperar. Ver <a href="/es/docs/free-and-pro">Precio y el mes gratis</a>.
</aside>

---
Source: https://marinerhttp.dev/es/docs/first-request · Mariner docs
