Flujo de autorización del usuario
Cada vez que se abre una integración instalada, SendPulse envía un código a la URL de inicio de sesión que hayas especificado al crear tu app. Para obtener claves para las llamadas a la API a través de tu app, debes enviar una solicitud con este código y las claves de la aplicación.
Una integración se abre y el flujo de autorización de usuario de la app se inicia en dos casos:
- Cuando un usuario instala tu app por primera vez y otorga permisos.
- Cuando un usuario abre la página de tu app en su cuenta de SendPulse haciendo clic en Ver junto a tu app.
Observa cómo se muestra el flujo de autorización del usuario:
Ejemplo de solicitud POST de SendPulse para enviar un código:
https://YOUR_INSTALL_URL/?code={code}lang=en |
Parámetros de solicitud de URL:
сode |
string | El código generado cuando el usuario abre tu app.
Este código es válido durante 1 minuto. |
lang |
string | El idioma de la cuenta SendPulse del usuario. |
Para obtener las claves de usuario de la app, envía una petición POST a:
https://api.sendpulse.com/market-service/oauth/authorize |
Parámetros de la solicitud:
app_id |
string | El ID de la app que aparece en tu cuenta de desarrollador después de añadir tu app.* |
secret |
string | La clave secreta que aparece en tu cuenta de desarrollador después de añadir tu app.* |
code |
string | El código que SendPulse envía a tu URL de inicio de sesión.
El código es válido durante 1 minuto. |
*Para encontrar las claves de tu app, dirígete a Directorio de apps > Creadas. Junto a tu aplicación, haz clic en los tres puntos y selecciona Editar. Copia tus claves en los campos ID de app y Clave secreta y guárdalas en tu sistema.
Ejemplo de solicitud:
{
"app_id": "9b0f2f98-d75f-4562-887e-2b79bc8a1eee",
"secret": "0d028163-9c84-40e4-8508-f4927badf735",
"code": "21efd6b100b2602cb2d75cb06c2bf37f"
}
Si tu solicitud tiene éxito, la integración recibirá las claves de usuario de tu app (client_id
y client_secret
) con las que podrás recibir token de usuario de tu app.
Ejemplo de respuesta si la solicitud es exitosa:
{
"result": true,
"data": {
"id": "9b0f56dd-4f4d-4792-ae20-23f99659b69e",
"user_id": 7043663,
"app_id": "9b0fdd98-d75f-4562-887e-2b79bc8a1eee",
"client_id": "b2bfd8a8441294fa0171c195ada8cf56",
"client_secret": "f7064fb0bbecd392d7b3ea2e2bd77758",
"created_at": "2024-01-10T15:50:20.000000Z",
"updated_at": "2024-01-10T15:50:20.000000Z"
}
}
Parámetros de respuesta:
id |
uuid | ID de cuenta SendPulse del usuario
Puedes utilizar este ID para añadir un usuario a tu app privada. |
client_id |
string | Clave de usuario de la app para acceder a la API.* |
client_secret |
string | Clave de usuario de la app para acceder a la API.* |
created_at |
datetime | Fecha y hora en que se creó la primera conexión. |
updated_at |
datetime | Fecha y hora en que se actualizó la última conexión. |
*Te recomendamos guardar los parámetros client_id
y client_secret
en tu sistema, para que tu app se ejecute en segundo plano. Las claves de usuario de la app siguen siendo las mismas cuando un usuario utiliza tu app. Puedes recopilar y actualizar otros parámetros para almacenar los datos del usuario, por ejemplo, por su ID.
Si tu solicitud no es exitosa, recibirás un error 422 Unprocessable Entity
.
Ejemplo de respuesta si la solicitud no es exitosa:
{
"result": false,
"data": null,
"error": "Сonnect not found!",
"code": 5
}
Si has recibido un error, comprueba los datos que has utilizado y vuelve a enviar la solicitud.
Última actualización: 30.07.2024
o