Guida

Come Programmare Post su TikTok con un\'API

La costanza e quello che fa crescere gli account TikTok. Ma pubblicare manualmente alle 6 del mattino perche il tuo pubblico e attivo in quel momento non e una strategia sostenibile. Con l'API per social media di Upload-Post, puoi pianificare un\'intera settimana di contenuti TikTok in pochi minuti e lasciare che il sistema pubblichi agli orari giusti per te.

Programma un post TikTok per un orario specifico

L\'approccio piu diretto e impostare una data di pubblicazione esatta. Aggiungi il parametro scheduled_date (formato ISO-8601) e un timezone (formato IANA) alla tua richiesta di upload. L\'API accetta date fino a 365 giorni nel futuro.

Ecco un esempio cURL che programma un video TikTok per il 22 settembre alle 10:00 ora di New York, con privacy impostata su pubblica e duetti disabilitati:

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=Morning routine that changed everything #fyp #routine" \
  -F "platform[]=tiktok" \
  -F "scheduled_date=2025-09-22T10:00:00Z" \
  -F "timezone=America/New_York" \
  -F "privacy_level=PUBLIC" \
  -F "disable_duet=false" \
  -F "disable_comment=false" \
  -F "disable_stitch=false"

Quando il post viene programmato con successo, l\'API risponde con un codice di stato 202 e un job_id:

{
  "success": true,
  "job_id": "scheduler_job_abc123",
  "scheduled_date": "2025-09-22T10:00:00Z"
}

Salva quel job_id. Ti servira per modificare, riprogrammare o annullare il post in seguito. Puoi anche consultare tutti i tuoi post programmati in qualsiasi momento:

curl https://api.upload-post.com/api/uploadposts/schedule \
  -H "Autorizzazione: Apikey your-api-key-here"

Questo restituisce un array di tutti i job in sospeso con il relativo job_id, scheduled_date, dettagli della piattaforma e un URL di anteprima del contenuto. Per un approfondimento sulla programmazione su tutte le piattaforme, consulta la guida generale alla programmazione.

Usa la coda per la programmazione automatica

Scegliere date esatte funziona quando hai pochi post. Ma se stai producendo contenuti in batch, scegliere manualmente un orario per ogni video diventa noioso rapidamente. Il sistema di coda risolve questo problema. Definisci il tuo programma di pubblicazione preferito una sola volta, e poi ogni contenuto che aggiungi viene assegnato automaticamente al prossimo slot disponibile.

Configura il programma della coda

Prima di tutto, indica al sistema quando vuoi che i contenuti vengano pubblicati. Questo esempio configura tre slot al giorno, dal lunedi al venerdi, nel fuso orario di New York:

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": 8, "minute": 0 },
      { "hour": 12, "minute": 30 },
      { "hour": 18, "minute": 0 }
    ],
    "days": [0, 1, 2, 3, 4]
  }'

Questo ti da 15 slot TikTok a settimana: 8:00, 12:30 e 18:00, dal lunedi al venerdi. Puoi definire fino a 24 slot al giorno e includere i weekend aggiungendo i giorni 5 e 6.

Aggiungi contenuti alla coda

Ora, invece di passare un scheduled_date, imposta add_to_queue=true. Il sistema riempie automaticamente il prossimo slot disponibile:

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=POV: you finally automated your TikTok posting #devlife" \
  -F "platform[]=tiktok" \
  -F "add_to_queue=true" \
  -F "privacy_level=PUBLIC"

Se e mercoledi alle 14:00, questo video viene assegnato alle 18:00 dello stesso giorno. Se tutti gli slot del mercoledi sono pieni, si sposta a giovedi alle 8:00. Puoi visualizzare in anteprima i prossimi slot disponibili prima di aggiungere contenuti:

curl https://api.upload-post.com/api/uploadposts/queue/preview?count=10 \
  -H "Autorizzazione: Apikey your-api-key-here"

Questo restituisce i prossimi 10 slot disponibili con le date e gli orari esatti, cosi sai esattamente quando ogni post in coda verra pubblicato.

TikTok specific settings to know

L\'API di TikTok espone diversi parametri che altre piattaforme non hanno. Alcuni sono opzionali, ma alcuni sono legalmente obbligatori in determinate situazioni. Ecco il riferimento completo:

Parametro Valori Descrizione
privacy_level "PUBBLICO", "FRIENDS", "PRIVATE" Controlla chi può vedere il video. Se omesso, utilizza le impostazioni predefinite del tuo account TikTok.
disable_duet true / false Impedisce ad altri utenti di creare duetti con il tuo video.
disable_comment true / false Disattiva i commenti sul video.
disable_stitch true / false Impedisce ad altri utenti di usare lo stitch con il tuo video.
brand_content_toggle true / false Contrassegna il video come partnership a pagamento. Obbligatorio dalle normative FTC e UE quando si promuove un brand per cui si è pagati.
brand_organic_toggle true / false Contrassegna il video come promozione della propria attività. Usa questo quando il contenuto riguarda il tuo prodotto o servizio, non una sponsorizzazione di terze parti.
is_aigc true / false Dichiara che il contenuto è stato generato o modificato significativamente dall\'IA. TikTok potrebbe etichettarlo di conseguenza per gli spettatori.
tiktok_title string Titolo/didascalia specifico per la piattaforma. Utile quando la didascalia TikTok differisce dal campo title principale inviato ad altre piattaforme.
cover_timestamp integer (ms) Seleziona il fotogramma del video a questo millisecondo da usare come miniatura. Ad esempio, 5000 seleziona il fotogramma al quinto secondo.
post_mode "DRAFT", "PUBLISH" Imposta su "DRAFT" per caricare il video come bozza su TikTok (puoi rivederlo e pubblicarlo manualmente in seguito). L\'impostazione predefinita èing is "PUBLISH".

Una nota sui contenuti brandizzati: se stai creando contenuti sponsorizzati, devi impostare brand_content_toggle=true. Non e opzionale. Sia la FTC negli USA che le normative UE equivalenti richiedono una chiara dichiarazione delle partnership a pagamento. TikTok lo impone anche dal suo lato, quindi non segnalarlo correttamente puo portare alla rimozione del contenuto. Se stai promuovendo la tua attivita (non un brand di terze parti), usa invece brand_organic_toggle=true.

Per i contenuti generati dall\'IA, impostare is_aigc=true aggiunge un\'etichetta di dichiarazione visibile agli spettatori. Man mano che le normative sui contenuti IA evolvono, segnalarlo proattivamente e una buona pratica.

Schedule TikTok posts with Python

La guida all\'automazione con Python copre l\'SDK in dettaglio. Ecco un esempio pratico per TikTok: programmare in batch ogni video in una cartella, ciascuno a un\'ora di distanza, a partire da domani mattina.

pip install upload-post
import os
import glob
from datetime import datetime, timedelta
from upload_post import UploadPostClient

client = UploadPostClient(api_key="your-api-key-here")

video_folder = "/path/to/tiktok-videos"
videos = sorted(glob.glob(os.path.join(video_folder, "*.mp4")))

# Start scheduling from tomorrow at 9 AM Eastern
base_time = (datetime.now() + timedelta(days=1)).replace(
    hour=9, minute=0, second=0, microsecond=0
)

print(f"Found {len(videos)} videos to schedule")

for i, video_path in enumerate(videos):
    publish_time = base_time + timedelta(hours=i)
    filename = os.path.basename(video_path)
    title = filename.replace(".mp4", "").replace("-", " ").replace("_", " ")

    try:
        response = client.upload_video(
            video_path=video_path,
            title=title,
            user="mybrand",
            platforms=["tiktok"],
            scheduled_date=publish_time.isoformat(),
            timezone="America/New_York",
            privacy_level="PUBBLICO",
            disable_duet=False,
            disable_comment=False,
            cover_timestamp=3000,
            async_upload=True
        )
        job_id = response.get("job_id", "in attesa")
        print(f"[{i+1}/{len(videos)}] Scheduled {filename} for {publish_time} (Job: {job_id})")
    except Exception as e:
        print(f"[{i+1}/{len(videos)}] Failed: {filename} - {e}")

print("Tutti i video programmati!")

Questo script distanzia ogni video di un\'ora. Puoi regolare il timedelta in base alla cadenza che preferisci. Ricorda che TikTok impone un limite giornaliero di 15 upload per finestra mobile di 24 ore per account. Se hai piu di 15 video, distribuiscili su piu giorni o usa il sistema di coda, che gestisce i limiti automaticamente.

Puoi anche combinare questo con l'API FFmpeg per ridimensionare o tagliare i video prima della programmazione, oppure usare il calendario delle festivita per i social media per allineare le tue date di pubblicazione con i temi di tendenza.

No-code: Programmare post TikTok con n8n

Se preferisci l\'automazione visuale alla scrittura di codice, n8n e un\'ottima opzione. La configurazione utilizza il nodo HTTP Request per chiamare l\'API di Upload-Post, e puoi attivarlo da Google Sheets, Google Drive, Airtable o un pulsante manuale.

Il flusso base funziona cosi:

  1. Nodo Attivatore: si attiva su programmazione, una nuova riga nel foglio di calcolo o un nuovo file in una cartella cloud.
  2. Nodo Richiesta HTTP: invia un POST multipart/form-data a https://api.upload-post.com/api/upload con la tua chiave API, il file video, il titolo, platform[]=tiktok e add_to_queue=true.
  3. Opzionale: una notifica Slack o email quando l\'upload riesce o fallisce.

Abbiamo un template per l\'upload TikTok su n8n pronto all\'uso che puoi importare con un clic. Sfoglia tutti i template n8n disponibili per altre idee di automazione. Puoi anche configurarlo con Make.com se e la tua piattaforma di automazione preferita.

Requisiti video per TikTok

Prima di programmare, assicurati che i tuoi video rispettino le specifiche di TikTok. Caricare un file che non soddisfa questi requisiti causera un post fallito.

Requisito Specifica
Dimensione massima file 4 GB
Formati supportati MP4, WebM, MOV
Rapporto d\'aspetto consigliato 9:16 (verticale). 1:1 e 16:9 sono accettati ma potrebbero essere visualizzati con bande nere.
Risoluzione 1080x1920 consigliata. Minimo 720p.
Durata Da 1 secondo a 10 minuti
Codec H.264 consigliato. Anche H.265 (HEVC) è supportato.
Limite upload giornaliero 15 video per finestra mobile di 24 ore per account

Se i tuoi video sorgente sono nel formato o aspect ratio sbagliato, l'API FFmpeg puo gestire la conversione nel cloud prima della pubblicazione. Puoi anche riutilizzare i video YouTube per TikTok automaticamente.

Domande frequenti

Posso programmare post TikTok gratuitamente?

Si. Upload-Post include un piano gratuito con 10 upload al mese, e la programmazione e disponibile su tutti i piani, compreso quello gratuito. Puoi programmare post con date esatte o usare il sistema di coda senza costi. Se hai bisogno di piu volume, i piani a pagamento partono da un prezzo accessibile senza impegno a lungo termine.

Cosa succede se TikTok non è disponibile quando il mio post è programmato?

Upload-Post ripete automaticamente gli upload falliti. Se l\'API di TikTok e temporaneamente non disponibile all\'orario programmato, il sistema tentera di pubblicare nuovamente nei minuti successivi. Se il problema persiste, riceverai una notifica tramite webhook (se configurati) oppure puoi controllare lo stato usando l\'endpoint GET /api/uploadposts/status?job_id=your_job_id. I tuoi contenuti non vengono mai persi.

Posso programmare su TikTok e Instagram contemporaneamente?

Assolutamente. Basta passare piu piattaforme nella stessa richiesta: platform[]=tiktok e platform[]=instagram. Lo stesso video, titolo e data programmata si applicano a tutte le piattaforme. Se hai bisogno di didascalie diverse per piattaforma, usa il parametro tiktok_title per il testo specifico di TikTok mentre il campo principale title va alle altre piattaforme. Consulta la nostra guida su come caricare video in blocco su piu piattaforme per flussi di lavoro multi-piattaforma piu avanzati.

Con quanto anticipo posso programmare i post TikTok?

Fino a 365 giorni. Il parametro scheduled_date accetta qualsiasi data entro il prossimo anno. Combinato con il sistema di coda, potresti teoricamente riempire un intero anno di contenuti in una singola sessione batch. La maggior parte degli utenti programma da una a quattro settimane in anticipo, che e un buon equilibrio tra pianificazione e flessibilita. Il nostro calendario delle festivita per i social media puo aiutarti a pianificare i contenuti in base alle date chiave durante l\'anno.

Start scheduling TikTok posts today

Pianifica un\'intera settimana di contenuti TikTok in pochi minuti. Configura la tua coda, carica i tuoi video e l\'API si occupa del resto. Niente piu pubblicazioni manuali a orari improbabili.

Nessuna carta di credito richiesta. 10 upload gratuiti inclusi.