Modifier une formation
patch
https://mudey.fr/api/v1/courses/{courseId}courses:writeSeuls les champs envoyés changent ; null efface un champ facultatif.
Authorization: Bearer mudey_sk_… header required. Create and use a key
Paramètres
| Nom | Emplacement | Type | Description |
|---|---|---|---|
| courseId* | chemin | string |
Corps JSON
Les champs marqués * sont obligatoires.
| Champ | Type | Description |
|---|---|---|
| title | string | Titre (5 à 200 caractères). |
| subtitle | string | null | Sous-titre. |
| shortDescription | string | null | Accroche du catalogue. |
| description | string | null | Description complète (50 caractères au moins pour publier). |
| language | string | Langue : fr, en, fr-BE… |
| level | BEGINNER | INTERMEDIATE | ADVANCED | ALL_LEVELS | Niveau, BEGINNER par défaut. |
| categoryId | string | null | Catégorie principale (GET /categories). |
| subcategoryId | string | null | Sous-catégorie : une des `subcategories` de la catégorie dans GET /categories. Retirée si la catégorie change sans elle. |
| primaryTopic | string | null | Sujet principal enseigné (« Python ») : sert au référencement de la fiche. |
| price | number | Prix Standard en unités (49.99), 0 = gratuite. Ramené sur la grille tarifaire et dans la fourchette réglée par Mudey. |
| originalPrice | number | null | Prix barré, purement affiché. |
| offerTier | STANDARD | PRIME | BUSINESS | Offre la plus haute déclarée. Prime se vend avec au moins 2 modules Prime publiés, Business avec 3 modules Business en plus. |
| primePrice | number | null | Prix Prime ; null = prix par défaut de Mudey. |
| businessPrice | number | null | Prix Business ; null = prix par défaut de Mudey. |
| objectives | string[] | Ce que l'élève saura faire. |
| requirements | string[] | Prérequis. |
| targetAudience | string[] | Public visé. |
| welcomeMessage | string | null | Message d'accueil. |
| congratulationsMessage | string | null | Message de fin. |
| metaTitle | string | null | Titre pour les moteurs de recherche. |
| metaDescription | string | null | Description pour les moteurs de recherche. |
| thumbnailKey | string | null | Couverture : clé S3 (kind = thumbnail). Obligatoire pour publier. |
| promoVideoKey | string | null | Vidéo de présentation : clé S3 (kind = video). |
Réponses
200Formation à jour.401Clé absente, invalide, révoquée ou expirée.403Droit manquant sur la clé, ou compte qui n'est plus formateur.404Ressource introuvable dans vos formations.422Données invalides (details liste les champs).429Quota dépassé (300 appels par minute et par clé). Voir l'en-tête Retry-After.
Exemple
export MUDEY_API_KEY="mudey_sk_..."
export COURSE_ID="..." # à remplacer
curl -X PATCH "https://mudey.fr/api/v1/courses/$COURSE_ID" \
-H "Authorization: Bearer $MUDEY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"subtitle": "Le guide pratique pour développeurs JavaScript",
"primaryTopic": "TypeScript",
"targetAudience": [
"Développeurs JavaScript",
"Étudiants en informatique"
],
"price": 59.99,
"thumbnailKey": "thumbnails/…/couverture.webp"
}'