The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

App::Dochazka::REST::Docs::Workflow - Documentation of REST workflow

DESCRIPTION

This is a POD-only module containing documentation describing standard Dochazka workflow scenarios and the REST resources used therein.

It is intended to be used in the functional testing process.

WORKFLOW SCENARIOS

The workflow scenarios are divided into sections according to the privlevel of the logged-in employee doing the "work" - i.e., interacting with the Dochazka REST server.

The workflow scenarios are presented in order of increasing privilege. Employees with higher privilege can perform all the workflow scenarios available to those of lower privilege.

passerby

Passerby is the default privlevel. In other words, employees without any privhistory entries will automatically be assigned this privlevel.

Passerby employees (which need not be "employees" in a legal sense) can engage in the following workflows:

Login

If LDAP authentication is enabled and DOCHAZKA_LDAP_AUTOCREATE is set, a new passerby employee will be created whenever an as-yet unseen employee logs in (authenticates herself to the REST server). Otherwise, a passerby employee can log in only if an administrator has created the corresponding employee profile.

View own employee profile

Using GET employee/current, any employee can view her own employee profile. The payload is a valid employee object.

Alternatively, GET employee/current/priv can be used, in which case the employee's current privilege level and schedule are returned along with the employee object.

Explore available resources

Any logged-in employee is free to explore available resources. The starting point for such exploration can be GET / (i.e. a GET request for the top-level resource). The information returned is specific to the HTTP method used, so for PUT resources one needs to use PUT /, etc.

Only accessible resources are displayed. For example, a passerby employee will not see admin resources. A few resources (e.g. activity/aid/:aid), have different ACL profiles depending on which HTTP method is used.

active

admin

AUTHOR

Nathan Cutler ncutler@suse.cz