Publications récurrentes
Listez, consultez, mettez en pause, reprenez et supprimez les publications récurrentes créées avec recurrence via l'API REST AdaptlyPost.
https://post.adaptlypost.com/post/api/v1/recurring-postsRenvoie une liste paginée des publications récurrentes de l'espace de travail. Une publication récurrente est une série que vous créez en envoyant recurrence à Créer une publication.
Paramètres de requête
| Parametre | Taper | Description |
|---|---|---|
limit | number | Nombre de publications récurrentes à renvoyer (1-100, par défaut : 20) |
offset | number | Nombre de publications récurrentes à ignorer (par défaut : 0) |
statuses | RecurringPostStatus[] | Filtrer par ACTIVE, PAUSED ou ENDED. Répétez la clé pour chaque valeur : statuses=ACTIVE&statuses=PAUSED |
Seule la prochaine publication existe
Une série active garde une seule publication planifiée, la prochaine. AdaptlyPost la crée environ 24 heures à l'avance, et elle apparaît dans Lister les publications avec recurringPostId renseigné. Supprimer cette publication avec Supprimer une publication saute cette date, et la série continue.Champs d'une publication récurrente
| Champ | Description |
|---|---|
id | ID de la publication récurrente. Utilisez-le avec les endpoints ci-dessous |
userId | Le membre qui a créé la série |
status | ACTIVE crée des publications. PAUSED n'en crée aucune jusqu'à la reprise. ENDED a atteint endsOn ou maxOccurrences |
pauseReason | Pourquoi la série est en pause. Présent uniquement quand status vaut PAUSED. Voir le tableau ci-dessous |
lastError | L'erreur qui a mis la série en pause, quand un échec en est la cause |
frequency | DAILY, WEEKLY ou MONTHLY |
interval | Se répète tous les N jours, semaines ou mois |
weekdays | Les jours de la semaine où une série WEEKLY publie |
startsAt | Date et heure de la première publication. Elle fixe l'heure de chaque publication |
timezone | Fuseau horaire IANA suivi par la série |
endsOn | Dernier jour où une publication peut partir. Absent si la série n'a pas de date de fin |
maxOccurrences | Nombre total de publications de la série. Absent s'il n'y a pas de limite |
nextOccurrenceAt | La prochaine date qui n'existe pas encore comme publication. Absent une fois la série terminée |
occurrenceCount | Publications créées par la série jusqu'ici |
contentType | Le contenu utilisé par chaque publication de la série, tel qu'envoyé à Créer une publication |
text | Le contenu utilisé par chaque publication de la série, tel qu'envoyé à Créer une publication |
mediaUrls | Le contenu utilisé par chaque publication de la série, tel qu'envoyé à Créer une publication |
mediaAltTexts | Le contenu utilisé par chaque publication de la série, tel qu'envoyé à Créer une publication |
thumbnailUrl | Le contenu utilisé par chaque publication de la série, tel qu'envoyé à Créer une publication |
platformTypes | Les plateformes sur lesquelles la série publie |
platforms | Les comptes sur lesquels la série publie, une entrée par compte. Leur status vaut toujours PENDING |
Motifs de pause
Une série peut se mettre en pause d'elle-même. Corrigez la cause, puis reprenez-la. Elle repart de la prochaine date après maintenant.
| Motif | Description |
|---|---|
USER | Quelqu'un l'a mise en pause via l'API ou l'application |
CONSECUTIVE_FAILURES | 3 publications d'affilée ont échoué |
SUBSCRIPTION_INACTIVE | L'abonnement de l'espace de travail n'est plus actif |
ACCESS_LOST | Le membre qui l'a créée a perdu l'accès à l'espace de travail |
CONNECTION_REMOVED | Quelqu'un a déconnecté l'un de ses comptes |
INVALID_CONTENT | Une plateforme a refusé le contenu |
Gérer une publication récurrente
https://post.adaptlypost.com/post/api/v1/recurring-posts/:idRenvoie une publication récurrente. Un ID inexistant ou appartenant à un autre espace de travail renvoie 404.
https://post.adaptlypost.com/post/api/v1/recurring-posts/:id/pauseMet la série en pause. Elle ne crée plus de publications et supprime sa prochaine publication planifiée. Renvoie la publication récurrente.
La clé exige aussi posts.schedule. Une série créée par un autre membre exige en plus posts.others.
https://post.adaptlypost.com/post/api/v1/recurring-posts/:id/resumeReprend une série en pause à partir de la prochaine date après maintenant. Les dates manquées pendant la pause ne sont pas publiées. Renvoie la publication récurrente.
La clé exige aussi posts.schedule. Une série créée par un autre membre exige en plus posts.others.
https://post.adaptlypost.com/post/api/v1/recurring-posts/:idSupprime la série et sa prochaine publication planifiée. Les publications déjà parties sont conservées. Renvoie { "deleted": true }.
La clé exige aussi posts.delete. Une série créée par un autre membre exige en plus posts.others.
curl --request GET \
--url 'https://post.adaptlypost.com/post/api/v1/recurring-posts?limit=10&offset=0&statuses=ACTIVE&statuses=PAUSED' \
--header 'Authorization: Bearer <api-key>'curl --request POST \
--url https://post.adaptlypost.com/post/api/v1/recurring-posts/rp_abc123/pause \
--header 'Authorization: Bearer <api-key>'curl --request POST \
--url https://post.adaptlypost.com/post/api/v1/recurring-posts/rp_abc123/resume \
--header 'Authorization: Bearer <api-key>'curl --request DELETE \
--url https://post.adaptlypost.com/post/api/v1/recurring-posts/rp_abc123 \
--header 'Authorization: Bearer <api-key>'{
"recurringPosts": [
{
"id": "rp_abc123",
"userId": "user_123",
"status": "ACTIVE",
"frequency": "WEEKLY",
"interval": 1,
"weekdays": ["MONDAY", "THURSDAY"],
"startsAt": "2026-10-05T13:00:00.000Z",
"timezone": "America/New_York",
"maxOccurrences": 12,
"nextOccurrenceAt": "2026-10-19T13:00:00.000Z",
"occurrenceCount": 4,
"contentType": "TEXT",
"text": "{Hi|Hello} everyone, the weekly product tip is live!",
"mediaUrls": [],
"platformTypes": ["LINKEDIN"],
"platforms": [
{
"id": "rp_abc123-0",
"platform": "LINKEDIN",
"status": "PENDING"
}
],
"createdAt": "2026-10-01T09:30:00.000Z",
"updatedAt": "2026-10-14T13:00:00.000Z"
}
],
"total": 1,
"hasMore": false
}