Vai al contenuto principale

Introduzione all’endpoint di ricerca Spaces

Questa guida di Avvio rapido ti aiuterà a inviare la tua prima richiesta all’endpoint di ricerca Spaces, specificando un set di fields, utilizzando Postman. Se desideri vedere esempi di codice in diversi linguaggi di programmazione, visita il nostro repository GitHub X API v2 Sample code.
PrerequisitiPer completare questa guida, avrai bisogno di un set di chiavi e token per autenticare la tua richiesta. Puoi generarli seguendo questi passaggi:

Passaggi per creare una richiesta di ricerca di Spaces

Primo passaggio: inizia con uno strumento o una libreria Esistono diversi strumenti, esempi di codice e librerie che puoi usare per effettuare una richiesta a questo endpoint, ma qui useremo Postman per semplificare il processo. Per caricare nel tuo ambiente la raccolta Postman di X API v2, fai clic sul seguente pulsante: Una volta caricata la raccolta X API v2 in Postman, vai alla cartella Spaces e trova la richiesta “Search Spaces”.   Secondo passaggio: autentica la richiesta Per effettuare correttamente una richiesta alla X API, devi verificare di avere l’autorizzazione. A tal fine, questo endpoint richiede di autenticare la richiesta con i metodi di autenticazione OAuth 2.0 App-Only o OAuth 2.0 Authorization Code con PKCE. Per semplicità, utilizzeremo OAuth 2.0 App-Only con questa richiesta, ma dovrai usare uno degli altri metodi di autenticazione se desideri richiedere metriche private o Spaces da un utente con account privato.  Per utilizzare OAuth 2.0 App-Only, devi aggiungere le tue chiavi e token, in particolare l’App Access Token (noto anche come App-only Bearer Token) a Postman. Puoi farlo selezionando l’ambiente denominato “X API v2” nell’angolo in alto a destra di Postman e aggiungendo le tue chiavi e token nei campi “initial value” e “current value” (facendo clic sull’icona a forma di occhio accanto al menu a discesa dell’ambiente). Queste variabili verranno automaticamente inserite nella scheda di autorizzazione della richiesta se hai eseguito correttamente questa operazione.   Terzo passaggio: crea una query di ricerca Questo endpoint accetta testo come query di ricerca. A differenza di altri endpoint di ricerca, non accetta operatori, raggruppamenti né operatori logici. Per questo esercizio, useremo “hello” come semplice query. In Postman, vai alla scheda “Params” e inserisci questo ID utente nella colonna “Value” del parametro id.
KeyValue
queryhello
Quarto passaggio: identifica e specifica i campi che desideri recuperare Se fai clic sul pulsante “Send” dopo il terzo passaggio, riceverai l’ID degli Spaces e il relativo stato, che sono gli unici campi dell’oggetto Space restituiti per impostazione predefinita nella risposta. Se desideri ricevere campi aggiuntivi, dovrai specificarli nella richiesta con i parametri space.fields o expansions. Per questo esercizio, richiederemo tre insiemi aggiuntivi di campi da oggetti diversi:
  • Il campo aggiuntivo title nell’oggetto Spaces principale.
  • L’oggetto utente completo del creator ID specificato
  • Il campo aggiuntivo user.created_at nell’oggetto utente associato.
In Postman, vai alla scheda “Params” e aggiungi la seguente coppia chiave:valore alla tabella “Query Params”:
KeyValueReturned fields
space.fieldstitlecreator_id
expansionscreator_idincludes.users.id, includes.users.name, includes.users.username
user.fieldscreated_atincludes.users.created_at
Dovresti ora vedere il seguente URL accanto al pulsante “Send”: https://api.x.com/2/spaces/search?query=hello&space.fields=creator_id&expansions=creator_id&user.fields=created_at Quinto passaggio: invia la richiesta e verifica la risposta Una volta configurato tutto, fai clic sul pulsante “Send” e riceverai la seguente risposta:
   "data": [
    {
        "creator_id": "2244994945",
        "id": "1zqKVXPQhvZJB",
        "title": "Ciao mondo 👋",
        "state": "Running"
   },
   "includes": {
       "users": [
           {
               "created_at": "2013-12-14T04:35:55.000Z",
               "name": "Twitter Dev",
               "id": "2244994945",
               "username": "TwitterDev"
           }
       ]
   }
]
}
I