Vai al contenuto principale
Questa pagina contiene informazioni su diversi strumenti e concetti chiave che è importante conoscere quando integri gli endpoint di ricerca degli users nel tuo sistema. Abbiamo suddiviso la pagina in alcune sezioni:

Strumenti utili

Prima di addentrarci in alcuni concetti chiave che vi aiuteranno a integrare questo endpoint, vi consigliamo di familiarizzare con:

Postman

Postman è un ottimo strumento che puoi usare per testare un endpoint. Ogni richiesta Postman include tutti i parametri di percorso e del body, per aiutarti a capire rapidamente cosa è a tua disposizione. Per saperne di più sulle nostre collection di Postman, visita la pagina “Using Postman”

Esempi di codice

Se desideri iniziare a utilizzare questo endpoint con codice nel tuo linguaggio di programmazione preferito, mettiamo a disposizione diversi esempi che puoi usare come punto di partenza sulla nostra pagina GitHub.

Librerie di terze parti

Sfrutta una delle librerie di terze parti della nostra community per iniziare. Puoi trovare una libreria compatibile con gli endpoint v2 cercando il tag di versione corretto.

Concetti chiave

Autenticazione

Tutti gli endpoint di X API v2 richiedono che le richieste siano autenticate con un set di credenziali, note anche come chiavi e token. Puoi utilizzare Contesto utente OAuth 1.0a, App only o OAuth 2.0 Authorization Code con PKCE per autenticare le richieste a questi endpoint. Contesto utente OAuth 1.0a richiede di utilizzare le tue API Key, gli Access Tokens dell’utente e alcuni altri parametri per creare un’intestazione di autorizzazione, che poi allegherai alla richiesta. Gli Access Tokens devono essere associati all’utente per conto del quale stai effettuando la richiesta. Se desideri generare un set di Access Tokens per un altro utente, quest’ultimo deve autorizzare la tua App utilizzando il flusso OAuth a 3 vie. Tieni presente che OAuth 1.0a può essere complesso da utilizzare. Se non hai familiarità con questo metodo di autenticazione, ti consigliamo di usare una libreria, uno strumento come Postman o OAuth 2.0 per autenticare le richieste. Se desideri richiedere un Post o metriche private da questi endpoint, dovrai utilizzare Contesto utente OAuth 1.0a o OAuth 2.0 Authorization Code con PKCE, che garantiranno che tu disponga delle autorizzazioni appropriate dall’utente proprietario di quel contenuto. App only richiede semplicemente di includere un App only Access Token nella richiesta. Puoi generare un App only Access Token direttamente all’interno di un’App sviluppatore oppure generarne uno utilizzando l’endpoint POST oauth2/token. OAuth 2.0 Authorization Code con PKCE consente un maggiore controllo sull’ambito di un’applicazione e flussi di autorizzazione su più dispositivi. OAuth 2.0 ti consente di scegliere scope specifici e granulari che ti conferiscono permessi specifici per conto di un utente. Per abilitare OAuth 2.0 nella tua App, devi abilitarlo nelle impostazioni di autenticazione della tua App, nella sezione App settings del developer portal. Nota bene Se stai richiedendo i seguenti fields, è richiesto Contesto utente OAuth 1.0a o OAuth 2.0 Authorization Code:
  • tweet.fields.non_public_metrics
  • tweet.fields.promoted_metrics
  • tweet.fields.organic_metrics

Developer portal, Project e App sviluppatore

Per ottenere un set di credenziali di autenticazione compatibili con gli endpoint della X API v2, devi registrarti per un account sviluppatore, configurare un Project all’interno di tale account e creare un’App sviluppatore all’interno di quel Project. Potrai quindi trovare le tue chiavi e token all’interno della tua App sviluppatore.   

Limiti di velocità

Ogni giorno, molte migliaia di sviluppatori inviano richieste alla X API. Per gestire l’enorme volume di queste richieste, su ciascun endpoint vengono imposti limiti di velocità che riducono il numero di richieste che puoi effettuare per conto della tua App o per conto di un utente autenticato. Gli endpoint per la ricerca degli utenti sono soggetti a limiti di velocità sia a livello di App sia a livello di utente. Tuttavia, l’endpoint per la ricerca dell’utente autenticato è soggetto a limiti di velocità solo a livello di utente. Il limite di velocità a livello di App significa che tu, sviluppatore, puoi effettuare solo un certo numero di richieste a questo endpoint in un determinato periodo di tempo da qualsiasi App (identificata dalle chiavi e dai token che stai utilizzando). Il limite di velocità a livello di utente significa che l’utente autenticato per conto del quale stai effettuando la richiesta può eseguire l’operazione solo un certo numero di volte, indipendentemente dall’App sviluppatore. La tabella seguente mostra i limiti di velocità per ciascun endpoint.
Endpointmetodo HTTPLimite di velocità / Livello
/2/usersGET900 richieste per 15 minuti / App e Utente
/2/users/:idGET900 richieste per 15 minuti / App e Utente
/2/users/byGET900 richieste per 15 minuti / App e Utente
/2/users/by/username/:usernameGET900 richieste per 15 minuti / App e Utente
/2/users/meGET75 richieste per 15 minuti / Utente

Campi ed expansions

La X API v2 consente di selezionare con precisione quali data si desidera ottenere dall’API utilizzando un set di strumenti chiamati fields ed expansions. Il parametro expansions consente di includere nel dettaglio gli oggetti referenziati nel payload. Ad esempio, questo endpoint consente di utilizzare l’expansion pinned_tweet_id. Il parametro fields consente di scegliere esattamente quali fields dei diversi oggetti di data si desidera ricevere. Questi endpoint restituiscono principalmente oggetti utente. Per impostazione predefinita, l’oggetto utente restituisce i campi id, name e username. Per ricevere campi aggiuntivi come user.created_at o user.location, è necessario richiederli esplicitamente tramite un parametro fields. Alcuni campi importanti da considerare per l’integrazione sono i dati dei sondaggi dei Post, le metriche, le annotations e i campi conversation ID. Abbiamo aggiunto una guida su come usare fields ed expansions nel nostro dizionario dei dati di X API v2.

Casi limite

  • Il testo del Post viene troncato nei Retweet. Una soluzione temporanea consiste nell’espandere il Post di riferimento e recuperare il testo completo dall’espansione. Si tratta di un bug che correggeremo in futuro.
I