Claimity API

Documentation API

Référence technique et guides pour l'intégration avec Claimity.

Vue d'ensemble

L'API utilise des méthodes HTTPS et des points de terminaison RESTful pour créer, modifier et gérer des ressources dans le système. JSON est utilisé comme format d'échange.

Premiers pas

Cette API offre un accès complet aux fonctions principales. Qu'il s'agisse d'intégrations, d'automatisation ou d'applications personnalisées, l'API offre la flexibilité nécessaire pour connecter Claimity à vos systèmes.

Extension des interfaces

  • •Consultez régulièrement le journal des modifications pour rester à jour.
  • •Des modifications non rétrocompatibles peuvent être introduites sans changer la version de l'API.
  • •Vous serez informé à temps des changements importants.

Premiers pas

Comment démarrer avec l'API :

1

Créer une paire de clés

En tant qu'administrateur de l'organisation, vous pouvez créer une paire de clés dans les paramètres de l'organisation de votre compte Claimity. Ensuite, téléchargez la clé privée et conservez-la en lieu sûr.

2

S'authentifier

À l'aide de la paire de clés créée et de votre identifiant client, vous pouvez vous authentifier auprès de l'API Claimity et ainsi obtenir un jeton d'accès pour vos requêtes.

3

Préparer l'en-tête DPoP

Pour envoyer une requête à l'API, il est nécessaire de créer un en-tête DPoP. Cet en-tête est signé avec la clé privée et sécurise la requête contre les risques de sécurité potentiels.

4

Première requête

Envoyez une requête authentifiée à un point de terminaison avec votre jeton d'accès et l'en-tête DPoP.

Exemple de requête

curl -X GET \
  https://app.claimity.ch/v1/experts/cases \
  -H 'Accept: application/json' \
  -H 'Authorization: DPoP {access-token}' \
  -H 'DPoP: {dpop-header}

Notebooks Python

Pour un démarrage rapide, nous mettons à votre disposition des notebooks Python avec lesquels vous pouvez exécuter des requêtes API et consulter directement les réponses.

Voir les notebooks sur GitHub

Signaler un problème

Si vous avez rencontré une erreur, nous vous aiderons. Assurez-vous au préalable que le problème est reproductible.

Avant de signaler

  • ✓Vérifier la reproductibilité
  • ✓Effectuer des tests API avec Postman/Insomnia
  • ✓Recueillir des détails sur la requête et la réponse
  • ✗Ne pas envoyer de données d'accès dans le rapport

Soumettre un rapport

Veuillez décrire les étapes pour reproduire. Notre support examinera le cas rapidement et vous répondra dès que possible.

Signaler un problème

Remarque : L'API est fournie sur la base de cette documentation. Il n'y a pas d'implémentation guidée ou de support de code.

Journal des modifications

Toutes les modifications et mises à jour de la version actuelle de l'API en un coup d'œil.

2025-12-30

Ajout d'un nouveau point de terminaison à l'API assureur pour valider la structure du dossier.

2025-12-28

Première version de l'API publiée.

Authentification

L'API Partenaire Claimity utilise **OAuth 2.0 Client Credentials** avec **JWT Client Assertion (RS256)** et sécurise chaque requête avec **DPoP Proof-of-Possession (ES256)**. Cela lie le jeton d'accès à la requête spécifique.

Flux d'authentification

Comment fonctionne le flux OAuth2 Client-Credentials.

Diagramme de séquence du flux d'authentification (OAuth2 Client Credentials + DPoP)

Processus

  1. Paire de clés : L'organisation crée une paire de clés RSA dans Claimity (la clé privée est stockée en toute sécurité).
  2. JWT Client Assertion : Le client génère un JWT de courte durée (RS256).
  3. Demande de jeton : Le client envoie POST /v1/oauth/token (Client-Credentials + Assertion).
  4. Validation : Le serveur d'authentification vérifie la signature de l'assertion et les autorisations et renvoie la réponse du jeton.
  5. URL de requête : Le client crée l'URL de requête (y compris les paramètres de requête).
  6. Preuve DPoP : Le client crée un JWT DPoP (ES256) par requête lié à la méthode + URL.
  7. Appel API : Le client appelle le point de terminaison avec Authorization: DPoP access_token et DPoP: ….
  8. Réponse : L'API vérifie le jeton/DPoP et traite la demande / renvoie la réponse.

Lire le jeton d'accès

Pour les intégrations partenaires, votre organisation s'authentifie via une JWT Client Assertion signée.

Prérequis

  • •Client ID (par ex. org-expo-00001) lisible dans les paramètres de l'organisation Claimity
  • •Clé privée RSA des paramètres de l'organisation Claimity (à conserver en lieu sûr et ne jamais partager)

Point de terminaison de jeton

URLPOST https://app.claimity.ch/v1/oauth/token
Content-Typeapplication/x-www-form-urlencoded
Champs de formulaire
grant_type = client_credentials
client_id = <Votre client id>
client_assertion_type = urn:ietf:params:oauth:client-assertion-type:jwt-bearer
client_assertion = <JWT (RS256)>
scope (optionnel)

URL

POST https://app.claimity.ch/v1/oauth/token

Content-Type

application/x-www-form-urlencoded

Champs de formulaire

grant_type = client_credentials
client_id = <Votre client id>
client_assertion_type = urn:ietf:params:oauth:client-assertion-type:jwt-bearer
client_assertion = <JWT (RS256)>
scope (optionnel)
JWT Client Assertion (RS256)

L'assertion est un JWT de courte durée (10 minutes) et est signée avec votre clé privée RSA.

  • •iss/sub = client_id
  • •aud = https://app.claimity.ch/realms/claimity/protocol/openid-connect/token
  • •jti = UUID (unique)
  • •iat/exp = “now” / “now+90s”
  • •kid (optionnel)
Exemple : Demande de jeton (cURL, espace réservé)
curl -X POST \
  'https://app.claimity.ch/v1/oauth/token' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -d 'grant_type=client_credentials' \
  -d 'client_id=org-expo-00001' \
  -d 'client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer' \
  -d 'client_assertion=<RS256-JWT-CLIENT-ASSERTION>' \
  -d 'scope=roles'

Réponse du jeton

La réponse contient un access_token. Important : Pour les appels API, ce jeton est utilisé comme jeton DPoP.

Envoyer des requêtes API

Chaque requête nécessite en plus un JWT de preuve DPoP. Celui-ci est généré par requête et signé (ES256) et lie la requête à la méthode + URL.

En-têtes requis

AuthorizationDPoP {access_token}
DPoP{dpop_proof_jwt}
Acceptapplication/json
Content-Typeapplication/json

Authorization

DPoP {access_token}

DPoP

{dpop_proof_jwt}

Accept

application/json

Content-Type

application/json
Contenu de la preuve DPoP
  • •htu doit être l'URL exacte y compris la chaîne de requête
  • •htm doit correspondre exactement à la méthode HTTP (GET/POST/PUT/DELETE)
  • •jti doit être nouveau par requête (pas de relectures)
  • •iat doit être dans la fenêtre de temps autorisée (éviter le décalage d'horloge)
  • •ath = base64url(SHA-256(access_token))
Exemple : Appel API authentifié (cURL)
curl -X GET \
  'https://app.claimity.ch/v1/experts/cases?page=1&size=50' \
  -H 'Accept: application/json' \
  -H 'Authorization: DPoP {access_token}' \
  -H 'DPoP: {dpop_proof_jwt}'
Dépannage : 401 invalid_dpop

Causes courantes :

  • •htu mismatch : L'URL doit être exacte y compris la requête
  • •htm mismatch : La méthode doit correspondre
  • •iat hors fenêtre : Corriger l'heure système
  • •replay : jti doit être nouveau par requête
  • •ath mismatch : SHA-256(access_token) base64url

Bases de l'API

Concepts et conventions de base utilisés dans toute l'API.

Format de requête

Chaque requête se compose de **Méthode**, **URL**, **Paramètres de requête** optionnels, **En-têtes** et (pour POST/PUT) un Corps JSON.

Structure de l'URL

Base URL : https://app.claimity.ch
Chemin : /v1/<ressource>
Requête : par ex. ?page=1&size=50
Exemple d'URL
https://app.claimity.ch/v1/…?page=1&size=50

Méthodes HTTP

GETRécupérer des ressources
POSTCréer des ressources
PUTRemplacer/mettre à jour des ressources
DELETESupprimer des ressources

En-têtes typiques

  • •Accept: application/json
  • •Content-Type: application/json (pour le corps JSON)
  • •Authorization: DPoP <access_token>
  • •DPoP: <dpop_proof_jwt>

Format de réponse

Les réponses sont généralement en JSON (Content-Type: application/json) et utilisent des codes d'état HTTP pour signaler le succès/l'erreur.

Réponses de succès

  • •2xx (par ex. 200, 201, 204)
  • •Le corps contient généralement un objet ou une liste
Exemple (Objet)
HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": "…",
  "…": "…"
}

Réponses d'erreur (ProblemDetails)

  • •4xx/5xx (par ex. 400, 401, 403, 404, 429, 500)
  • •Le corps suit une structure de type ProblemDetails
Exemple (JSON Problème)
HTTP/1.1 400 Bad Request
Content-Type: application/json

{
  "type": "about:blank",
  "title": "Bad Request",
  "status": 400,
  "detail": "…"
}

Limitation de débit

L'API Partenaire est protégée par une limitation de débit pour garantir une utilisation équitable et la stabilité. Les limites sont appliquées par partition client.

Standard pour l'API Partenaire

Pour les points de terminaison standard, le nombre de requêtes est légèrement limité.

  • •TokenBucket : env. 60 Requêtes/Minute, Rafale jusqu'à 20, File d'attente 0

Routes de documents

Pour les points de terminaison avec .../documents..., des limites plus strictes s'appliquent (par ex. pour le téléchargement).

  • •TokenBucket : env. 20 Requêtes/Minute, Rafale jusqu'à 10, File d'attente 0

Point de terminaison de jeton

Le point de terminaison de jeton est strictement limité pour empêcher d'éventuelles attaques.

  • •Fenêtre fixe : 10 Requêtes/Minute par Client
Lorsqu'une limite est atteinte (HTTP 429)
  • •Réponse : 429 Too Many Requests (Code de rejet 429)
  • •En-tête optionnel : Retry-After
  • •Indice de diagnostic/politique : X-RateLimit-Policy
  • •Corps : JSON Problème

Recommandations pour les clients

  • •Réessayer les requêtes 429 avec backoff et respecter Retry-After.
  • •Limiter les téléchargements de documents.
  • •Les rafales sont limitées (pas de file d'attente) – une forte parallélisation entraîne plus rapidement des 429.

Experts

Points de terminaison pour les experts pour travailler avec des dossiers, des documents et des soumissions de rapports.

Dossiers

Documents du dossier

Rapports & Soumissions

Documents de soumission

Assureurs

Points de terminaison pour les assureurs pour créer/valider/récupérer des sinistres, des documents et des aperçus de rapports.

Sinistres

Documents de sinistre

Rapports sur les sinistres

Structure du dossier & Validation

Chaque catégorie décrit précisément quels champs le payloadJson peut contenir.

Catégorie

Expert automobile

Cette structure est destinée aux charges utiles pour la catégorie Expert automobile.

Expert automobile

Tester PayloadJson directement

Envoyez une requête à l'API de validation Claimity et obtenez un retour immédiat sur votre charge utile.

Attend une structure JSON valide.

Réponse

Prêt

La réponse de l'API de validation apparaît ici.

  1. Sélectionner une catégorie
  2. Insérer le JSON de charge utile ou utiliser l'exemple
  3. Valider la charge utile
Claimity Logo

La plateforme numérique pour une gestion efficace des sinistres. Automatisée, transparente, sécurisée.

Aide

  • Mode d'emploi
  • Intégration API
  • Assistance

Entreprise

  • Site Web
  • Prendre rendez-vous

Contact

  • info@claimity.ch
  • +41 78 344 77 36
  • Claimity SA
    Wisentalstrasse 7a
    8185 Winkel
    Suisse

© 2026 Claimity SA. Tous droits réservés.

Mentions légalesPolitique de confidentialitéConditions d'utilisation