REST-API
PrimoCRM registriert seine REST-Routen unter dem Namensraum primocrm/v1 bei
rest_api_init. Die Admin-App verwendet genau dieselbe Endpunkte, sodass alles, was die Benutzeroberfläche tut, auch programmgesteuert verfügbar ist.
Basis-URL
Abschnitt betitelt „Basis-URL“https://yoursite.com/wp-json/primocrm/v1/Authentifizierung
Abschnitt betitelt „Authentifizierung“Jeder Endpunkt verfügt über einen Berechtigungs-Callback, der eine WordPress-Berechtigung überprüft, sodass ein Aufrufer authentifiziert und autorisiert sein muss.
- Aus der Admin-App (gleicher Ursprung): Anfragen werden durch die angemeldete Sitzung und ein REST-Nonce authentifiziert. WordPress sendet das Nonce im Header
X-WP-Nonce. Dies geschieht automatisch für Code, der innerhalb von wp-admin ausgeführt wird. - Aus externem Code: Verwenden Sie eine von WordPress für die REST-API akzeptierte Authentifizierungsmethode, wie zum Beispiel Anwendungspasswörter, zusammen mit einem Benutzer, der über die erforderliche Berechtigung verfügt. PrimoCRM Pro fügt dedizierte API-Schlüssel für den programmgesteuerten Zugriff hinzu.
Endpunkte, die Einstellungen, den Versand oder destruktive Operationen verwalten, erfordern eine Berechtigung auf Administrator-Ebene. Lese- und routinemäßige Kontaktoperationen erfordern die CRM-Zugriffsberechtigung.
Repräsentative Endpunkte
Abschnitt betitelt „Repräsentative Endpunkte“Die folgende Liste ist eine repräsentative Auswahl und nicht vollständig. Erkunden Sie den vollständigen Satz über den Netzwerk-Tab des Browsers, während Sie die Admin-App verwenden, da die Benutzeroberfläche dieselben Routen aufruft.
Kontakte
Abschnitt betitelt „Kontakte“| Methode | Pfad | Zweck |
|---|---|---|
| GET | /contacts |
Kontakte auflisten (unterstützt Paging und Filter) |
| POST | /contacts |
Einen Kontakt erstellen |
| GET | /contacts/{id} |
Einen Kontakt abrufen |
| PUT | /contacts/{id} |
Einen Kontakt aktualisieren |
| DELETE | /contacts/{id} |
Einen Kontakt löschen |
| POST | /contacts/bulk-action |
Eine Massenaktion auf viele Kontakte anwenden |
| POST | /contacts/bulk-delete |
Viele Kontakte löschen |
| GET | /contacts/statuses |
Verfügbare Status auflisten |
| GET | /contacts/{id}/activities |
Aktivitätsprotokoll eines Kontakts |
| GET | /contacts/{id}/emails |
An einen Kontakt gesendete E-Mails |
Automatisierungen
Abschnitt betitelt „Automatisierungen“| Methode | Pfad | Zweck |
|---|---|---|
| GET | /automations/triggers |
Alle registrierten Auslöser |
| GET | /automations/actions |
Alle registrierten Aktionen |
| GET | /automations/condition-options |
Felder und Operatoren für den Bedingungs-Builder |
Formulare und Smart Codes
Abschnitt betitelt „Formulare und Smart Codes“| Methode | Pfad | Zweck |
|---|---|---|
| GET | /forms/field-types |
Alle registrierten Formulartypen |
| GET | /smart-codes |
Der Personalisierungs-Tag-Katalog |
Kampagnen, Sequenzen, Listen, Tags, Vorlagen, Migration und Einstellungen stellen jeweils eigene Routen unter demselben Namensraum bereit und folgen demselben Controller-Muster.
Beispielanfrage
Abschnitt betitelt „Beispielanfrage“Erstellen eines Kontakts mit Anwendungspasswort-Authentifizierung:
curl -X POST https://yoursite.com/wp-json/primocrm/v1/contacts \ -u "admin:APPLICATION_PASSWORD" \ -H "Content-Type: application/json" \ -d '{"email":"ada@example.com","first_name":"Ada","status":"subscribed"}'Antwortformat und Gating
Abschnitt betitelt „Antwortformat und Gating“Erfolgreiche Antworten geben JSON zurück. Wenn eine Pro-Funktion oder ein Tariflimit eine Anfrage blockiert, gibt PrimoCRM einen 403 zurück, dessen Hauptteil pro_lock: true enthält. Die Admin-App verwendet dies, um die Upgrade-Aaufforderung anzuzeigen. Behandeln Sie dieses Format, wenn Sie Pro-gesperrte Endpunkte aus Ihrem eigenen Code aufrufen.