Saltar al contenido principal

Introducción al endpoint de búsqueda de Spaces

Esta Guía rápida le ayudará a realizar su primera solicitud al endpoint de búsqueda de Spaces con un conjunto de fields especificados usando Postman. Si desea ver código de muestra en diferentes lenguajes de programación, visite nuestro repositorio de GitHub con código de muestra de X API v2.
Requisitos previosPara completar esta guía, necesitará contar con un conjunto de keys and tokens para autenticar su solicitud. Puede generar estas keys and tokens siguiendo estos pasos:

Pasos para crear una solicitud de búsqueda de Spaces

Paso uno: Comience con una herramienta o biblioteca Hay varias herramientas, ejemplos de código y bibliotecas que puede usar para realizar una solicitud a este endpoint, pero aquí usaremos la herramienta Postman para simplificar el proceso. Para cargar la colección de Postman de X API v2 en su entorno, haga clic en el siguiente botón: Una vez que tenga la colección de X API v2 cargada en Postman, navegue a la carpeta Spaces y busque la solicitud “Search Spaces”.   Paso dos: Autentique su solicitud Para realizar correctamente una solicitud a la X API, debe verificar que tenga permiso. Para ello, este endpoint requiere que autentique su solicitud con OAuth 2.0 App-Only o Código de autorización de OAuth 2.0 con PKCE. Para simplificar, utilizaremos OAuth 2.0 App-Only con esta solicitud, pero deberá usar uno de los otros métodos de autenticación si desea solicitar metrics privadas o Spaces de un usuario privado.  Para utilizar OAuth 2.0 App-Only, debe agregar sus keys and tokens, específicamente el App Access Token (también conocido como el App-only Bearer Token) a Postman. Puede hacerlo seleccionando el entorno llamado “X API v2” en la esquina superior derecha de Postman y agregando sus keys and tokens en los campos “initial value” y “current value” (haciendo clic en el ícono de ojo junto al menú desplegable de entornos). Estas variables se incorporarán automáticamente en la pestaña de autorización de la solicitud si lo ha hecho correctamente.   Paso tres: cree una query de búsqueda Este endpoint acepta texto como query de búsqueda. A diferencia de otros endpoints de búsqueda, no acepta operadores, agrupaciones ni operadores lógicos. Para este ejercicio, usaremos “hello” como una query simple. En Postman, navegue a la pestaña “Params” e ingrese este user ID en la columna “Value” del parámetro id.
KeyValue
queryhello
Paso cuatro: Identifique y especifique qué fields desea recuperar Si hace clic en el botón “Send” después del paso tres, recibirá el ID de los Spaces y su estado, que son los únicos fields del objeto Space devueltos de forma predeterminada en su respuesta. Si desea recibir fields adicionales, deberá especificarlos en su solicitud con los parámetros space.fields o expansions. Para este ejercicio, solicitaremos tres conjuntos adicionales de fields de diferentes objetos:
  • El field adicional title en el objeto principal de Spaces.
  • El objeto de usuario completo del creator ID especificado
  • El field adicional user.created_at en el objeto de usuario asociado.
En Postman, navegue a la pestaña “Params” y agregue el siguiente par clave:valor a la tabla “Query Params”:
KeyValueReturned fields
space.fieldstitlecreator_id
expansionscreator_idincludes.users.id, includes.users.name, includes.users.username
user.fieldscreated_atincludes.users.created_at
Ahora debería ver la siguiente URL junto al botón “Send”: https://api.x.com/2/spaces/search?query=hello&space.fields=creator_id&expansions=creator_id&user.fields=created_at Paso cinco: Realice su solicitud y revise su respuesta Una vez que tenga todo configurado, presione el botón “Send” y recibirá la siguiente respuesta:
   "data": [
    {
        "creator_id": "2244994945",
        "id": "1zqKVXPQhvZJB",
        "title": "Hola mundo 👋",
        "state": "Running"
   },
   "includes": {
       "users": [
           {
               "created_at": "2013-12-14T04:35:55.000Z",
               "name": "Twitter Dev",
               "id": "2244994945",
               "username": "TwitterDev"
           }
       ]
   }
]
}
I