Support

Sandbox et Live (mode compte)

Deux sens différents de « sandbox » sur MorisBox :

ConceptSignification
Hôtes de déploiementEnvironnement partagé (api.morisbox.com, Partner Hub, Application Client)
Sandbox comptePar 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 seed360 est 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 :

ActionEffet
Approuver Livesandbox_mode=false
Rejeter la sortieRester en sandbox, statut de sortie rejected
Réinitialiser SandboxForcer 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)

ServiceURL
Partner APIhttps://api.morisbox.com/api/v1
Partner Hubhttps://partner.morisbox.com
Partner docshttps://docs.morisbox.com/partners
Developer docshttps://docs.morisbox.com/developers
Application Clienthttps://morisbox.com

Il n'y a pas de clé API publique partagée. Chaque partenaire utilise ses propres identifiants.


Checklist smoke (partenaire)

  1. Nouveau partenaire → sandbox par défaut
  2. POST /messages sans téléphone autorisé → 403 sandbox_restricted
  3. Définir le téléphone autorisé → envoyer vers celui-ci → 201
  4. Envoyer vers un autre numéro → 403
  5. POST /broadcasts en sandbox → 403
  6. 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"}'