PlanDocket

Notizen

Business+

Verwalten Sie interne Notizen.

Erforderliche Bereiche: contacts applications participants invoices events
Zugriffsstufe: GET {scope}:read POST / PUT / PATCH / DELETE {scope}:write Mehr zu Zugriffsstufen
Der erforderliche Bereich hängt vom Entitätstyp ab: Kontakt-Notizen benötigen den Bereich "contacts", Bewerbungs-Notizen "applications" usw. Notizen zu anderen Entitätstypen (z. B. Stände oder Aufgaben) sind über die API nicht zugänglich (404). Ein Schlüssel handelt für die Person, die ihn erstellt hat: Er kann nur deren eigene Notizen ändern oder löschen, außer sie ist Super-Admin (sonst 403). Lesen und Anheften ist bei allen Notizen möglich; "can_modify" zeigt, ob der Schlüssel eine Notiz ändern darf.

Endpunkte

GET /api/v1/notes

Alle Notizen auflisten

GET /api/v1/notes/{id}

Einzelne Notiz abrufen

POST /api/v1/notes

Neue Notiz erstellen

PUT/PATCH /api/v1/notes/{id}

Notiz aktualisieren

DELETE /api/v1/notes/{id}

Notiz löschen

POST /api/v1/notes/{id}/pin

Notiz anheften/lösen

Abfrageparameter

Parameter Beschreibung
entity_type Entitätstyp (erforderlich: contact, application, event_participant, invoice, event)
entity_id Entitäts-ID (erforderlich)
note_type Nach Notiztyp filtern (info, warning, followup, internal)
is_pinned Nach Anheftstatus filtern (1)
page Seitennummer (Standard: 1)
per_page Ergebnisse pro Seite (Standard: 25, max. 100)

Request-Schema

Parameter Typ Erforderlich Beschreibung
entity_type string Ja Entitätstyp (erforderlich: contact, application, event_participant, invoice, event)
entity_id integer Ja Entitäts-ID (erforderlich)
note_text string Ja Notizinhalt (erforderlich)
note_type string Nein Notiztyp (info, warning, followup, internal; Standard: info)
is_pinned boolean Nein Ob die Notiz angeheftet ist

Response-Schema

Feld Typ
id integer
entity_type string
entity_id integer
admin_id integer
admin_name string|null
note_text string
note_type string
is_pinned boolean
created_at string
updated_at string

Codebeispiele

curl -X GET "https://ihr-mandant.plandocket.com/api/v1/notes?entity_type=contact&entity_id=123" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"
<?php
$apiKey = 'YOUR_API_KEY';
$baseUrl = 'https://ihr-mandant.plandocket.com';

$ch = curl_init();
curl_setopt_array($ch, [
    CURLOPT_URL => $baseUrl . '/api/v1/notes?entity_type=contact&entity_id=123',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer ' . $apiKey,
    ],
]);

$response = curl_exec($ch);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const apiKey = 'YOUR_API_KEY';
const baseUrl = 'https://ihr-mandant.plandocket.com';

const response = await fetch(`${baseUrl}/api/v1/notes?entity_type=contact&entity_id=123`, {
  method: 'GET',
  headers: {
    'Authorization': `Bearer ${apiKey}`,
  },
});

const data = await response.json();
console.log(data);
import requests

api_key = 'YOUR_API_KEY'
base_url = 'https://ihr-mandant.plandocket.com'

headers = {
    'Authorization': f'Bearer {api_key}',
}

response = requests.get(f'{base_url}/api/v1/notes?entity_type=contact&entity_id=123', headers=headers)
data = response.json()
print(data)

Beispiel-Antwort

200 OK
{
    "data": [
        {
            "id": 1,
            "entity_type": "string",
            "entity_id": 1,
            "admin_id": 1,
            "admin_name": "string",
            "note_text": "string",
            "note_type": "string",
            "is_pinned": true,
            "created_at": "2026-01-15T10:00:00+01:00",
            "updated_at": "2026-01-15T10:00:00+01:00"
        }
    ],
    "meta": {
        "current_page": 1,
        "per_page": 25,
        "total": 1,
        "total_pages": 1,
        "entity_type": "contact",
        "entity_id": 123
    }
}
API Version v1.0