enfore Staff & Access Rights API (0.5.4)

Download OpenAPI specification:Download

enfore API for managing staff members and access rights

Staff Members

Returns staff members

Returns staff members of the organization ordered by name.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

query Parameters
default-service-location-id
string

ID of the service location the staff member primarily works at.

possible-service-location-id
string

ID of service locations the staff member can possibly work at.

limit
integer <int64> [ 1 .. 5000 ]

Max number of objects to be returned per page. Note that both the items as well as the problems arrays of the query response count towards this number to allow a simple, consistent paging over all items (and problems) of a given timeframe. If not given, defaults to 200.

offset
integer <int64> >= 0

Offset of items and problems of where to start the next page. Similar to limit and offset in SQL, one would obtain the second page with limit=10&offset=10. Note that this paging with limit and offset is within a time interval that is specified with from and to. If not given, defaults to 0.

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

get/org/{org-id}/staff-members

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "items":
    [
    ],
  • "problems":
    []
}

Create a new staff member

Takes the ID of an IndividualContact (see the contacts API) and makes that person a staff member. Further details depend on the chosen variant. But there are some pre-conditions about the created IndividualContact.

  1. It must contain a ProfessionalIdentity with an OrganizationContact of the organization.
  2. If StaffMemberCreationRequestWithInviteEmail is used the ProfessionalIdentity must have an email address.
path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

Request Body schema: application/json
contact_id
required
string <= 256 characters

The ID of the individual contact that is to be made a staff member.

Responses

200

Staff member creation successful.

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

post/org/{org-id}/staff-members

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members

Request samples

Content type
application/json
Example
Copy
Expand all Collapse all
{
  • "contact_id": "string",
  • "@type": "StaffMemberCreationRequestWithInviteEmail"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "status": "INVITED",
  • "staff_number": "string",
  • "hire_date": "2025-03-25",
  • "release_date": "2025-03-25",
  • "managed_by":
    {
    },
  • "substitute": "string",
  • "access_level": "string",
  • "default_service_location": "string",
  • "possible_service_locations":
    [
    ],
  • "login_method":
    {
    },
  • "has_access": true
}

Set the password of a staff member

The password format has specific restrictions that can change over time. As of now (20.04.2023) the minimum length is 8. Additionally known weak passwords (like password) are not allowed. Status 422 is returned if the password is too weak. Note that this only works for staff members that have been created using StaffMemberCreationRequestWithUsername.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

Request Body schema: application/json
password
required
string <= 256 characters

The new password that should be used for logging in the given staff member with username.

is_only_valid_once
required
boolean

Whether this password should be only valid once (one-time-password) or multiple times (normal password).

Responses

200

Password has been successfully set

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

put/org/{org-id}/staff-members/{staff-member-id}/password

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}/password

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "password": "string",
  • "is_only_valid_once": true
}

Response samples

Content type
application/problem+json
Copy
Expand all Collapse all
{}

Load a staff member by its ID

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

Responses

200

Data successfully returned

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

get/org/{org-id}/staff-members/{staff-member-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "status": "INVITED",
  • "staff_number": "string",
  • "hire_date": "2025-03-25",
  • "release_date": "2025-03-25",
  • "managed_by":
    {
    },
  • "substitute": "string",
  • "access_level": "string",
  • "default_service_location": "string",
  • "possible_service_locations":
    [
    ],
  • "login_method":
    {
    },
  • "has_access": true
}

Update attributes of a staff member.

All none read-only attributes are set if specified. If an attribute is not given or null it is ignored. You cannot reset an attribute with a value! An exception is access_level which will be reset if not given or null.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

Request Body schema: application/json
status
required
string (StaffMemberStatus)
Enum: "INVITED" "ACTIVE" "INACTIVE"

The possible values for the status of a staff member.

staff_number
string

Optional company-issued staff number/id

hire_date
string <date>

Hire date of the staff member.

The date notation as defined by "full-date" in RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt), section 5.6. For example, "2017-07-21".

release_date
string <date>

Release date of the staff member.

The date notation as defined by "full-date" in RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt), section 5.6. For example, "2017-07-21".

managed_by
object (ProfessionalIdentityRef)
substitute
string

The ID of the staff member that can substitute for this staff member.

access_level
string

The ID of the access level is assigned to the staff member. If not specified, the staff member does not gain any access rights from access levels but might still have his own access rights.

login_method
object (LoginMethod)

The method a user signs into numberfour. If this member is not set the method is email/password. If the identity provider is the pre-defined "enfore" it is "user name/password" login. Otherwise it is a login with the specified provider.

Responses

200

Staff member successfully updated.

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

put/org/{org-id}/staff-members/{staff-member-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "status": "INVITED",
  • "staff_number": "string",
  • "hire_date": "2025-03-25",
  • "release_date": "2025-03-25",
  • "managed_by":
    {
    },
  • "substitute": "string",
  • "access_level": "string",
  • "login_method":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "status": "INVITED",
  • "staff_number": "string",
  • "hire_date": "2025-03-25",
  • "release_date": "2025-03-25",
  • "managed_by":
    {
    },
  • "substitute": "string",
  • "access_level": "string",
  • "default_service_location": "string",
  • "possible_service_locations":
    [
    ],
  • "login_method":
    {
    },
  • "has_access": true
}

Remove a staff member from the organization

In case the user was created using StaffMemberCreationRequestWithUsername, the user itself will be deleted from the system. Otherwise, it might still be active in a different organization. The rights to access the organization are removed in all cases. The call is idempotent. A second call does not fail even if the user was already deleted.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

Responses

204

Staff member was successfully deleted

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

delete/org/{org-id}/staff-members/{staff-member-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}

Response samples

Content type
application/problem+json
Copy
Expand all Collapse all
{}

Update a staff member together with default and possible locations.

Update a staff member together with default and possible locations. Attributes that are not included in the payload leave unchanged. Except if possible_service_locations is set to empty list, than the default_service_location is also reset.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

Request Body schema: application/json
staff_number
string

Optional company-issued staff number/id

hire_date
string <date>

Hire date of the staff member.

The date notation as defined by "full-date" in RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt), section 5.6. For example, "2017-07-21".

release_date
string <date>

Release date of the staff member.

The date notation as defined by "full-date" in RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt), section 5.6. For example, "2017-07-21".

managed_by
object (ProfessionalIdentityRef)
substitute
string

The ID of the staff member that can substitute for this staff member.

access_level
string

The ID of the access level is assigned to the staff member. If not specified, the staff member does not gain any access rights from access levels but might still have his own access rights.

default_service_location
string <= 256 characters

The ID of the service location the staff member primarily works at.

possible_service_locations
Array of strings

The IDs of all service locations the staff member can possibly work at. Caution: That list must contain also the default_service_location.

status_active
boolean

Change the status of the staff member. True sets status=ACTIVE and false set status=INACTIVE. If the current staff status is INVITED you will see the following results: Try to activate will still be status INVITED. If you deactivate the status will be INACTIVE. But if you activate it again the status will be INVITED and not ACTIVE. In case the status is INACTIVE you cannot determine if there is a pending invitation. Because you usually do not manage users with email (see StaffMemberCreationRequestWithInviteEmail) through this API it should not be a problem.

Responses

200

Staff member successfully updated.

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

patch/org/{org-id}/staff-members/{staff-member-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "staff_number": "string",
  • "hire_date": "2025-03-25",
  • "release_date": "2025-03-25",
  • "managed_by":
    {
    },
  • "substitute": "string",
  • "access_level": "string",
  • "default_service_location": "string",
  • "possible_service_locations":
    [
    ],
  • "status_active": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "status": "INVITED",
  • "staff_number": "string",
  • "hire_date": "2025-03-25",
  • "release_date": "2025-03-25",
  • "managed_by":
    {
    },
  • "substitute": "string",
  • "access_level": "string",
  • "default_service_location": "string",
  • "possible_service_locations":
    [
    ],
  • "login_method":
    {
    },
  • "has_access": true
}

Staff Members: Event Subscription

Get a list of registered consumers for staff member events.

Retrieve all currently active event subscriptions.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

Responses

200

List of registrations

403

Credentials missing or not sufficient

get/org/{org-id}/staff-member-subscriptions

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-member-subscriptions

Response samples

Content type
application/json
Copy
Expand all Collapse all
{}

Register an event consumer with the API.

If the callback URL is already registered, we return the original subscription ID. We will continue attempting to send new items to registered subscriptions until they are deleted. In case we cannot reach the endpoint, we will apply an exponential backoff.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

Request Body schema: application/json
callback_url
required
string <uri>

The callback URL where event notifications are to be delivered. It must be HTTPS to prevent man-in-the-middle attacks.

Responses

201

Registration of subscription successful (or already subscribed)

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

Callbacks

post<no summary>
post/org/{org-id}/staff-member-subscriptions

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-member-subscriptions

Request samples

Content type
application/json
Copy
Expand all Collapse all

Response samples

Content type
application/json
Copy
Expand all Collapse all
{}

Callback payload samples

Callback
POST: <no summary>
Content type
application/json
Copy
Expand all Collapse all
{
  • "org_id": "string",
  • "staff_member":
    {
    },
  • "problems":
    []
}

Delete a subscription for staff members

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

subscription-id
required
string

ID of the subscription to delete

Responses

204

Subscription was successfully deleted

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

delete/org/{org-id}/staff-member-subscriptions/{subscription-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-member-subscriptions/{subscription-id}

Response samples

Content type
application/problem+json
Copy
Expand all Collapse all
{}

Staff Members: Cash Management (v3)

Current version of the API. For use with the new business day model

Get cash management settings for a staff member

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

get/org/{org-id}/staff-members/{staff-member-id}/cash-management/v3/settings

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}/cash-management/v3/settings

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "has_managed_cash_container": true,
  • "cash_container_type": "CASH_DRAWER"
}

Update cash management settings for a staff member

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

Request Body schema: application/json
@type
required
string
Default: "EnableCashManagementForStaffMemberRequest"
cash_container_type
required
string (StaffMemberCashContainerType)
Enum: "CASH_DRAWER" "CONNECTED_CASH_DRAWER" "WALLET"

Responses

200

Cash management update successful.

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

patch/org/{org-id}/staff-members/{staff-member-id}/cash-management/v3/settings

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}/cash-management/v3/settings

Request samples

Content type
application/json
Example
Copy
Expand all Collapse all
{
  • "@type": "EnableCashManagementForStaffMemberRequest",
  • "cash_container_type": "CASH_DRAWER"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "has_managed_cash_container": true,
  • "cash_container_type": "CASH_DRAWER"
}

Iterate over cash management data for a staff member

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

query Parameters
limit
integer <int64> [ 1 .. 5000 ]

Max number of objects to be returned per page. Note that both the items as well as the problems arrays of the query response count towards this number to allow a simple, consistent paging over all items (and problems) of a given timeframe. If not given, defaults to 200.

offset
integer <int64> >= 0

Offset of items and problems of where to start the next page. Similar to limit and offset in SQL, one would obtain the second page with limit=10&offset=10. Note that this paging with limit and offset is within a time interval that is specified with from and to. If not given, defaults to 0.

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

get/org/{org-id}/staff-members/{staff-member-id}/cash-management/v3/locations

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}/cash-management/v3/locations

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "items":
    [
    ],
  • "problems":
    []
}

Get cash management data for a staff member/location combination.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

service-location-id
required
string

ID of the service location to act upon

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

get/org/{org-id}/staff-members/{staff-member-id}/cash-management/v3/locations/{service-location-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}/cash-management/v3/locations/{service-location-id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "service_location_id": "stringstringstringstring",
  • "staff_member_id": "stringstringstringstring",
  • "cashier_shifts_suspended": true,
  • "cash_drawer_device_id": "stringstringstringstring",
  • "tracking_account":
    {
    },
  • "cash_account":
    {
    }
}

Staff Members: Cash Management (v2)

API for a deprecated intermediate version of the new business day model

Iterate over cash management information for a staff member Deprecated

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

query Parameters
limit
integer <int64> [ 1 .. 5000 ]

Max number of objects to be returned per page. Note that both the items as well as the problems arrays of the query response count towards this number to allow a simple, consistent paging over all items (and problems) of a given timeframe. If not given, defaults to 200.

offset
integer <int64> >= 0

Offset of items and problems of where to start the next page. Similar to limit and offset in SQL, one would obtain the second page with limit=10&offset=10. Note that this paging with limit and offset is within a time interval that is specified with from and to. If not given, defaults to 0.

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

get/org/{org-id}/staff-members/{staff-member-id}/cash-management-at-location

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}/cash-management-at-location

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "items":
    [
    ],
  • "problems":
    []
}

Get cash management information for a staff member/location combination. Deprecated

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

service-location-id
required
string

ID of the service location to act upon

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

get/org/{org-id}/staff-members/{staff-member-id}/cash-management-at-location/{service-location-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}/cash-management-at-location/{service-location-id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "service_location_id": "stringstringstringstring",
  • "staff_member_id": "stringstringstringstring",
  • "has_managed_cash_container": true,
  • "cash_container_type": "CASH_DRAWER",
  • "cash_drawer_device_id": "stringstringstringstring",
  • "tracking_account":
    {
    },
  • "cash_account":
    {
    }
}

Update cash management for a staff member/location combination Deprecated

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

service-location-id
required
string

ID of the service location to act upon

Request Body schema: application/json
@type
required
string
Default: "StartStaffMemberCashManagementForLocation"
cash_container_type
required
string (StaffMemberCashContainerType)
Enum: "CASH_DRAWER" "CONNECTED_CASH_DRAWER" "WALLET"

Responses

200

Cash management update successful.

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

patch/org/{org-id}/staff-members/{staff-member-id}/cash-management-at-location/{service-location-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}/cash-management-at-location/{service-location-id}

Request samples

Content type
application/json
Example
Copy
Expand all Collapse all
{
  • "@type": "StartStaffMemberCashManagementForLocation",
  • "cash_container_type": "CASH_DRAWER"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "service_location_id": "stringstringstringstring",
  • "staff_member_id": "stringstringstringstring",
  • "has_managed_cash_container": true,
  • "cash_container_type": "CASH_DRAWER",
  • "cash_drawer_device_id": "stringstringstringstring",
  • "tracking_account":
    {
    },
  • "cash_account":
    {
    }
}

Staff Members: Cash Management (v1)

Only usable when using the old business day model

Cash Container associated to a staff member. Deprecated

Returns the cash-container associated to a staff member. 404 in case it doesn't have any.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

get/org/{org-id}/staff-members/{staff-member-id}/cash-container

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}/cash-container

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "stringstringstringstring",
  • "staff_member_id": "stringstringstringstring",
  • "is_active": true,
  • "cash_container_type": "CASH_DRAWER",
  • "account_ref":
    {
    },
  • "currency": "AUD",
  • "balance":
    {
    },
  • "booking_periods":
    {
    },
  • "device_id": "stringstringstringstring"
}

Create a cash container for a staff member Deprecated

Create a new cash container for the staff member.

A staff member can have none or one CashContainer of type WALLET or CASH_DRAWER.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

Request Body schema: application/json

Responses

200

Individual Cash Container for Staff member creation successful.

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

409

Resource(s) could not be processed because of a conflict in the current state of the resource

422

Specified data is semantically incorrect.

post/org/{org-id}/staff-members/{staff-member-id}/cash-container

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}/cash-container

Request samples

Content type
application/json
Example
Copy
Expand all Collapse all
{
  • "@type": "StaffMemberWalletCreation"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "stringstringstringstring",
  • "staff_member_id": "stringstringstringstring",
  • "is_active": true,
  • "cash_container_type": "CASH_DRAWER",
  • "account_ref":
    {
    },
  • "currency": "AUD",
  • "balance":
    {
    },
  • "booking_periods":
    {
    },
  • "device_id": "stringstringstringstring"
}

Update the staff member cash Container Deprecated

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-member-id
required
string

ID of the staff access member

Request Body schema: application/json
active
required
boolean

Responses

200

Staff member CashContainer was successfully updated

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

patch/org/{org-id}/staff-members/{staff-member-id}/cash-container

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members/{staff-member-id}/cash-container

Request samples

Content type
application/json
Example
Copy
Expand all Collapse all
{
  • "active": true,
  • "@type": "StaffMemberWalletUpdate"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "stringstringstringstring",
  • "staff_member_id": "stringstringstringstring",
  • "is_active": true,
  • "cash_container_type": "CASH_DRAWER",
  • "account_ref":
    {
    },
  • "currency": "AUD",
  • "balance":
    {
    },
  • "booking_periods":
    {
    },
  • "device_id": "stringstringstringstring"
}

Cash containers associated to staff members in the organization Deprecated

Returns Cash containers associated to staff members of the organization ordered by name.

Capabilities:

  • filter by default ServiceLocation
  • pagination
path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

query Parameters
default-service-location-id
string

ID of the service location the staff member primarily works at.

limit
integer <int64> [ 1 .. 5000 ]

Max number of objects to be returned per page. Note that both the items as well as the problems arrays of the query response count towards this number to allow a simple, consistent paging over all items (and problems) of a given timeframe. If not given, defaults to 200.

offset
integer <int64> >= 0

Offset of items and problems of where to start the next page. Similar to limit and offset in SQL, one would obtain the second page with limit=10&offset=10. Note that this paging with limit and offset is within a time interval that is specified with from and to. If not given, defaults to 0.

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

get/org/{org-id}/staff-members-cash-containers

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-members-cash-containers

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "items":
    [
    ],
  • "problems":
    []
}

Staff Access Levels

Returns staff access levels

Returns staff access levels of the organization ordered by priority.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

get/org/{org-id}/staff-access-levels

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-access-levels

Response samples

Content type
application/json
Copy
Expand all Collapse all
{}

Add a new staff access level

Adds a new staff access level. The new level will be added at the bottom of the access level hierarchy.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

Request Body schema: application/json
name
required
string <= 256 characters

The name of the access level.

Responses

200

Access level successfully inserted

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

422

Specified data is semantically incorrect.

post/org/{org-id}/staff-access-levels

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-access-levels

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "name": "string"
}

Returns staff access level hierarchy

Returns the staff access level hierarchy for the organization.

Each item in the array is the ID of a staff access level. The order of items in the array represents the linear level hierarchy with the first item having the highest position in the hierarchy.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

get/org/{org-id}/staff-access-levels-hierarchy

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-access-levels-hierarchy

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "items_in_order":
    [
    ]
}

Update the staff access level hierarchy

Updates the staff access level hierarchy to match the order passed as payload.

If the payload references any access level that does not exist or if it does not reference one that exists, an error is raised and no changes are performed.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

Request Body schema: application/json
items_in_order
required
Array of strings

Responses

200

Access level successfully inserted

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

422

Specified data is semantically incorrect.

put/org/{org-id}/staff-access-levels-hierarchy

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-access-levels-hierarchy

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "items_in_order":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{}

Load an access level

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-access-level-id
required
string

ID of the staff access level

Responses

200

Data successfully returned

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

get/org/{org-id}/staff-access-levels/{staff-access-level-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-access-levels/{staff-access-level-id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "name": "string"
}

Update an access level

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-access-level-id
required
string

ID of the staff access level

Request Body schema: application/json
name
required
string <= 256 characters

The name of the access level.

Responses

200

Data successfully updated

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

put/org/{org-id}/staff-access-levels/{staff-access-level-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-access-levels/{staff-access-level-id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "name": "string"
}

Remove an access level

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

staff-access-level-id
required
string

ID of the staff access level

Responses

204

Access level was successfully deleted.

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

delete/org/{org-id}/staff-access-levels/{staff-access-level-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/staff-access-levels/{staff-access-level-id}

Response samples

Content type
application/problem+json
Copy
Expand all Collapse all
{}

Application Access Rights

Load the access rights configured for the application.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

application-id
required
string

ID of the application

Responses

200

Data successfully returned

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

get/org/{org-id}/application-access-rights/{application-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/application-access-rights/{application-id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "dashboard_widgets":
    {
    },
  • "dashboard_sales_channels":
    {
    },
  • "application_workflows":
    {
    },
  • "application_functions":
    {
    }
}

Update the access rights for the application.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

application-id
required
string

ID of the application

Request Body schema: application/json
dashboard_widgets
object

The map of dashboard widgets and the access info for each of them. For a list of valid widget identifiers, see the application documentation.

dashboard_sales_channels
object

The map of sales channels that can be used for visualization in the dashboard widgets and the access info for each of them. The values in the array are IDs of sales channels.

application_workflows
object

The map of application workflows and the access info for each of them. For a list of valid workflow identifiers, see the application documentation.

application_functions
object

The map of application functions and the access info for each of them. For a list of valid workflow function, see the application documentation.

Responses

200

Access rights successfully updated.

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

404

Resource(s) not found or invalid identifier

422

Specified data is semantically incorrect.

put/org/{org-id}/application-access-rights/{application-id}

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/application-access-rights/{application-id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "dashboard_widgets":
    {
    },
  • "dashboard_sales_channels":
    {
    },
  • "application_workflows":
    {
    },
  • "application_functions":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "dashboard_widgets":
    {
    },
  • "dashboard_sales_channels":
    {
    },
  • "application_workflows":
    {
    },
  • "application_functions":
    {
    }
}

Login Configuration

The login mechanisms of the administrator.

Returns administration login configuration.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

get/org/{org-id}/admin-login-config

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/admin-login-config

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "supported_provider_ids":
    [
    ],
  • "email_password": true,
  • "username_password": true
}

Set the login mechanisms of the administrator.

It specifies which administration login mechanism the client offers.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

Request Body schema: application/json
supported_provider_ids
required
Array of strings

The list of supported IDPs. If one is set and the IDP is supported at the auth-service the client offers web-flow login with the given IDP. Usually only one IDP is set.

email_password
required
boolean

True mean that the client offers email/password login.

username_password
required
boolean

True mean that the client offers user name/password login.

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

put/org/{org-id}/admin-login-config

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/admin-login-config

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "supported_provider_ids":
    [
    ],
  • "email_password": true,
  • "username_password": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "supported_provider_ids":
    [
    ],
  • "email_password": true,
  • "username_password": true
}

The login mechanisms of the user.

Returns user login configuration.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

get/org/{org-id}/user-login-config

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/user-login-config

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "supported_provider_ids":
    [
    ],
  • "email_password": true,
  • "username_password": true
}

Set the login mechanisms of the user.

It specifies which user login mechanism the client offers.

path Parameters
org-id
required
string

ID of the organization whose data is being accessed.

Request Body schema: application/json
supported_provider_ids
required
Array of strings

The list of supported IDPs. If one is set and the IDP is supported at the auth-service the client offers web-flow login with the given IDP. Usually only one IDP is set.

email_password
required
boolean

True mean that the client offers email/password login.

username_password
required
boolean

True mean that the client offers user name/password login.

Responses

200

Data successfully returned

400

Invalid parameters were sent by the client

403

Credentials missing or not sufficient

put/org/{org-id}/user-login-config

Production

https://external.apis.enfore.com/staffrights/org/{org-id}/user-login-config

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "supported_provider_ids":
    [
    ],
  • "email_password": true,
  • "username_password": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "supported_provider_ids":
    [
    ],
  • "email_password": true,
  • "username_password": true
}