Sandbox et Live (mode compte)
Deux sens différents de « sandbox » sur MorisBox :
| Concept | Signification |
|---|---|
| Hôtes de déploiement | Environnement partagé (api.morisbox.com, Partner Hub, Application Client) |
| Sandbox compte | Par partenaire : messages sortants limités à un seul téléphone de test |
Cette page porte sur le Sandbox / Live de compte.
Par défaut : Sandbox
Chaque nouveau partenaire est créé en Sandbox :
- Vous ne pouvez envoyer qu'à un téléphone E.164 autorisé (
sandbox_allowed_phone) - Les diffusions sont bloquées
- Les invitations flow et le chat agent utilisent la même barrière téléphone
- Le partenaire plateforme
seed360est toujours Live (OTP / système)
Configurer votre téléphone de test
Partner Hub → Paramètres → Sandbox / Live, ou :
PUT /api/v1/settings/sandbox
Authorization: Bearer sk_…
Content-Type: application/json
{
"sandbox_allowed_phone": "+228XXXXXXXX"
}
Puis :
POST /api/v1/messages
Authorization: Bearer sk_…
Content-Type: application/json
{
"phone": "+228XXXXXXXX",
"body": "Hello sandbox"
}
L'envoi vers tout autre numéro renvoie 403 avec error.code = sandbox_restricted.
Demander Live
Lorsque vous êtes prêt pour le trafic de production :
POST /api/v1/settings/sandbox/request-live
Authorization: Bearer sk_…
Content-Type: application/json
{
"note": "Production launch for SEED notifications"
}
Un admin plateforme MorisBox doit approuver. Jusque-là vous restez en sandbox.
Hub : Sandbox / Live → Demander Live.
Admin (partenaire plateforme)
Les opérateurs plateforme peuvent :
| Action | Effet |
|---|---|
| Approuver Live | sandbox_mode=false |
| Rejeter la sortie | Rester en sandbox, statut de sortie rejected |
| Réinitialiser Sandbox | Forcer le sandbox à nouveau (ex. après problèmes KYC) ; conserve le téléphone de test |
API (clé admin seed360) :
GET /api/v1/admin/sandbox
POST /api/v1/admin/sandbox/partners/{id}/approve-live
POST /api/v1/admin/sandbox/partners/{id}/reject-live
POST /api/v1/admin/sandbox/partners/{id}/reset
Hub : Sandbox admin (plateforme uniquement).
Hôtes (déploiement)
| Service | URL |
|---|---|
| Partner API | https://api.morisbox.com/api/v1 |
| Partner Hub | https://partner.morisbox.com |
| Partner docs | https://docs.morisbox.com/partners |
| Developer docs | https://docs.morisbox.com/developers |
| Application Client | https://morisbox.com |
Il n'y a pas de clé API publique partagée. Chaque partenaire utilise ses propres identifiants.
Checklist smoke (partenaire)
- Nouveau partenaire → sandbox par défaut
POST /messagessans téléphone autorisé → 403 sandbox_restricted- Définir le téléphone autorisé → envoyer vers celui-ci → 201
- Envoyer vers un autre numéro → 403
POST /broadcastsen sandbox → 403- Demander Live → approbation admin → envoyer vers n'importe quel téléphone
curl partenaire (sandbox)
export SEED360_API_BASE="https://api.morisbox.com/api/v1"
export SEED360_API_KEY="sk_…"
curl -sS -X PUT "$SEED360_API_BASE/settings/sandbox" \
-H "Authorization: Bearer $SEED360_API_KEY" \
-H "Content-Type: application/json" \
-d '{"sandbox_allowed_phone":"+228XXXXXXXX"}'
curl -sS -X POST "$SEED360_API_BASE/messages" \
-H "Authorization: Bearer $SEED360_API_KEY" \
-H "Content-Type: application/json" \
-d '{"phone":"+228XXXXXXXX","body":"Hello MorisBox"}'
