# User Management (Core)

These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.

## List permissions

> This endpoint returns all available permissions in the FFT platform.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PermissionsResponse":{"properties":{"permissions":{"description":"The list of permissions","items":{"$ref":"#/components/schemas/Permission"},"type":"array"},"total":{"description":"The total number of (filtered) permissions","type":"number"}},"required":["permissions","total"],"title":"PermissionsResponse","type":"object","description":"PermissionsResponse"},"Permission":{"properties":{"description":{"description":"The localized description of the permission","type":"string"},"group":{"description":"The group of the permission","enum":["INVENTORY","ORDER_MANAGEMENT","SYSTEM_ADMINISTRATION","FOUNDATION","USER_MANAGEMENT","OPERATIONS","ADMIN","CORE"],"type":"string"},"key":{"description":"The key of the permission","enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"operation":{"description":"The operation of the permission","enum":["READ","WRITE","DELETE","REROUTE","LIST","MODIFY","CREATE","RESET","FORCE_CANCEL","UNLOCK","CANCEL","CONSUMER_WRITE","CUSTOM_ATTRIBUTES_WRITE","LINEITEM_WRITE","QUANTITY_INCREASE","QUANTITY_DECREASE","ADD"],"type":"string"},"subGroup":{"description":"The subgroup of the permission","enum":["ORDER","LINE_ITEM","SIMULATION_ORDER","USER","CURRENT_USER","ROLE","EXPIRY","AUDIT","FACILITY","FACILITY_GROUP","CONFIG","ROUTING_CONFIG","ROUTING","OIDC_PROVIDER_CONFIG","PROMISES_CONFIG","LOCALE","CARRIER","RETURN","PARCEL","SHIPMENT","HANDOVERJOB","HANDOVER_JOB","PICKJOB","PICK_JOB","PICKRUN","PICK_RUN","PACKJOB","PACK_JOB","PACKING_SOURCE_CONTAINER","PACKINGCONTAINER_TYPE","PACKING_CONTAINER_TYPE","RESTOW_ITEM","TAG","STOCK","EXTERNAL_STOCK_CHANGE_REASONS","STORAGE_LOCATION","STOW_JOB","NOTIFICATION","NOTIFICATION_CENTER_CONFIG","DOMS_TOOLKIT","ANALYTICS_DASHBOARD","DOCUMENT_SET","INBOUND_PROCESS","TENANT_CONNECTOR_CONFIG","ADMIN_MODULES","CUSTOM_SERVICE","VALIDATIONS","SERVICE_JOB","LINKED_SERVICE_JOBS","OPERATION_STATISTICS","DOMS_STATISTICS","AVAILABILITY_CHANNEL","HANDOVER_CONTAINER","STACKS","CATEGORY","PERMISSION","KPI","LOADUNIT_TYPE","LOAD_UNIT_TYPE","LOADUNIT","LOAD_UNIT","MEASUREMENT_UNIT","EVENT","SUBSCRIPTION","SUBSTITUTE","PROCESS","PROCESS_LOGS","EXTERNAL_ACTIONS","OPERATIVE_PROCESS","DELIVERYNOTE","REMOTE_CONFIG","ADMIN_DATA","RESERVATION","FILTER_ENTITY","BRAND","WORKFLOW_DEFINITION","LOOKUP_RECORD","ORDER_RECORD","PACKAGING_UNITS","STOCK_AVAILABILITIES","LISTING","PURCHASE_PRICE","ZONE","SAFETY_STOCK"],"type":"string"}},"required":["operation","key","group","subGroup"],"title":"Permission","type":"object","description":"Permission"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/permissions":{"get":{"deprecated":false,"description":"This endpoint returns all available permissions in the FFT platform.","operationId":"getPermissions","parameters":[{"in":"query","name":"size","required":false,"schema":{"default":25,"maximum":100,"minimum":1,"type":"number"}},{"in":"query","name":"startAfterId","required":false,"schema":{"type":"string"}},{"description":"The key of the permission to filter by","in":"query","name":"key","required":false,"schema":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"}},{"description":"The group of the permission to filter by","in":"query","name":"group","required":false,"schema":{"enum":["INVENTORY","ORDER_MANAGEMENT","SYSTEM_ADMINISTRATION","FOUNDATION","USER_MANAGEMENT","OPERATIONS","ADMIN","CORE"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PermissionsResponse"}}},"description":"The Permissions"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"}},"summary":"List permissions","tags":["User Management (Core)"]}}}}
```

## List roles

> Returns all existing roles, including their permissions and context ceilings.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"Role":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contextLimitations":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contexts":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"created":{"description":"The date when the role was created.","format":"date-time","type":"string"},"customAttributes":{"description":"The custom attributes of the role, which can be used to store additional information.","type":"object"},"description":{"description":"The description of the role, which provides more details about its purpose.","maxLength":100,"type":"string"},"displayName":{"description":"The display name of the role, which is used for user interfaces and may differ from the name (defaults to name if not provided).","maxLength":50,"type":"string"},"lastModified":{"description":"The date when the role was last modified.","format":"date-time","type":"string"},"name":{"description":"The name of the role, which must be unique and is used to identify the role.","maxLength":20,"minLength":3,"type":"string"},"permissions":{"description":"The permissions associated with the role, which define what actions the role can perform.","items":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"maxItems":500,"type":"array"},"version":{"description":"The version of the role.","type":"number"}},"required":["name","permissions","version","created","lastModified"],"title":"Role","type":"object","description":"Role"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/roles":{"get":{"deprecated":false,"description":"Returns all existing roles, including their permissions and context ceilings.","operationId":"getAllRoles","parameters":[],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Role"},"type":"array"}}},"description":"The requested roles."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"}},"summary":"List roles","tags":["User Management (Core)"]}}}}
```

## Create role

> Creates a new custom role.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"RoleForCreation":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contextLimitations":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contexts":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"customAttributes":{"description":"The custom attributes of the role, which can be used to store additional information.","type":"object"},"description":{"description":"The description of the role, which provides more details about its purpose.","maxLength":100,"type":"string"},"displayName":{"description":"The display name of the role, which is used for user interfaces and may differ from the name (defaults to name if not provided).","maxLength":50,"type":"string"},"name":{"description":"The name of the role, which must be unique and is used to identify the role.","maxLength":20,"minLength":3,"type":"string"},"permissions":{"description":"The permissions associated with the role, which define what actions the role can perform.","items":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"maxItems":500,"type":"array"}},"required":["name","permissions"],"title":"RoleForCreation","type":"object","description":"RoleForCreation"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"Role":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contextLimitations":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contexts":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"created":{"description":"The date when the role was created.","format":"date-time","type":"string"},"customAttributes":{"description":"The custom attributes of the role, which can be used to store additional information.","type":"object"},"description":{"description":"The description of the role, which provides more details about its purpose.","maxLength":100,"type":"string"},"displayName":{"description":"The display name of the role, which is used for user interfaces and may differ from the name (defaults to name if not provided).","maxLength":50,"type":"string"},"lastModified":{"description":"The date when the role was last modified.","format":"date-time","type":"string"},"name":{"description":"The name of the role, which must be unique and is used to identify the role.","maxLength":20,"minLength":3,"type":"string"},"permissions":{"description":"The permissions associated with the role, which define what actions the role can perform.","items":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"maxItems":500,"type":"array"},"version":{"description":"The version of the role.","type":"number"}},"required":["name","permissions","version","created","lastModified"],"title":"Role","type":"object","description":"Role"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/roles":{"post":{"deprecated":false,"description":"Creates a new custom role.","operationId":"createRole","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleForCreation"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}},"description":"The created role."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"}},"summary":"Create role","tags":["User Management (Core)"]}}}}
```

## Return role

> Returns a role requested by its name.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"Role":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contextLimitations":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contexts":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"created":{"description":"The date when the role was created.","format":"date-time","type":"string"},"customAttributes":{"description":"The custom attributes of the role, which can be used to store additional information.","type":"object"},"description":{"description":"The description of the role, which provides more details about its purpose.","maxLength":100,"type":"string"},"displayName":{"description":"The display name of the role, which is used for user interfaces and may differ from the name (defaults to name if not provided).","maxLength":50,"type":"string"},"lastModified":{"description":"The date when the role was last modified.","format":"date-time","type":"string"},"name":{"description":"The name of the role, which must be unique and is used to identify the role.","maxLength":20,"minLength":3,"type":"string"},"permissions":{"description":"The permissions associated with the role, which define what actions the role can perform.","items":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"maxItems":500,"type":"array"},"version":{"description":"The version of the role.","type":"number"}},"required":["name","permissions","version","created","lastModified"],"title":"Role","type":"object","description":"Role"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/roles/{name}":{"get":{"deprecated":false,"description":"Returns a role requested by its name.","operationId":"getRole","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}},"description":"The requested role."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Return role","tags":["User Management (Core)"]}}}}
```

## Update role

> Updates an existing role (complete replacement).

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"RoleForUpdate":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contextLimitations":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contexts":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"customAttributes":{"description":"The custom attributes of the role, which can be used to store additional information.","type":"object"},"description":{"description":"The description of the role, which provides more details about its purpose.","maxLength":100,"type":"string"},"displayName":{"description":"The display name of the role, which is used for user interfaces and may differ from the name (defaults to name if not provided).","maxLength":50,"type":"string"},"name":{"description":"The name of the role, which must be unique and is used to identify the role.","maxLength":20,"minLength":3,"type":"string"},"permissions":{"description":"The permissions associated with the role, which define what actions the role can perform.","items":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"maxItems":500,"type":"array"},"version":{"description":"The version of the role.","type":"number"}},"required":["name","permissions","version"],"title":"RoleForUpdate","type":"object","description":"RoleForUpdate"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"Role":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contextLimitations":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contexts":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"created":{"description":"The date when the role was created.","format":"date-time","type":"string"},"customAttributes":{"description":"The custom attributes of the role, which can be used to store additional information.","type":"object"},"description":{"description":"The description of the role, which provides more details about its purpose.","maxLength":100,"type":"string"},"displayName":{"description":"The display name of the role, which is used for user interfaces and may differ from the name (defaults to name if not provided).","maxLength":50,"type":"string"},"lastModified":{"description":"The date when the role was last modified.","format":"date-time","type":"string"},"name":{"description":"The name of the role, which must be unique and is used to identify the role.","maxLength":20,"minLength":3,"type":"string"},"permissions":{"description":"The permissions associated with the role, which define what actions the role can perform.","items":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"maxItems":500,"type":"array"},"version":{"description":"The version of the role.","type":"number"}},"required":["name","permissions","version","created","lastModified"],"title":"Role","type":"object","description":"Role"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/roles/{name}":{"put":{"deprecated":false,"description":"Updates an existing role (complete replacement).","operationId":"updateRole","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleForUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}},"description":"The updated role, including all the updates made."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Update role","tags":["User Management (Core)"]}}}}
```

## Delete role

> Deletes an existing role.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"Role":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contextLimitations":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contexts":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"created":{"description":"The date when the role was created.","format":"date-time","type":"string"},"customAttributes":{"description":"The custom attributes of the role, which can be used to store additional information.","type":"object"},"description":{"description":"The description of the role, which provides more details about its purpose.","maxLength":100,"type":"string"},"displayName":{"description":"The display name of the role, which is used for user interfaces and may differ from the name (defaults to name if not provided).","maxLength":50,"type":"string"},"lastModified":{"description":"The date when the role was last modified.","format":"date-time","type":"string"},"name":{"description":"The name of the role, which must be unique and is used to identify the role.","maxLength":20,"minLength":3,"type":"string"},"permissions":{"description":"The permissions associated with the role, which define what actions the role can perform.","items":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"maxItems":500,"type":"array"},"version":{"description":"The version of the role.","type":"number"}},"required":["name","permissions","version","created","lastModified"],"title":"Role","type":"object","description":"Role"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/roles/{name}":{"delete":{"deprecated":false,"description":"Deletes an existing role.","operationId":"deleteRole","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}},"description":"The deleted role."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Delete role","tags":["User Management (Core)"]}}}}
```

## Update role

> Updates an existing role (partial update).

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"RoleForPatch":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contextLimitations":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contexts":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"customAttributes":{"description":"The custom attributes of the role, which can be used to store additional information.","type":"object"},"description":{"description":"The description of the role, which provides more details about its purpose.","maxLength":100,"type":"string"},"displayName":{"description":"The display name of the role, which is used for user interfaces and may differ from the name (defaults to name if not provided).","maxLength":100,"type":"string"},"name":{"description":"The name of the role, which must be unique and is used to identify the role.","type":"string"},"permissions":{"description":"The permissions associated with the role, which define what actions the role can perform.","items":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"maxItems":500,"type":"array"},"version":{"description":"The version of the role.","type":"number"}},"required":["version","name"],"title":"RoleForPatch","type":"object","description":"RoleForPatch"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"Role":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contextLimitations":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contexts":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"created":{"description":"The date when the role was created.","format":"date-time","type":"string"},"customAttributes":{"description":"The custom attributes of the role, which can be used to store additional information.","type":"object"},"description":{"description":"The description of the role, which provides more details about its purpose.","maxLength":100,"type":"string"},"displayName":{"description":"The display name of the role, which is used for user interfaces and may differ from the name (defaults to name if not provided).","maxLength":50,"type":"string"},"lastModified":{"description":"The date when the role was last modified.","format":"date-time","type":"string"},"name":{"description":"The name of the role, which must be unique and is used to identify the role.","maxLength":20,"minLength":3,"type":"string"},"permissions":{"description":"The permissions associated with the role, which define what actions the role can perform.","items":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"maxItems":500,"type":"array"},"version":{"description":"The version of the role.","type":"number"}},"required":["name","permissions","version","created","lastModified"],"title":"Role","type":"object","description":"Role"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/roles/{name}":{"patch":{"deprecated":false,"description":"Updates an existing role (partial update).","operationId":"patchRole","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleForPatch"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}},"description":"The patched role, including all the updates made."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Update role","tags":["User Management (Core)"]}}}}
```

## List roles (search)

> Search for Role

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"RoleSearchPayload":{"properties":{"after":{"deprecated":false,"description":"The cursor to start after for forward pagination. The value is provided in the `pageInfo.endCursor` field of the response. Cannot be used with `before` or `last`.","type":"string"},"before":{"description":"The cursor to start before for backward pagination. The value is provided in the `pageInfo.startCursor` field of the response. Cannot be used with `after` or `size` (first).","type":"string"},"last":{"description":"Number of items to return for backward pagination. Cannot be used with 'size' (first). Default: 20.","maximum":250,"minimum":1,"type":"number"},"options":{"$ref":"#/components/schemas/SearchOptions"},"query":{"$ref":"#/components/schemas/RoleSearchQuery"},"size":{"description":"Number of items to return for forward pagination. Cannot be used with 'last'. Default: 20.","maximum":250,"minimum":1,"type":"number"},"sort":{"description":"Use for sorting the result.","items":{"$ref":"#/components/schemas/RoleSort"},"maxItems":1,"minItems":1,"type":"array"},"startAfterId":{"deprecated":true,"description":"The ID to start after. Deprecated, use `after` with the value provided in `pageInfo.endCursor` instead.","type":"string"}},"required":["query"],"title":"RoleSearchPayload","type":"object","description":"RoleSearchPayload"},"SearchOptions":{"properties":{"withTotal":{"description":"Set to true to include the total count of items in the search result.","type":"boolean"}},"title":"SearchOptions","type":"object","description":"SearchOptions"},"RoleSearchQuery":{"properties":{"and":{"items":{"$ref":"#/components/schemas/RoleSearchQuery"},"maxItems":500,"type":"array"},"description":{"allOf":[{"$ref":"#/components/schemas/StringFilter"}],"description":"Search by description"},"displayName":{"allOf":[{"$ref":"#/components/schemas/StringSearchFilter"}],"description":"Search by displayName"},"name":{"allOf":[{"$ref":"#/components/schemas/StringFilter"}],"description":"Search by name"},"or":{"items":{"$ref":"#/components/schemas/RoleSearchQuery"},"maxItems":500,"type":"array"}},"title":"RoleSearchQuery","type":"object","description":"RoleSearchQuery"},"StringFilter":{"properties":{"eq":{"maxLength":256,"type":"string"},"in":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"},"notEq":{"maxLength":256,"type":"string"},"notIn":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"}},"title":"StringFilter","type":"object","description":"StringFilter"},"StringSearchFilter":{"properties":{"eq":{"maxLength":256,"type":"string"},"in":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"},"like":{"description":"Search by regex pattern","maxLength":256,"type":"string"},"notEq":{"maxLength":256,"type":"string"},"notIn":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"}},"title":"StringSearchFilter","type":"object","description":"StringSearchFilter"},"RoleSort":{"properties":{"displayName":{"enum":["ASC","DESC"],"type":"string"}},"title":"RoleSort","type":"object","description":"RoleSort"},"RolePaginatedResult":{"properties":{"pageInfo":{"allOf":[{"$ref":"#/components/schemas/PageInfo"}],"description":"Pagination information for the search result."},"roles":{"items":{"$ref":"#/components/schemas/Role"},"type":"array"},"total":{"description":"The total number of items matching the search criteria. Only filled, if withTotal is set to true in the search options.","minimum":0,"type":"number"}},"required":["pageInfo","roles"],"title":"RolePaginatedResult","type":"object","description":"RolePaginatedResult"},"PageInfo":{"properties":{"endCursor":{"description":"The cursor to use to fetch the next page of items. Use with parameter `after`.","type":"string"},"hasNextPage":{"description":"If true, there are more items after the current page.","type":"boolean"},"hasPreviousPage":{"description":"If true, there are more items before the current page.","type":"boolean"},"startCursor":{"description":"The cursor to use to fetch the previous page of items.","type":"string"}},"required":["hasNextPage","hasPreviousPage","startCursor","endCursor"],"title":"PageInfo","type":"object","description":"PageInfo"},"Role":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contextLimitations":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"contexts":{"deprecated":true,"description":"Deprecated: Use context instead.","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":100,"type":"array"},"created":{"description":"The date when the role was created.","format":"date-time","type":"string"},"customAttributes":{"description":"The custom attributes of the role, which can be used to store additional information.","type":"object"},"description":{"description":"The description of the role, which provides more details about its purpose.","maxLength":100,"type":"string"},"displayName":{"description":"The display name of the role, which is used for user interfaces and may differ from the name (defaults to name if not provided).","maxLength":50,"type":"string"},"lastModified":{"description":"The date when the role was last modified.","format":"date-time","type":"string"},"name":{"description":"The name of the role, which must be unique and is used to identify the role.","maxLength":20,"minLength":3,"type":"string"},"permissions":{"description":"The permissions associated with the role, which define what actions the role can perform.","items":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"maxItems":500,"type":"array"},"version":{"description":"The version of the role.","type":"number"}},"required":["name","permissions","version","created","lastModified"],"title":"Role","type":"object","description":"Role"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/roles/search":{"post":{"deprecated":false,"description":"Search for Role","operationId":"searchRole","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleSearchPayload"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RolePaginatedResult"}}},"description":"Your search result"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"}},"summary":"List roles (search)","tags":["User Management (Core)"]}}}}
```

## GET /api/users

> List users

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"User":{"properties":{"assignedFacilities":{"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead","items":{"$ref":"#/components/schemas/UserAssignedFacility"},"type":"array"},"assignedRoles":{"description":"The assigned roles of a user","items":{"$ref":"#/components/schemas/AssignedRoles"},"type":"array"},"authenticationProvider":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProvider"}],"description":"The authentication provider of the user"},"authenticationProviderType":{"$ref":"#/components/schemas/SupportedLocale"},"created":{"description":"Creation date of the user","format":"date-time","type":"string"},"customClaims":{"allOf":[{"$ref":"#/components/schemas/CustomClaims"}],"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead"},"email":{"description":"The email of the user","type":"string"},"facilityLimitations":{"description":"Facilities where at least one role of the user has access to. Not present if the user has at least one role which is unrestricted","items":{"type":"string"},"type":"array"},"firstname":{"description":"The first name of the user","type":"string"},"id":{"description":"The id of the user","type":"string"},"lastLogin":{"description":"The last login timestamp of the user","format":"date-time","type":"string"},"lastModified":{"description":"Last modification date of the user","format":"date-time","type":"string"},"lastname":{"description":"The last name of the user","type":"string"},"locale":{"$ref":"#/components/schemas/SupportedLocale"},"username":{"description":"The username of the user","type":"string"},"version":{"description":"Version of the user","type":"number"}},"required":["firstname","lastname","username","id","authenticationProvider","version","assignedRoles"],"title":"User","type":"object","description":"User"},"UserAssignedFacility":{"properties":{"assignedZones":{"description":"The assigned zones of the user","items":{"$ref":"#/components/schemas/UserAssignedZone"},"type":"array"},"facilityRef":{"description":"The id of the assigned facility","type":"string"},"id":{"description":"The id of the assigned facility","type":"string"}},"required":["facilityRef","id"],"title":"UserAssignedFacility","type":"object","description":"UserAssignedFacility"},"UserAssignedZone":{"properties":{"zoneRef":{"description":"The id of the assigned zone","type":"string"}},"required":["zoneRef"],"title":"UserAssignedZone","type":"object","description":"UserAssignedZone"},"AssignedRoles":{"properties":{"context":{"description":"The context limitations of the assigned role","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":50,"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations of the assigned role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"ref":{"description":"The id of the assigned role","type":"string"}},"required":["ref"],"title":"AssignedRoles","type":"object","description":"AssignedRoles"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"AuthenticationProvider":{"properties":{"id":{"description":"The id of the authentication provider","type":"string"},"type":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProviderTypeEnum"}],"description":"The type of the authentication provider"}},"required":["type"],"title":"AuthenticationProvider","type":"object","description":"AuthenticationProvider"},"AuthenticationProviderTypeEnum":{"description":"The type of the authentication provider","enum":["EMAIL_PASSWORD","OIDC","SUPPORT_ACCESS"],"title":"AuthenticationProviderTypeEnum","type":"string"},"SupportedLocale":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />ISO 3166 conform country code and ISO 639-1 conform language code (de_DE, en_US, ch_FR, etc.)","enum":["de_DE","en_US","pl_PL","ru_RU","nl_NL","fr_FR","it_IT","nb_NO","es_ES","cs_CZ","sk_SK","pt_PT","sl_SI","ro_RO","bg_BG","hr_HR","hu_HU"],"type":"string","title":"SupportedLocale"},"CustomClaims":{"properties":{"roles":{"description":"The roles of the user","items":{"$ref":"#/components/schemas/UserRole"},"type":"array"}},"required":["roles"],"title":"CustomClaims","type":"object","description":"CustomClaims"},"UserRole":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations for this role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"facilities":{"deprecated":true,"description":"Facility limitations are now defined in the context with type FACILITY","items":{"type":"string"},"maxItems":23,"type":"array"},"name":{"description":"The name of the role","type":"string"}},"required":["name"],"title":"UserRole","type":"object","description":"UserRole"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/users":{"get":{"deprecated":false,"description":"","operationId":"getAllUsers","parameters":[{"in":"query","name":"size","required":false,"schema":{"default":25,"maximum":100,"minimum":1,"type":"number"}},{"in":"query","name":"startAfterId","required":false,"schema":{"type":"string"}},{"description":"Order the users by this field","in":"query","name":"orderBy","required":false,"schema":{"type":"string"}},{"description":"Filter the users by this facility","in":"query","name":"facilityId","required":false,"schema":{"type":"string"}},{"description":"Include all admins in the result (only applicable if facilityId is set)","in":"query","name":"includeAdminUsers","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}},"description":"The users were successfully returned."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"List users","tags":["User Management (Core)"]}}}}
```

## POST /api/users

> Creates user

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"UserForCreation":{"properties":{"assignedFacilities":{"description":"The assigned facilities of the user","items":{"$ref":"#/components/schemas/UserAssignedFacilityForCreation"},"type":"array"},"assignedRoles":{"description":"The roles which are assigned to the user","items":{"$ref":"#/components/schemas/AssignedRoles"},"maxItems":10,"minItems":1,"type":"array"},"email":{"description":"The email of the user","type":"string"},"firstname":{"description":"The first name of the user","type":"string"},"lastname":{"description":"The last name of the user","type":"string"},"locale":{"$ref":"#/components/schemas/SupportedLocale"},"password":{"description":"The password of the user","type":"string"},"roles":{"deprecated":true,"description":"Deprecated: Use assignedRoles instead","items":{"$ref":"#/components/schemas/UserRole"},"maxItems":1,"minItems":1,"type":"array"},"username":{"description":"The username of the user","type":"string"}},"required":["firstname","lastname","username","password"],"title":"UserForCreation","type":"object","description":"UserForCreation"},"UserAssignedFacilityForCreation":{"properties":{"assignedZones":{"description":"The assigned zones of the user","items":{"$ref":"#/components/schemas/UserAssignedZone"},"type":"array"},"facilityRef":{"description":"The id of the assigned facility","type":"string"}},"required":["facilityRef"],"title":"UserAssignedFacilityForCreation","type":"object","description":"UserAssignedFacilityForCreation"},"UserAssignedZone":{"properties":{"zoneRef":{"description":"The id of the assigned zone","type":"string"}},"required":["zoneRef"],"title":"UserAssignedZone","type":"object","description":"UserAssignedZone"},"AssignedRoles":{"properties":{"context":{"description":"The context limitations of the assigned role","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":50,"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations of the assigned role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"ref":{"description":"The id of the assigned role","type":"string"}},"required":["ref"],"title":"AssignedRoles","type":"object","description":"AssignedRoles"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"SupportedLocale":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />ISO 3166 conform country code and ISO 639-1 conform language code (de_DE, en_US, ch_FR, etc.)","enum":["de_DE","en_US","pl_PL","ru_RU","nl_NL","fr_FR","it_IT","nb_NO","es_ES","cs_CZ","sk_SK","pt_PT","sl_SI","ro_RO","bg_BG","hr_HR","hu_HU"],"type":"string","title":"SupportedLocale"},"UserRole":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations for this role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"facilities":{"deprecated":true,"description":"Facility limitations are now defined in the context with type FACILITY","items":{"type":"string"},"maxItems":23,"type":"array"},"name":{"description":"The name of the role","type":"string"}},"required":["name"],"title":"UserRole","type":"object","description":"UserRole"},"User":{"properties":{"assignedFacilities":{"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead","items":{"$ref":"#/components/schemas/UserAssignedFacility"},"type":"array"},"assignedRoles":{"description":"The assigned roles of a user","items":{"$ref":"#/components/schemas/AssignedRoles"},"type":"array"},"authenticationProvider":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProvider"}],"description":"The authentication provider of the user"},"authenticationProviderType":{"$ref":"#/components/schemas/SupportedLocale"},"created":{"description":"Creation date of the user","format":"date-time","type":"string"},"customClaims":{"allOf":[{"$ref":"#/components/schemas/CustomClaims"}],"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead"},"email":{"description":"The email of the user","type":"string"},"facilityLimitations":{"description":"Facilities where at least one role of the user has access to. Not present if the user has at least one role which is unrestricted","items":{"type":"string"},"type":"array"},"firstname":{"description":"The first name of the user","type":"string"},"id":{"description":"The id of the user","type":"string"},"lastLogin":{"description":"The last login timestamp of the user","format":"date-time","type":"string"},"lastModified":{"description":"Last modification date of the user","format":"date-time","type":"string"},"lastname":{"description":"The last name of the user","type":"string"},"locale":{"$ref":"#/components/schemas/SupportedLocale"},"username":{"description":"The username of the user","type":"string"},"version":{"description":"Version of the user","type":"number"}},"required":["firstname","lastname","username","id","authenticationProvider","version","assignedRoles"],"title":"User","type":"object","description":"User"},"UserAssignedFacility":{"properties":{"assignedZones":{"description":"The assigned zones of the user","items":{"$ref":"#/components/schemas/UserAssignedZone"},"type":"array"},"facilityRef":{"description":"The id of the assigned facility","type":"string"},"id":{"description":"The id of the assigned facility","type":"string"}},"required":["facilityRef","id"],"title":"UserAssignedFacility","type":"object","description":"UserAssignedFacility"},"AuthenticationProvider":{"properties":{"id":{"description":"The id of the authentication provider","type":"string"},"type":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProviderTypeEnum"}],"description":"The type of the authentication provider"}},"required":["type"],"title":"AuthenticationProvider","type":"object","description":"AuthenticationProvider"},"AuthenticationProviderTypeEnum":{"description":"The type of the authentication provider","enum":["EMAIL_PASSWORD","OIDC","SUPPORT_ACCESS"],"title":"AuthenticationProviderTypeEnum","type":"string"},"CustomClaims":{"properties":{"roles":{"description":"The roles of the user","items":{"$ref":"#/components/schemas/UserRole"},"type":"array"}},"required":["roles"],"title":"CustomClaims","type":"object","description":"CustomClaims"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/users":{"post":{"deprecated":false,"description":"","operationId":"createUser","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserForCreation"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}},"description":"The users was successfully created."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Creates user","tags":["User Management (Core)"]}}}}
```

## GET /api/users/{userId}

> Return user

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"User":{"properties":{"assignedFacilities":{"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead","items":{"$ref":"#/components/schemas/UserAssignedFacility"},"type":"array"},"assignedRoles":{"description":"The assigned roles of a user","items":{"$ref":"#/components/schemas/AssignedRoles"},"type":"array"},"authenticationProvider":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProvider"}],"description":"The authentication provider of the user"},"authenticationProviderType":{"$ref":"#/components/schemas/SupportedLocale"},"created":{"description":"Creation date of the user","format":"date-time","type":"string"},"customClaims":{"allOf":[{"$ref":"#/components/schemas/CustomClaims"}],"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead"},"email":{"description":"The email of the user","type":"string"},"facilityLimitations":{"description":"Facilities where at least one role of the user has access to. Not present if the user has at least one role which is unrestricted","items":{"type":"string"},"type":"array"},"firstname":{"description":"The first name of the user","type":"string"},"id":{"description":"The id of the user","type":"string"},"lastLogin":{"description":"The last login timestamp of the user","format":"date-time","type":"string"},"lastModified":{"description":"Last modification date of the user","format":"date-time","type":"string"},"lastname":{"description":"The last name of the user","type":"string"},"locale":{"$ref":"#/components/schemas/SupportedLocale"},"username":{"description":"The username of the user","type":"string"},"version":{"description":"Version of the user","type":"number"}},"required":["firstname","lastname","username","id","authenticationProvider","version","assignedRoles"],"title":"User","type":"object","description":"User"},"UserAssignedFacility":{"properties":{"assignedZones":{"description":"The assigned zones of the user","items":{"$ref":"#/components/schemas/UserAssignedZone"},"type":"array"},"facilityRef":{"description":"The id of the assigned facility","type":"string"},"id":{"description":"The id of the assigned facility","type":"string"}},"required":["facilityRef","id"],"title":"UserAssignedFacility","type":"object","description":"UserAssignedFacility"},"UserAssignedZone":{"properties":{"zoneRef":{"description":"The id of the assigned zone","type":"string"}},"required":["zoneRef"],"title":"UserAssignedZone","type":"object","description":"UserAssignedZone"},"AssignedRoles":{"properties":{"context":{"description":"The context limitations of the assigned role","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":50,"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations of the assigned role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"ref":{"description":"The id of the assigned role","type":"string"}},"required":["ref"],"title":"AssignedRoles","type":"object","description":"AssignedRoles"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"AuthenticationProvider":{"properties":{"id":{"description":"The id of the authentication provider","type":"string"},"type":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProviderTypeEnum"}],"description":"The type of the authentication provider"}},"required":["type"],"title":"AuthenticationProvider","type":"object","description":"AuthenticationProvider"},"AuthenticationProviderTypeEnum":{"description":"The type of the authentication provider","enum":["EMAIL_PASSWORD","OIDC","SUPPORT_ACCESS"],"title":"AuthenticationProviderTypeEnum","type":"string"},"SupportedLocale":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />ISO 3166 conform country code and ISO 639-1 conform language code (de_DE, en_US, ch_FR, etc.)","enum":["de_DE","en_US","pl_PL","ru_RU","nl_NL","fr_FR","it_IT","nb_NO","es_ES","cs_CZ","sk_SK","pt_PT","sl_SI","ro_RO","bg_BG","hr_HR","hu_HU"],"type":"string","title":"SupportedLocale"},"CustomClaims":{"properties":{"roles":{"description":"The roles of the user","items":{"$ref":"#/components/schemas/UserRole"},"type":"array"}},"required":["roles"],"title":"CustomClaims","type":"object","description":"CustomClaims"},"UserRole":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations for this role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"facilities":{"deprecated":true,"description":"Facility limitations are now defined in the context with type FACILITY","items":{"type":"string"},"maxItems":23,"type":"array"},"name":{"description":"The name of the role","type":"string"}},"required":["name"],"title":"UserRole","type":"object","description":"UserRole"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/users/{userId}":{"get":{"deprecated":false,"description":"","operationId":"getUser","parameters":[{"in":"path","name":"userId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}},"description":"The user."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Return user","tags":["User Management (Core)"]}}}}
```

## DELETE /api/users/{userId}

> Delete user

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/users/{userId}":{"delete":{"deprecated":false,"description":"","operationId":"deleteUser","parameters":[{"in":"path","name":"userId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The deleted user."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Delete user","tags":["User Management (Core)"]}}}}
```

## PATCH /api/users/{userId}

> Update user

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"UserPatchActions":{"properties":{"actions":{"description":"The actions to perform","items":{"$ref":"#/components/schemas/ModifyUserAction"},"maxItems":5,"type":"array"},"version":{"description":"The version of the user to modify","type":"number"}},"required":["actions","version"],"title":"UserPatchActions","type":"object","description":"UserPatchActions"},"ModifyUserAction":{"properties":{"action":{"allOf":[{"$ref":"#/components/schemas/UserActionEnum"}],"description":"The type of action to perform"},"assignedFacilities":{"deprecated":true,"description":"Deprecated: Use assignedRoles with contextLimitation of type FACILITY instead","items":{"$ref":"#/components/schemas/UserAssignedFacilityForCreation"},"type":"array"},"assignedRoles":{"description":"The new roles of the user","items":{"$ref":"#/components/schemas/AssignedRoles"},"maxItems":100,"type":"array"},"customAttributes":{"description":"The new custom attributes of the user","nullable":true,"type":"object"},"email":{"description":"The changed email of the user","type":"string"},"firstname":{"description":"The new firstname of the user","type":"string"},"lastname":{"description":"The new lastname of the user","type":"string"},"locale":{"$ref":"#/components/schemas/SupportedLocale"},"password":{"description":"The new password of the user","type":"string"},"roles":{"deprecated":true,"description":"Deprecated: Use assignedRoles instead","items":{"$ref":"#/components/schemas/UserRole"},"type":"array"}},"required":["action"],"title":"ModifyUserAction","type":"object","description":"ModifyUserAction"},"UserActionEnum":{"description":"The type of action to perform","enum":["ModifyUser"],"title":"UserActionEnum","type":"string"},"UserAssignedFacilityForCreation":{"properties":{"assignedZones":{"description":"The assigned zones of the user","items":{"$ref":"#/components/schemas/UserAssignedZone"},"type":"array"},"facilityRef":{"description":"The id of the assigned facility","type":"string"}},"required":["facilityRef"],"title":"UserAssignedFacilityForCreation","type":"object","description":"UserAssignedFacilityForCreation"},"UserAssignedZone":{"properties":{"zoneRef":{"description":"The id of the assigned zone","type":"string"}},"required":["zoneRef"],"title":"UserAssignedZone","type":"object","description":"UserAssignedZone"},"AssignedRoles":{"properties":{"context":{"description":"The context limitations of the assigned role","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":50,"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations of the assigned role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"ref":{"description":"The id of the assigned role","type":"string"}},"required":["ref"],"title":"AssignedRoles","type":"object","description":"AssignedRoles"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"SupportedLocale":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />ISO 3166 conform country code and ISO 639-1 conform language code (de_DE, en_US, ch_FR, etc.)","enum":["de_DE","en_US","pl_PL","ru_RU","nl_NL","fr_FR","it_IT","nb_NO","es_ES","cs_CZ","sk_SK","pt_PT","sl_SI","ro_RO","bg_BG","hr_HR","hu_HU"],"type":"string","title":"SupportedLocale"},"UserRole":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations for this role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"facilities":{"deprecated":true,"description":"Facility limitations are now defined in the context with type FACILITY","items":{"type":"string"},"maxItems":23,"type":"array"},"name":{"description":"The name of the role","type":"string"}},"required":["name"],"title":"UserRole","type":"object","description":"UserRole"},"User":{"properties":{"assignedFacilities":{"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead","items":{"$ref":"#/components/schemas/UserAssignedFacility"},"type":"array"},"assignedRoles":{"description":"The assigned roles of a user","items":{"$ref":"#/components/schemas/AssignedRoles"},"type":"array"},"authenticationProvider":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProvider"}],"description":"The authentication provider of the user"},"authenticationProviderType":{"$ref":"#/components/schemas/SupportedLocale"},"created":{"description":"Creation date of the user","format":"date-time","type":"string"},"customClaims":{"allOf":[{"$ref":"#/components/schemas/CustomClaims"}],"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead"},"email":{"description":"The email of the user","type":"string"},"facilityLimitations":{"description":"Facilities where at least one role of the user has access to. Not present if the user has at least one role which is unrestricted","items":{"type":"string"},"type":"array"},"firstname":{"description":"The first name of the user","type":"string"},"id":{"description":"The id of the user","type":"string"},"lastLogin":{"description":"The last login timestamp of the user","format":"date-time","type":"string"},"lastModified":{"description":"Last modification date of the user","format":"date-time","type":"string"},"lastname":{"description":"The last name of the user","type":"string"},"locale":{"$ref":"#/components/schemas/SupportedLocale"},"username":{"description":"The username of the user","type":"string"},"version":{"description":"Version of the user","type":"number"}},"required":["firstname","lastname","username","id","authenticationProvider","version","assignedRoles"],"title":"User","type":"object","description":"User"},"UserAssignedFacility":{"properties":{"assignedZones":{"description":"The assigned zones of the user","items":{"$ref":"#/components/schemas/UserAssignedZone"},"type":"array"},"facilityRef":{"description":"The id of the assigned facility","type":"string"},"id":{"description":"The id of the assigned facility","type":"string"}},"required":["facilityRef","id"],"title":"UserAssignedFacility","type":"object","description":"UserAssignedFacility"},"AuthenticationProvider":{"properties":{"id":{"description":"The id of the authentication provider","type":"string"},"type":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProviderTypeEnum"}],"description":"The type of the authentication provider"}},"required":["type"],"title":"AuthenticationProvider","type":"object","description":"AuthenticationProvider"},"AuthenticationProviderTypeEnum":{"description":"The type of the authentication provider","enum":["EMAIL_PASSWORD","OIDC","SUPPORT_ACCESS"],"title":"AuthenticationProviderTypeEnum","type":"string"},"CustomClaims":{"properties":{"roles":{"description":"The roles of the user","items":{"$ref":"#/components/schemas/UserRole"},"type":"array"}},"required":["roles"],"title":"CustomClaims","type":"object","description":"CustomClaims"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/users/{userId}":{"patch":{"deprecated":false,"description":"","operationId":"changeUser","parameters":[{"in":"path","name":"userId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserPatchActions"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}},"description":"The modified user."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Update user","tags":["User Management (Core)"]}}}}
```

## POST /api/users/{userId}/assignedFacilities

> Create facility assignment

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"UserAssignedFacilityForCreation":{"properties":{"assignedZones":{"description":"The assigned zones of the user","items":{"$ref":"#/components/schemas/UserAssignedZone"},"type":"array"},"facilityRef":{"description":"The id of the assigned facility","type":"string"}},"required":["facilityRef"],"title":"UserAssignedFacilityForCreation","type":"object","description":"UserAssignedFacilityForCreation"},"UserAssignedZone":{"properties":{"zoneRef":{"description":"The id of the assigned zone","type":"string"}},"required":["zoneRef"],"title":"UserAssignedZone","type":"object","description":"UserAssignedZone"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/users/{userId}/assignedFacilities":{"post":{"deprecated":false,"description":"","operationId":"assignFacility","parameters":[{"in":"path","name":"userId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserAssignedFacilityForCreation"}}},"required":true},"responses":{"200":{"description":"The facilities were successfully assigned to the user."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Create facility assignment","tags":["User Management (Core)"]}}}}
```

## Get user roles

> Returns the roles of a user.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/users/{userId}/permissions":{"get":{"deprecated":false,"description":"Returns the roles of a user.","operationId":"getUserRoles","parameters":[{"in":"path","name":"userId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The roles of the user."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Get user roles","tags":["User Management (Core)"]}}}}
```

## Update me user

> This part of the API is deprecated. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Update my own data.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ModifyUserPersonalData":{"properties":{"firstname":{"description":"The new firstname of the user","type":"string"},"lastname":{"description":"The new lastname of the user","type":"string"},"locale":{"$ref":"#/components/schemas/SupportedLocale"}},"title":"ModifyUserPersonalData","type":"object","description":"ModifyUserPersonalData"},"SupportedLocale":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />ISO 3166 conform country code and ISO 639-1 conform language code (de_DE, en_US, ch_FR, etc.)","enum":["de_DE","en_US","pl_PL","ru_RU","nl_NL","fr_FR","it_IT","nb_NO","es_ES","cs_CZ","sk_SK","pt_PT","sl_SI","ro_RO","bg_BG","hr_HR","hu_HU"],"type":"string","title":"SupportedLocale"},"User":{"properties":{"assignedFacilities":{"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead","items":{"$ref":"#/components/schemas/UserAssignedFacility"},"type":"array"},"assignedRoles":{"description":"The assigned roles of a user","items":{"$ref":"#/components/schemas/AssignedRoles"},"type":"array"},"authenticationProvider":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProvider"}],"description":"The authentication provider of the user"},"authenticationProviderType":{"$ref":"#/components/schemas/SupportedLocale"},"created":{"description":"Creation date of the user","format":"date-time","type":"string"},"customClaims":{"allOf":[{"$ref":"#/components/schemas/CustomClaims"}],"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead"},"email":{"description":"The email of the user","type":"string"},"facilityLimitations":{"description":"Facilities where at least one role of the user has access to. Not present if the user has at least one role which is unrestricted","items":{"type":"string"},"type":"array"},"firstname":{"description":"The first name of the user","type":"string"},"id":{"description":"The id of the user","type":"string"},"lastLogin":{"description":"The last login timestamp of the user","format":"date-time","type":"string"},"lastModified":{"description":"Last modification date of the user","format":"date-time","type":"string"},"lastname":{"description":"The last name of the user","type":"string"},"locale":{"$ref":"#/components/schemas/SupportedLocale"},"username":{"description":"The username of the user","type":"string"},"version":{"description":"Version of the user","type":"number"}},"required":["firstname","lastname","username","id","authenticationProvider","version","assignedRoles"],"title":"User","type":"object","description":"User"},"UserAssignedFacility":{"properties":{"assignedZones":{"description":"The assigned zones of the user","items":{"$ref":"#/components/schemas/UserAssignedZone"},"type":"array"},"facilityRef":{"description":"The id of the assigned facility","type":"string"},"id":{"description":"The id of the assigned facility","type":"string"}},"required":["facilityRef","id"],"title":"UserAssignedFacility","type":"object","description":"UserAssignedFacility"},"UserAssignedZone":{"properties":{"zoneRef":{"description":"The id of the assigned zone","type":"string"}},"required":["zoneRef"],"title":"UserAssignedZone","type":"object","description":"UserAssignedZone"},"AssignedRoles":{"properties":{"context":{"description":"The context limitations of the assigned role","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":50,"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations of the assigned role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"ref":{"description":"The id of the assigned role","type":"string"}},"required":["ref"],"title":"AssignedRoles","type":"object","description":"AssignedRoles"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"AuthenticationProvider":{"properties":{"id":{"description":"The id of the authentication provider","type":"string"},"type":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProviderTypeEnum"}],"description":"The type of the authentication provider"}},"required":["type"],"title":"AuthenticationProvider","type":"object","description":"AuthenticationProvider"},"AuthenticationProviderTypeEnum":{"description":"The type of the authentication provider","enum":["EMAIL_PASSWORD","OIDC","SUPPORT_ACCESS"],"title":"AuthenticationProviderTypeEnum","type":"string"},"CustomClaims":{"properties":{"roles":{"description":"The roles of the user","items":{"$ref":"#/components/schemas/UserRole"},"type":"array"}},"required":["roles"],"title":"CustomClaims","type":"object","description":"CustomClaims"},"UserRole":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations for this role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"facilities":{"deprecated":true,"description":"Facility limitations are now defined in the context with type FACILITY","items":{"type":"string"},"maxItems":23,"type":"array"},"name":{"description":"The name of the role","type":"string"}},"required":["name"],"title":"UserRole","type":"object","description":"UserRole"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/users/me":{"patch":{"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Update my own data.","operationId":"updateMe","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyUserPersonalData"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}},"description":"Updating my data was successful."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"}},"summary":"Update me user","tags":["User Management (Core)"]}}}}
```

## Call user action

> This part of the API is in Beta status. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Executes an action to manipulate my user.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"User":{"properties":{"assignedFacilities":{"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead","items":{"$ref":"#/components/schemas/UserAssignedFacility"},"type":"array"},"assignedRoles":{"description":"The assigned roles of a user","items":{"$ref":"#/components/schemas/AssignedRoles"},"type":"array"},"authenticationProvider":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProvider"}],"description":"The authentication provider of the user"},"authenticationProviderType":{"$ref":"#/components/schemas/SupportedLocale"},"created":{"description":"Creation date of the user","format":"date-time","type":"string"},"customClaims":{"allOf":[{"$ref":"#/components/schemas/CustomClaims"}],"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead"},"email":{"description":"The email of the user","type":"string"},"facilityLimitations":{"description":"Facilities where at least one role of the user has access to. Not present if the user has at least one role which is unrestricted","items":{"type":"string"},"type":"array"},"firstname":{"description":"The first name of the user","type":"string"},"id":{"description":"The id of the user","type":"string"},"lastLogin":{"description":"The last login timestamp of the user","format":"date-time","type":"string"},"lastModified":{"description":"Last modification date of the user","format":"date-time","type":"string"},"lastname":{"description":"The last name of the user","type":"string"},"locale":{"$ref":"#/components/schemas/SupportedLocale"},"username":{"description":"The username of the user","type":"string"},"version":{"description":"Version of the user","type":"number"}},"required":["firstname","lastname","username","id","authenticationProvider","version","assignedRoles"],"title":"User","type":"object","description":"User"},"UserAssignedFacility":{"properties":{"assignedZones":{"description":"The assigned zones of the user","items":{"$ref":"#/components/schemas/UserAssignedZone"},"type":"array"},"facilityRef":{"description":"The id of the assigned facility","type":"string"},"id":{"description":"The id of the assigned facility","type":"string"}},"required":["facilityRef","id"],"title":"UserAssignedFacility","type":"object","description":"UserAssignedFacility"},"UserAssignedZone":{"properties":{"zoneRef":{"description":"The id of the assigned zone","type":"string"}},"required":["zoneRef"],"title":"UserAssignedZone","type":"object","description":"UserAssignedZone"},"AssignedRoles":{"properties":{"context":{"description":"The context limitations of the assigned role","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":50,"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations of the assigned role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"ref":{"description":"The id of the assigned role","type":"string"}},"required":["ref"],"title":"AssignedRoles","type":"object","description":"AssignedRoles"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"AuthenticationProvider":{"properties":{"id":{"description":"The id of the authentication provider","type":"string"},"type":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProviderTypeEnum"}],"description":"The type of the authentication provider"}},"required":["type"],"title":"AuthenticationProvider","type":"object","description":"AuthenticationProvider"},"AuthenticationProviderTypeEnum":{"description":"The type of the authentication provider","enum":["EMAIL_PASSWORD","OIDC","SUPPORT_ACCESS"],"title":"AuthenticationProviderTypeEnum","type":"string"},"SupportedLocale":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />ISO 3166 conform country code and ISO 639-1 conform language code (de_DE, en_US, ch_FR, etc.)","enum":["de_DE","en_US","pl_PL","ru_RU","nl_NL","fr_FR","it_IT","nb_NO","es_ES","cs_CZ","sk_SK","pt_PT","sl_SI","ro_RO","bg_BG","hr_HR","hu_HU"],"type":"string","title":"SupportedLocale"},"CustomClaims":{"properties":{"roles":{"description":"The roles of the user","items":{"$ref":"#/components/schemas/UserRole"},"type":"array"}},"required":["roles"],"title":"CustomClaims","type":"object","description":"CustomClaims"},"UserRole":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations for this role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"facilities":{"deprecated":true,"description":"Facility limitations are now defined in the context with type FACILITY","items":{"type":"string"},"maxItems":23,"type":"array"},"name":{"description":"The name of the role","type":"string"}},"required":["name"],"title":"UserRole","type":"object","description":"UserRole"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/users/me/actions":{"post":{"deprecated":false,"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Executes an action to manipulate my user.","operationId":"executeMeAction","parameters":[],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}},"description":"User action was successfully executed."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Invalid input. See response for details."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"A version conflict occurred."}},"summary":"Call user action","tags":["User Management (Core)"]}}}}
```

## Return effective permissions

> This part of the API is in Beta status. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Returns the effective permissions of the user.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"EffectivePermissionsResponse":{"properties":{"roles":{"description":"The roles of the user","items":{"$ref":"#/components/schemas/UserRoleWithPermissions"},"type":"array"},"userId":{"description":"User ID of the current user","type":"string"}},"required":["userId","roles"],"title":"EffectivePermissionsResponse","type":"object","description":"EffectivePermissionsResponse"},"UserRoleWithPermissions":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations for this role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"facilities":{"deprecated":true,"description":"Facility limitations are now defined in the context with type FACILITY","items":{"type":"string"},"maxItems":23,"type":"array"},"name":{"description":"The name of the role","type":"string"},"permissions":{"description":"The permissions associated with the role, which define what actions the role can perform.","items":{"enum":["USER_READ","USERS_READ","USER_WRITE","USER_MODIFY","CURRENT_USER_READ","CURRENT_USER_MODIFY","ROLE_READ","ROLE_WRITE","FACILITY_READ","FACILITY_WRITE","FACILITY_CREATE","FACILITY_DELETE","FACILITY_GROUP_READ","FACILITY_GROUP_WRITE","ORDER_READ","ORDER_WRITE","ORDER_FORCE_CANCEL","ORDER_UNLOCK","ORDER_CANCEL","ORDER_CONSUMER_WRITE","ORDER_CUSTOM_ATTRIBUTES_WRITE","ORDER_LINEITEM_WRITE","LINE_ITEM_QUANTITY_INCREASE","LINE_ITEM_ADD","LINE_ITEM_QUANTITY_DECREASE","LINE_ITEM_DELETE","SIMULATION_ORDER_READ","SIMULATION_ORDER_WRITE","AUDIT_READ","NOTIFICATION_READ","NOTIFICATION_WRITE","EXPIRIES_READ","EXPIRIES_WRITE","CONFIG_READ","CONFIG_WRITE","ROUTING_CONFIG_READ","ROUTING_CONFIG_WRITE","PROMISES_CONFIG_READ","PROMISES_CONFIG_WRITE","OIDC_PROVIDERS_CONFIG_READ","OIDC_PROVIDERS_CONFIG_WRITE","LOCALE_WRITE","CARRIER_READ","CARRIER_WRITE","RETURN_WRITE","RETURN_READ","ROUTING_READ","ROUTING_WRITE","PARCEL_READ","PARCEL_WRITE","SHIPMENT_READ","SHIPMENT_WRITE","HANDOVERJOB_READ","HANDOVERJOB_WRITE","PICKJOB_READ","PICKJOB_WRITE","PICKJOB_REROUTE","REMOTE_CONFIG_READ","REMOTE_CONFIG_WRITE","PICKRUN_READ","PICKRUN_WRITE","LOADUNITTYPE_READ","LOADUNITTYPE_WRITE","LOADUNIT_READ","LOADUNIT_WRITE","MEASUREMENTUNIT_READ","MEASUREMENTUNIT_WRITE","EVENT_READ","SUBSCRIPTION_READ","SUBSCRIPTION_WRITE","SUBSTITUTE_READ","SUBSTITUTE_WRITE","PROCESS_READ","PROCESS_WRITE","PROCESS_REROUTE","EXTERNAL_ACTIONS_READ","EXTERNAL_ACTIONS_WRITE","PROCESS_LOG_READ","OPERATIVE_PROCESS_READ","OPERATIVE_PROCESS_WRITE","DELIVERYNOTE_WRITE","PACKJOB_READ","PACKJOB_WRITE","PACKINGCONTAINER_TYPE_WRITE","PACKING_SOURCE_CONTAINER_READ","PACKING_SOURCE_CONTAINER_WRITE","RESTOW_ITEM_READ","RESTOW_ITEM_WRITE","TAG_READ","TAG_WRITE","STOCK_READ","STOCK_WRITE","EXTERNAL_STOCK_CHANGE_REASONS_READ","EXTERNAL_STOCK_CHANGE_REASONS_WRITE","STORAGE_LOCATION_READ","STORAGE_LOCATION_WRITE","STOW_JOB_READ","STOW_JOB_OPERATIVE_WRITE","STOW_JOB_FULL_WRITE","NOTIFICATION_CENTER_CONFIG_READ","NOTIFICATION_CENTER_CONFIG_WRITE","DOMS_TOOLKIT_READ","DOMS_TOOLKIT_WRITE","ANALYTICS_DASHBOARD_READ","DOCUMENT_SET_READ","DOCUMENT_SET_WRITE","INBOUND_PROCESS_READ","INBOUND_PROCESS_WRITE","ADMIN_DATA_RESET","ADMIN_MODULES_READ","ADMIN_MODULES_WRITE","TENANT_CONNECTOR_CONFIG_READ","CUSTOM_SERVICE_WRITE","CUSTOM_SERVICE_READ","VALIDATIONS_READ","SERVICE_JOB_READ","SERVICE_JOB_WRITE","LINKED_SERVICE_JOBS_READ","LINKED_SERVICE_JOBS_WRITE","OPERATION_STATISTICS_READ","DOMS_STATISTICS_READ","AVAILABILITY_CHANNEL_READ","AVAILABILITY_CHANNEL_WRITE","HANDOVER_CONTAINER_READ","HANDOVER_CONTAINER_WRITE","STACKS_READ","STACKS_WRITE","CATEGORY_READ","CATEGORY_WRITE","PERMISSION_READ","KPI_READ","RESERVATION_WRITE","RESERVATION_READ","FILTER_ENTITY_READ","BRAND_READ","WORKFLOW_DEFINITION_READ","WORKFLOW_DEFINITION_WRITE","LOOKUP_RECORD_READ","LOOKUP_RECORD_WRITE","ORDER_RECORD_READ","ORDER_RECORD_WRITE","PACKAGING_UNITS_READ","PACKAGING_UNITS_WRITE","STOCK_AVAILABILITIES_READ","LISTING_READ","LISTING_WRITE","LISTING_DELETE","PURCHASE_PRICE_READ","ZONE_READ","ZONE_WRITE","SAFETY_STOCK_READ","SAFETY_STOCK_WRITE"],"type":"string"},"type":"array"}},"required":["name"],"title":"UserRoleWithPermissions","type":"object","description":"UserRoleWithPermissions"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/users/me/effectivepermissions":{"get":{"deprecated":false,"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Returns the effective permissions of the user.","operationId":"getEffectivePermissions","parameters":[],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EffectivePermissionsResponse"}}},"description":"The effective permissions of the user."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"}},"summary":"Return effective permissions","tags":["User Management (Core)"]}}}}
```

## List users (search)

> This part of the API is in Beta status. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Search for User

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints enable the administration of user accounts, including creation, updating, read and deletion of user accounts.","name":"User Management (Core)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"UserSearchPayload":{"properties":{"after":{"deprecated":false,"description":"The cursor to start after for forward pagination. The value is provided in the `pageInfo.endCursor` field of the response. Cannot be used with `before` or `last`.","type":"string"},"before":{"description":"The cursor to start before for backward pagination. The value is provided in the `pageInfo.startCursor` field of the response. Cannot be used with `after` or `size` (first).","type":"string"},"last":{"description":"Number of items to return for backward pagination. Cannot be used with 'size' (first). Default: 20.","maximum":250,"minimum":1,"type":"number"},"options":{"$ref":"#/components/schemas/SearchOptions"},"query":{"$ref":"#/components/schemas/UserSearchQuery"},"size":{"description":"Number of items to return for forward pagination. Cannot be used with 'last'. Default: 20.","maximum":250,"minimum":1,"type":"number"},"sort":{"description":"Use for sorting the result.","items":{"$ref":"#/components/schemas/UserSort"},"maxItems":1,"minItems":1,"type":"array"},"startAfterId":{"deprecated":true,"description":"The ID to start after. Deprecated, use `after` with the value provided in `pageInfo.endCursor` instead.","type":"string"}},"required":["query"],"title":"UserSearchPayload","type":"object","description":"UserSearchPayload"},"SearchOptions":{"properties":{"withTotal":{"description":"Set to true to include the total count of items in the search result.","type":"boolean"}},"title":"SearchOptions","type":"object","description":"SearchOptions"},"UserSearchQuery":{"properties":{"and":{"items":{"$ref":"#/components/schemas/UserSearchQuery"},"maxItems":500,"type":"array"},"assignedFacilities":{"allOf":[{"$ref":"#/components/schemas/UserAssignedFacilitiesListFilter"}],"description":"Nested list search by assignedFacilities"},"assignedRoles":{"allOf":[{"$ref":"#/components/schemas/UserAssignedRolesListFilter"}],"description":"Nested list search by assignedRoles"},"auth":{"allOf":[{"$ref":"#/components/schemas/UserAuthFilter"}],"description":"Nested search by auth"},"customAttributes":{"additionalProperties":{"anyOf":[{"$ref":"#/components/schemas/BooleanFilter"},{"$ref":"#/components/schemas/StringEqFilter"},{"$ref":"#/components/schemas/NumberEqFilter"},{"$ref":"#/components/schemas/DateFilter"}]},"description":"Search by custom attributes","type":"object"},"customClaims":{"allOf":[{"$ref":"#/components/schemas/UserCustomClaimsFilter"}],"description":"Nested search by customClaims"},"facilityLimitations":{"allOf":[{"$ref":"#/components/schemas/StringListExistsFilter"}],"description":"Search by facilityLimitations"},"firstname":{"allOf":[{"$ref":"#/components/schemas/StringSearchFilter"}],"description":"Search by firstname"},"lastModified":{"allOf":[{"$ref":"#/components/schemas/DateFilter"}],"description":"Search by lastModified"},"lastname":{"allOf":[{"$ref":"#/components/schemas/StringSearchFilter"}],"description":"Search by lastname"},"or":{"items":{"$ref":"#/components/schemas/UserSearchQuery"},"maxItems":500,"type":"array"},"username":{"allOf":[{"$ref":"#/components/schemas/StringSearchFilter"}],"description":"Search by username"}},"title":"UserSearchQuery","type":"object","description":"UserSearchQuery"},"UserAssignedFacilitiesListFilter":{"properties":{"contains":{"allOf":[{"$ref":"#/components/schemas/UserAssignedFacilitiesFilter"}],"description":"Contains returns if at least one entry matches"}},"title":"UserAssignedFacilitiesListFilter","type":"object","description":"UserAssignedFacilitiesListFilter"},"UserAssignedFacilitiesFilter":{"properties":{"facilityRef":{"allOf":[{"$ref":"#/components/schemas/StringFilter"}],"description":"Search by facilityRef"}},"title":"UserAssignedFacilitiesFilter","type":"object","description":"UserAssignedFacilitiesFilter"},"StringFilter":{"properties":{"eq":{"maxLength":256,"type":"string"},"in":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"},"notEq":{"maxLength":256,"type":"string"},"notIn":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"}},"title":"StringFilter","type":"object","description":"StringFilter"},"UserAssignedRolesListFilter":{"properties":{"contains":{"allOf":[{"$ref":"#/components/schemas/UserAssignedRolesFilter"}],"description":"Contains returns if at least one entry matches"}},"title":"UserAssignedRolesListFilter","type":"object","description":"UserAssignedRolesListFilter"},"UserAssignedRolesFilter":{"properties":{"context":{"allOf":[{"$ref":"#/components/schemas/UserAssignedRolesContextListFilter"}],"description":"Nested list search by context"},"contextLimitations":{"allOf":[{"$ref":"#/components/schemas/UserAssignedRolesContextLimitationsListFilter"}],"deprecated":true,"description":"Deprecated: Use context field instead"},"ref":{"allOf":[{"$ref":"#/components/schemas/StringFilter"}],"description":"Search by ref"}},"title":"UserAssignedRolesFilter","type":"object","description":"UserAssignedRolesFilter"},"UserAssignedRolesContextListFilter":{"properties":{"contains":{"allOf":[{"$ref":"#/components/schemas/UserAssignedRolesContextFilter"}],"description":"Contains returns if at least one entry matches"}},"title":"UserAssignedRolesContextListFilter","type":"object","description":"UserAssignedRolesContextListFilter"},"UserAssignedRolesContextFilter":{"properties":{"type":{"allOf":[{"$ref":"#/components/schemas/UserAssignedRolesContextContextTypesEnumFilter"}],"description":"Search by type"},"values":{"allOf":[{"$ref":"#/components/schemas/StringListFilter"}],"description":"Search by values"}},"title":"UserAssignedRolesContextFilter","type":"object","description":"UserAssignedRolesContextFilter"},"UserAssignedRolesContextContextTypesEnumFilter":{"properties":{"eq":{"description":"Search by type","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"in":{"description":"Search by type","items":{"enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"maxItems":500,"type":"array"},"notEq":{"description":"Search by type","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"}},"title":"UserAssignedRolesContextContextTypesEnumFilter","type":"object","description":"UserAssignedRolesContextContextTypesEnumFilter"},"StringListFilter":{"properties":{"contains":{"$ref":"#/components/schemas/StringEqFilter"}},"title":"StringListFilter","type":"object","description":"StringListFilter"},"StringEqFilter":{"properties":{"eq":{"maxLength":256,"type":"string"},"notEq":{"maxLength":256,"type":"string"}},"title":"StringEqFilter","type":"object","description":"StringEqFilter"},"UserAssignedRolesContextLimitationsListFilter":{"properties":{"contains":{"allOf":[{"$ref":"#/components/schemas/UserAssignedRolesContextLimitationsFilter"}],"description":"Contains returns if at least one entry matches"}},"title":"UserAssignedRolesContextLimitationsListFilter","type":"object","description":"UserAssignedRolesContextLimitationsListFilter"},"UserAssignedRolesContextLimitationsFilter":{"properties":{"type":{"allOf":[{"$ref":"#/components/schemas/UserAssignedRolesContextLimitationsContextTypesEnumFilter"}],"description":"Search by type"},"values":{"allOf":[{"$ref":"#/components/schemas/StringListFilter"}],"description":"Search by values"}},"title":"UserAssignedRolesContextLimitationsFilter","type":"object","description":"UserAssignedRolesContextLimitationsFilter"},"UserAssignedRolesContextLimitationsContextTypesEnumFilter":{"properties":{"eq":{"description":"Search by type","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"in":{"description":"Search by type","items":{"enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"maxItems":500,"type":"array"},"notEq":{"description":"Search by type","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"}},"title":"UserAssignedRolesContextLimitationsContextTypesEnumFilter","type":"object","description":"UserAssignedRolesContextLimitationsContextTypesEnumFilter"},"UserAuthFilter":{"properties":{"type":{"allOf":[{"$ref":"#/components/schemas/UserAuthAuthenticationProviderTypeEnumFilter"}],"description":"Search by type"}},"title":"UserAuthFilter","type":"object","description":"UserAuthFilter"},"UserAuthAuthenticationProviderTypeEnumFilter":{"properties":{"eq":{"description":"Search by type","enum":["EMAIL_PASSWORD","OIDC","SUPPORT_ACCESS"],"type":"string"},"in":{"description":"Search by type","items":{"enum":["EMAIL_PASSWORD","OIDC","SUPPORT_ACCESS"],"type":"string"},"maxItems":500,"type":"array"},"notEq":{"description":"Search by type","enum":["EMAIL_PASSWORD","OIDC","SUPPORT_ACCESS"],"type":"string"}},"title":"UserAuthAuthenticationProviderTypeEnumFilter","type":"object","description":"UserAuthAuthenticationProviderTypeEnumFilter"},"BooleanFilter":{"properties":{"eq":{"type":"boolean"},"notEq":{"type":"boolean"}},"title":"BooleanFilter","type":"object","description":"BooleanFilter"},"NumberEqFilter":{"properties":{"eq":{"type":"number"},"gt":{"type":"number"},"gte":{"type":"number"},"lt":{"type":"number"},"lte":{"type":"number"},"notEq":{"type":"number"}},"title":"NumberEqFilter","type":"object","description":"NumberEqFilter"},"DateFilter":{"properties":{"after":{"description":"Search using ISO‑8601 dates relative to today. Prefix with “–” for past dates. Results include events after the specified date. Example: “–P1D” for yesterday, “P1W” for next week.","maxLength":256,"type":"string"},"before":{"description":"Search using ISO‑8601 dates relative to today. Prefix with “–” for past dates. Results include events before the specified date. Example: “–P1D” for yesterday, “P1W” for next week.","maxLength":256,"type":"string"},"eq":{"format":"date-time","type":"string"},"gt":{"format":"date-time","type":"string"},"gte":{"format":"date-time","type":"string"},"lt":{"format":"date-time","type":"string"},"lte":{"format":"date-time","type":"string"},"notEq":{"format":"date-time","type":"string"}},"title":"DateFilter","type":"object","description":"DateFilter"},"UserCustomClaimsFilter":{"properties":{"roles":{"allOf":[{"$ref":"#/components/schemas/UserCustomClaimsRolesListFilter"}],"description":"Nested list search by roles"}},"title":"UserCustomClaimsFilter","type":"object","description":"UserCustomClaimsFilter"},"UserCustomClaimsRolesListFilter":{"properties":{"contains":{"allOf":[{"$ref":"#/components/schemas/UserCustomClaimsRolesFilter"}],"description":"Contains returns if at least one entry matches"}},"title":"UserCustomClaimsRolesListFilter","type":"object","description":"UserCustomClaimsRolesListFilter"},"UserCustomClaimsRolesFilter":{"properties":{"facilities":{"allOf":[{"$ref":"#/components/schemas/StringListFilter"}],"description":"Search by facilities"},"name":{"allOf":[{"$ref":"#/components/schemas/UserCustomClaimsRolesUserRoleNamesEnumFilter"}],"description":"Search by name"}},"title":"UserCustomClaimsRolesFilter","type":"object","description":"UserCustomClaimsRolesFilter"},"UserCustomClaimsRolesUserRoleNamesEnumFilter":{"properties":{"eq":{"description":"Search by name","enum":["FULFILLER","SUPERVISOR","ADMINISTRATOR"],"type":"string"},"in":{"description":"Search by name","items":{"enum":["FULFILLER","SUPERVISOR","ADMINISTRATOR"],"type":"string"},"maxItems":500,"type":"array"},"notEq":{"description":"Search by name","enum":["FULFILLER","SUPERVISOR","ADMINISTRATOR"],"type":"string"}},"title":"UserCustomClaimsRolesUserRoleNamesEnumFilter","type":"object","description":"UserCustomClaimsRolesUserRoleNamesEnumFilter"},"StringListExistsFilter":{"properties":{"contains":{"$ref":"#/components/schemas/StringEqFilter"},"exists":{"description":"Search all entities which have or do not have this key defined","type":"boolean"}},"title":"StringListExistsFilter","type":"object","description":"StringListExistsFilter"},"StringSearchFilter":{"properties":{"eq":{"maxLength":256,"type":"string"},"in":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"},"like":{"description":"Search by regex pattern","maxLength":256,"type":"string"},"notEq":{"maxLength":256,"type":"string"},"notIn":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"}},"title":"StringSearchFilter","type":"object","description":"StringSearchFilter"},"UserSort":{"properties":{"customAttributes":{"additionalProperties":true,"maxProperties":1,"minProperties":1,"type":"object"},"firstname":{"enum":["ASC","DESC"],"type":"string"},"lastLogin":{"enum":["ASC","DESC"],"type":"string"},"lastname":{"enum":["ASC","DESC"],"type":"string"},"username":{"enum":["ASC","DESC"],"type":"string"}},"title":"UserSort","type":"object","description":"UserSort"},"UserPaginatedResult":{"properties":{"pageInfo":{"allOf":[{"$ref":"#/components/schemas/PageInfo"}],"description":"Pagination information for the search result."},"total":{"description":"The total number of items matching the search criteria. Only filled, if withTotal is set to true in the search options.","minimum":0,"type":"number"},"users":{"items":{"$ref":"#/components/schemas/User"},"type":"array"}},"required":["pageInfo","users"],"title":"UserPaginatedResult","type":"object","description":"UserPaginatedResult"},"PageInfo":{"properties":{"endCursor":{"description":"The cursor to use to fetch the next page of items. Use with parameter `after`.","type":"string"},"hasNextPage":{"description":"If true, there are more items after the current page.","type":"boolean"},"hasPreviousPage":{"description":"If true, there are more items before the current page.","type":"boolean"},"startCursor":{"description":"The cursor to use to fetch the previous page of items.","type":"string"}},"required":["hasNextPage","hasPreviousPage","startCursor","endCursor"],"title":"PageInfo","type":"object","description":"PageInfo"},"User":{"properties":{"assignedFacilities":{"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead","items":{"$ref":"#/components/schemas/UserAssignedFacility"},"type":"array"},"assignedRoles":{"description":"The assigned roles of a user","items":{"$ref":"#/components/schemas/AssignedRoles"},"type":"array"},"authenticationProvider":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProvider"}],"description":"The authentication provider of the user"},"authenticationProviderType":{"$ref":"#/components/schemas/SupportedLocale"},"created":{"description":"Creation date of the user","format":"date-time","type":"string"},"customClaims":{"allOf":[{"$ref":"#/components/schemas/CustomClaims"}],"deprecated":true,"description":"Deprecated: Find all relevant information in assignedRoles instead"},"email":{"description":"The email of the user","type":"string"},"facilityLimitations":{"description":"Facilities where at least one role of the user has access to. Not present if the user has at least one role which is unrestricted","items":{"type":"string"},"type":"array"},"firstname":{"description":"The first name of the user","type":"string"},"id":{"description":"The id of the user","type":"string"},"lastLogin":{"description":"The last login timestamp of the user","format":"date-time","type":"string"},"lastModified":{"description":"Last modification date of the user","format":"date-time","type":"string"},"lastname":{"description":"The last name of the user","type":"string"},"locale":{"$ref":"#/components/schemas/SupportedLocale"},"username":{"description":"The username of the user","type":"string"},"version":{"description":"Version of the user","type":"number"}},"required":["firstname","lastname","username","id","authenticationProvider","version","assignedRoles"],"title":"User","type":"object","description":"User"},"UserAssignedFacility":{"properties":{"assignedZones":{"description":"The assigned zones of the user","items":{"$ref":"#/components/schemas/UserAssignedZone"},"type":"array"},"facilityRef":{"description":"The id of the assigned facility","type":"string"},"id":{"description":"The id of the assigned facility","type":"string"}},"required":["facilityRef","id"],"title":"UserAssignedFacility","type":"object","description":"UserAssignedFacility"},"UserAssignedZone":{"properties":{"zoneRef":{"description":"The id of the assigned zone","type":"string"}},"required":["zoneRef"],"title":"UserAssignedZone","type":"object","description":"UserAssignedZone"},"AssignedRoles":{"properties":{"context":{"description":"The context limitations of the assigned role","items":{"$ref":"#/components/schemas/ContextLimitation"},"maxItems":50,"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations of the assigned role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"ref":{"description":"The id of the assigned role","type":"string"}},"required":["ref"],"title":"AssignedRoles","type":"object","description":"AssignedRoles"},"ContextLimitation":{"properties":{"type":{"description":"The type of the context limitation.","enum":["FACILITY","FACILITY_GROUP","ROLE","USER_ROLE","ZONE"],"type":"string"},"values":{"description":"An array defining the values the user is allowed to access — if the entire context object is omitted, no access restrictions apply, whereas an empty array explicitly grants no access (i.e., maximum restriction).","items":{"type":"string"},"maxItems":500,"type":"array"}},"required":["type","values"],"title":"ContextLimitation","type":"object","description":"ContextLimitation"},"AuthenticationProvider":{"properties":{"id":{"description":"The id of the authentication provider","type":"string"},"type":{"allOf":[{"$ref":"#/components/schemas/AuthenticationProviderTypeEnum"}],"description":"The type of the authentication provider"}},"required":["type"],"title":"AuthenticationProvider","type":"object","description":"AuthenticationProvider"},"AuthenticationProviderTypeEnum":{"description":"The type of the authentication provider","enum":["EMAIL_PASSWORD","OIDC","SUPPORT_ACCESS"],"title":"AuthenticationProviderTypeEnum","type":"string"},"SupportedLocale":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />ISO 3166 conform country code and ISO 639-1 conform language code (de_DE, en_US, ch_FR, etc.)","enum":["de_DE","en_US","pl_PL","ru_RU","nl_NL","fr_FR","it_IT","nb_NO","es_ES","cs_CZ","sk_SK","pt_PT","sl_SI","ro_RO","bg_BG","hr_HR","hu_HU"],"type":"string","title":"SupportedLocale"},"CustomClaims":{"properties":{"roles":{"description":"The roles of the user","items":{"$ref":"#/components/schemas/UserRole"},"type":"array"}},"required":["roles"],"title":"CustomClaims","type":"object","description":"CustomClaims"},"UserRole":{"properties":{"context":{"description":"An array of context objects, each defining a type and its allowed values — if a type is omitted, access for that type is unrestricted; if included, access is limited to the specified values, and each type must appear at most once.","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"contextLimitations":{"deprecated":true,"description":"The context limitations for this role (deprecated)","items":{"$ref":"#/components/schemas/ContextLimitation"},"type":"array"},"facilities":{"deprecated":true,"description":"Facility limitations are now defined in the context with type FACILITY","items":{"type":"string"},"maxItems":23,"type":"array"},"name":{"description":"The name of the role","type":"string"}},"required":["name"],"title":"UserRole","type":"object","description":"UserRole"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/users/search":{"post":{"deprecated":false,"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Search for User","operationId":"searchUser","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserSearchPayload"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserPaginatedResult"}}},"description":"Your search result"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"}},"summary":"List users (search)","tags":["User Management (Core)"]}}}}
```
