API-referentie
De publieke API van FluoTest loopt via zijn MCP-endpoint — een JSON-RPC 2.0-API over gewoon HTTPS die werkt met curl of elke HTTP-client, zonder MCP-bibliotheek. Je authenticeert met een persoonlijke API-sleutel.
Laatst bijgewerkt
Hoe roep ik de FluoTest-API aan?
Genereer een API-sleutel in Instellingen → Beveiliging → API-sleutels en POST JSON-RPC-verzoeken naar https://fluotest.com/api/mcp met de sleutel in een "Authorization: Bearer"-header. De tools create_quiz en get_results zijn vandaag beschikbaar.
Een API-sleutel aanmaken#
API-sleutels zijn persoonlijk — elk verzoek met een sleutel handelt als jouw gebruikersaccount, met dezelfde rechten die je in de app hebt.
- Open Instellingen → Beveiliging → API-sleutels in je FluoTest-dashboard.
- Voer een naam in die vertelt waar de sleutel wordt gebruikt (bijv. "Zapier-script").
- Klik op Sleutel genereren en kopieer de fluo_…-waarde direct.
- Bewaar hem veilig — in een wachtwoordmanager of de secrets-opslag van je tool.
- Eén keer zichtbaar: Alleen een SHA-256-hash van de sleutel wordt opgeslagen — ben je hem kwijt, trek hem dan in en genereer een nieuwe.
- Maximaal 10 sleutels: Maak per tool of script een aparte sleutel, zodat je er één kunt intrekken zonder de rest te breken.
- Altijd intrekbaar: Het intrekken van een sleutel werkt direct vanaf het volgende verzoek.
- Gebruik zichtbaar: Bij elke sleutel zie je wanneer hij voor het laatst is gebruikt, zodat oude sleutels makkelijk op te ruimen zijn.
Authenticatie#
Stuur de sleutel bij elk verzoek mee in de Authorization-header:
Authorization: Bearer fluo_YOUR_API_KEY
Verbind je een AI-assistent in plaats van code te schrijven? Bekijk de MCP-servergids →
Verzoekformaat#
Het endpoint is https://fluotest.com/api/mcp. Stuur POST-verzoeken met "Content-Type: application/json", een Accept-header van "application/json, text/event-stream" en een JSON-RPC 2.0-body. Er is geen initialize-handshake nodig — je kunt tools/list en tools/call direct aanroepen.
Antwoorden komen terug als server-sent-events: het JSON-RPC-resultaat staat op de "data:"-regel en de payload van elke tool is een JSON-string in result.content[0].text:
event: message
data: {"jsonrpc":"2.0","id":1,"result":{"content":[{"type":"text","text":"{\n \"quiz_id\": \"…\",\n \"status\": \"draft\", …}"}]}}Voorbeelden#
Beschikbare tools opvragen
curl -X POST https://fluotest.com/api/mcp \
-H "Authorization: Bearer fluo_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'Een conceptquiz aanmaken
curl -X POST https://fluotest.com/api/mcp \
-H "Authorization: Bearer fluo_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "create_quiz",
"arguments": {
"title": "Customer readiness check",
"questions": [
{ "text": "Do you have a budget?", "type": "yes_no", "points": 2 },
{
"text": "Company size?",
"type": "multiple_choice",
"options": [
{ "label": "1-10", "score": 1 },
{ "label": "11-50", "score": 2 },
{ "label": "50+", "score": 3 }
]
}
]
}
}
}'Quizresultaten opvragen
curl -X POST https://fluotest.com/api/mcp \
-H "Authorization: Bearer fluo_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "get_results",
"arguments": { "quiz_id": "YOUR_QUIZ_ID" }
}
}'Fouten#
Authenticatieproblemen gebruiken HTTP-statuscodes; problemen binnen een tool-aanroep komen terug als een normaal JSON-RPC-antwoord met isError gezet en de uitleg in de tekstinhoud.
| Status | Betekenis |
|---|---|
| 401 | Ontbrekende, ongeldige of ingetrokken API-sleutel. Controleer de Authorization-header en of de sleutel nog bestaat in Instellingen. |
| 400 | Onjuiste JSON-RPC-body. Controleer de velden jsonrpc, id, method en params. |
| 200 + isError | De tool-aanroep zelf is mislukt — bijvoorbeeld een quiz_id die niet van jou is, of een multiple_choice-vraag met minder dan 2 opties. De tekstinhoud legt uit wat je moet aanpassen. |
FAQ#
Is er een rate limit?
Er is vandaag geen gepubliceerde harde limiet, maar zwaar geautomatiseerd verkeer kan worden afgeremd om de service snel te houden voor iedereen. Bundel je werk waar mogelijk.
Kan ik OAuth gebruiken in plaats van een API-sleutel?
Ja — OAuth is de aanbevolen manier om AI-assistenten zoals Claude te verbinden, waarbij de gebruiker toegang goedkeurt op een toestemmingsscherm. API-sleutels zijn de simpelere optie voor scripts en clients die alleen headers meesturen. Zie de MCP-servergids voor de OAuth-setup.
Wat kan de API vandaag?
Twee operaties: create_quiz (een conceptquiz met gescoorde vragen aanmaken) en get_results (aantal inzendingen en scoreverdeling van een van je quizzen). Meer operaties staan gepland — laat via het feedbackformulier in het dashboard weten wat je nodig hebt.