Référence API
Demander un code configuré
Démarre un défi de vérification du compte avec un canal activé et enregistre expiration et livraison.
https://api.sparkglim.net/api/white-label/portal/reseller/otp/sendModèle d’accès
- Modèle d’accès
- Session SparkGlim et permissions de membre
- Portée requise
otp:send- Disponibilité documentée
- Implémenté dans le code
La disponibilité est vérifiée dans le code, pas garantie en production.
Utilisez le parcours de membre d’équipe Créateur. La revente ne donne jamais accès illimité à la base ou à l’administration.
En-têtes
| Nom | Type | Validation |
|---|---|---|
AuthorizationObligatoireSession Bearer SparkGlim existante ; appartenance et capacités attribuées autorisent chaque opération côté serveur. | string | Validation : Jeton Bearer d’une session authentifiée existante. |
Requête
| Nom | Type | Validation |
|---|---|---|
channelObligatoireCanal de livraison ou intégration pris en charge par cette opération et la configuration activée. | enum | Validation : sms | email | whatsapp. |
recipientObligatoireContact destinataire de la notification autorisée ou du défi de vérification. | string | Validation : 3–255. |
purposeObligatoireObjet de vérification pris en charge, lié au compte et au défi OTP. | enum | Validation : login | signup | withdrawal_approval | payment_method_verification | campaign_approval. |
memberIdFacultatifRelation ou révision du compte existante ; propriété et capacités sont vérifiées côté serveur. | string|null | Validation : UUID. |
metadataFacultatifMétadonnées JSON supplémentaires acceptées ; elles ne remplacent jamais autorisation, prix ou propriété. | object | Validation : Objet JSON. |
Requête
Les exemples décrivent le contrat et ne sont pas exécutés. Utilisez des données de test autorisées ; ne saisissez jamais de secret réel ici.
POST /api/white-label/portal/reseller/otp/send HTTP/1.1
Host: api.sparkglim.net
Authorization: Bearer <EXISTING_SESSION_TOKEN>
Content-Type: application/json
{
"channel": "email",
"recipient": "member@example.com",
"purpose": "login"
}Réponse
{
"success": true,
"data": {
"id": "11111111-1111-4111-8111-111111111111",
"status": "pending",
"expiresAt": "2030-01-01T00:10:00.000Z",
"source": "sms_verification_codes"
}
}{
"success": false,
"error": "<ERROR_MESSAGE>"
}Validation, permissions, données indisponibles et pannes utilisent le statut HTTP et l’erreur du gestionnaire.
Limites et tentatives
Limite serveur par défaut : 100 requêtes par IP sur 60 secondes. Des contrôles spécifiques s’appliquent.
Compatibilité du code
Les opérations autorisées nécessitent des tests propres au compte.
server/src/api/router.tsserver/src/api/routes/white-label.tsserver/src/white-label/reseller-service.tsserver/src/white-label/schemas.ts