Ottenere Access Tokens utilizzando il flusso OAuth a 3 vie
- L’endpoint GET oauth/authorize viene utilizzato al posto di GET oauth/authenticate.
- All’utente verrà sempre richiesto di autorizzare l’accesso alla tua applicazione, anche se l’accesso era stato precedentemente concesso.

Panoramica del processo
- Crea una richiesta affinché un’applicazione consumer ottenga un request token.
- Fa autenticare l’utente e invia all’applicazione consumer un request token.
- Converte il request token in un access token utente utilizzabile.
- App Key === API Key === Consumer API Key === Consumer Key === Customer Key ===
oauth_consumer_key
- App Key Secret === API Secret Key === Consumer Secret === Consumer Key === Customer Key ===
oauth_consumer_secret
- Callback URL ===
oauth_callback
- Request Token ===
oauth_token
- Request Token Secret ===
oauth_token_secret
- oauth_verifier
- Access token === Token ===
oauth_token
risultante - Access token secret === Token Secret ===
oauth_token_secret
risultante
Passaggi della procedura
oauth_callback="https%3A%2F%2FyourCallbackUrl.com"
oauth_consumer_key="cChZNFj6T5R0TigYB9yd1w"
La tua App dovrebbe esaminare lo stato HTTP della risposta. Qualsiasi valore diverso da 200 indica un errore. Il corpo della risposta conterrà i parametri oauth_token
, oauth_token_secret
e oauth_callback_confirmed
. La tua App dovrebbe verificare che oauth_callback_confirmed
sia true e archiviare gli altri due valori per i passaggi successivi.
La risposta include
oauth_token=NPcudxy0yU5T3tBzho7iCotZ3cnetKwcTIRlX0iwRl0
oauth_token_secret=veNRnAWe6inFuo8o2u8SLLZLjolYDmDP7SzL0YfYI
oauth_callback_confirmed=true
Passaggio 2: GET oauth/authorize
Fai autenticare l’utente e invia all’app consumer un request token.
URL di esempio a cui reindirizzare l’utente:
https://api.x.com/oauth/authorize?oauth_token=NPcudxy0yU5T3tBzho7iCotZ3cnetKwcTIRlX0iwRl0
Dopo un’autenticazione riuscita, il tuo callback_url
riceverà una richiesta contenente i parametri oauth_token
e oauth_verifier
. La tua applicazione dovrebbe verificare che il token corrisponda al request token ricevuto nel passaggio 1.
Richiesta dal redirect del client:
https://yourCallbackUrl.com?oauth_token=NPcudxy0yU5T3tBzho7iCotZ3cnetKwcTIRlX0iwRl0&oauth_verifier=uw7NjWHT6OJ1MpJOXsHfNxoAhPKpgI8BlYDhxEjIBY
Passaggio 3: POST oauth/access_token
Converti il request token in un access token utilizzabile.
Per trasformare il request token in un access token utilizzabile, la tua applicazione deve effettuare una richiesta all’endpoint POST oauth/access_token, contenente il valore oauth_verifier
ottenuto nel passaggio 2. Il request token viene anche passato nella parte oauth_token
dell’header, ma questo verrà aggiunto dal processo di firma.
La richiesta include:
POST /oauth/access_token
oauth_consumer_key=cChZNFj6T5R0TigYB9yd1w
oauth_token=NPcudxy0yU5T3tBzho7iCotZ3cnetKwcTIRlX0iwRl0
oauth_verifier=uw7NjWHT6OJ1MpJOXsHfNxoAhPKpgI8BlYDhxEjIBY
Una risposta positiva contiene i parametri oauth_token
, oauth_token_secret
. Il token e il token secret devono essere archiviati e utilizzati per future richieste autenticate alla X API. Per determinare l’identità dell’utente, usa GET account/verify_credentials.
La risposta include:
oauth_token=7588892-kagSNqWge8gB1WwE3plnFsJHAZVfxWD7Vb57p0b4
oauth_token_secret=PbKfYqSryyeKDWz4ebtY3o5ogNLG11WJuZBc9fQrQo
Utilizzo di queste credenziali per le richieste OAuth 1.0a (applicazione-utente)
Ora che hai ottenuto gli access token utente, puoi usarli per accedere ad alcune API, ad esempio POST statuses/update, per creare Tweet per conto degli utenti.
La richiesta include:
POST statuses/update.json
oauth_consumer_key=cChZNFj6T5R0TigYB9yd1w
oauth_token=7588892-kagSNqWge8gB1WwE3plnFsJHAZVfxWD7Vb57p0b4
Esempio d’uso


