# Publicá HTML desde ChatGPT en un link privado con un Custom GPT

> Armá un Custom GPT con una Action que llama a la API de Outbox y ChatGPT publica reportes y borradores de Canvas como páginas privadas con un link por persona y aviso de apertura.

ChatGPT escribe mucho HTML, desde borradores de Canvas hasta reportes completos, pero compartirlo con un cliente implica copiarlo a otro lado. Un Custom GPT con una Action de Outbox lo publica directo en tu biblioteca privada y puede crear un link para cada persona que lo tiene que leer.

## Configuralo como Action de un Custom GPT

1. En Outbox, creá una API key en Ajustes → Keys. Acotala a una carpeta (por ejemplo `gpt`) con el verbo `publish`, y `share` si el GPT tiene que crear links.
2. En el editor del GPT, abrí Configure → Actions → Create new action.
3. Authentication: API Key, tipo Bearer, y pegá la key.
4. Pegá el schema de abajo. Guardá y probá con "publicá una página de prueba".

Schema de la Action (OpenAPI):

```
openapi: 3.1.0
info:
  title: Outbox
  version: "1.0"
servers:
  - url: https://api.out-box.dev
paths:
  /publish:
    post:
      operationId: publishPage
      summary: Publicar o actualizar una página HTML en Outbox (privada por defecto)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [slug, html, model]
              properties:
                slug: { type: string, description: "Ruta en la biblioteca, ej. clientes/acme/reporte" }
                title: { type: string }
                html: { type: string, description: "Un documento HTML completo y autocontenido" }
                model: { type: string, description: "Id del modelo que escribió la página" }
      responses:
        "200": { description: Publicada; la respuesta trae la URL }
  /api/share:
    post:
      operationId: createShareLink
      summary: Crear un link compartido privado para un destinatario
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [resource, resourceType]
              properties:
                resource: { type: string, description: "El slug de la página" }
                resourceType: { type: string, enum: [post] }
                recipient: { type: string, description: "Para quién es el link, ej. Laura · Acme" }
                expiresInDays: { type: integer, minimum: 1, maximum: 365 }
      responses:
        "200": { description: El link (url, token, expiresAt) }
```

Sumá una línea a las instrucciones del GPT: "Cuando te pidan publicar, mandá un documento HTML completo, usá slugs bajo gpt/ y poné en model el modelo con el que estás corriendo".

## Qué funciona hoy y qué no

- Funciona: publicar y volver a publicar páginas, y crear links con nombre, con la Action de arriba.
- Todavía no: un connector nativo de Outbox dentro de ChatGPT. Está planificado; mientras tanto, el Custom GPT es la vía soportada.
- Quien use el GPT publica con tu key. Compartilo solo con gente de confianza y acotá la key a una carpeta.

## Qué se publica desde ChatGPT

- Un borrador de Canvas convertido en una página lista para el cliente, con un [link por interesado](https://out-box.dev/es/per-recipient-links).
- Un resumen semanal de mercado que escribe un GPT a pedido, publicado en el mismo slug para que el link no cambie.
- Páginas de briefing para un equipo comercial, donde cada vendedor manda su propio link a su cuenta.

## ChatGPT Sites vs Outbox

ChatGPT Sites construye y aloja sitios y apps desde ChatGPT. Outbox es donde van las páginas de cualquier agente para compartirlas con personas concretas. Ver [Outbox vs ChatGPT Sites](https://out-box.dev/es/guides/vs/chatgpt-sites).

## Preguntas frecuentes

### ¿Necesito un plan pago de ChatGPT?

Crear Custom GPTs con Actions depende de tu plan de ChatGPT; revisá las condiciones actuales de OpenAI. Del lado de Outbox, el plan gratis alcanza para empezar.

### ¿Puedo proteger el link con contraseña desde ChatGPT?

El schema de arriba es mínimo. Sumá una propiedad `passphrase` de tipo string a la action de share (4 a 256 caracteres), o ponela después desde Biblioteca → Lo que comparto en Outbox.

## Relacionado

- [Outbox vs ChatGPT Sites](https://out-box.dev/es/guides/vs/chatgpt-sites)
- [Links por destinatario](https://out-box.dev/es/per-recipient-links)
- [Codex](https://out-box.dev/es/agents/codex)

---

Actualizado el 2026-10-11. Versión HTML: https://out-box.dev/es/agents/chatgpt
