La « boutique » est le conteneur de plus haut niveau des produits, commandes, clients, etc. Chaque clé est liée à exactement une boutique. Il n'existe aucun moyen de requêter les boutiques d'autres marchands.
GET /v1/store
Retourne le profil de la boutique à laquelle appartient la clé appelante.
Auth : n'importe quelle clé plateforme active liée à la boutique. Note : en v1, le scope store:read n'est pas vérifié sur cet endpoint — les endpoints de lecture sont protégés uniquement par une clé valide et le cloisonnement par boutique. Les seuls scopes réellement appliqués en v1 sont products:write, orders:write, landing_pages:write, webhooks:read, webhooks:write et usage:read.
Mis en cache pendant 30 s (par clé API + query string) — une modification faite dans le tableau de bord peut mettre jusqu'à 30 s à apparaître via api.dzbuild.app. Vérifiez l'en-tête de réponse X-Cache: HIT|MISS. L'alias dzbuild.com/api/v1/store n'est pas mis en cache.
Requête
curl https://api.dzbuild.app/v1/store \ -H "Authorization: Bearer $DZ_KEY"
Réponse 200
{
"data": {
"id": 13,
"name": "DZBuild",
"slug": "dzbuild",
"language": "ar",
"description": "DZBuild Offers Preview",
"logo": "/uploads/logos/13/8e19a05f0e4205bbcd861469ec0f9257.webp",
"favicon": null,
"banner": null,
"theme": {
"primary_color": "#f59e0b",
"secondary_color": "#fbbf24",
"background_color": "#ffffff",
"font_family": "Cairo"
},
"subdomain": "dzbuild.minacef.app",
"custom_domain": null,
"custom_domain_verified": false,
"public_url": "https://dzbuild.minacef.app",
"hide_branding": false,
"created_at": "2026-01-13 14:58:23"
},
"meta": { "request_id": "...", "api_version": "v1" }
}
Référence des champs
Champ | Type | Notes |
| int | Identifiant interne stable. Identique à |
| string | Nom d'affichage. Apparaît dans la navbar et les emails. |
| string | Identifiant compatible URL. Utilisé dans |
| enum |
|
| string|null | Tagline courte. |
| string|null | Chemin sur |
| string|null | Même logique. |
| string|null | Même logique. |
| hex string | Couleur dominante des boutons et accents. |
| hex string | Hover / accents secondaires. |
| hex string | Fond de page. |
| string | Typographie (par défaut |
| string|null | Sous-domaine émis par DZBuild. Normalement présent ; |
| string|null | Domaine personnel du marchand. Défini uniquement s'il a été ajouté depuis le tableau de bord. |
| bool | Vrai uniquement si DNS + SSL sont opérationnels. |
| string|null | URL où arrivent réellement les clients. Préfère un |
| bool | « Powered by DZBuild » caché dans le footer. Plan Illimité. |
| timestamp | Heure de création de la boutique, heure d'Alger (UTC+01:00). |
Erreurs
HTTP | Code | Cause |
401 |
| Clé invalide ou manquante |
402 |
| Quota mensuel de requêtes de la boutique épuisé — voir Limites de débit |
403 |
| Mode pilote : clé non enrôlée (« API is in pilot mode; key not enrolled ») |
404 |
| La boutique a été supprimée pendant que vous utilisiez la clé (très rare) |
429 |
| Plafond par minute atteint pour cette clé ; respectez |
PATCH /v1/store (à venir en v1.1)
Mettre à jour les champs du profil boutique (nom, slug, couleurs du thème, domaine personnalisé).
Cet endpoint est réservé — la surface est verrouillée mais l'implémentation fait partie du jalon v1.1. En attendant, les modifications passent par le tableau de bord.
Les clés portent déjà un scope store:write, mais aucun endpoint d'écriture ne le consomme encore. PATCH /v1/store renvoie aujourd'hui 405 method_not_allowed, et non 404 — et via api.dzbuild.app vous obtenez d'abord 400 bad_request si vous omettez l'en-tête Idempotency-Key.