Skip to main content

API Partner

Bienvenue dans la documentation de l'API Partner.

Cette API est destinée aux partenaires externes qui souhaitent intégrer leurs systèmes avec notre plateforme.

Authentification OAuth2

L'API Partner utilise OAuth2 avec le grant type client_credentials.

1. Génération du client OAuth2

Pour accéder à l'API Partner, vous devez d'abord générer un client OAuth2 depuis la plateforme Tyllt :

  1. Connectez-vous à votre compte Tyllt
  2. Accédez à Intégration et partenariatsClés API
  3. Cliquez sur Ajouter une clé
  4. Renseignez les informations demandées :
    • Nom de la clé : Un nom descriptif pour identifier votre intégration
  5. Cliquez sur Créer la clé
  6. ⚠️ Important : Notez immédiatement vos identifiants :
    • client_id : L'identifiant de votre client
    • client_secret : Le secret (visible une seule fois)

⚠️ Sécurité Le client_secret ne sera affiché qu'une seule fois. Conservez-le en lieu sûr. Si vous le perdez, vous devrez régénérer un nouveau client OAuth2. ⚠️

2. Obtention d'un token d'accès

Une fois votre client OAuth2 créé, vous pouvez obtenir un token d'accès en utilisant l'endpoint de login :

Endpoint : POST /api/v1/partner/login

Exemple PHP :

<?php

$clientId = 'votre_client_id';
$clientSecret = 'votre_client_secret';
$apiUrl = 'https://api.tyllt.com/api/v1/partner/login';

// Préparer les données
$data = [
'client_id' => $clientId,
'client_secret' => $clientSecret,
'grant_type' => 'client_credentials'
];

// Initialiser cURL
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'Accept: application/json'
]);

// Exécuter la requête
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

// Traiter la réponse
if ($httpCode === 200) {
$tokenData = json_decode($response, true);

echo "Token obtenu avec succès !\n";
echo "Access Token: " . $tokenData['access_token'] . "\n";
echo "Token Type: " . $tokenData['token_type'] . "\n";
echo "Expire dans: " . $tokenData['expires_in'] . " secondes\n";

// Stocker le token pour une utilisation future
$accessToken = $tokenData['access_token'];
} else {
echo "Erreur lors de l'authentification: " . $response . "\n";
}

Réponse attendue :

{
"token_type": "Bearer",
"expires_in": 2592000,
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9..."
}

3. Utilisation du token pour appeler l'API

Une fois le token obtenu, vous pouvez l'utiliser pour appeler les endpoints de l'API Partner. Exemple : Récupérer les informations du compte (GET /me) Endpoint : GET /api/v1/partner/organisations/{organisationId}/me Exemple PHP :

<?php

$accessToken = 'votre_access_token'; // Token obtenu à l'étape précédente
$organisationId = 'votre_organisation_id';
$apiUrl = "https://api.tyllt.com/api/v1/partner/organisations/{$organisationId}/me";

// Initialiser cURL
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $accessToken,
'Accept: application/json'
]);

// Exécuter la requête
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

// Traiter la réponse
if ($httpCode === 200) {
$partnerData = json_decode($response, true);

echo "Informations du compte partenaire :\n";
echo "ID: " . $partnerData['id'] . "\n";
echo "Nom: " . $partnerData['name'] . "\n";
echo "Statut: " . $partnerData['status'] . "\n";
echo "Environnement: " . $partnerData['environment'] . "\n";
} else {
echo "Erreur lors de la récupération des données: " . $response . "\n";
}

Réponse attendue :

{
"id": "3a7a708a-8fd0-4847-8260-f20786277b17",
"name": "JOHN DOE",
"status": "active",
"environment": "dev"
}

Fonctionnalités disponibles

L'API Partner vous permet de :

  • ✅ Gérer les demandes de paiement et de caution
  • ✅ Créer et gérer des modèles de demandes
  • ✅ Gérer les demandes d'encaissements

Organisation liée au client OAuth2

Chaque client OAuth2 est lié à un compte spécifique. Vous n'avez accès qu'aux données de votre compte et de ses comptes enfants s'il en a.

L'organisationId dans les URLs des endpoints doit correspondre à l'id d'un compte auquel le compte ayant le client oauth à accès.

Endpoints disponibles

Consultez la documentation détaillée des endpoints dans le menu de gauche.