Publicaciones
Publica ahora, programa, usa la cola o guarda borradores en una o varias cuentas.
Crear una publicación
Sección titulada «Crear una publicación»/v1/postsSe publica ahora salvo que envíes scheduledFor, queue: true o draft: true. Cada destino es una cuenta y puede llevar su propio texto, medios y opciones de red (instagram, youtube, tiktok…). Los destinos de TikTok siempre necesitan opciones tiktok.
Cuerpo
contentstringobligatorioTexto que se publica en los destinos que no llevan el suyo.
mediaobject[]Imágenes, vídeos o documentos. Súbelos antes con POST /v1/media/upload-url.
media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioUna cuenta conectada (GET /v1/accounts).
contentstringSustituye el texto del post en esta red.
mediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
youtubeobjectyoutube
titlestringTítulo del vídeo (hasta 100 caracteres).
visibilitystringpublic,unlistedoprivate.madeForKidsbooleanMarca COPPA. YouTube puede limitar los vídeos que no la indican.
categoryIdstringId numérico de categoría de YouTube.
playlistIdstringAñadirlo a esta lista de reproducción.
tagsstring[]Etiquetas (500 caracteres en total).
firstCommentstringComentario que se publica justo después.
thumbnailUrlstring (uri)Miniatura personalizada.
containsSyntheticMediabooleanContiene contenido realista generado o alterado con IA.
notifySubscribersbooleanfalselo sube sin avisar a los suscriptores.
tiktokobjecttiktok
privacystringobligatorioQuién lo ve:
public,friends,followersoprivate.allowCommentsbooleanobligatorioPermitir comentarios.
allowDuetbooleanPermitir dúos.
allowStitchbooleanPermitir stitch.
commercialContentstringown_brandsi promociona tu negocio,paid_partnershipsi es patrocinado. No con privacidadprivate.autoAddMusicbooleanSolo fotos: TikTok puede añadir música recomendada.
consenttrueobligatorioSiempre
true: el usuario vio la vista previa y aceptó publicar.
instagramobjectinstagram
formatstringfeed,reelostory. Por defecto, las imágenes van al feed y un vídeo es un Reel.shareToFeedbooleanSolo Reels:
falselo deja fuera de la cuadrícula del perfil.collaboratorsstring[]Hasta 3 usuarios de empresa o creador invitados como colaboradores. No en Stories.
firstCommentstringComentario que se publica justo después. No en Stories.
coverUrlstring (uri)Solo Reels: imagen de portada.
facebookobjectfacebook
formatstringfeed,reelostory.reelTitlestringSolo Reels: título aparte del texto.
firstCommentstringComentario que se publica justo después. No en Stories.
linkedinobjectlinkedin
firstCommentstringComentario que se publica justo después.
disableLinkPreviewbooleanNo mostrar la vista previa del enlace.
documentTitlestringTítulo de los documentos (PDF).
xobjectx
threadstring[]Respuestas del hilo, en orden. El texto del post es el primer tuit.
replySettingsstringQuién puede responder:
following,mentionedUsers,subscribersoverified.
threadsobjectthreads
threadstring[]Respuestas del hilo, en orden.
topicTagstringTema de la publicación.
firstCommentstringComentario que se publica justo después.
blueskyobjectbluesky
threadstring[]Respuestas del hilo, en orden.
pinterestobjectpinterest
titlestringTítulo del Pin.
linkstring (uri)A dónde lleva el Pin.
boardIdstringTablero. Por defecto, el elegido al conectar.
googleBusinessobjectgoogleBusiness
callToActionobjectBotón de la publicación.
callToAction
typestringobligatoriolearn_more,book,order,shop,sign_upocall.urlstring (uri)A dónde lleva el botón. Obligatorio salvo con
call.
telegramobjecttelegram
parseModestringFormato del texto:
htmlomarkdown.disableLinkPreviewbooleanNo mostrar la vista previa del enlace.
silentbooleanEnviar sin sonido.
protectContentbooleanImpedir reenviarlo o guardarlo.
snapchatobjectsnapchat
formatstringstory(desaparece a las 24 h),saved_story(queda en el perfil) ospotlight.
redditobjectreddit
subredditstringSubreddit sin
r/.titlestringTítulo del post.
linkstring (uri)Lo convierte en un post de enlace.
flairIdstringFlair del subreddit.
nsfwbooleanMarcarlo como NSFW.
spoilerbooleanMarcarlo como spoiler.
scheduledForstring (date-time)Cuándo publicar (ISO 8601 con zona). Sin él se publica ya.
timezonestringZona horaria IANA a la que se refiere scheduledFor.
queuebooleanTomar el siguiente hueco libre de la cola del perfil.
draftbooleanGuardar sin publicar ni programar.
requiresApprovalbooleanLa deja en
pending_approvalhasta que un propietario o admin la apruebe. Los miembros de un workspace que exige aprobación siempre pasan por aquí.
Respuesta 201
data
idstringobligatoriocontentstringobligatoriomediaobject[]obligatoriomedia
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriocontentstringmediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
statusstringobligatoriourlstring (uri)La publicación en la red, una vez publicada.
errorstring
statusstringobligatorioscheduledForstring (date-time)approvalobjectAparece cuando la publicación ha pasado por revisión.
approval
requestedBystringQuién la envió a revisión; no aparece si fue una API key.
requestedAtstring (date-time)obligatorioqueuebooleanAl aprobarla, entra en la cola del perfil.
decisionstringdecidedBystringdecidedAtstring (date-time)notestringPor qué se rechazó.
recyclingobjectAparece cuando se activa el reciclado.
recycling
activebooleanobligatorioeveryintegerobligatoriounitstringobligatoriostartAtstring (date-time)maxCopiesintegeruntilstring (date-time)variationsstring[]timezonestringcopiesintegerobligatorioCopias creadas hasta ahora.
nextAtstring (date-time)Cuándo sale la siguiente copia; no aparece cuando se ha parado.
lastCopyIdstringLa última copia, que es una publicación propia.
recycledFromstringEn una copia reciclada: la publicación original.
createdAtstring (date-time)obligatorioupdatedAtstring (date-time)obligatorio
curl -X POST "https://api.usecrier.com/v1/posts" \ -H "Authorization: Bearer $CRIER_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "content": "Our autumn collection is here 🍂", "media": [ { "type": "image", "url": "https://cdn.acme.com/autumn.jpg" } ], "targets": [ { "accountId": "acc_3k9x2m" }, { "accountId": "acc_9z8y7x", "youtube": { "title": "Autumn collection" } } ], "scheduledFor": "2026-10-30T09:00:00+01:00" }'const res = await fetch('https://api.usecrier.com/v1/posts', { method: 'POST', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ "content": "Our autumn collection is here 🍂", "media": [ { "type": "image", "url": "https://cdn.acme.com/autumn.jpg" } ], "targets": [ { "accountId": "acc_3k9x2m" }, { "accountId": "acc_9z8y7x", "youtube": { "title": "Autumn collection" } } ], "scheduledFor": "2026-10-30T09:00:00+01:00" }),});const { data } = await res.json();import os, requests
res = requests.post( "https://api.usecrier.com/v1/posts", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"}, json={ "content": "Our autumn collection is here 🍂", "media": [ { "type": "image", "url": "https://cdn.acme.com/autumn.jpg" } ], "targets": [ { "accountId": "acc_3k9x2m" }, { "accountId": "acc_9z8y7x", "youtube": { "title": "Autumn collection" } } ], "scheduledFor": "2026-10-30T09:00:00+01:00" },)data = res.json()["data"]Listar publicaciones
Sección titulada «Listar publicaciones»/v1/postsLas más recientes primero.
Parámetros
limitinteger
Respuesta 200
data []
idstringobligatoriocontentstringobligatoriomediaobject[]obligatoriomedia
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriocontentstringmediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
statusstringobligatoriourlstring (uri)La publicación en la red, una vez publicada.
errorstring
statusstringobligatorioscheduledForstring (date-time)approvalobjectAparece cuando la publicación ha pasado por revisión.
approval
requestedBystringQuién la envió a revisión; no aparece si fue una API key.
requestedAtstring (date-time)obligatorioqueuebooleanAl aprobarla, entra en la cola del perfil.
decisionstringdecidedBystringdecidedAtstring (date-time)notestringPor qué se rechazó.
recyclingobjectAparece cuando se activa el reciclado.
recycling
activebooleanobligatorioeveryintegerobligatoriounitstringobligatoriostartAtstring (date-time)maxCopiesintegeruntilstring (date-time)variationsstring[]timezonestringcopiesintegerobligatorioCopias creadas hasta ahora.
nextAtstring (date-time)Cuándo sale la siguiente copia; no aparece cuando se ha parado.
lastCopyIdstringLa última copia, que es una publicación propia.
recycledFromstringEn una copia reciclada: la publicación original.
createdAtstring (date-time)obligatorioupdatedAtstring (date-time)obligatorio
curl "https://api.usecrier.com/v1/posts?limit=20" \ -H "Authorization: Bearer $CRIER_API_KEY"const res = await fetch('https://api.usecrier.com/v1/posts?limit=20', { headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});const { data } = await res.json();import os, requests
res = requests.get( "https://api.usecrier.com/v1/posts?limit=20", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"},)data = res.json()["data"]Importar publicaciones desde un CSV
Sección titulada «Importar publicaciones desde un CSV»/v1/posts/importUna publicación por fila, hasta 50 filas. Columnas: content, accounts (ids separados por |) o group, schedule_time, timezone, queue, draft, media_urls y las de cada red (mira la guía de importación). Envía antes dryRun: true para comprobar las filas sin publicar.
Cuerpo
csvstringobligatorioEl texto del CSV, con la fila de cabecera primero.
dryRunbooleanComprobar cada fila sin publicar.
Respuesta 200
data
totalintegerobligatoriovalidintegerobligatorioinvalidintegerobligatoriodryRunbooleanobligatoriounknownColumnsstring[]obligatorioColumnas que no se usaron.
rowsobject[]obligatoriorows
rowintegerobligatorioEmpieza en 1, sin contar la cabecera.
okbooleanobligatoriopostIdstringerrorstring
curl -X POST "https://api.usecrier.com/v1/posts/import" \ -H "Authorization: Bearer $CRIER_API_KEY"const res = await fetch('https://api.usecrier.com/v1/posts/import', { method: 'POST', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});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']}"},)data = res.json()["data"]Cambiar una publicación que no ha salido
Sección titulada «Cambiar una publicación que no ha salido»/v1/posts/{id}Borradores, programadas, con error y canceladas. Los campos que no envíes se mantienen; targets sustituye la lista entera. draft: false publica un borrador ahora, en scheduledFor o en la cola.
Parámetros
idstringobligatorio
Cuerpo
contentstringTexto que se publica en los destinos que no llevan el suyo.
mediaobject[]Imágenes, vídeos o documentos. Súbelos antes con POST /v1/media/upload-url.
media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]targets
accountIdstringobligatorioUna cuenta conectada (GET /v1/accounts).
contentstringSustituye el texto del post en esta red.
mediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
youtubeobjectyoutube
titlestringTítulo del vídeo (hasta 100 caracteres).
visibilitystringpublic,unlistedoprivate.madeForKidsbooleanMarca COPPA. YouTube puede limitar los vídeos que no la indican.
categoryIdstringId numérico de categoría de YouTube.
playlistIdstringAñadirlo a esta lista de reproducción.
tagsstring[]Etiquetas (500 caracteres en total).
firstCommentstringComentario que se publica justo después.
thumbnailUrlstring (uri)Miniatura personalizada.
containsSyntheticMediabooleanContiene contenido realista generado o alterado con IA.
notifySubscribersbooleanfalselo sube sin avisar a los suscriptores.
tiktokobjecttiktok
privacystringobligatorioQuién lo ve:
public,friends,followersoprivate.allowCommentsbooleanobligatorioPermitir comentarios.
allowDuetbooleanPermitir dúos.
allowStitchbooleanPermitir stitch.
commercialContentstringown_brandsi promociona tu negocio,paid_partnershipsi es patrocinado. No con privacidadprivate.autoAddMusicbooleanSolo fotos: TikTok puede añadir música recomendada.
consenttrueobligatorioSiempre
true: el usuario vio la vista previa y aceptó publicar.
instagramobjectinstagram
formatstringfeed,reelostory. Por defecto, las imágenes van al feed y un vídeo es un Reel.shareToFeedbooleanSolo Reels:
falselo deja fuera de la cuadrícula del perfil.collaboratorsstring[]Hasta 3 usuarios de empresa o creador invitados como colaboradores. No en Stories.
firstCommentstringComentario que se publica justo después. No en Stories.
coverUrlstring (uri)Solo Reels: imagen de portada.
facebookobjectfacebook
formatstringfeed,reelostory.reelTitlestringSolo Reels: título aparte del texto.
firstCommentstringComentario que se publica justo después. No en Stories.
linkedinobjectlinkedin
firstCommentstringComentario que se publica justo después.
disableLinkPreviewbooleanNo mostrar la vista previa del enlace.
documentTitlestringTítulo de los documentos (PDF).
xobjectx
threadstring[]Respuestas del hilo, en orden. El texto del post es el primer tuit.
replySettingsstringQuién puede responder:
following,mentionedUsers,subscribersoverified.
threadsobjectthreads
threadstring[]Respuestas del hilo, en orden.
topicTagstringTema de la publicación.
firstCommentstringComentario que se publica justo después.
blueskyobjectbluesky
threadstring[]Respuestas del hilo, en orden.
pinterestobjectpinterest
titlestringTítulo del Pin.
linkstring (uri)A dónde lleva el Pin.
boardIdstringTablero. Por defecto, el elegido al conectar.
googleBusinessobjectgoogleBusiness
callToActionobjectBotón de la publicación.
callToAction
typestringobligatoriolearn_more,book,order,shop,sign_upocall.urlstring (uri)A dónde lleva el botón. Obligatorio salvo con
call.
telegramobjecttelegram
parseModestringFormato del texto:
htmlomarkdown.disableLinkPreviewbooleanNo mostrar la vista previa del enlace.
silentbooleanEnviar sin sonido.
protectContentbooleanImpedir reenviarlo o guardarlo.
snapchatobjectsnapchat
formatstringstory(desaparece a las 24 h),saved_story(queda en el perfil) ospotlight.
redditobjectreddit
subredditstringSubreddit sin
r/.titlestringTítulo del post.
linkstring (uri)Lo convierte en un post de enlace.
flairIdstringFlair del subreddit.
nsfwbooleanMarcarlo como NSFW.
spoilerbooleanMarcarlo como spoiler.
scheduledForstring (date-time)Cuándo publicar (ISO 8601 con zona). Sin él se publica ya.
timezonestringZona horaria IANA a la que se refiere scheduledFor.
queuebooleanTomar el siguiente hueco libre de la cola del perfil.
draftbooleanGuardar sin publicar ni programar.
requiresApprovalbooleanLa deja en
pending_approvalhasta que un propietario o admin la apruebe. Los miembros de un workspace que exige aprobación siempre pasan por aquí.
Respuesta 200
data
idstringobligatoriocontentstringobligatoriomediaobject[]obligatoriomedia
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriocontentstringmediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
statusstringobligatoriourlstring (uri)La publicación en la red, una vez publicada.
errorstring
statusstringobligatorioscheduledForstring (date-time)approvalobjectAparece cuando la publicación ha pasado por revisión.
approval
requestedBystringQuién la envió a revisión; no aparece si fue una API key.
requestedAtstring (date-time)obligatorioqueuebooleanAl aprobarla, entra en la cola del perfil.
decisionstringdecidedBystringdecidedAtstring (date-time)notestringPor qué se rechazó.
recyclingobjectAparece cuando se activa el reciclado.
recycling
activebooleanobligatorioeveryintegerobligatoriounitstringobligatoriostartAtstring (date-time)maxCopiesintegeruntilstring (date-time)variationsstring[]timezonestringcopiesintegerobligatorioCopias creadas hasta ahora.
nextAtstring (date-time)Cuándo sale la siguiente copia; no aparece cuando se ha parado.
lastCopyIdstringLa última copia, que es una publicación propia.
recycledFromstringEn una copia reciclada: la publicación original.
createdAtstring (date-time)obligatorioupdatedAtstring (date-time)obligatorio
curl -X PATCH "https://api.usecrier.com/v1/posts/pst_7q1w0e" \ -H "Authorization: Bearer $CRIER_API_KEY"const res = await fetch('https://api.usecrier.com/v1/posts/pst_7q1w0e', { method: 'PATCH', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});const { data } = await res.json();import os, requests
res = requests.patch( "https://api.usecrier.com/v1/posts/pst_7q1w0e", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"},)data = res.json()["data"]Ver una publicación
Sección titulada «Ver una publicación»/v1/posts/{id}Parámetros
idstringobligatorio
Respuesta 200
data
idstringobligatoriocontentstringobligatoriomediaobject[]obligatoriomedia
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriocontentstringmediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
statusstringobligatoriourlstring (uri)La publicación en la red, una vez publicada.
errorstring
statusstringobligatorioscheduledForstring (date-time)approvalobjectAparece cuando la publicación ha pasado por revisión.
approval
requestedBystringQuién la envió a revisión; no aparece si fue una API key.
requestedAtstring (date-time)obligatorioqueuebooleanAl aprobarla, entra en la cola del perfil.
decisionstringdecidedBystringdecidedAtstring (date-time)notestringPor qué se rechazó.
recyclingobjectAparece cuando se activa el reciclado.
recycling
activebooleanobligatorioeveryintegerobligatoriounitstringobligatoriostartAtstring (date-time)maxCopiesintegeruntilstring (date-time)variationsstring[]timezonestringcopiesintegerobligatorioCopias creadas hasta ahora.
nextAtstring (date-time)Cuándo sale la siguiente copia; no aparece cuando se ha parado.
lastCopyIdstringLa última copia, que es una publicación propia.
recycledFromstringEn una copia reciclada: la publicación original.
createdAtstring (date-time)obligatorioupdatedAtstring (date-time)obligatorio
curl "https://api.usecrier.com/v1/posts/pst_7q1w0e" \ -H "Authorization: Bearer $CRIER_API_KEY"const res = await fetch('https://api.usecrier.com/v1/posts/pst_7q1w0e', { headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});const { data } = await res.json();import os, requests
res = requests.get( "https://api.usecrier.com/v1/posts/pst_7q1w0e", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"},)data = res.json()["data"]Borrar una publicación
Sección titulada «Borrar una publicación»/v1/posts/{id}La borra de Crier. Si sigue publicada, retírala antes.
Parámetros
idstringobligatorio
Respuesta 204
Sin contenido
curl -X DELETE "https://api.usecrier.com/v1/posts/pst_7q1w0e" \ -H "Authorization: Bearer $CRIER_API_KEY"await fetch('https://api.usecrier.com/v1/posts/pst_7q1w0e', { method: 'DELETE', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});import os, requests
requests.delete( "https://api.usecrier.com/v1/posts/pst_7q1w0e", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"},)Editar el texto de una publicación publicada
Sección titulada «Editar el texto de una publicación publicada»/v1/posts/{id}/editEn X (cuentas Premium, durante la primera hora), Facebook, LinkedIn, YouTube, Pinterest, Google Business, Telegram, Discord y Reddit. Las imágenes y vídeos no cambian.
Parámetros
idstringobligatorio
Cuerpo
contentstringobligatorioEl nuevo texto de la publicación.
accountIdstringEditar solo la copia de esta cuenta; si no, todas las publicadas.
Respuesta 200
data
idstringobligatoriocontentstringobligatoriomediaobject[]obligatoriomedia
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriocontentstringmediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
statusstringobligatoriourlstring (uri)La publicación en la red, una vez publicada.
errorstring
statusstringobligatorioscheduledForstring (date-time)approvalobjectAparece cuando la publicación ha pasado por revisión.
approval
requestedBystringQuién la envió a revisión; no aparece si fue una API key.
requestedAtstring (date-time)obligatorioqueuebooleanAl aprobarla, entra en la cola del perfil.
decisionstringdecidedBystringdecidedAtstring (date-time)notestringPor qué se rechazó.
recyclingobjectAparece cuando se activa el reciclado.
recycling
activebooleanobligatorioeveryintegerobligatoriounitstringobligatoriostartAtstring (date-time)maxCopiesintegeruntilstring (date-time)variationsstring[]timezonestringcopiesintegerobligatorioCopias creadas hasta ahora.
nextAtstring (date-time)Cuándo sale la siguiente copia; no aparece cuando se ha parado.
lastCopyIdstringLa última copia, que es una publicación propia.
recycledFromstringEn una copia reciclada: la publicación original.
createdAtstring (date-time)obligatorioupdatedAtstring (date-time)obligatorio
curl -X POST "https://api.usecrier.com/v1/posts/pst_7q1w0e/edit" \ -H "Authorization: Bearer $CRIER_API_KEY"const res = await fetch('https://api.usecrier.com/v1/posts/pst_7q1w0e/edit', { method: 'POST', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});const { data } = await res.json();import os, requests
res = requests.post( "https://api.usecrier.com/v1/posts/pst_7q1w0e/edit", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"},)data = res.json()["data"]Ver las métricas de una publicación
Sección titulada «Ver las métricas de una publicación»/v1/posts/{id}/metricsImpresiones, alcance, reproducciones, me gusta, comentarios, compartidos, guardados y clics, en total y por cuenta. Cada red da las suyas.
Parámetros
idstringobligatorio
Respuesta 200
data
totalobjectobligatoriototal
impressionsintegerobligatorioreachintegerobligatorioviewsintegerobligatoriolikesintegerobligatoriocommentsintegerobligatoriosharesintegerobligatoriosavesintegerobligatorioclicksintegerobligatorioengagementRatenumberobligatorioPorcentaje: interacciones sobre impresiones (o alcance).
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriometricsobjectobligatoriometrics
impressionsintegerobligatorioreachintegerobligatorioviewsintegerobligatoriolikesintegerobligatoriocommentsintegerobligatoriosharesintegerobligatoriosavesintegerobligatorioclicksintegerobligatorioengagementRatenumberobligatorioPorcentaje: interacciones sobre impresiones (o alcance).
updatedAtstring (date-time)
curl "https://api.usecrier.com/v1/posts/pst_7q1w0e/metrics" \ -H "Authorization: Bearer $CRIER_API_KEY"const res = await fetch('https://api.usecrier.com/v1/posts/pst_7q1w0e/metrics', { headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});const { data } = await res.json();import os, requests
res = requests.get( "https://api.usecrier.com/v1/posts/pst_7q1w0e/metrics", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"},)data = res.json()["data"]Cancelar una publicación programada, un borrador o una pendiente de aprobación
Sección titulada «Cancelar una publicación programada, un borrador o una pendiente de aprobación»/v1/posts/{id}/cancelParámetros
idstringobligatorio
Respuesta 200
data
idstringobligatoriocontentstringobligatoriomediaobject[]obligatoriomedia
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriocontentstringmediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
statusstringobligatoriourlstring (uri)La publicación en la red, una vez publicada.
errorstring
statusstringobligatorioscheduledForstring (date-time)approvalobjectAparece cuando la publicación ha pasado por revisión.
approval
requestedBystringQuién la envió a revisión; no aparece si fue una API key.
requestedAtstring (date-time)obligatorioqueuebooleanAl aprobarla, entra en la cola del perfil.
decisionstringdecidedBystringdecidedAtstring (date-time)notestringPor qué se rechazó.
recyclingobjectAparece cuando se activa el reciclado.
recycling
activebooleanobligatorioeveryintegerobligatoriounitstringobligatoriostartAtstring (date-time)maxCopiesintegeruntilstring (date-time)variationsstring[]timezonestringcopiesintegerobligatorioCopias creadas hasta ahora.
nextAtstring (date-time)Cuándo sale la siguiente copia; no aparece cuando se ha parado.
lastCopyIdstringLa última copia, que es una publicación propia.
recycledFromstringEn una copia reciclada: la publicación original.
createdAtstring (date-time)obligatorioupdatedAtstring (date-time)obligatorio
curl -X POST "https://api.usecrier.com/v1/posts/pst_7q1w0e/cancel" \ -H "Authorization: Bearer $CRIER_API_KEY"const res = await fetch('https://api.usecrier.com/v1/posts/pst_7q1w0e/cancel', { method: 'POST', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});const { data } = await res.json();import os, requests
res = requests.post( "https://api.usecrier.com/v1/posts/pst_7q1w0e/cancel", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"},)data = res.json()["data"]Aprobar o rechazar una publicación
Sección titulada «Aprobar o rechazar una publicación»/v1/posts/{id}/reviewSolo para publicaciones en pending_approval, por propietarios, admins o una API key. Aprobar la programa para su fecha, la mete en la cola si la pidió o la publica ya si su fecha pasó. Rechazar la devuelve a borrador con la nota y envía post.rejected.
Parámetros
idstringobligatorio
Cuerpo
decisionstringobligatorioapprovela programa (o la publica ya si su fecha pasó);rejectla devuelve a borrador.notestringEl motivo, para quien la escribió. Se muestra con el borrador tras un rechazo.
Respuesta 200
data
idstringobligatoriocontentstringobligatoriomediaobject[]obligatoriomedia
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriocontentstringmediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
statusstringobligatoriourlstring (uri)La publicación en la red, una vez publicada.
errorstring
statusstringobligatorioscheduledForstring (date-time)approvalobjectAparece cuando la publicación ha pasado por revisión.
approval
requestedBystringQuién la envió a revisión; no aparece si fue una API key.
requestedAtstring (date-time)obligatorioqueuebooleanAl aprobarla, entra en la cola del perfil.
decisionstringdecidedBystringdecidedAtstring (date-time)notestringPor qué se rechazó.
recyclingobjectAparece cuando se activa el reciclado.
recycling
activebooleanobligatorioeveryintegerobligatoriounitstringobligatoriostartAtstring (date-time)maxCopiesintegeruntilstring (date-time)variationsstring[]timezonestringcopiesintegerobligatorioCopias creadas hasta ahora.
nextAtstring (date-time)Cuándo sale la siguiente copia; no aparece cuando se ha parado.
lastCopyIdstringLa última copia, que es una publicación propia.
recycledFromstringEn una copia reciclada: la publicación original.
createdAtstring (date-time)obligatorioupdatedAtstring (date-time)obligatorio
curl -X POST "https://api.usecrier.com/v1/posts/pst_7q1w0e/review" \ -H "Authorization: Bearer $CRIER_API_KEY"const res = await fetch('https://api.usecrier.com/v1/posts/pst_7q1w0e/review', { method: 'POST', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});const { data } = await res.json();import os, requests
res = requests.post( "https://api.usecrier.com/v1/posts/pst_7q1w0e/review", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"},)data = res.json()["data"]Reciclar una publicación
Sección titulada «Reciclar una publicación»/v1/posts/{id}/recyclingLa vuelve a publicar cada every semanas o meses como una publicación nueva (recycledFrom apunta a la original), hasta maxCopies o until. Las copias no van a YouTube ni a TikTok, y cada cuenta puede tener hasta 10 publicaciones reciclándose. Enviarlo otra vez cambia la regla y mantiene la cuenta de copias.
Parámetros
idstringobligatorio
Cuerpo
everyintegerobligatorioCuántas unidades entre copia y copia.
unitstringobligatorioweek(semana) omonth(mes).startAtstring (date-time)Cuándo sale la primera copia. Por defecto, un intervalo después de la fecha de la publicación; si es antigua, la siguiente fecha de esa serie, a la misma hora.
maxCopiesintegerParar tras este número de copias.
untilstring (date-time)Parar después de esta fecha.
variationsstring[]Textos que se usan por turnos en lugar del de la publicación. El texto propio de un destino sigue mandando. Recomendado en X y Pinterest, que penalizan las repeticiones.
timezonestringZona horaria IANA (por ejemplo
Europe/Madrid) en la que se cuenta el intervalo, para que las copias mantengan su hora local cuando cambia la hora. UTC por defecto.
Respuesta 200
data
idstringobligatoriocontentstringobligatoriomediaobject[]obligatoriomedia
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriocontentstringmediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
statusstringobligatoriourlstring (uri)La publicación en la red, una vez publicada.
errorstring
statusstringobligatorioscheduledForstring (date-time)approvalobjectAparece cuando la publicación ha pasado por revisión.
approval
requestedBystringQuién la envió a revisión; no aparece si fue una API key.
requestedAtstring (date-time)obligatorioqueuebooleanAl aprobarla, entra en la cola del perfil.
decisionstringdecidedBystringdecidedAtstring (date-time)notestringPor qué se rechazó.
recyclingobjectAparece cuando se activa el reciclado.
recycling
activebooleanobligatorioeveryintegerobligatoriounitstringobligatoriostartAtstring (date-time)maxCopiesintegeruntilstring (date-time)variationsstring[]timezonestringcopiesintegerobligatorioCopias creadas hasta ahora.
nextAtstring (date-time)Cuándo sale la siguiente copia; no aparece cuando se ha parado.
lastCopyIdstringLa última copia, que es una publicación propia.
recycledFromstringEn una copia reciclada: la publicación original.
createdAtstring (date-time)obligatorioupdatedAtstring (date-time)obligatorio
curl -X PUT "https://api.usecrier.com/v1/posts/pst_7q1w0e/recycling" \ -H "Authorization: Bearer $CRIER_API_KEY"const res = await fetch('https://api.usecrier.com/v1/posts/pst_7q1w0e/recycling', { method: 'PUT', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});const { data } = await res.json();import os, requests
res = requests.put( "https://api.usecrier.com/v1/posts/pst_7q1w0e/recycling", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"},)data = res.json()["data"]Dejar de reciclar una publicación
Sección titulada «Dejar de reciclar una publicación»/v1/posts/{id}/recyclingLas copias ya creadas se quedan como están.
Parámetros
idstringobligatorio
Respuesta 200
data
idstringobligatoriocontentstringobligatoriomediaobject[]obligatoriomedia
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriocontentstringmediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
statusstringobligatoriourlstring (uri)La publicación en la red, una vez publicada.
errorstring
statusstringobligatorioscheduledForstring (date-time)approvalobjectAparece cuando la publicación ha pasado por revisión.
approval
requestedBystringQuién la envió a revisión; no aparece si fue una API key.
requestedAtstring (date-time)obligatorioqueuebooleanAl aprobarla, entra en la cola del perfil.
decisionstringdecidedBystringdecidedAtstring (date-time)notestringPor qué se rechazó.
recyclingobjectAparece cuando se activa el reciclado.
recycling
activebooleanobligatorioeveryintegerobligatoriounitstringobligatoriostartAtstring (date-time)maxCopiesintegeruntilstring (date-time)variationsstring[]timezonestringcopiesintegerobligatorioCopias creadas hasta ahora.
nextAtstring (date-time)Cuándo sale la siguiente copia; no aparece cuando se ha parado.
lastCopyIdstringLa última copia, que es una publicación propia.
recycledFromstringEn una copia reciclada: la publicación original.
createdAtstring (date-time)obligatorioupdatedAtstring (date-time)obligatorio
curl -X DELETE "https://api.usecrier.com/v1/posts/pst_7q1w0e/recycling" \ -H "Authorization: Bearer $CRIER_API_KEY"await fetch('https://api.usecrier.com/v1/posts/pst_7q1w0e/recycling', { method: 'DELETE', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});import os, requests
requests.delete( "https://api.usecrier.com/v1/posts/pst_7q1w0e/recycling", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"},)Reintentar los destinos fallidos
Sección titulada «Reintentar los destinos fallidos»/v1/posts/{id}/retryParámetros
idstringobligatorio
Respuesta 200
data
idstringobligatoriocontentstringobligatoriomediaobject[]obligatoriomedia
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriocontentstringmediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
statusstringobligatoriourlstring (uri)La publicación en la red, una vez publicada.
errorstring
statusstringobligatorioscheduledForstring (date-time)approvalobjectAparece cuando la publicación ha pasado por revisión.
approval
requestedBystringQuién la envió a revisión; no aparece si fue una API key.
requestedAtstring (date-time)obligatorioqueuebooleanAl aprobarla, entra en la cola del perfil.
decisionstringdecidedBystringdecidedAtstring (date-time)notestringPor qué se rechazó.
recyclingobjectAparece cuando se activa el reciclado.
recycling
activebooleanobligatorioeveryintegerobligatoriounitstringobligatoriostartAtstring (date-time)maxCopiesintegeruntilstring (date-time)variationsstring[]timezonestringcopiesintegerobligatorioCopias creadas hasta ahora.
nextAtstring (date-time)Cuándo sale la siguiente copia; no aparece cuando se ha parado.
lastCopyIdstringLa última copia, que es una publicación propia.
recycledFromstringEn una copia reciclada: la publicación original.
createdAtstring (date-time)obligatorioupdatedAtstring (date-time)obligatorio
curl -X POST "https://api.usecrier.com/v1/posts/pst_7q1w0e/retry" \ -H "Authorization: Bearer $CRIER_API_KEY"const res = await fetch('https://api.usecrier.com/v1/posts/pst_7q1w0e/retry', { method: 'POST', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, },});const { data } = await res.json();import os, requests
res = requests.post( "https://api.usecrier.com/v1/posts/pst_7q1w0e/retry", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"},)data = res.json()["data"]Retirar una publicación
Sección titulada «Retirar una publicación»/v1/posts/{id}/unpublishDe todas las redes o solo de accountId.
Parámetros
idstringobligatorio
Cuerpo
accountIdstring
Respuesta 200
data
idstringobligatoriocontentstringobligatoriomediaobject[]obligatoriomedia
typestringobligatoriourlstring (uri)obligatorioaltTextstring
targetsobject[]obligatoriotargets
accountIdstringobligatorioplatformstringobligatoriocontentstringmediaobject[]media
typestringobligatoriourlstring (uri)obligatorioaltTextstring
statusstringobligatoriourlstring (uri)La publicación en la red, una vez publicada.
errorstring
statusstringobligatorioscheduledForstring (date-time)approvalobjectAparece cuando la publicación ha pasado por revisión.
approval
requestedBystringQuién la envió a revisión; no aparece si fue una API key.
requestedAtstring (date-time)obligatorioqueuebooleanAl aprobarla, entra en la cola del perfil.
decisionstringdecidedBystringdecidedAtstring (date-time)notestringPor qué se rechazó.
recyclingobjectAparece cuando se activa el reciclado.
recycling
activebooleanobligatorioeveryintegerobligatoriounitstringobligatoriostartAtstring (date-time)maxCopiesintegeruntilstring (date-time)variationsstring[]timezonestringcopiesintegerobligatorioCopias creadas hasta ahora.
nextAtstring (date-time)Cuándo sale la siguiente copia; no aparece cuando se ha parado.
lastCopyIdstringLa última copia, que es una publicación propia.
recycledFromstringEn una copia reciclada: la publicación original.
createdAtstring (date-time)obligatorioupdatedAtstring (date-time)obligatorio
curl -X POST "https://api.usecrier.com/v1/posts/pst_7q1w0e/unpublish" \ -H "Authorization: Bearer $CRIER_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "accountId": "acc_3k9x2m" }'const res = await fetch('https://api.usecrier.com/v1/posts/pst_7q1w0e/unpublish', { method: 'POST', headers: { Authorization: `Bearer ${process.env.CRIER_API_KEY}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ "accountId": "acc_3k9x2m" }),});const { data } = await res.json();import os, requests
res = requests.post( "https://api.usecrier.com/v1/posts/pst_7q1w0e/unpublish", headers={"Authorization": f"Bearer {os.environ['CRIER_API_KEY']}"}, json={ "accountId": "acc_3k9x2m" },)data = res.json()["data"]© 2026 Crier by TWOFACES ·usecrier.com ·Panel ·soporte@twofacesco.com