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

# Notion

> Integra la API de Ayrshare en tu app de Notion para gestionar las cuentas de redes sociales de tus usuarios

## Descripción general

[Notion](https://notion.so) es una app de workspace que combina toma de notas, gestión de proyectos, wikis y una base de datos personalizable en una interfaz gráfica.

Desde Notion puedes construir una interfaz para gestionar las cuentas de redes sociales de tus usuarios con la API de redes sociales de Ayrshare, lo que te permite publicar, obtener analíticas y gestionar comentarios.

## Tutorial

Un video tutorial sobre cómo publicar en tus redes sociales directamente desde Notion.
Consulta también nuestra [guía paso a paso de la API de Notion](https://www.ayrshare.com/blog/schedule-social-media-posts-from-notion/).

<div class="video-container">
  <iframe width="560" height="315" src="https://www.youtube.com/embed/OeGGiG7SmVY" title="Notion Social Posting Integration" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen />
</div>

Código en GitHub de la integración de publicación social con Notion:

<Card title="GitHub: Ayrshare Notion Integration" icon="github" href="https://github.com/ayrshare/notion" horizontal>
  Publica en tus redes sociales directamente desde Notion
</Card>

### Crear una base de datos en Notion

En Notion, crea una base de datos en vista de tabla con las siguientes columnas y tipos de columna:

<ul class="custom-bullets">
  <li>`Post` como tipo de columna *Title* (no puedes elegir otro tipo de columna aquí)</li>

  <li>
    `Platforms` como tipo *Multi Select* con los valores: `facebook`, `instagram`, `twitter`,
    `linkedin`, `tiktok` y/o `telegram`.
  </li>

  <li>`Images` como tipo *Files & Media*.</li>
  <li>`Profile Keys` como tipo *Text*.</li>
  <li>`Status` como tipo *Text*.</li>

  <li>
    `Schedule Date` como tipo *Date* con Date Format Month/Day/Year, Time Format 24 Hours e
    incluye hora.
  </li>
</ul>

<img src="https://mintcdn.com/ayrshare-docs/6mPR4kmwNEz1kMbX/images/packages-guides/notion-db.webp?fit=max&auto=format&n=6mPR4kmwNEz1kMbX&q=85&s=b83093c27f4fae7e7d3d406eed353f63" alt="Notion Database Examples" width="1536" height="277" data-path="images/packages-guides/notion-db.webp" />

Estos campos se usarán en el script que se especifica más adelante en esta página. Ten en cuenta que algunas "platforms" de redes sociales requieren imágenes o videos. Por ejemplo, Instagram requiere una imagen o video y TikTok requiere un video. Consulta los [endpoints](/apis/post/social-networks/facebook) para las diferentes redes.

[Consulta un ejemplo real en Notion](https://ayrshare-example.notion.site/607c15ce7872456a879adbb0a5f17fdf?v=ee9f65a4afb24033813f245a45bc9e83)

### Introducir datos de prueba

Necesitamos algunos datos de ejemplo para probar la publicación. Aquí tienes una sugerencia:

<ul class="custom-bullets">
  <li>`Post`: introduce "Happy New Year!"</li>

  <li>
    `Platforms`: selecciona una o más redes que hayas vinculado. Asegúrate de que el nombre esté en minúsculas.
  </li>

  <li>`Images`: adjunta una [imagen](https://img.ayrshare.com/012/gb.jpg) o un video.</li>
</ul>

<Info>**Debes subir una imagen a Notion.** No puedes usar una URL de imagen.</Info>

<ul class="custom-bullets">
  <li>
    `Profile Keys`: si estás en el Business Plan o Launch Plan y quieres publicar en el perfil de un cliente, introduce
    su Profile Key. De lo contrario, déjalo vacío.
  </li>

  <li>
    `Status`: introduce "pending". El script solo toma los registros con estado "pending". Asegúrate de
    que "pending" esté en minúsculas.
  </li>

  <li>
    `Schedule Date`: déjalo vacío, ya que ahora solo probaremos la publicación inmediata. Más adelante puedes
    seleccionar una fecha futura para programar la publicación.
  </li>
</ul>

### Crear una integración interna en Notion

Ve a la [página My Integrations](https://www.notion.so/my-integrations) de Notion y haz clic en New Integration.

[Aprende más sobre las integraciones de Notion](https://developers.notion.com/docs/getting-started#utilizing-notions-public-api-for-integrations).

Puedes nombrar la integración "Ayrshare" para identificarla fácilmente y elegir el workspace adecuado que contendrá los datos de la publicación.

Finalmente, las capacidades por defecto ya seleccionadas son suficientes. Envía para crear la integración.

Si todo va bien, tendrás disponible un token de integración interna. Anótalo para pasos posteriores en esta página.

<img src="https://mintcdn.com/ayrshare-docs/6mPR4kmwNEz1kMbX/images/packages-guides/create%20notion.webp?fit=max&auto=format&n=6mPR4kmwNEz1kMbX&q=85&s=48dce27786caad8a12c99f04f31a10d4" alt="Create a Notion Integration" width="1536" height="966" data-path="images/packages-guides/create notion.webp" />

Y obtén tu token de integración de Notion.

<img src="https://mintcdn.com/ayrshare-docs/6mPR4kmwNEz1kMbX/images/packages-guides/notion%20token.webp?fit=max&auto=format&n=6mPR4kmwNEz1kMbX&q=85&s=32b0f4d69eeabdc55409e801c6dbf9a7" alt="Get a Notion Secret" width="512" height="253" data-path="images/packages-guides/notion token.webp" />

### Conectar la base de datos de Notion a la integración interna

Abre la base de datos de Notion que creaste antes. Haz clic en los puntos suspensivos de la esquina superior derecha de la página y ve a **Add Connection**.

Aquí puedes buscar la integración interna que creaste en el paso anterior por el nombre que le diste.

Una vez hagas clic en la integración interna, habrás conectado esta base de datos de Notion con la integración.

<img src="https://mintcdn.com/ayrshare-docs/6mPR4kmwNEz1kMbX/images/packages-guides/connect%20to%20ayrshare.webp?fit=max&auto=format&n=6mPR4kmwNEz1kMbX&q=85&s=318c31733bb8920c5d5765648f6cca80" alt="Connect the Notion Database" width="1536" height="966" data-path="images/packages-guides/connect to ayrshare.webp" />

### Ejecutar el script para enviar publicaciones desde Notion

Ahora puedes ejecutar un script en tu entorno local que leerá los datos de la base de datos de Notion y realizará una publicación a través de la API de Ayrshare por cada fila con estado "pending".

Asegúrate de definir las siguientes variables de entorno utilizadas en el script:

<ul class="custom-bullets">
  <li>
    `API_KEY`: es la `API Key` que obtienes de Ayrshare. Es la API Key principal de tu
    Primary Profile de Ayrshare.
  </li>

  <li>
    `NOTION_DATABASE_ID`: abre la base de datos que creaste antes en esta página y obtén el ID de la base de datos
    desde la URL.
  </li>
</ul>

<Info>El ID de la base de datos es el valor anterior al ?v= en la URL de la página de la base de datos.</Info>

```html theme={"system"}
https://www.notion.so/company/<NOTION_DATABASE_ID>?v=aaee9f</NOTION_DATABASE_ID>
```

<ul class="custom-bullets">
  <li>`NOTION_KEY`: token de integración interna del paso anterior.</li>
</ul>

Ejecuta el siguiente JavaScript en un entorno Node.js:

<ul class="custom-bullets">
  <li>Clona el repositorio:</li>
</ul>

```bash theme={"system"}
git clone https://github.com/ayrshare/notion
```

<ul class="custom-bullets">
  <li>cd al directorio **notion** y ejecuta `npm install`.</li>

  <li>
    Actualiza el archivo `.env` con tu `API_KEY` de Ayrshare, `NOTION_KEY` de Notion y
    `NOTION_DATABASE_ID`.
  </li>

  <li>Ejecuta `node index.js`</li>
</ul>

Puedes ejecutarlo en [Heroku](https://www.heroku.com/), [Digital Ocean](https://www.digitalocean.com/) o [Vercel](https://vercel.com/) en producción.

Si todo va bien, todas las columnas con estado `pending` se cambiarán a `success` y las publicaciones se habrán realizado en las redes sociales correspondientes.

<Card title="Github: Ayrshare Notion Integration" icon="github" href="https://github.com/ayrshare/notion" horizontal>
  Publica en tus redes sociales directamente desde Notion
</Card>
