Vai al contenuto
LinkProfit

Confronto tra le API degli accorciatori di link: che cosa ottengono gli sviluppatori nel 2026

LinkProfit Team12 min di lettura
  • api
  • developers
  • link-shortener
In questa pagina

Ogni accorciatore di link vende la stessa dimostrazione: incolli una URL lunga e ne ricevi una corta. La differenza tra loro salta fuori tre settimane dopo, quando un worker di coda crea diecimila link all'ora, un handler di webhook perde in silenzio i tentativi ripetuti e qualcuno chiede perché i dati sui clic del mese scorso non si riescono a incrociare con il CRM. Questo confronto parla di quella fase e non della dimostrazione.

Qui sotto trovi gli assi che decidono se un'API sopravvive al contatto con la produzione, che cosa offrono davvero i principali fornitori della categoria lungo ciascuno di essi ed esempi funzionanti contro l'API di LinkProfit. Il comportamento dei concorrenti è descritto a parole e non con frammenti di codice inventati: la forma delle richieste cambia, e uno snippet copiato che non compila più è peggio di una frase che spiega che cosa fa l'endpoint.

Per certi acquirenti l'API è il prodotto

I clienti di un accorciatore sono di due tipi. Il primo entra in una dashboard, crea i link a mano e legge i grafici. Il secondo la dashboard non la apre proprio: i link li crea il suo software, per conto dei suoi utenti, e i dati sui clic finiscono nel suo warehouse. Per il secondo tipo la dashboard è uno strumento di debug e l'API è il prodotto per intero.

Questa distinzione spiega gran parte delle delusioni della categoria, ed è il motivo per cui integrare l'accorciamento dentro un prodotto SaaS è un acquisto diverso dal comprare uno strumento di marketing. I fornitori che ottimizzano per il primo acquirente trattano l'API come una casella da spuntare nella pagina dei prezzi: esiste, è documentata alla buona, sta dietro un piano alto e copre la creazione dei link ma non i domini, le analytics o i webhook. Se stai integrando l'accorciamento dentro un prodotto, quella lacuna è la differenza tra rilasciare e riscrivere.

Gli assi che contano davvero

Autenticazione e ambito delle chiavi

La base è un token Bearer. A distinguere le implementazioni è che cosa può fare un token finito nelle mani sbagliate. Un'unica chiave valida su tutto l'account e capace di cancellare qualsiasi link è un rischio, soprattutto quando la tua integrazione deve solo crearli. Cerca chiavi con ambito su un'area di lavoro e non sull'account, permessi legati alla chiave e non a chi l'ha creata, conservazione sotto forma di hash con una sola visualizzazione al momento della creazione e rotazione indipendente, così puoi emettere una chiave per servizio e revocarne una senza fermare tutto.

Limiti di frequenza e comportamento al tetto

Contano due cose e raramente vengono pubblicate entrambe: il limite sostenuto e che cosa succede quando lo superi. Un'API educata risponde 429, dice quando riprovare ed espone il budget residuo su ogni risposta, così un client può auto-limitarsi prima di iniziare a fallire. Un'API che sotto carico restituisce un generico 500, o che perde le scritture in silenzio, ti costringe a costruire un limitatore prudente basato su supposizioni.

La forma della finestra conta quanto la sua ampiezza. Un tetto al secondo e una finestra scorrevole al minuto con la stessa portata media si comportano in modo completamente diverso sui carichi a picchi, che sono poi quelli prodotti dalla maggior parte delle integrazioni: una campagna va in pubblicazione, cinquemila link vengono creati in novanta secondi e la coda resta ferma per tutto il resto della giornata.

Operazioni in blocco

Creare i link una richiesta HTTP alla volta va bene sulle centinaia e diventa penoso sulle centinaia di migliaia. Un endpoint in blocco che accetta un lotto e restituisce un risultato per ogni elemento, errori parziali compresi con l'indice dell'elemento che ha fallito, trasforma un lavoro notturno in pochi minuti. Il dettaglio da controllare è la semantica degli errori: se una sola URL non valida fa respingere l'intero lotto, e se ripetere un lotto applicato a metà produce duplicati.

Analytics attraverso l'API

Quasi ogni fornitore mostra i grafici dei clic nella propria dashboard. Molti meno ti permettono di estrarre le stesse cifre via codice alla granularità che ti serve, ed è qui che si nascondono i limiti per piano. Chiedi tre cose: riepiloghi aggregati, serie storiche con granularità selezionabile e scomposizioni per dimensione come paese, città, dispositivo, browser, referrer e parametri di campagna. Poi chiedi della conservazione, dei tetti alla dimensione delle esportazioni e se gli eventi conteggiati sul tuo piano sono gli stessi che l'API restituirà. Le questioni di misurazione che stanno sotto, in particolare il filtro dei bot e il conteggio dei visitatori unici, le trovi nella nostra guida al tracciamento dei clic sui link.

Rebrandly è l'esempio più chiaro del perché la cosa conti. I suoi reindirizzamenti sono illimitati, ma le analytics stesse vengono contate come dati di engagement con un tetto di 100, 10.000, 25.000 e 150.000 eventi al mese a seconda del livello, ad agosto 2026. Un link che continua a reindirizzare mentre smette di riportare è un modo di fallire ben preciso, da mettere in conto prima di scegliere.

Webhook e garanzie di consegna

Interrogare di continuo per cogliere i cambiamenti di stato è il modo in cui le integrazioni diventano lente e costose. I webhook lo sostituiscono, e la loro qualità si riduce a quattro proprietà: quali eventi scattano, se i payload sono firmati, che aspetto ha la sequenza dei tentativi ripetuti e che cosa succede quando i tentativi finiscono. La verifica della firma va fatta sul corpo grezzo, con una marca temporale che impedisca di rigiocare la stessa richiesta. I tentativi vanno distribuiti su ore e non su minuti, così una finestra di deploy non ti costa eventi. E il fornitore deve avvisarti quando un endpoint viene marcato come guasto, invece di buttare via gli eventi in silenzio.

SDK, specifica e documentazione

Un SDK ufficiale fa risparmiare una giornata di lavoro; una specifica OpenAPI leggibile da una macchina fa risparmiare quella giornata in qualunque linguaggio l'SDK non copra, e continua a farla risparmiare mentre l'API evolve. Short.io distribuisce quattro SDK, la copertura ufficiale più ampia della categoria ad agosto 2026. La specifica pubblicata è però il bene più duraturo, perché da lì si generano client, mock e test di contratto.

Errori, paginazione e versionamento

Tre proprietà per niente affascinanti che determinano il costo di manutenzione. Gli errori vanno resi leggibili da una macchina, con un codice stabile separato dal messaggio per le persone, così la tua logica di ripetizione si dirama sul codice e non sul confronto tra stringhe. La paginazione va fatta a cursore: la paginazione a offset su una tabella che riceve scritture salta e duplica le righe. E la versione va indicata esplicitamente nel percorso, congelata una volta pubblicata, con le modifiche non retrocompatibili rilasciate sotto una versione successiva.

Che cosa offrono i fornitori

| Fornitore | Disponibilità dell'API | Limite di frequenza dichiarato | SDK ufficiali | Vincolo notevole | | --- | --- | --- | --- | --- | | Short.io | Tutti i piani, gratuito compreso | 50 richieste al secondo, altre vendute a blocchi | Quattro | Nessuna dashboard white label, i team solo su Enterprise | | Dub | Prodotto centrale, codice open source | Non dichiarato come cifra di facciata | Sì | Il white label per i partner sta sul livello da 300 USD | | Rebrandly | Livelli a pagamento, funzioni confinate per piano | Non dichiarato come cifra di facciata | Sì | Analytics contate come eventi di engagement | | Replug | Solo piano Agency, 99 USD al mese | Non dichiarato | No | L'API non si può valutare sui livelli inferiori | | Shlink, self-hosted | Completa, open source | Lo configuri tu | Community | Presupposti a singolo tenant, nessuna fatturazione | | LinkProfit | Dal piano Growth in su | 600 richieste al minuto per chiave di area di lavoro | Client generati dalla specifica | Hostname API condiviso nella versione 1 |

Tutti i dettagli su piani e prezzi qui sopra sono aggiornati ad agosto 2026.

Short.io: il riferimento sul volume

Short.io è l'aggressore della categoria su prezzo e portata. La sua API è disponibile su ogni piano, il limite dichiarato è di 50 richieste al secondo a prescindere dal livello e la capacità aggiuntiva si compra a blocchi di 50 richieste al secondo per 50 USD al mese. Distribuisce quattro SDK e un vero sito di documentazione per sviluppatori, e i domini personalizzati con certificati automatici sono inclusi dal piano gratuito in su.

I vincoli stanno altrove nel prodotto e non nell'API: quello che chiama white label è il marchio sui link e non una dashboard ribrandizzabile, il supporto a più team è confinato a Enterprise e i pixel di retargeting coprono solo due reti. Se ti servono quelle cose, guarda il nostro confronto con le alternative a Short.io.

Dub: il riferimento API-first

Dub è il metro della categoria per design ed esperienza per sviluppatori, con un nucleo open source e un prodotto costruito prima intorno all'API e non intorno alla dashboard. Se cerchi un modello di che cosa significhi «fatto bene» in questo settore, leggi la loro documentazione prima di scrivere i requisiti della tua integrazione.

Due chiarimenti utili, perché i nomi generano confusione. Dub Partners è infrastruttura per programmi di affiliazione offerta ai clienti di Dub, non un modo per rivendere Dub stesso, e il suo white label sta sul livello Advanced a 300 USD al mese ad agosto 2026. Il loro programma di affiliazione paga il 30 per cento di una vendita per un anno: un accordo di segnalazione e non un modello da rivenditore.

Rebrandly e Replug: l'API come leva di upsell

Entrambi confinano l'accesso per sviluppatori nei livelli alti, in modi diversi. L'API di Replug è disponibile solo sul piano Agency a 99 USD al mese, 79 USD con fatturazione annuale ad agosto 2026, il che significa che non puoi valutare l'integrazione a poco prezzo. Il confinamento di Rebrandly procede funzione per funzione invece che con un muro unico: i deep link compaiono solo su Growth, i pixel di retargeting solo da Professional e i tetti sui dati di engagement descritti sopra valgono per le analytics a prescindere dal livello.

Nessuno dei due approcci è insolito ed entrambi funzionano se stai sopra la soglia. Il punto, in una valutazione, è l'onestà sul budget: il livello che ti serve per l'API è il livello che stai comprando davvero, non quello della tabella di confronto da cui sei partito.

Self-hosted e open source

Se il tuo requisito è un accorciatore interno senza fatturazione e con un solo tenant, Shlink è l'opzione più solida: licenza MIT, PHP, autenticamente API-first, con un ecosistema di client maturo. I suoi presupposti si vedono quando provi a servire altre persone. Gli slug sono unici a livello dell'intera istanza invece di avere un ambito per dominio, i ruoli delle chiavi API non si avvicinano a un vero isolamento tra tenant e la generazione dei QR è stata rimossa nella versione 5. Kutt supporta il ribranding tramite una cartella di personalizzazione ma ha rallentato parecchio, con 16 commit in tutto il 2026 e senza team, webhook o multi-tenancy. YOURLS, per come è progettato, è un solo amministratore e un solo dominio.

LinkProfit

Il nostro progetto punta al secondo tipo di acquirente descritto all'inizio. Le chiavi si emettono per area di lavoro o per partner, portano ambiti espliciti, vengono mostrate una volta sola e conservate come hash SHA-256. Il limite predefinito è di 600 richieste al minuto per una chiave di area di lavoro e 1.200 per una chiave partner, applicato con una finestra scorrevole, con X-RateLimit-Limit, X-RateLimit-Remaining e X-RateLimit-Reset su ogni risposta e Retry-After su un 429. La creazione in blocco accetta fino a 100 link per chiamata. Le analytics sono di prima classe e non solo roba da dashboard: riepilogo, serie storiche, scomposizioni per dimensione ed esportazione CSV in streaming con un tetto di 100.000 righe. I webhook sono firmati e ripetuti cinque volte nell'arco di circa dodici ore. La specifica è generata dagli stessi schemi che validano le richieste, quindi la documentazione non può divergere dall'implementazione.

L'accesso all'API parte dal piano Growth, che è anche il livello che sblocca un dominio personalizzato per la dashboard; la griglia completa è sulla pagina dei prezzi. Il limite che dichiariamo apertamente nella versione 1: l'API viene servita da un hostname condiviso, quindi i partner white label la documentano ai propri clienti come API propria, senza però che viva sul loro dominio. È una voce di roadmap, non una cosa nascosta.

Lavorare con l'API di LinkProfit

curl -X POST https://api.linkprofit.com/v1/links \
  -H "Authorization: Bearer lp_live_xxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com/spring-collection",
    "slug": "spring",
    "domain_id": "dom_7Kq2f9",
    "expires_at": "2026-10-01T00:00:00Z"
  }'

Raggruppare le scritture

L'endpoint in blocco accetta fino a 100 link per chiamata e restituisce un risultato per ogni elemento, così un errore parziale identifica la voce colpevole invece di far respingere l'intero lotto.

const response = await fetch('https://api.linkprofit.com/v1/links/bulk', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.LINKPROFIT_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    links: batch.map((row) => ({ url: row.destination, slug: row.code, domain_id: domainId })),
  }),
});

if (response.status === 429) {
  const waitSeconds = Number(response.headers.get('retry-after') ?? '1');
  await new Promise((resolve) => setTimeout(resolve, waitSeconds * 1000));
}

Rileggere le analytics

Le scomposizioni accettano un parametro di dimensione, il che mantiene la superficie piccola e prevedibile invece di aggiungere un endpoint per ogni grafico.

curl -G https://api.linkprofit.com/v1/analytics/breakdown \
  -H "Authorization: Bearer lp_live_xxxxxxxxxxxxxxxx" \
  -d dimension=city \
  -d date_from=2026-07-01 \
  -d date_to=2026-07-31

Le dimensioni disponibili coprono paese, città, dispositivo, browser, sistema operativo, referrer e i tre principali parametri di campagna: abbastanza per riprodurre le cifre della dashboard dentro la tua reportistica.

Verificare un webhook

Gli eventi portano X-LinkProfit-Signature nella forma t=timestamp,v1=hex. Il payload firmato è la marca temporale, un punto e il corpo grezzo della richiesta, quindi la verifica deve avvenire prima di qualsiasi parsing JSON che possa riserializzarlo.

import { createHmac, timingSafeEqual } from 'node:crypto';

export function isValidSignature(rawBody, header, secret) {
  const fields = new Map(header.split(',').map((pair) => pair.split('=')));
  const timestamp = Number(fields.get('t'));
  // Reject anything outside a five minute window to limit replay.
  if (!Number.isFinite(timestamp) || Math.abs(Date.now() / 1000 - timestamp) > 300) return false;

  const expected = createHmac('sha256', secret).update(`${timestamp}.${rawBody}`).digest('hex');
  const received = Buffer.from(fields.get('v1') ?? '', 'hex');
  const computed = Buffer.from(expected, 'hex');
  return received.length === computed.length && timingSafeEqual(received, computed);
}

Le consegne fallite vengono ripetute dopo un minuto, cinque minuti, trenta minuti, due ore e dodici ore. Dopo l'ultimo tentativo l'endpoint viene marcato come guasto e al proprietario dell'account arriva un'email, così un handler rotto si manifesta come una notifica e non come dati mancanti scoperti un mese più tardi.

Valutare un'API in un pomeriggio

  1. Crea una chiave sul piano più economico che includa l'accesso all'API e annota se quel piano è uno che compreresti comunque.
  2. Crea, leggi, aggiorna e cancella un link, e controlla che le risposte portino le intestazioni del limite di frequenza.
  3. Supera il limite di proposito e verifica di ricevere un 429 con un'indicazione su quando riprovare, e non un errore generico.
  4. Invia una richiesta in blocco che contenga una URL non valida ed esamina come viene riportato l'errore parziale.
  5. Estrai una scomposizione per città del mese scorso e confronta i totali con la dashboard.
  6. Registra un webhook verso un endpoint che cattura le richieste, fai scattare un evento, verifica la firma, poi metti l'endpoint offline e osserva la sequenza dei tentativi ripetuti.
  7. Richiedi il documento OpenAPI e genera un client a partire da esso.
  8. Leggi la politica di versionamento e il changelog degli ultimi dodici mesi.

I passaggi tre, quattro e sei sono quelli che quasi tutte le valutazioni saltano, e sono proprio quelli che predicono come si comporterà l'integrazione alle due di notte.

La categoria ha una vera implementazione di riferimento in Dub, una vera opzione per il volume in Short.io e una lunga coda di prodotti in cui l'API è una leva di upsell e non un obiettivo di progetto. Il nostro approccio — chiavi con ambito, limiti dichiarati con intestazioni oneste, analytics e domini come risorse di prima classe e una specifica generata dagli schemi di validazione — è documentato nella pagina funzioni dell'API, con avvio rapido, paginazione, codici di errore e guide ai webhook nella documentazione.

Le domande che ci fanno

Quale accorciatore di link dichiara il limite di frequenza più alto?

Short.io dichiara la cifra più alta della categoria mainstream: 50 richieste al secondo su ogni piano, gratuito compreso, con capacità aggiuntiva venduta a blocchi di 50 richieste al secondo per 50 USD al mese, ad agosto 2026. Le cifre di facciata però non sono confrontabili tra loro, perché ogni fornitore conta su finestre diverse. Un tetto al secondo respinge un picco che una finestra scorrevole al minuto assorbirebbe senza problemi, quindi confronta il limite con la forma reale del tuo traffico e non con il numero di un altro fornitore.

Mi serve davvero un'API o basta un'importazione CSV?

Per una migrazione una tantum il CSV va benissimo. L'API serve quando a creare i link non è una persona seduta davanti a una dashboard: uno strumento di campagne che genera un link per ogni destinatario, un prodotto che accorcia URL per conto dei propri utenti, uno scheduler che pubblica post. Il segnale è un volume che cresce con i tuoi clienti e non con il tuo team di marketing, insieme a qualunque esigenza di riportare i dati sui clic dentro la tua reportistica.

Perché alcuni fornitori mettono l'API dietro il piano più caro?

Perché l'accesso all'API è correlato al volume e all'uso da parte delle agenzie, quindi è una leva di upsell efficace. Replug, ad agosto 2026, offre la propria API solo sul piano Agency a 99 USD al mese, 79 USD con fatturazione annuale. La conseguenza pratica per uno sviluppatore è che valutare costa caro: non puoi provare l'integrazione su un livello economico prima di impegnarti, ed è un motivo legittimo per mettere in lista i fornitori la cui API è disponibile già sui piani di ingresso.

Come gestisco i tentativi ripetuti dei webhook senza creare duplicati?

Parti dal presupposto di una consegna at-least-once e rendi idempotente il tuo handler. Memorizza l'identificatore dell'evento contenuto nel payload e, quando ne arriva uno, controlla se l'hai già elaborato prima di fare qualsiasi lavoro. Verifica la firma sul corpo grezzo della richiesta prima di interpretarlo, scarta gli eventi la cui marca temporale esce da una tolleranza di pochi minuti e rispondi in fretta con un 2xx, mettendo in coda il lavoro lento invece di svolgerlo sul posto: dal lato di chi invia, un handler lento è indistinguibile da uno guasto.

Un accorciatore open source è una vera alternativa a un'API commerciale?

Per uno strumento interno a singolo tenant sì. Shlink è l'opzione più solida, con licenza MIT e un'impostazione autenticamente API-first. I limiti emergono quando servi altre persone: gli slug sono unici a livello dell'intera istanza invece che per dominio, i ruoli delle chiavi API sono ben lontani da un vero isolamento multi-tenant, la generazione dei QR è stata rimossa nella versione 5, non esiste alcuna fatturazione e la manutenzione poggia su un solo manutentore. Kutt e YOURLS sono ancora più distanti da un uso multi-tenant.

Che cosa mi dice di un fornitore il versionamento della sua API?

Più di quasi ogni elenco di funzioni. Un fornitore che congela una versione e rilascia le modifiche non retrocompatibili solo sotto un nuovo percorso ti sta dicendo che la tua integrazione ha una durata definita. Un fornitore con un'API senza versione e un changelog pieno di campi rinominati ti sta dicendo che la manutenzione è a carico tuo. Chiedi qual è la politica di deprecazione, per quanto tempo le vecchie versioni restano servite dopo l'uscita della successiva e se esiste una specifica leggibile da una macchina da cui generare i client.