Dexyd DevelopersAPI, webhooks et assistants IA

Concours

Suivez vos challenges dans vos propres tableaux de bord.

Soumissions

Rapprochez les participations de vos suivis opérationnels.

Expo

Reliez les projets visibles aux suites commerciales.

Base

Commencer avec REST v1

Les endpoints publics versionnés vivent sous le même domaine que l’application et renvoient des réponses JSON prévisibles.

Base URL
https://www.dexyd.com/api/v1
Authentification
Authorization: Bearer <clé développeur>

Le header x-dexyd-api-key est aussi accepté.

Format
application/json

Les exports peuvent aussi renvoyer text/csv.

Pagination
limit et offset

limit est borné entre 1 et 100.

Requête
curl "https://www.dexyd.com/api/v1/competitions?limit=10" \
  -H "Authorization: Bearer dxyd_test_..." \
  -H "Accept: application/json"
Réponse
{
  "data": [],
  "pagination": {
    "limit": 10,
    "offset": 0,
    "total": 0
  }
}
Authentification

Créer une clé et l’envoyer avec chaque requête

Les appels REST authentifiés utilisent une clé développeur créée dans la console Dexyd. La clé doit être transmise côté serveur et limitée aux scopes nécessaires.

Créer une clé
Ouvrez la console développeur dans Dexyd, choisissez l’environnement test ou live, nommez la clé, puis copiez-la au moment de sa création.
Header recommandé
Authorization: Bearer <clé développeur>

Utilisez ce header pour les appels serveur vers les endpoints REST et MCP.

Header alternatif
x-dexyd-api-key: <clé développeur>

Accepté pour les intégrations qui ne peuvent pas utiliser Authorization.

Sécurité
Ne placez jamais une clé live dans un navigateur, une application mobile ou un dépôt public; faites passer les appels par votre backend.
Rotation
Révoquez une clé depuis la console si elle a été exposée, puis créez une nouvelle clé avec les mêmes scopes utiles.
Headers
Authorization: Bearer dxyd_live_...
x-dexyd-api-key: dxyd_live_...
Accès

Scopes et environnements

Les clés test sont faites pour les lectures publiques. Les clés live et les scopes sensibles dépendent du plan activé dans la console développeur.

public:read
Lire les ressources publiques disponibles.
competitions:read
Lister les concours publics ou les concours de l’organisateur avec organizer=me.
submissions:read
Lire les participations d’un concours. Les non-propriétaires ne voient que les participations approuvées.
expo:read
Lire les produits Expo publics ou les produits du créateur avec mine=true.
exports:read
Exporter les concours de l’organisateur en JSON ou CSV.
media:import, agent:mcp, drafts:write
Scopes avancés réservés aux imports médias, MCP et brouillons confirmables.
Endpoints

Référence REST disponible

Chaque ligne précise la méthode, le chemin, le scope attendu et les paramètres qui changent la réponse.

GET/api/v1/competitions

Liste les concours publics ou ceux de l’organisateur.

public:read + competitions:read
  • Query: organizer=me, status, category, limit, offset.
  • Réponse: data[] et pagination.
GET/api/v1/submissions

Liste les participations d’un concours.

submissions:read
  • Query requise: competition_id.
  • Query optionnelle: limit, offset.
  • Réponse: participations avec statut, médias, votes et dates.
GET/api/v1/expo-products

Liste les produits Expo visibles ou ceux du créateur.

public:read + expo:read
  • Query: mine=true, q, category, limit, offset.
  • Réponse: produits avec catégorie, stade, disponibilité et médias.
GET/api/v1/exports/competitions

Exporte les concours de l’organisateur.

exports:read
  • Query: format=json ou format=csv.
  • Réponse: JSON ou fichier dexyd-competitions.csv.
Erreurs

Erreurs, limites et en-têtes

Les erreurs gardent un format stable afin que vos intégrations puissent décider quoi réessayer, corriger ou escalader.

400
Paramètre manquant ou invalide.
401
Clé absente, invalide, expirée ou révoquée.
402
Plan insuffisant pour un accès live ou avancé.
403
Scope insuffisant pour l’action demandée.
404
Ressource introuvable.
429
Limite minute ou journalière dépassée.
503
Stockage développeur pas encore configuré.
  • Les réponses authentifiées ajoutent X-RateLimit-Limit, X-RateLimit-Remaining et X-RateLimit-Reset.