Zitadel icon

Zitadel

Interact with the Zitadel API

Overview

This node integrates with the Zitadel API, allowing users to interact with various Zitadel services programmatically. Specifically, for the listUsers operation under the default resource, it fetches a list of users from the selected Zitadel service (e.g., UserService or ManagementService). This is useful in scenarios where you want to automate user management tasks such as retrieving user lists for reporting, synchronization with other systems, or administrative audits.

Practical examples include:

  • Fetching paginated user data with sorting and filtering options.
  • Integrating Zitadel user data into CRM or HR systems.
  • Automating user access reviews by listing all active users.

Properties

Name Meaning
Service The Zitadel service to use. Options: UserService, OrganizationService, AuthService, ManagementService, AdminService, ZITADELActions, UserSchemaService. Default is UserService.
query JSON object specifying query parameters such as pagination (limit, offset) and order (ASC or DESC). Used to control which users are returned and how they are sorted. Example: { "limit": 10, "offset": 0, "order": "ASC" }
sortingColumn String specifying the column name by which to sort the user list.
queries JSON array for additional query filters or conditions applied when listing users.

Note: The properties query, sortingColumn, and queries appear for both UserService and ManagementService when performing the listUsers operation.

Output

The node outputs an array of items where each item contains a json field holding the response from the Zitadel API's listUsers method. The structure of this JSON depends on the Zitadel API response but generally includes user details such as user IDs, names, emails, and metadata related to the users fetched.

If binary data were involved, it would be summarized here, but this node focuses on JSON user data output.

Example output snippet (conceptual):

{
  "json": {
    "users": [
      {
        "id": "user-id-1",
        "email": "user1@example.com",
        "displayName": "User One",
        ...
      },
      {
        "id": "user-id-2",
        "email": "user2@example.com",
        "displayName": "User Two",
        ...
      }
    ],
    "totalCount": 100,
    "limit": 10,
    "offset": 0
  }
}

Dependencies

  • Requires an API authentication token (Personal Access Token) for Zitadel, provided via node credentials.
  • Connects to the Zitadel API endpoint at https://zitadel.studentcouncil.dk.
  • Uses gRPC client libraries internally to communicate with Zitadel services.
  • No additional external dependencies beyond the Zitadel API and its authentication.

Troubleshooting

  • Invalid or missing API token: The node requires a valid Personal Access Token credential. If authentication fails, ensure the token is correctly configured in the node credentials.
  • Malformed JSON input: The query and queries fields expect valid JSON strings. Errors parsing these will cause failures. Validate JSON syntax before running.
  • Unsupported operation or service: Selecting an operation not supported by the chosen service will result in no action or empty output.
  • Network issues: Connectivity problems to the Zitadel API endpoint will cause request failures. Verify network access and endpoint availability.
  • Empty results: If no users match the query criteria, the output will contain an empty user list. Adjust query parameters accordingly.

Links and References

Discussion