Bienvenue dans la documentation de l'API Citation.lecog.fr. Cette API vous permet d'intégrer nos citations dans votre site web ou application.
/public/api/random-quote.php
Récupère une citation aléatoire de la base de données.
category - ID de la catégorie pour filtrer les citations par catégorie/public/api/random-quote.php/public/api/random-quote.php?category=7{
"success": true,
"data": {
"id": 42,
"text": "Je pense, donc je suis.",
"author": {
"id": 23,
"name": "Descartes",
"forename": "René"
},
"source": {
"id": 15,
"title": "Discours de la méthode",
"year": 1637
},
"categories": [
{
"id": 7,
"name": "Philosophie"
}
]
}
}
Utilisez ces IDs de catégories avec le paramètre category de l'endpoint /public/api/random-quote.php
| ID | Nom | Citations |
|---|---|---|
| 19 | bonheur | 7 |
| 6 | cinéma | 1 |
| 4 | espace | 9 |
| 14 | feu | 1 |
| 22 | folie | 5 |
| 12 | géographie | 4 |
| 21 | humour | 1 |
| 15 | mathématiques | 5 |
| 17 | mémoire | 1 |
| 16 | morale | 40 |
| 3 | nature | 24 |
| 9 | philosophie | 61 |
| 24 | physique | 1 |
| 5 | poésie | 34 |
| 18 | pouvoir | 1 |
| 11 | psychogéographie | 0 |
| 20 | raison | 5 |
| 10 | religion | 17 |
| 2 | rève | 12 |
| 13 | science | 5 |
| 7 | science-fiction | 8 |
| 1 | technologie | 11 |
| 23 | vérité | 1 |
| 8 | voyage | 13 |
/public/api/quote-of-the-day.php
Récupère la citation du jour (change quotidiennement).
{
"success": true,
"data": {
"id": 17,
"text": "Un jour sans rire est un jour perdu.",
"author": {
"id": 9,
"name": "Chaplin",
"forename": "Charlie"
},
"source": {
"id": 11,
"title": "My Autobiography",
"year": 1964
},
"category": {
"id": 3,
"name": "Humour"
}
}
} fetch('https://citation.lecog.fr/public/api/random-quote.php')
.then(response => response.json())
.then(data => {
if (data.success) {
const quote = data.data;
console.log(`"${quote.text}" - ${quote.author.forename} ${quote.author.name}`);
}
})
.catch(error => console.error('Error fetching quote:', error));
// Récupérer une citation aléatoire de la catégorie "Philosophie" (id: 7)
fetch('https://citation.lecog.fr/public/api/random-quote.php?category=7')
.then(response => response.json())
.then(data => {
if (data.success) {
const quote = data.data;
// Insérer la citation dans l'élément avec l'ID "philosophy-quote"
document.getElementById('philosophy-quote').innerHTML = `
"${quote.text}"
`;
}
})
.catch(error => console.error('Error fetching category quote:', error));
<?php
$url = 'https://citation.lecog.fr/public/api/quote-of-the-day.php';
$response = file_get_contents($url);
$data = json_decode($response, true);
if ($data['success']) {
$quote = $data['data'];
echo "<blockquote>";
echo htmlspecialchars($quote['text']);
echo "<footer>";
echo htmlspecialchars($quote['author']['forename'] . ' ' . $quote['author']['name']);
echo "</footer>";
echo "</blockquote>";
}
?>
<?php
// Récupérer une citation aléatoire de la catégorie "Philosophie" (id: 7)
$categoryId = 7;
$url = 'https://citation.lecog.fr/public/api/random-quote.php?category=' . $categoryId;
$response = file_get_contents($url);
$data = json_decode($response, true);
if ($data['success']) {
$quote = $data['data'];
echo "<blockquote class=\"philosophy-quote\">";
echo "<p>" . htmlspecialchars($quote['text']) . "</p>";
echo "<footer>";
echo htmlspecialchars($quote['author']['forename'] . ' ' . $quote['author']['name']) . " — ";
echo "<cite>" . htmlspecialchars($quote['source']['title']) . "</cite>";
echo "</footer>";
echo "</blockquote>";
}
?>
Pour intégrer facilement la citation du jour sur votre site web, copiez simplement le code HTML ci-dessous :
<div id="citation-lecog-widget">
<style>
#citation-lecog-widget blockquote {
padding: 1rem;
border-left: 4px solid #007bff;
background-color: #f8f9fa;
margin: 1rem 0;
}
#citation-lecog-widget footer {
margin-top: 0.5rem;
font-style: italic;
}
</style>
<div id="citation-lecog-content">Chargement...</div>
<script>
fetch('https://citation.lecog.fr/public/api/quote-of-the-day.php')
.then(response => response.json())
.then(data => {
if (data.success) {
const quote = data.data;
const html = `
<blockquote>
<p>"${quote.text}"</p>
<footer>
${quote.author.forename || ''} ${quote.author.name}
${quote.source.title ? `- ${quote.source.title}` : ''}
</footer>
</blockquote>
<p class="text-right">
<small>
<a href="https://citation.lecog.fr" target="_blank">
Citation.lecog.fr
</a>
</small>
</p>`;
document.getElementById('citation-lecog-content').innerHTML = html;
}
})
.catch(error => {
document.getElementById('citation-lecog-content').innerHTML =
'Impossible de charger la citation.';
});
</script>
</div>
Notre API est gratuite mais limitée à 100 requêtes par heure par IP. Veuillez respecter cette limite.