I due modi per programmare contenuti
Upload-Post ti offre due approcci per la programmazione. Puoi impostare una data e un orario esatti con il parametro scheduled_date, oppure puoi lasciare che il sistema scelga il momento migliore usando il sistema di code. Entrambi funzionano su qualsiasi endpoint: upload di video, upload di foto e post di testo.
Opzione A: Programmare per una data e un orario specifici
Aggiungi il parametro scheduled_date a qualsiasi richiesta di upload. Il formato e ISO-8601 e puoi programmare fino a 365 giorni in anticipo.
curl -X POST https://api.upload-post.com/api/upload \
-H "Autorizzazione: Apikey your-api-key-here" \
-F "[email protected]" \
-F "user=mybrand" \
-F "title=Coming soon... stay tuned!" \
-F "platform[]=tiktok" \
-F "platform[]=instagram" \
-F "scheduled_date=2025-09-22T10:00:00Z" \
-F "timezone=Europe/Madrid"
Un paio di dettagli importanti. La data e in UTC per impostazione predefinita, ma puoi passare un parametro timezone usando il formato IANA (come America/New_York, Europe/London, Asia/Tokyo) in modo che il post vada online all\'orario locale corretto. Questo ti risparmia il calcolo manuale dei fusi orari.
Quando un post viene programmato con successo, l\'API risponde con uno stato 202 e include un job_id:
{
"success": true,
"job_id": "scheduler_job_abc123",
"scheduled_date": "2025-09-22T10:00:00Z"
}
Conserva quel job_id perche ti servira se vorrai modificare o cancellare il post in seguito.
Opzione B: Usa il sistema di code
La coda e perfetta quando vuoi pubblicare con costanza senza scegliere orari esatti. Invece di scegliere una data, imposti add_to_queue=true e Upload-Post assegna il prossimo slot temporale disponibile in base alla tua pianificazione configurata.
Configurare la tua coda
Prima di tutto, configura le impostazioni della coda. Definisci quali giorni e quali fasce orarie vuoi:
curl -X POST https://api.upload-post.com/api/uploadposts/queue/settings \
-H "Autorizzazione: Apikey your-api-key-here" \
-H "Tipo di contenuto: application/json" \
-d '{
"timezone": "America/New_York",
"slots": [
{ "hour": 9, "minute": 0 },
{ "hour": 12, "minute": 30 },
{ "hour": 17, "minute": 0 }
],
"days": [0, 1, 2, 3, 4]
}' Questo esempio pubblica alle 9:00, alle 12:30 e alle 17:00 (ora di New York), dal lunedi al venerdi. Puoi definire fino a 24 slot al giorno.
Aggiungere contenuti alla coda
curl -X POST https://api.upload-post.com/api/upload \
-H "Autorizzazione: Apikey your-api-key-here" \
-F "[email protected]" \
-F "user=mybrand" \
-F "title=Monday motivation" \
-F "platform[]=tiktok" \
-F "platform[]=instagram" \
-F "add_to_queue=true" Upload-Post assegnera automaticamente questo post al prossimo slot disponibile. Se e mercoledi alle 14:00, il post verra programmato per le 17:00 dello stesso giorno. Se tutti gli slot del mercoledi sono pieni, si sposta al giovedi alle 9:00.
Anteprima degli slot della coda
Vuoi vedere quali orari sono disponibili prima di mettere in coda i contenuti? Usa l\'endpoint di anteprima:
curl https://api.upload-post.com/api/uploadposts/queue/preview?count=10 \
-H "Autorizzazione: Apikey your-api-key-here" Restituisce i prossimi 10 slot disponibili con le date e gli orari esatti. Puoi richiederne fino a 50 alla volta.
Gestire i post programmati
Una volta che il contenuto e programmato, hai il pieno controllo tramite l\'API.
Elencare tutti i post programmati
curl https://api.upload-post.com/api/uploadposts/schedule \
-H "Autorizzazione: Apikey your-api-key-here"
Restituisce un array di job in attesa con il loro job_id, scheduled_date, dettagli della piattaforma e un URL di anteprima del contenuto.
Edit a scheduled post
Devi cambiare la data di pubblicazione o aggiornare la didascalia? Usa una richiesta PATCH:
curl -X PATCH https://api.upload-post.com/api/uploadposts/schedule/scheduler_job_abc123 \
-H "Autorizzazione: Apikey your-api-key-here" \
-H "Tipo di contenuto: application/json" \
-d '{
"scheduled_date": "2025-09-25T14:00:00Z",
"title": "Didascalia aggiornata con hashtag migliori"
}' Cancellare un post programmato
curl -X DELETE https://api.upload-post.com/api/uploadposts/schedule/scheduler_job_abc123 \
-H "Autorizzazione: Apikey your-api-key-here" Il post e i file caricati vengono rimossi immediatamente.
Costruire un calendario editoriale con la coda
Ecco un flusso di lavoro pratico che molte agenzie usano. Produci i contenuti in blocco il lunedi, carichi tutto nella coda e il sistema li distribuisce durante la settimana automaticamente. Non c\'e bisogno di essere online alle 9 del mattino di mercoledi per premere il pulsante pubblica.
Questo e particolarmente potente se combinato con strumenti come n8n o Make.com. Per esempio, puoi impostare un workflow dove i nuovi file in una cartella Google Drive vengono automaticamente aggiunti alla coda. Dai un\'occhiata al nostro template di pianificazione Google Sheets per n8n per una configurazione pronta all\'uso.
Anche il nostro calendario delle festivita per i social media e utile per pianificare contenuti intorno alle date importanti durante l\'anno.
Scheduling with Python
from upload_post import UploadPostClient
from datetime import datetime, timedelta
client = UploadPostClient(api_key="your-api-key-here")
# Schedule a video for tomorrow at 10 AM Madrid time
publish_date = (datetime.now() + timedelta(days=1)).replace(
hour=10, minute=0, second=0
)
response = client.upload_video(
video_path="/path/to/video.mp4",
title="Scheduled from Python",
user="mybrand",
platforms=["tiktok", "instagram", "youtube"],
scheduled_date=publish_date.isoformat(),
timezone="Europe/Madrid"
)
print(f"Scheduled! Job ID: {response['job_id']}") Limiti di upload giornalieri per piattaforma
Quando programmi molti contenuti, tieni presente che ogni piattaforma ha dei limiti giornalieri. Sono finestre mobili di 24 ore per ogni account collegato:
| Piattaforma | Limite giornaliero |
|---|---|
| TikTok | 15 upload |
| YouTube | 10 upload |
| 20 upload | |
| 25 upload | |
| 40 upload | |
| 50 upload | |
| X (Twitter) | 50 upload |
| Threads | 50 upload |
| Bluesky | 50 upload |
| 150 upload |
Il sistema di code rispetta automaticamente questi limiti e non sovraprogrammera nessuna piattaforma.
Domande frequenti
Posso programmare lo stesso contenuto per orari diversi su piattaforme diverse?
Non in una singola richiesta, ma puoi inviare richieste separate per ogni piattaforma con valori scheduled_date diversi. Oppure usa il sistema di code, che distribuisce automaticamente.
Cosa succede se un post programmato fallisce?
Riceverai una notifica tramite webhook (se configurati) con i dettagli dell\'errore. Puoi anche controllare lo stato con l\'endpoint GET /api/uploadposts/status?job_id=your_job_id.
Posso combinare la programmazione con gli strumenti no code?
Assolutamente. Sia n8n che Make.com possono inviare i parametri scheduled_date o add_to_queue tramite il modulo HTTP request. Questo significa che puoi costruire un workflow visuale che legge da un foglio di calcolo e programma tutto automaticamente.