Erhalten Sie jeden neuen bloo.Cards-Eintrag in Ihren Systemen.
Eine Nur-Lese-API und signierte Webhooks, um Ihre Kontakte, Scans und Formulare an Ihre Tools anzubinden. Einfach, sicher, in der EU gehostet.
Nur ausgehend · schreibgeschützt · in der EU gehostet
Drei Geheimnisse, drei Rollen
| Geheimnis | Rolle | Hinweise |
|---|---|---|
bc_live_… | API-Schlüssel: identifiziert Ihr Unternehmen, schreibgeschützt | Im Bereich Entwickler erstellt. Einmal angezeigt, SHA-256-Fingerabdruck gespeichert, widerrufbar. |
whsec_… | Signaturgeheimnis für Webhooks | Um zu prüfen, dass der Webhook wirklich von bloo.Cards stammt (HMAC-SHA256). |
| CRM-Zugangsdaten | Verschlüsselt gespeichert, nie erneut angezeigt | Verschlüsselung je Organisation (BlooCrypto). Nur für den ausgehenden Versand an Ihr CRM verwendet. |
Die /v1-API Früher Zugang
Basis: https://bloo.cards/v1 · Authentifizierung: Header Authorization: Bearer bc_live_… (nie in der URL).
| Methode | Rolle |
|---|---|
GET /v1/me | Unternehmen und Geltungsbereich des Schlüssels (Verbindungstest) |
GET /v1/contacts?since=… | Neue Kontakte seit einem Zeitpunkt (ISO 8601) |
GET /v1/hooks | Liste Ihrer Webhook-Abonnements |
POST /v1/hooks | Ein Abonnement erstellen { url, events[] } (gibt das Geheimnis einmal zurück) |
DELETE /v1/hooks/{id} | Ein Abonnement deaktivieren |
Beispiel — die Verbindung testen
curl -H "Authorization: Bearer bc_live_xxx" \
https://bloo.cards/v1/me
$ch = curl_init('https://bloo.cards/v1/me');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => ['Authorization: Bearer bc_live_xxx'],
CURLOPT_RETURNTRANSFER => true,
]);
$me = json_decode(curl_exec($ch), true);
const r = await fetch('https://bloo.cards/v1/me', {
headers: { Authorization: 'Bearer bc_live_xxx' }
});
const me = await r.json();
import requests
r = requests.get(
'https://bloo.cards/v1/me',
headers={'Authorization': 'Bearer bc_live_xxx'})
me = r.json()
Webhooks Früher Zugang
Abonnieren Sie eine URL auf Ereignisse; bloo.Cards sendet dorthin bei jedem Vorkommen ein signiertes POST, mit Wiederholungen bei Fehlern.
Ereignisse
contact.exchanged · lead.ocr_scanned · form.submitted · booking.requested · contact.deleted
Empfangene Hülle
POST https://votre-serveur.example/bloo-webhook
X-Bloo-Signature: t=1790456846,v1=9f2b…c3
{
"id": "evt_ab12cd34",
"type": "contact.exchanged",
"created_at": "2026-09-26T21:00:00Z",
"data": {
"contact": {
"first_name": "Marie", "last_name": "Dupont",
"email": "marie@exemple.be", "company": "Exemple SA",
"job_title": "Directrice", "source": "exchange",
"context": "Salon de Bruxelles"
}
}
}
Die Signatur prüfen (PHP)
$body = file_get_contents('php://input');
$header = $_SERVER['HTTP_X_BLOO_SIGNATURE'] ?? ''; // t=…,v1=…
parse_str(strtr($header, ',', '&'), $p);
$expected = hash_hmac('sha256', $p['t'] . '.' . $body, $whsec);
if (!hash_equals($expected, $p['v1'] ?? '')) {
http_response_code(401); exit; // signature invalide
}
// OK : traitez $body (JSON)
Öffentliche Kartendaten
Öffentliche Karten stellen ihre Daten bereits als JSON-LD und über ?format=json bereit, ohne Authentifizierung. Ideal für Agenten und Indexierung. Siehe bloo.Cards für KI.
Bereit, bloo.Cards anzubinden?
Erstellen Sie Ihren Schlüssel im Bereich Entwickler Ihres Kontos oder fordern Sie frühen Zugang an. Zu den Automatisierungen.
Meinen API-Schlüssel erstellen