Accueil Connexion

API Documentation

Intégrez AMEA sur votre site ou application

Commencer

L'API AMEA est gratuite et sans limite. Envoyez des messages depuis n'importe quel site web ou application.

Gratuit & illimité Pas de quota
Sécurisé Clé API unique
CORS activé Toutes origines
Quick start
curl -X POST https://chaudly.com/api.php \
  -H "X-API-Key: VOTRE_CLE" \
  -d "type=simple&message=Bonjour"

Authentification

Récupérez votre clé API dans Paramètres → API

Headers
X-API-Key: votre_cle_api
POST
api_key=votre_cle_api

Endpoints Messages

POST /api.php Envoyer un message
GET /api.php Documentation
GET /api.php?action=verify&api_key=KEY Vérifier une clé
POST /api.php?action=generate_key Générer une clé

Formulaire simple

Message anonyme sans coordonnées.

ParamètreTypeRequisDescription
typestring✅ Ouisimple
messagestring✅ OuiContenu du message
photofile❌ NonImage (max 100 Mo)
cURL
curl -X POST https://chaudly.com/api.php \
  -H "X-API-Key: VOTRE_CLE" \
  -F "type=simple" \
  -F "message=Bonjour"

Formulaire complet

Avec nom, email, téléphone et objet.

ParamètreTypeRequisDescription
typestring✅ Ouifull
messagestring✅ OuiContenu
namestring❌ NonNom
emailstring❌ NonEmail
phonestring❌ NonTéléphone
subjectstring❌ NonObjet
cURL
curl -X POST https://chaudly.com/api.php \
  -H "X-API-Key: VOTRE_CLE" \
  -d "type=full" \
  -d "name=Jean" \
  -d "email=jean@exemple.com" \
  -d "message=Bonjour"

Formulaire contact

Nom, email et message.

ParamètreTypeRequisDescription
typestring✅ Ouicontact
messagestring✅ OuiContenu
namestring❌ NonNom
emailstring❌ NonEmail
cURL
curl -X POST https://chaudly.com/api.php \
  -H "X-API-Key: VOTRE_CLE" \
  -d "type=contact" \
  -d "name=Marie" \
  -d "email=marie@exemple.com" \
  -d "message=Merci"

Login with AMEA

Permettez à vos utilisateurs de se connecter à votre application avec leur compte AMEA. Notre API OAuth 2.0 est entièrement gratuite.

OAuth 2.0 compatible
Suivez le standard OAuth 2.0 pour une intégration facile avec votre application.
Étape 1 : Enregistrer votre application
POST https://chaudly.com/api/oauth/register.php

{
    "client_name": "Mon application",
    "redirect_uri": "https://mon-site.com/callback",
    "website": "https://mon-site.com"
}
Étape 2 : Rediriger l'utilisateur
https://chaudly.com/oauth_authorize.php?client_id=VOTRE_CLIENT_ID&redirect_uri=https://mon-site.com/callback&response_type=code&scope=profile%20email&state=random_string
Étape 3 : Échanger le code contre un token
POST https://chaudly.com/api/oauth/token.php

grant_type=authorization_code
&code=CODE_RECU
&client_id=VOTRE_CLIENT_ID
&client_secret=VOTRE_CLIENT_SECRET
&redirect_uri=https://mon-site.com/callback
Étape 4 : Récupérer les informations utilisateur
GET https://chaudly.com/api/oauth/userinfo.php
Authorization: Bearer ACCESS_TOKEN
Réponse exemple
{
    "id": 123,
    "username": "jean_du69",
    "email": "jean@exemple.com",
    "avatar": "https://amea.chaudly.com/uploads/avatar.jpg",
    "bio": "Développeur passionné",
    "member_since": "2024-01-15 10:30:00"
}

Endpoints OAuth

GET /oauth_authorize.php Page d'autorisation
POST /api/oauth/token.php Échange code/token
GET /api/oauth/userinfo.php Infos utilisateur
POST /api/oauth/register.php Enregistrer application

Exemples de code

Fetch API
async function sendToAMEA(message) {
    const formData = new FormData();
    formData.append('type', 'simple');
    formData.append('api_key', 'VOTRE_CLE');
    formData.append('message', message);
    
    const res = await fetch('https://chaudly.com/api.php', {
        method: 'POST',
        body: formData
    });
    return res.json();
}
PHP cURL
<?php
$ch = curl_init('https://chaudly.com/api.php');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, [
    'type' => 'simple',
    'api_key' => 'VOTRE_CLE',
    'message' => 'Bonjour'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
print_r(json_decode($response, true));
?>
Python requests
import requests

url = 'https://chaudly.com/api.php'
data = {
    'type': 'simple',
    'api_key': 'VOTRE_CLE',
    'message': 'Bonjour'
}
response = requests.post(url, data=data)
print(response.json())

Codes d'erreur

CodeMessageSolution
200SuccèsMessage envoyé
400Clé API invalideVérifiez votre clé
400Message requisAjoutez un message
400Type invalidesimple/full/contact
400Photo trop grandeMax 100 Mo
401Non autoriséConnectez-vous
500Erreur serveurRéessayez
Réponse succès
{
    "success": true,
    "message": "Message envoyé avec succès",
    "data": {"message_id": 123, "receiver": "user"},
    "timestamp": "2024-01-01 12:00:00"
}
Réponse erreur
{
    "success": false,
    "message": "Clé API invalide",
    "timestamp": "2024-01-01 12:00:00"
}

Limitations

10 msg/min par IP
100 Mo max par photo
500 caractères par message