Importar desde un CSV
Una fila, una publicación. Hasta 50 filas por petición, y cada fila se comprueba por su cuenta.
El archivo
Sección titulada «El archivo»La primera fila son los nombres de las columnas. Separa con comas y pon entre comillas los textos que llevan comas o saltos de línea. Desde el panel puedes descargar una plantilla con las cuentas de tu perfil.
content,accounts,schedule_time,timezone,media_urls,first_comment"Abrimos el lunes, ¡te esperamos!",acc_ig|acc_li,2026-11-02 09:00,Europe/Madrid,https://cdn.acme.com/tienda.jpg,#valenciaIdea para la semana que viene,acc_li,,,,Columnas
Sección titulada «Columnas»| Columna | Qué lleva |
|---|---|
content |
El texto. Obligatorio salvo que haya media_urls. |
accounts |
Ids de cuentas separados por |. |
group |
O el nombre de un grupo de cuentas (se suma a accounts). |
schedule_time |
2026-11-02 09:00 con timezone, o una fecha ISO con zona. Vacío: se publica ya. |
timezone |
Zona horaria IANA, por ejemplo Europe/Madrid. |
queue |
true para el siguiente hueco de la cola. |
draft |
true para guardarla como borrador. |
media_urls |
URLs https separadas por |. El tipo sale de la extensión. |
first_comment |
Primer comentario en Instagram, Facebook, LinkedIn, Threads y YouTube. |
instagram_format, facebook_format |
feed, reel o story. |
youtube_title, youtube_visibility, youtube_playlist |
Título, public/unlisted/private e id de lista. |
tiktok_privacy |
Obligatoria con cuentas de TikTok: public, friends, followers o private. |
pinterest_title, pinterest_link, pinterest_board |
Título, enlace y tablero del Pin. |
reddit_subreddit, reddit_title |
Subreddit (sin r/) y título. |
google_cta_type, google_cta_url |
Botón de Google Business y su enlace. |
Comprueba y luego importa
Sección titulada «Comprueba y luego importa»Con dryRun: true se revisa cada fila sin publicar nada. Después envía el mismo CSV sin dryRun: las filas válidas se crean y las demás vuelven con su error.
curl -X POST "https://api.usecrier.com/v1/posts/import" \ -H "Authorization: Bearer $CRIER_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "csv": "content,accounts\nHola,acc_ig", "dryRun": true }'const res = await fetch('https://api.usecrier.com/v1/posts/import', { method: 'POST', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ "csv": "content,accounts\nHola,acc_ig", "dryRun": true }),});const { data } = await res.json();import os, requests
res = requests.post( "https://api.usecrier.com/v1/posts/import", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"}, json={ "csv": "content,accounts\nHola,acc_ig", "dryRun": True },)data = res.json()["data"]{ "data": { "total": 2, "valid": 1, "invalid": 1, "dryRun": true, "unknownColumns": [], "rows": [ { "row": 1, "ok": true }, { "row": 2, "ok": false, "error": "accounts: acc_old is not a connected account" } ] }}© 2026 Crier by TWOFACES ·usecrier.com ·Panel ·soporte@twofacesco.com