API de Misiones
Los ejemplos siguientes muestran el encabezado en formato de red
Authorization: P2S-SIGN-V1 API_KEY:TIMESTAMP:SIGNATURE. Para calcular la firma en su código, use el helper signedRequest en Autenticación.Cómo funciona
- Usted recibe una API Key con el alcance
missions:read(Admin > Integraciones > API Keys) - Su backend consulta el estado de las misiones de uno o varios colaboradores (por CPF o correo)
- SalesOS responde con las misiones de hoy por colaborador — contadores de progreso, la lista completa y la próxima misión activa
Las misiones avanzan por la actividad dentro de SalesOS: el motor escucha eventos (una visita agendada, una venta cerrada) e incrementa la misión correspondiente. Esta API es para leer ese estado — combínela con un enlace profundo al módulo de SalesOS para la acción en sí.
Autenticación
Todas las solicitudes requieren una API Key en el encabezadoAuthorization:
Entornos
- Producción
- Staging
URL base:
https://api.play2sell.comReferencia del endpoint
action: missions_status y missions_summary.
Cada colaborador se identifica por CPF (en cualquier formato — los dígitos se normalizan) o correo. Cuando se envían ambos, prevalece el CPF.
Acción: missions_status
Las misiones cuya ventana de período contiene el día de hoy, por colaborador. “Hoy” se calcula en la zona horaria de su empresa (devuelta entimezone / reference_date en la respuesta) — nunca en UTC.
Esquema de la solicitud
string
requerido
Debe ser
"missions_status"array
requerido
Lista de referencias de colaboradores (máximo 500 — 100 cuando
include_missions está activo)boolean
predeterminado:"false"
Devuelve la lista completa
missions[]. Desactivado por defecto: cada colaborador tiene varias misiones, así que un lote grande con la lista activa produce una respuesta de megabytes. progress y next_mission siempre llegan.string
CPF, en cualquier formato (
52998224725 o 529.982.247-25). Debe contener exactamente 11 dígitos.string
Correo — usado solo cuando
cpf está ausenteEjemplo
Campos de la respuesta
La recompensa se paga en cuotas, así que “conquistado” y “aún por conquistar” son números distintos. Una misión de 100 puntos con meta 5 acredita 20 en cada paso. Tras un paso, el colaborador conquistó 20 y aún tiene 80 por conquistar —
points_earned cuenta los 20, points_available cuenta los 80. Sumar los 100 completos en ambos lados contaría los mismos puntos dos veces.Acción: missions_summary
Todo lo que devuelvemissions_status, más los contadores de finalización de la semana y del mes. Útil para una franja de “su mes hasta ahora”.
Las misiones se cuentan en el período al que pertenecen (su propia ventana), no en la fecha en que fueron aprobadas — así que una misión aprobada con retraso sigue contando en la semana en que se ganó.
Ejemplo
missions_summary recorre un mes de registros por colaborador, por eso su límite de lote es 100 en lugar de 500.Modo self (sesión federada)
Cuando su app ya tiene un token de usuario federado de SalesOS, envíelo comoAuthorization: Bearer <jwt> y omita collaborators. La respuesta cubre solo al propio usuario del token.
Manejo de errores
Todos los errores siguen la misma estructura:400 — VALIDATION_ERROR
400 — VALIDATION_ERROR
Cuerpo inválido, lote por encima del límite, CPF sin 11 dígitos, o un elemento sin
cpf ni email. La lista details indica el index del elemento.400 — SELF_MODE_NO_COLLABORATORS
400 — SELF_MODE_NO_COLLABORATORS
Se envió una lista
collaborators junto con un token de usuario. Omítala, o use una API Key de socio.403 — FORBIDDEN
403 — FORBIDDEN
API Key válida, pero sin el alcance
missions:read.405 — METHOD_NOT_ALLOWED
405 — METHOD_NOT_ALLOWED
Solo se acepta
POST.429 — RATE_LIMITED
429 — RATE_LIMITED
Demasiadas solicitudes en esta hora. Espere
retry_after segundos y reintente.500 — SERVER_ERROR
500 — SERVER_ERROR
Error interno. Reintente con espera progresiva (2s, 4s, 8s).
Límites de uso
Seguridad
- Solo lectura: esta API nunca crea, avanza ni aprovisiona misiones
- Cada clave pertenece a una sola empresa — un CPF de otra empresa responde
found: false - Las solicitudes se firman con HMAC (P2S-SIGN-V1) y se registran para auditoría; los documentos nunca se escriben en los logs
Próximos pasos
API de Check-in
Lea la presencia en servicio para completar la misma pantalla de inicio
Autenticación
Aprenda a crear y gestionar API Keys

