API v1.0 Entreprise uniquement

API Almawarid

Connectez votre logiciel métier à Almawarid. Synchronisez employés, pointages, congés et données RH via une API REST sécurisée.

Authentification

Toutes les requêtes API doivent inclure votre token dans le header HTTP :

Authorization: Token votre_token_ici
Connectez-vous pour voir votre jeton.

Base URL : https://almawarid.app/api/ — exemple : /api/stock/products/

Limites & Format

500
Requêtes / jour / jeton
JSON
Format de réponse
HTTPS
Protocole requis
Module optionnel, facturé à part

L'accès programmatique n'est inclus dans aucun abonnement : il s'active à la demande sur n'importe quel plan, sans réinstallation.

L'usage normal du logiciel — application mobile, poste de bureau, pointeuses biométriques — ne nécessite pas ce module.

Documentation Activer le module API

Endpoints

GET /api/stock/products/

Produits du catalogue avec niveau de stock en temps réel — la brique d'une intégration e-commerce.

Paramètres : q (recherche nom) · active=1 (actifs seulement)
[{"id":12,"name":"Café 250g","sku":"CAF-250","sell_price":450.0,"tax_rate":19.0,"quantity":38.0}]
POST /api/stock/move/

Mouvement de stock : delta positif = entrée, négatif = sortie. Une sortie qui rendrait le stock négatif est refusée (mêmes règles que la caisse).

Paramètres : product_id · delta · reason
{"movement_id":901,"quantity":33.0}
POST /api/webhooks/

Déclare une URL HTTPS à notifier (POST signé HMAC-SHA256, en-tête X-Almawarid-Signature). Événements : invoice.paid, invoice.status, client.created. Le secret n'est affiché qu'une fois.

Paramètres : url (https, hôte public) · events (liste séparée par virgules, vide = tous)
{"id":3,"url":"https://boutique.dz/hooks/almawarid","secret":"…affiché une seule fois…"}
GET /api/webhooks/

Liste des webhooks avec leur santé (dernier statut, échecs). Un webhook qui échoue 20 fois d'affilée se désactive seul. DELETE /api/webhooks/<id>/ pour supprimer.

[{"id":3,"url":"https://boutique.dz/hooks/almawarid","is_active":true,"last_status":"http 200","failure_count":0}]
GET /api/enterprise/

Informations de l'entreprise, nombre d'employés, modules actifs.

{"company":"Acme SARL","employees":12,"modules":{"erp":true,"payroll":false},"api_version":"1.0"}
GET /api/enterprise/employees/

Liste tous les employés actifs avec leur rôle, poste et date d'embauche.

{"count":12,"employees":[{"id":1,"email":"ahmed@acme.dz","role":"employee","nom":"Benali","prenom":"Ahmed","poste":"Comptable","date_embauche":"2023-01-15","type_contrat":"CDI"}]}
GET /api/enterprise/timesheets/

Pointages de toutes les équipes sur une plage de dates (max 31 jours).

Paramètres : from=YYYY-MM-DD&to=YYYY-MM-DD
{"count":45,"from":"2025-01-01","to":"2025-01-31","entries":[{"id":101,"user_email":"ahmed@acme.dz","task":"Rapport Q1","start":"2025-01-02T08:30:00+01:00","end":"2025-01-02T17:00:00+01:00","duration_seconds":30600,"is_manual":false}]}
GET /api/enterprise/leaves/

Demandes de congés avec filtrage par statut.

Paramètres : status=pending|approved|rejected
{"count":3,"leaves":[{"id":5,"employee":"sara@acme.dz","start_date":"2025-02-10","end_date":"2025-02-14","status":"approved","reason":"Congé annuel"}]}
Accès complet réservé aux clients Entreprise

Connectez-vous pour voir vos tokens, exemples complets, et tester l'API directement.