Skip to Content
Nouvelle documentation Applite - JS SDK, Dart SDK & REST API

Services (MultiServiceService)

Le module MultiServiceServiceModule permet de gérer les services (prestations) offerts par les entreprises ou professionnels. Chaque service peut avoir des champs personnalisés pour collecter des informations lors de la prise de rendez-vous.

Accès : client.app.multiService.service

Méthodes

create

Crée un nouveau service avec ses champs personnalisés.

const response = await client.app.multiService.service.create({ appId: "app_id", apiKey: "user_api_key", name: "Coupe Homme", description: "Coupe aux ciseaux et tondeuse", basePrice: 1500, categories: ["coiffure", "homme"], fields: [ { label: "Type de coupe", type: "SELECT", required: true, options: [ { label: "Classique", value: "classique", price: 0 }, { label: "Dégradé", value: "degrade", price: 500 }, { label: "Avec barbe", value: "barbe", price: 1000 } ] }, { label: "Commentaires", type: "TEXT", required: false, maxLength: 500 } ] });

Le champ slug est généré automatiquement à partir du nom du service et est unique par entreprise.

list

Liste les services disponibles.

const response = await client.app.multiService.service.list({ appId: "app_id", apiKey: "user_api_key" }); // Parcourir les services for (const service of response.data) { console.log(`${service.name} - ${service.basePrice}€`); console.log(`Champs: ${service.fields.length}`); }

get

Récupère les détails d’un service.

const response = await client.app.multiService.service.get({ appId: "app_id", apiKey: "user_api_key", id: "service_id" }); if (response.success) { const service = response.data; console.log(`Service: ${service.name}`); console.log(`Prix de base: ${service.basePrice}`); console.log(`Nombre de champs: ${service.fields.length}`); }

update

Met à jour un service existant.

// Mise à jour simple (prix et description) const response = await client.app.multiService.service.update({ appId: "app_id", apiKey: "user_api_key", id: "service_id", companyId: "company_id", basePrice: 2000, description: "Nouvelle description" }); // Mise à jour complète avec nouveaux champs const response2 = await client.app.multiService.service.update({ appId: "app_id", apiKey: "user_api_key", id: "service_id", companyId: "company_id", name: "Coupe Homme Premium", fields: [ { label: "Type de prestation", type: "SELECT", required: true, options: [ { label: "Standard", value: "standard", price: 0 }, { label: "Premium", value: "premium", price: 1000 } ] } ] });

delete

Supprime un service.

const response = await client.app.multiService.service.delete({ appId: "app_id", apiKey: "user_api_key", id: "service_id" }); if (response.success) { console.log("Service supprimé avec succès"); }

Exemples avancés

Service avec calcul de prix dynamique

// Service de nettoyage avec prix basé sur la surface const cleaningService = await client.app.multiService.service.create({ appId: "app_id", apiKey: "user_api_key", name: "Nettoyage à domicile", basePrice: 5000, // Prix de base fields: [ { label: "Surface (m²)", type: "NUMBER", required: true, min: 10, max: 500, multiplier: true, // Le prix sera multiplié par cette valeur }, { label: "Services additionnels", type: "MULTIPLE_SELECT", required: false, options: [ { label: "Vitres", value: "vitres", price: 2000 }, { label: "Repassage", value: "repassage", price: 3000 }, { label: "Four/Frigo", value: "electromenager", price: 1500 }, ], useSelect: true, // Pour configurer le UI d'une certaine maniere }, ], });

Service avec validation de champs

// Service médical avec validation stricte const medicalService = await client.app.multiService.service.create({ appId: "app_id", apiKey: "user_api_key", name: "Consultation médicale", basePrice: 15000, fields: [ { label: "Email de confirmation", type: "EMAIL", required: true, }, { label: "Téléphone", type: "PHONE", required: true, }, { label: "Date de naissance", type: "DATE", required: true, }, { label: "Numéro de sécurité sociale", type: "TEXT", required: true, minLength: 13, maxLength: 15, regex: "^[0-9]{13,15}$", }, ], });

Gestion des erreurs

Code erreurDescription
service-not-foundLe service n’existe pas ou n’appartient pas à l’entreprise
not-authorizedLa clé API n’a pas les droits nécessaires
app-not-foundL’application n’existe pas
Last updated on