Ads Uploader CLI

per le inserzioni Meta

Lancia inserzioni Meta in blocco dal terminale o dal tuo agente IA

L'Ads Uploader CLI permette a te, o a un agente IA come Claude Code o Codex, di lanciare inserzioni Meta in blocco dal terminale su ogni account pubblicitario che gestisci. Indicale un'inserzione che stai già pubblicando e il nuovo batch ne copia impostazioni, pubblico e posizionamenti, con qualsiasi struttura di campagne e ad set ti serva. Ogni lancio è uno spec di cui vedi l'anteprima prima che venga creato qualcosa. Funziona insieme alla CLI ufficiale di Meta: quella di Meta crea un oggetto per comando, la nostra gestisce l'intero lancio.

Vedi su GitHub
Workflow tutto-terminale

Sfoglia, carica, previsualizza e lancia dalla riga di comando

Pensata per gli agenti IA

Affidala a Claude Code, Cursor o Codex con un solo file skill

Stesso backend della web app

Preset, account e connessione Meta restano gli stessi

Installa una volta, autenticati una volta

Installa globalmente con npm, esegui ads login per autenticarti tramite browser e scegli un account pubblicitario di default. Il tuo account Ads Uploader e la connessione Facebook fanno il resto.

  • Un npm install. Gira ovunque ci sia Node 18+.
  • Accedi e autenticati nel tuo browser
  • Niente variabili d'ambiente da memorizzare, niente token da condividere in modo sicuro con i compagni di team
  • Imposta un account di default con ads account act_xxx, oppure passa --account a ogni lancio per lavorare su più account cliente
~/projects
Live Demo
$

Sfoglia l'account senza uscire dalla shell

Lo stesso selettore di campagne, ad set e annunci della web app, ma come comandi. Trova l'annuncio da cui copiare le impostazioni, conferma un preset ID o controlla le performance senza aprire Ads Manager.

  • ads campaigns elenca le campagne attive del tuo account
  • Approfondisci con ads campaign, ads adset e ads ad
  • Mostra headline, body, CTA, URL di destinazione e l'ad set padre
  • Pesca qualsiasi ID direttamente in un campo copyFromAd
Browse Account
Live Demo
$

Carica cartelle, non file uno a uno

Punta la CLI a una cartella di creatività e tutto il batch va dritto nella media library di Meta. Il raggruppamento per suffisso del nome funziona uguale alla web app.

  • ads upload ./miei-creativi carica un'intera directory
  • Varianti 1:1, 4:5, 9:16 e 16:9 raggruppate dal nome file
  • Restituisce un batch ID da referenziare nel file spec
  • Funziona con Google Drive, Dropbox e OneDrive montati
~/projects
Live Demo
$

Un file spec. Riutilizzabile. Diffabile.

Invece di cliccare schermate di configurazione, descrivi il lancio in un file JSON. Referenzia un preset salvato o copia da un annuncio esistente, poi sovrapponi headline, primary text, naming pattern e override.

  • Referenzia un preset per ID, lo stesso che usi sulla web app
  • O copyFromAd per replicare l'intera config di un annuncio
  • Override testi, URL, naming pattern e creative enhancement
  • Salvalo in git, fai diff la settimana dopo, passalo al team
launch-spec.json
Live Demo
1
Reusable. Reviewable. Diffable.

Previsualizza prima di spendere

Inizia ogni lancio con un dry run. ads create:preview mostra esattamente cosa verrebbe creato - campagna, ad set, annunci, budget, stato - senza creare nulla in Meta. Becca gli errori prima che costino.

  • Il dry run mostra esattamente quello che il run live creerà
  • Valida lo spec con lo stesso motore della web app
  • Trova campi mancanti, riferimenti errati o combinazioni invalide
  • Non viene creato nulla in Meta, quindi non si spende nulla
Preview · Dry Run
No live changes
$

Annunci live in tempo reale

ads create esegue il lancio come job in background e trasmette il progresso al terminale. La stessa pipeline che muove la web app - rate limiting, retry, validazione e variazioni creative, tutto gestito.

  • Un comando pubblica l'intero batch su Meta
  • Progresso live per ogni ad set e annuncio mentre nasce
  • Riprendi con ads jobs JOB_ID --follow se ti disconnetti
  • Attivo di default o --status PAUSED come rete di sicurezza
ads create · live job
Live Demo
Ready...
--:--:--→Initializing...

Affida l'intero workflow a un agente IA

La CLI include un file skill da droppare in Claude Code, Cursor o qualunque agente in grado di eseguire comandi shell. L'agente legge le creatività, scrive le copy, costruisce lo spec, previsualizza e lancia - tu resti sul terminale.

  • Copia SKILL.md in .claude/skills/ads e compare la skill /ads
  • Ogni comando fa una cosa sola, così l'agente resta deterministico
  • Gli spec danno all'agente un piano rivedibile prima di ogni spesa
  • Si abbina all'Ads Uploader MCP quando preferisci chattare a fianco della web app
ClaudeClaude Code · /ads
Live Demo

Web, MCP e CLI. Un solo circuito.

Il terminale non ti chiude mai in una gabbia. I build salvati portano un lancio da una superficie all'altra: iniziane uno nella web app, ritoccalo da una chat con Claude o ChatGPT tramite l'Ads Uploader MCP, poi concludilo qui con un solo comando. Lo stesso riferimento del build si apre ovunque.

  • Build salvati e preset condivisi su ogni superficie
  • Fai il fork di un build per una variante senza toccare l'originale
  • Preferisci chattare a fianco della web app? È l'Ads Uploader MCP
  • Inizia dove vuoi, concludi dove vuoi, niente è vincolato
One build, three surfaces
Live Demo
Web AppBuild started
Claude / ChatGPT·
CLI·
build_7fa2c9

Upload media, apply a preset, start the build

Same build reference on every surface. Nothing is locked in.

CLI ufficiale di Meta vs. Ads Uploader CLI

Il 29 aprile 2026 Meta ha rilasciato meta-ads, un wrapper ufficiale gratuito da riga di comando per la Marketing API. Crea un oggetto per comando e non ha un comando batch, quindi i lanci in blocco richiedono cicli nella shell. L'Ads Uploader CLI lo completa: lo strumento di Meta per il reporting e le modifiche singole, il nostro per i lanci in blocco su tutti i tuoi account pubblicitari. La nostra guida alla Meta Ads CLI tratta a fondo lo strumento di Meta.

5 Portal Steps · 7 Scopes · Token in .env
Meta CLI
Manual setup in Meta Business Suite
1. Create a custom Meta app
2. Create a system user
3. Assign your assets to the user
4. Add the user as App Admin
5. Generate an access token (7 scopes)
Then in your terminal
$pip install meta-ads
$uv sync
$echo "ACCESS_TOKEN=..." > .env
$echo "AD_ACCOUNT_ID=..." >> .env
$meta auth status
✓ Authenticated
1 Browser Login · 0 Tokens to Share
Ads Uploader CLI
In your terminal
$npm install -g @adsuploader/cli
✓ ads command installed globally
$ads login
→ Opening browser for authentication...
✓ Authenticated as you@yourcompany.com
$ads account act_123456789012345
✓ Default account set
You're ready. Launch your first batch:
$ads upload ./creatives
$ads create my-launch.json
✓ 47 ads live in 3 minutes

Workflow di autenticazione

Theirs
  • •Costruire una Meta app personalizzata
  • •Provisioning di un system user
  • •Assegnare i tuoi asset
  • •Generare un access token con 7 scope
  • •Incollare il token nel .env
  • •Condividerlo in modo sicuro con i compagni di team
Ours
  • Esegui ads login
  • Autenticati nel tuo browser
  • Ogni compagno di team fa il login da sé

Logica per gli edge case

Theirs
  • •Stranezze di formato lasciate a te da gestire
  • •Nessun raggruppamento delle varianti per aspect ratio
  • •Toggle API grezzi per le creative enhancement
  • •Gli edge case emergono in produzione
  • •Nessun livello documentato di retry o di pacing
Ours
  • Tutti i formati di inserzione supportati nativamente
  • Varianti per aspect ratio raggruppate in automatico
  • Controllo delle creative enhancement per obiettivo
  • Testato in produzione su grande scala
  • Retry ed errori leggibili integrati

Configurazioni di inserzione ereditate

Theirs
  • •Definire ogni campo della campagna
  • •Definire ogni campo dell'ad set
  • •Definire ogni campo della creatività
  • •Rispecificare ogni lancio da zero
Ours
  • Referenzia qualsiasi inserzione esistente
  • Eredita targeting e posizionamenti
  • Eredita cataloghi e pixel
  • Sovrascrivi solo quello che è cambiato

Lanciare inserzioni è tutto quello che facciamo. Abbiamo progettato i nostri tool per essere i migliori a farlo, plasmati da milioni di dollari di ad spend sui nostri brand e business.

Chris Pollard

Chris Pollard Founder of Ads Uploader

Modi diversi di interfacciarsi con la Meta API sono entusiasmanti, ma gli edge case dell'API mordono ancora. Copertura dei formati, logica di retry, config valide, ereditarietà dalle inserzioni esistenti - abbiamo passato anni a codificare tutto questo nel workflow di Ads Uploader. I marketer lanciano inserzioni più velocemente con noi che cucendo chiamate API da soli.

Una CLI è l'interfaccia giusta per un agente IA esattamente come una UI visiva lo è per i click. Stessi marketer, contesti diversi - per questo ho costruito la nostra. Che Meta rilasci la sua è una validazione benvenuta.

Lo stesso workflow Ads Uploader. Ora guidato da te e dal tuo agente.

Un file spec, un comando, annunci nel tuo account.

Inizia la prova gratuita di 7 giorni

Prova gratuita di 7 giorni

Nessuna carta di credito richiesta

Cancella quando vuoi