Intégrez Luminara AI dans votre application avec notre puissante API REST. Intégration simple avec des requêtes HTTP standard.
Intégrez Luminara AI avec de simples appels fetch(). Aucun package supplémentaire requis — utilisez simplement l'API REST avec votre clé API.
const API_KEY = 'lum_xxxxxxxxxxxxx';
const BASE_URL = 'https://api.luminara-ai.de';
const headers = {
'X-API-Key': API_KEY,
'Content-Type': 'application/json',
};
// List your stores
const stores = await fetch(`${BASE_URL}/api/stores`, { headers })
.then(res => res.json());
// Get visibility status
const status = await fetch(`${BASE_URL}/api/visibility-addon/status`, { headers })
.then(res => res.json());
console.log(`AI Visibility Score: ${status.latestScore}`);
// List tracked keywords
const keywords = await fetch(`${BASE_URL}/api/visibility-addon/keywords`, { headers })
.then(res => res.json());Inscrivez-vous et créez une API Key dans votre tableau de bord.
Envoyez vos premières requêtes API avec votre API Key.
Intégrez les réponses de l'API dans votre application.
Toutes les requêtes API nécessitent une API Key valide dans l'en-tête Authorization.
X-API-Key: lum_xxxxxxxxxxxxxNote de sécurité : Ne partagez jamais votre API Key publiquement. Utilisez des variables d'environnement pour le stockage sécurisé.
| Méthode | Endpoint | Description | Auth |
|---|---|---|---|
| GET | /api/stores | Lister tous les stores | Required |
| GET | /api/products | Récupérer la liste de tous les produits | Required |
| POST | /api/products | Créer un nouveau produit | Required |
| PUT | /api/products/:id | Mettre à jour un produit | Required |
| DELETE | /api/products/:id | Supprimer un produit | Required |
| GET | /api/services | Récupérer la liste de tous les services | Required |
| POST | /api/validate | Effectuer la validation de schéma | Required |
| GET | /api/visibility-addon/status | Statut et score de visibilité IA | Required |
| GET | /api/visibility-addon/keywords | Lister les mots-clés suivis | Required |
| POST | /api/stores/:storeId/scan | Déclencher le scan du site web | Required |
| GET | /api/stores/:storeId/scan-results | Récupérer les résultats du scan | Required |
| GET | /api/visibility-addon/citations | Lister les citations IA | Required |
| GET | /api/visibility-addon/competitors | Obtenir les concurrents et classements | Required |
| GET | /api/gsc/analytics | Données Google Search Console | Required |
| GET | /api/content/recommendations | Obtenir les recommandations de contenu | Required |
| GET | /api/sentiment/overview | Aperçu de l'analyse de sentiment | Required |
Les informations de limite de requêtes sont retournées dans les en-têtes de réponse : RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.
Testez tous les endpoints directement dans l'interface Swagger interactive. Plus de 50 endpoints avec schémas, exemples et fonction essayer.
Ouvrir Swagger UI# List all products
curl -X GET "https://api.luminara-ai.de/api/products?storeId=YOUR_STORE_ID" \
-H "X-API-Key: lum_xxxxxxxxxxxxx"
# Start a website scan
curl -X POST "https://api.luminara-ai.de/api/stores/YOUR_STORE_ID/scan" \
-H "X-API-Key: lum_xxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"fullCrawl": true}'
# Get visibility score
curl -X GET "https://api.luminara-ai.de/api/visibility-addon/status" \
-H "X-API-Key: lum_xxxxxxxxxxxxx"const API_KEY = 'lum_xxxxxxxxxxxxx';
const BASE_URL = 'https://api.luminara-ai.de';
const headers = {
'X-API-Key': API_KEY,
'Content-Type': 'application/json',
};
// List products
const products = await fetch(
`${BASE_URL}/api/products?storeId=YOUR_STORE_ID`,
{ headers }
).then(res => res.json());
// Create a product
await fetch(`${BASE_URL}/api/products`, {
method: 'POST',
headers,
body: JSON.stringify({
storeId: 'YOUR_STORE_ID',
title: 'Premium Coffee Maker',
brand: 'BrewMaster',
category: 'Kitchen Appliances',
}),
});
// Start a scan
await fetch(`${BASE_URL}/api/stores/YOUR_STORE_ID/scan`, {
method: 'POST',
headers,
body: JSON.stringify({ fullCrawl: true }),
});
// Error handling
const res = await fetch(`${BASE_URL}/api/stores/YOUR_STORE_ID`, { headers });
if (res.status === 429) {
const retryAfter = res.headers.get('Retry-After');
console.log(`Rate limited. Retry after ${retryAfter}s`);
}import requests
API_KEY = 'lum_xxxxxxxxxxxxx'
BASE_URL = 'https://api.luminara-ai.de'
headers = {'X-API-Key': API_KEY}
# List stores
stores = requests.get(f'{BASE_URL}/api/stores', headers=headers).json()
# Get visibility status
status = requests.get(f'{BASE_URL}/api/visibility-addon/status', headers=headers).json()
print(f"Score: {status['latestScore']}")
# Add a keyword to track
requests.post(
f'{BASE_URL}/api/visibility-addon/keywords',
headers={**headers, 'Content-Type': 'application/json'},
json={'keyword': 'best coffee maker'}
)