Los clientes de la API deben autenticarse cuando realicen solicitudes de API a la API empresarial. La autenticación permite a la API empresarial verificar la identidad del cliente y asociar esa identidad con un cliente específico de edX para Negocios.
Para utilizar la API empresarial, debes generar un conjunto de credenciales de API, que consisten en un identificador de cliente y una cadena secreta de cliente. Para obtener tus credenciales de API, realiza los siguientes pasos.
- Regístrate en http://www.edx.org creando una nueva cuenta de usuario para tu empresa. El nombre que introduces en el campo Public Username debe coincidir con el nombre de tu empresa. Por ejemplo, si tu empresa recibe el nombre de Ejemplo, Inc., introduce un nombre como Ejemplo o EjemploInc en el campo Public Username.
- Después de crear una cuenta, debes ir a http://courses.edx.org/api-admin y rellenar el formulario de solicitud de acceso a la API. El nombre que introduzcas en el campo Company Name debe ser idéntico al nombre de usuario público que utilizaste para registrarte en edx.org. Por ejemplo, si tu nombre de usuario público es EjemploInc, el nombre de la empresa también debe ser EjemploInc.
- Después de enviar el formulario de solicitud de acceso a la API, edX creará un catálogo de cursos para ti y te enviará un correo electrónico con tu identificador de cliente y la cadena secreta de cliente. A continuación, puedes utilizar el identificador de cliente y la cadena secreta para acceder a tu catálogo de cursos mediante la API de edX empresarial.
Cuando un cliente se autentica con la API de edX empresarial, el cliente completa el siguiente proceso.
- El cliente presenta un identificador de cliente y una cadena secreta al recurso de autenticación /oauth2/v1/access_token y recibe un token de acceso.
- El cliente incluye el token de acceso cuando el cliente realiza otra solicitud de API.
Un token de acceso es una cadena de texto que incluye información codificada sobre el cliente, el usuario y el período de tiempo en el que el token es válido. Los tokens de acceso caducan después de un período de tiempo que se especifica cuando los solicitas. Después de que un token de acceso caduca, debes obtener un nuevo token del recurso de autenticación /oauth2/v1/access_token.
Obtener un token de acceso
Para obtener un token de acceso, envía una solicitud POST al recurso de autenticación /oauth2/v1/access_token. Debes incluir una cadena en el cuerpo del mensaje de tu solicitud POST que contenga tu identificador de cliente, palabra secreta del cliente, tipo de concesión y tipo de token, como se muestra en el siguiente ejemplo, sustituyendo {client_id} y {client_secret} por tu ID de cliente y secreto reales.
curl -X POST /oauth2/v1/access_token/\
-d "grant_type=client_credentials&client_id={client_id}
&client_secret={client_secret}&token_type=jwt" \
https://api.edx.org/oauth2/v1/access_token
La respuesta que recibes contiene el valor del token de acceso que puedes utilizar para enviar más solicitudes a la API de edX empresarial. Por ejemplo:
{
“access_token”:
“g1Bb0usqwe345ty…”,
“token_type”: “JWT”,
“expires_in”: “36000”,
“scope”: “read write profile email”
}