Actions42
- addHumanUser
- getUserByID
- listUsers
- setEmail
- resendEmailCode
- verifyEmail
- setPhone
- removePhone
- resendPhoneCode
- verifyPhone
- updateHumanUser
- deactivateUser
- reactivateUser
- lockUser
- unlockUser
- deleteUser
- registerPasskey
- verifyPasskeyRegistration
- createPasskeyRegistrationLink
- listPasskeys
- removePasskey
- registerU2F
- verifyU2FRegistration
- removeU2F
- registerTOTP
- verifyTOTPRegistration
- removeTOTP
- addOTPSMS
- removeOTPSMS
- addOTPEmail
- removeOTPEmail
- startIdentityProviderIntent
- retrieveIdentityProviderIntent
- addIDPLink
- listIDPLinks
- removeIDPLink
- passwordReset
- setPassword
- listAuthenticationMethodTypes
- createInviteCode
- resendInviteCode
- verifyInviteCode
Overview
This node integrates with the Zitadel API, allowing users to perform various operations on different Zitadel services. Specifically, for the removeIDPLink operation under the UserService resource, it removes a linked Identity Provider (IDP) connection from a user account. This is useful in scenarios where you want to unlink an external authentication provider (like Google, GitHub, or any SSO provider) from a user's Zitadel profile.
Practical examples include:
- Cleaning up user accounts by removing obsolete or compromised IDP links.
- Managing user authentication methods programmatically.
- Automating user lifecycle management workflows involving identity providers.
Properties
| Name | Meaning |
|---|---|
| Service | The Zitadel service to interact with. Options: UserService, OrganizationService, AuthService, ManagementService, AdminService, ZITADELActions, UserSchemaService. Default is UserService. |
| userId | The unique identifier of the user from whom the IDP link will be removed. |
| idpId | The identifier of the Identity Provider (IDP) to unlink from the user. |
| linkedUserId | The identifier of the linked user account within the specified IDP to remove the link for. |
Output
The node outputs a JSON object representing the response from the Zitadel API after attempting to remove the IDP link. The structure depends on the API's response but generally includes confirmation of the unlinking action or error details if the operation failed.
No binary data output is produced by this node.
Example output JSON snippet:
{
"details": "IDP link removed successfully",
"userId": "example-user-id",
"idpId": "example-idp-id",
"linkedUserId": "example-linked-user-id"
}
Dependencies
- Requires an API authentication token credential for Zitadel (referred generically as an API key or personal access token).
- The node uses gRPC clients generated for Zitadel services.
- Network access to the Zitadel API endpoint (
https://zitadel.studentcouncil.dk) is necessary. - No additional environment variables are explicitly required beyond the API credentials.
Troubleshooting
Common issues:
- Invalid or missing API token: Ensure the API key credential is correctly configured and has sufficient permissions.
- Incorrect userId, idpId, or linkedUserId: Verify that these identifiers exist and are correct in the Zitadel system.
- Network connectivity problems: Confirm that the node can reach the Zitadel API endpoint.
Error messages:
- Authorization errors typically indicate invalid or expired tokens; refresh or update credentials.
- Not found errors suggest the specified user or IDP link does not exist; double-check input values.
- Parsing errors may occur if input parameters are malformed JSON; ensure string inputs are valid or plain strings as expected.
Links and References
- Zitadel Official Documentation
- Zitadel API Reference
- n8n Documentation (for general node usage and credential setup)