Zum Hauptinhalt springen

Webhooks-Anfrage

Sobald ein gültiges Hook-Ereignis ausgelöst wird, sucht Logto nach entsprechenden Webhooks und sendet eine POST-Anfrage pro Hook-Konfiguration.

Anfrage-Header

SchlüsselAnpassbarAnmerkungen
user-agentStandardmäßig Logto (https://logto.io/).
content-typeStandardmäßig application/json.
logto-signature-sha-256Die Signatur des Anfragetextes, siehe Sicherung deiner Webhooks.

Du kannst anpassbare Header überschreiben, indem du die Anfrage-Header anpasst mit demselben Schlüssel.

Anfragetext für Interaktions-Hook-Ereignisse

Verfügbare Ereignisse: PostRegister, PostSignIn, PostResetPassword

Der Anfragetext ist ein JSON-Objekt, das drei Arten von Datenfeldern enthält:

type UserEntity = {
id: string;
username?: string;
primaryEmail?: string;
primaryPhone?: string;
name?: string;
avatar?: string;
customData?: object;
identities?: object;
lastSignInAt?: string;
createdAt?: string;
applicationId?: string;
isSuspended?: boolean;
};
type ApplicationEntity = {
id: string;
name: string;
description?: string;
};
FeldTypOptionalAnmerkungen
hookIdstringDer Bezeichner in Logto.
eventstringWelches Ereignis diesen Hook auslöst.
createdAtstringDie Erstellungszeit der Nutzlast im ISO-Format.
interactionEventstringDas Interaktionsereignis, das diesen Hook auslöst.
sessionIdstringDie Sitzungs-ID (nicht Interaktions-ID) für dieses Ereignis, falls zutreffend.
userAgentstringDer User-Agent für die Anfrage, die diesen Hook auslöst.
userIpstringDie IP-Adresse für die Anfrage, die diesen Hook auslöst.
userIdstringDie zugehörige Benutzer-ID für dieses Ereignis, falls zutreffend.
userUserEntityDie zugehörige Benutzerentität für dieses Ereignis, falls zutreffend.
applicationIdstringDie zugehörige Anwendungs-ID für dieses Ereignis, falls zutreffend.
applicationApplicationEntityDie zugehörigen Anwendungsinformationen für dieses Ereignis, falls zutreffend.

Siehe Benutzer und Anwendungen Referenz für detaillierte Felderklärungen.

Anfragetext für Datenmutations-Hook-Ereignisse

Standard-Anfragetextfelder

FeldTypOptionalAnmerkungen
hookIdstringDer Bezeichner in Logto.
eventstringWelches Ereignis diesen Hook auslöst.
createdAtstringDie Erstellungszeit der Nutzlast im ISO-Format.
userAgentstringDer User-Agent für die Anfrage.
ipstringDie IP-Adresse für die Anfrage.

Interaktions-API-Kontextfelder

Datenmutations-Hook-Ereignisse, die durch Benutzerinteraktions-API-Aufrufe ausgelöst werden.

Verfügbare Ereignisse: User.Created, User.Data.Updated

FeldTypOptionalAnmerkungen
interactionEventstringDas Interaktionsereignis, das diesen Hook auslöst.
sessionIdstringDie Sitzungs-ID (nicht Interaktions-ID) für dieses Ereignis, falls zutreffend.
applicationIdstringDie zugehörige Anwendungs-ID für dieses Ereignis, falls zutreffend.
applicationApplicationEntityDie zugehörigen Anwendungsinformationen für dieses Ereignis, falls zutreffend.

Management-API-Kontextfelder

Datenmutations-Hook-Ereignisse, die durch Management-API-Aufrufe ausgelöst werden.

FeldTypOptionalAnmerkungen
pathstringDer Pfad des API-Aufrufs, der diesen Hook auslöst.
methodstringDie Methode des API-Aufrufs, der diesen Hook auslöst.
statusnumberDer Antwortstatuscode des API-Aufrufs, der diesen Hook auslöst.
paramsobjectDie Anfrage-Koa-Pfadparameter des API-Aufrufs, der diesen Hook auslöst.
matchedRoutestringDie Koa-übereinstimmende Route des API-Aufrufs, der diesen Hook auslöst. Logto verwendet dieses Feld, um die aktivierten Hook-Ereignisse zuzuordnen.

Daten-Nutzlastfelder

Benutzerereignisse

EreignisFeldTypOptionalAnmerkungen
User.CreateddataUserEntityDie erstellte Benutzerentität für dieses Ereignis.
User.Data.UpdateddataUserEntityDie aktualisierte Benutzerentität für dieses Ereignis.
User.Deleteddatanull/

Rollenereignisse

type Role = {
id: string;
name: string;
description: string;
type: 'User' / 'MachineToMachine';
isDefault: boolean;
};
type Scope = {
id: string;
name: string;
description: string;
resourceId: string;
createdAt: number;
};
EreignisFeldTypOptionalAnmerkungen
Role.CreateddataRoleDie erstellte Rollenentität für dieses Ereignis.
Role.Data.UpdateddataRoleDie aktualisierte Rollenentität für dieses Ereignis.
Role.Deleteddatanull
Role.Scope.UpdateddataScope[]Die aktualisierten Berechtigungen, die der Rolle zugewiesen sind.
Role.Scope.UpdatedroleIdstringDie Rollen-ID, der Berechtigungen zugewiesen sind. (Nur verfügbar, wenn das Ereignis durch das Erstellen einer neuen Rolle mit vorab zugewiesenen Berechtigungen ausgelöst wurde)

Berechtigungsereignisse (Scope)

EreignisFeldTypOptionalAnmerkungen
Scope.CreateddataScopeDie erstellte Berechtigungsentität für dieses Ereignis.
Scope.Data.UpdateddataScopeDie aktualisierte Berechtigungsentität für dieses Ereignis.
Scope.Deleteddatanull/

Organisationsereignisse

type Organization = {
id: string;
name: string;
description?: string;
customData: object;
createdAt: number;
};
EreignisFeldTypOptionalAnmerkungen
Organization.CreateddataOrganizationDie erstellte Organisationsentität für dieses Ereignis.
Organization.Data.UpdateddataOrganizationDie aktualisierte Organisationsentität für dieses Ereignis.
Organization.Deleteddatanull/
Organization.Membership.Updateddatanull/

Organisationsrollenereignisse

type OrganizationRole = {
id: string;
name: string;
description?: string;
};
type OrganizationScope = {
id: string;
name: string;
description?: string;
};
EreignisFeldTypOptionalAnmerkungen
OrganizationRole.CreateddataOrganizationRoleDie erstellte Organisationsrollenentität für dieses Ereignis.
OrganizationRole.Data.UpdateddataOrganizationRoleDie aktualisierte Organisationsrollenentität für dieses Ereignis.
OrganizationRole.Deleteddatanull/
OrganizationRole.Scope.Updateddatanull/
OrganizationRole.Scope.UpdatedorganizationRoleIdstringDie Rollen-ID, der Berechtigungen zugewiesen sind. (Nur verfügbar, wenn das Ereignis durch das Erstellen einer neuen Rolle mit vorab zugewiesenen Berechtigungen ausgelöst wurde)

Organisationsberechtigungsereignisse (OrganizationScope)

EreignisFeldTypOptionalAnmerkungen
OrganizationScope.CreateddataOrganizationScopeDie erstellte Organisationsberechtigungsentität.
OrganizationScope.Data.UpdateddataOrganizationScopeDie aktualisierte Organisationsberechtigungsentität.
OrganizationScope.Deleteddatanull/