Introduzione
Per quanto tempo restano valide le mie credenziali?
Per impostazione predefinita, l’access token che crei tramite l’Authorization Code Flow con PKCE resta valido solo per due ore, a meno che tu non abbia utilizzato lo scopeoffline.access
.
Token di refresh
offline.access
, verrà emesso un token di refresh OAuth 2.0. Con questo token di refresh si ottiene un access token. Se questo scope non viene fornito, non genereremo un token di refresh.
Un esempio della richiesta che effettueresti per usare un token di refresh e ottenere un nuovo access token è il seguente:
Impostazioni dell’App
Puoi impostare l’autenticazione della tua App su OAuth 1.0a oppure OAuth 2.0. Puoi anche abilitare l’App ad accedere a entrambe: OAuth 1.0a e OAuth 2.0. OAuth 2.0 può essere utilizzato solo con la X API v2. Se selezioni OAuth 2.0, vedrai un Client ID nella sezione Keys and Tokens della tua App.Client confidenziali
Ambiti
Ambito | Descrizione |
tweet.read | Tutti i Tweet che puoi visualizzare, inclusi quelli di account protetti. |
tweet.write | Pubblica Tweet e Retweet per tuo conto. |
tweet.moderate.write | Nascondi e ripristina le risposte ai tuoi Tweet. |
users.email | Indirizzo email da un utente autenticato. |
users.read | Qualsiasi account che puoi visualizzare, inclusi gli account protetti. |
follows.read | Persone che ti seguono e persone che segui. |
follows.write | Segui e smetti di seguire persone per tuo conto. |
offline.access | Resta connesso al tuo account finché non revochi l’accesso. |
space.read | Tutti gli Spaces che puoi visualizzare. |
mute.read | Account che hai silenziato. |
mute.write | Silenzia e riattiva account per tuo conto. |
like.read | Tweet a cui hai messo like e like che puoi visualizzare. |
like.write | Metti e rimuovi like ai Tweet per tuo conto. |
list.read | Lists, membri delle Lists e follower delle Lists che hai creato o di cui fai parte, incluse quelle private. |
list.write | Crea e gestisci Lists per tuo conto. |
block.read | Account che hai bloccato. |
block.write | Blocca e sblocca account per tuo conto. |
bookmark.read | Recupera i Tweet aggiunti ai Segnalibri da un utente autenticato. |
bookmark.write | Aggiungi ai Segnalibri e rimuovi Segnalibri dai Tweet. |
media.write | Carica contenuti multimediali. |
Limiti di velocità
Tipi di grant
Flusso OAuth 2.0
Glossary
Term | Description |
Tipi di grant | Il framework OAuth definisce diversi tipi di grant per differenti casi d’uso e un meccanismo per crearne di nuovi. Esempi includono authorization code, client credentials, device code e refresh token. |
Client confidenziale | I client sono applicazioni che possono autenticarsi in modo sicuro con il server di autorizzazione, ad esempio mantenendo al sicuro il proprio client secret registrato. |
Client pubblico | I client non possono utilizzare client secret registrati, ad esempio le applicazioni eseguite in un browser o su un dispositivo mobile. |
Authorization code flow | Utilizzato sia dai client confidenziali sia da quelli pubblici per scambiare un authorization code con un access token. |
PKCE | Un’estensione dell’authorization code flow per prevenire diversi attacchi e consentire di eseguire in modo sicuro lo scambio OAuth dai client pubblici. |
Client ID | È reperibile nella sezione chiavi e token del developer portal sotto l’intestazione “Client ID”. Se non lo vedi, contatta direttamente il nostro team. Il Client ID è necessario per generare l’URL di autorizzazione. |
Redirect URI | Il tuo callback URL. È necessaria la validazione di corrispondenza esatta. |
Authorization code | Consente a un’applicazione di chiamare le API per conto degli utenti. Conosciuto come auth_code. L’auth_code ha una durata di 30 secondi dal momento in cui il proprietario dell’App riceve un auth_code approvato dall’utente. Devi scambiarlo con un access token entro 30 secondi, altrimenti l’auth_code scadrà. |
Access token | Gli access token sono i token che le applicazioni utilizzano per effettuare richieste API per conto di un utente. |
Refresh token | Consente a un’applicazione di ottenere un nuovo access token senza richiedere l’intervento dell’utente, tramite il refresh token flow. |
Client Secret | Se hai selezionato un tipo di App che è un client confidenziale, ti verrà fornito un “Client Secret” sotto “Client ID” nella sezione chiavi e token della tua App. |
Parametri
Parametro | Descrizione |
response_type | Devi specificare che si tratta di un code usando la parola “code”. |
client_id | Reperibile nel developer portal sotto l’intestazione “Client ID”. |
redirect_uri | Il tuo URL di callback. Questo valore deve corrispondere a uno degli URL di callback definiti nelle impostazioni della tua App. Per OAuth 2.0 è richiesta l’exact match validation per l’URL di callback. |
state | Una stringa casuale che fornisci per proteggerti da attacchi CSRF. La lunghezza può essere fino a 500 caratteri. |
code_challenge | Un parametro PKCE, un segreto casuale per ogni richiesta. |
code_challenge_method | Specifica il metodo utilizzato per effettuare la richiesta (S256 oppure plain). |