All pages
Powered by GitBook
1 of 1

Loading...

List Lifecycle Manager Datasources

Lists all data sources that have enabled lifecycle management and their supported capabilities

Endpoint

GET /api/v1/providers/datasources/lifecycle_managers

Description

Lists all data sources that have enabled lifecycle management and their detailed capabilities. This endpoint shows which systems can be used as sources of identity information and as targets for access management operations in Veza Lifecycle Management.

Use this endpoint to:

  • Discover which datasources support lifecycle management

  • View the capabilities each datasource provides

  • Get datasource IDs needed for other lifecycle management operations

  • Identify available actions, syncable attributes, and grantable entitlements for each datasource

API Reference

Query Parameters

Parameter
Type
Required?
Description

Request Examples

Response Examples

Response Fields

Basic Datasource Information

  • id: Unique identifier for the datasource

  • name: Human-readable name of the datasource

  • provider_type: The type of integration (e.g., SCIM, WORKDAY, ACTIVE_DIRECTORY)

  • external_id: External system identifier or endpoint URL

Supported Capabilities

The supported_capabilities field indicates what operations each datasource can perform:

  • IDENTITY_SOURCE: Can provide identity information for lifecycle management

  • ACCESS_TARGET: Can receive and execute access management operations

Available Actions

The available_actions array details specific lifecycle management operations supported:

  • action_type: Type of action (e.g., MANAGE_RELATIONSHIPS)

  • description: Human-readable description of the action

  • supported_entity_types: Entity types this action can work with (User, Group, etc.)

  • supported_relationship_types: Relationship types this action can manage (MemberOf, etc.)

Syncable Attributes

The syncable_attributes array shows which entity attributes can be synchronized:

  • entity_type: The type of entity (User, Group, etc.)

  • attributes: Array of attribute definitions including:

    • name: Attribute name in the target system

Grantable Entitlements

The grantable_entitlements array shows what access can be granted through this datasource:

  • entity_type: Type of entity that can grant access (typically Group)

  • entitlement_type: Type of entitlement relationship (MemberOf, etc.)

  • description: What access is granted through this entitlement

page_token

string

Optional

The token specifying the specific page of results to retrieve

{
  "values": [
    {
      "id": "549a4b5e-0328-4c87-a19d-ee8a2926d1aa",
      "name": "Workday Integration", 
      "provider_type": "WORKDAY",
      "external_id": "https://wd5-impl-services1.workday.com/veza_preview",
      "lifecycle_management_enabled": true,
      "supported_capabilities": [
        "IDENTITY_SOURCE",
        "ACCESS_TARGET"
      ]
    },
    {
      "id": "2b1c8d4e-5f2a-4b3c-9e7f-1d2e3f4a5b6c",
      "name": "Active Directory",
      "provider_type": "ACTIVE_DIRECTORY", 
      "external_id": "corp.example.com",
      "lifecycle_management_enabled": true,
      "supported_capabilities": [
        "ACCESS_TARGET"
      ]
    }
  ],
  "has_more": false,
  "next_page_token": ""
}
{
  "values": [
    {
      "id": "549a4b5e-0328-4c87-a19d-ee8a2926d1aa",
      "name": "SCIM Demo Server",
      "provider_type": "SCIM",
      "external_id": "https://scim.example.com",
      "lifecycle_management_enabled": true,
      "supported_capabilities": [
        "ACCESS_TARGET"
      ],
      "available_actions": [
        {
          "action_type": "MANAGE_RELATIONSHIPS",
          "description": "Add or remove user memberships in groups",
          "supported_entity_types": ["User", "Group"],
          "supported_relationship_types": ["MemberOf"]
        }
      ],
      "syncable_attributes": [
        {
          "entity_type": "User",
          "attributes": [
            {
              "name": "userName",
              "type": "string",
              "required": true,
              "description": "Primary identifier for the user"
            },
            {
              "name": "displayName", 
              "type": "string",
              "required": false,
              "description": "Display name for the user"
            },
            {
              "name": "emails",
              "type": "array",
              "required": false,
              "description": "Email addresses associated with the user"
            }
          ]
        },
        {
          "entity_type": "Group",
          "attributes": [
            {
              "name": "displayName",
              "type": "string", 
              "required": true,
              "description": "Display name for the group"
            }
          ]
        }
      ],
      "grantable_entitlements": [
        {
          "entity_type": "Group",
          "entitlement_type": "MemberOf",
          "description": "Grant membership in the specified group"
        }
      ]
    }
  ],
  "has_more": false,
  "next_page_token": ""
}

lifecycle_management_enabled: Whether LCM is enabled for this datasource

type: Data type (string, array, boolean, etc.)
  • required: Whether the attribute is required

  • description: Purpose and usage of the attribute

  • filter

    string

    Optional

    When present, only returns data sources matching the filter

    order_by

    string

    Optional

    Sort results by specified field

    page_size

    integer

    Optional

    curl -X GET "$BASE_URL/api/v1/providers/datasources/lifecycle_managers" \
      -H "authorization: Bearer $VEZA_TOKEN"
    curl -X GET "$BASE_URL/api/v1/providers/datasources/lifecycle_managers?page_size=10" \
      -H "authorization: Bearer $VEZA_TOKEN"

    The maximum number of results to return. Fewer results may be returned even when more pages exist

    Authentication Required

    This endpoint requires a valid Veza API key for authentication.

    See Authentication for more about creating and managing API keys.

    All requests must include the API key as a Bearer token in the Authorization header.

    Example:

    curl -X GET "$BASE_URL/api/preview/keys" \
      -H "authorization: Bearer $VEZA_TOKEN"
    get
    Authorizations
    Query parameters
    filterstringOptional
    order_bystringOptional
    page_sizeinteger · int32Optional

    The maximum number of results to be returned. Fewer results may be returned even when more pages exist.

    page_tokenstringOptional

    The token specifying the specific page of results to retrieve.

    Responses
    200

    OK

    application/json
    default

    Default error response

    application/json
    get
    {
      "values": [
        {
          "id": "text",
          "enabled": true,
          "datasource": {},
          "definition": {
            "source_of_identity_definition": {
              "entity_type": "text"
            },
            "actions": [
              {
                "type": 1,
                "idempotent": true,
                "input_entity_types": [
                  {
                    "name": "text",
                    "description": "text",
                    "available_entity_types": [
                      "text"
                    ]
                  }
                ],
                "output_entity_types": [
                  {
                    "name": "text",
                    "description": "text",
                    "available_entity_types": [
                      "text"
                    ]
                  }
                ],
                "definition": {
                  "@type": "text",
                  "ANY_ADDITIONAL_PROPERTY": "anything"
                }
              }
            ]
          }
        }
      ],
      "next_page_token": "text",
      "has_more": true
    }
    GET /api/v1/providers/datasources/lifecycle_managers HTTP/1.1
    Host: your-tenant.cookiecloud.ai
    Authorization: Bearer JWT
    Accept: */*