Skip to content

WorkGroupPerson

A WorkGroupPerson represents the assignment of a person to a work group. Links a PersonOffice (person-office assignment) to a WorkGroup.

Use this API to:

  • Assign a person to a job role, work phase, or homogeneous group
  • Find all people in a work group (filter by work_group_id)
  • Find all work groups a person belongs to (filter by person_office_id)

Optionally, exposure time can be recorded (time_spent_measure + unit_of_measure_id).

Supports historicization.

Version
2.0.0
OpenAPI version
3.0.0

Security scheme type: oauth2

Flow type: password

Token URL: https://auth.4hse.com/realms/4hse/protocol/openid-connect/token

Security scheme type: apiKey

Query parameter name: access-token

POST
/v2/work-group-person/index

Returns a paginated list of person-work group assignments.

Most useful filters:

  • work_group_id: all people in a specific work group
  • person_office_id: all work groups a person belongs to
  • person_last_name: search by person name

Parameters for searching

object
filter
object
work_group_person_id
string format: uuid
work_group_id
string format: uuid
person_office_id
string format: uuid
time_spent_measure
string
unit_of_measure_id
string format: uuid
person_id

The person ID.

string format: uuid
person_code

Employee code.

string
person_first_name
string
person_last_name
string
person_is_employee
boolean
person_is_external
boolean
work_group_code
string
work_group_name
string
work_group_type
string
Allowed values: WORK_PLACE HGROUP JOB
unit_of_measure_code
string
unit_of_measure_name
string
office_id
string format: uuid
office_name
string
office_code
string
project_id
string format: uuid
project_name
string
project_type
string
Allowed values: safety template
owned_active

Whether this assignment is currently active.

boolean
nullable
parent_active

Whether the parent entities are currently active.

boolean
nullable
per-page
integer
default: 100 >= 1
page
integer
default: 1 >= 1
sort
string
Allowed values: work_group_code work_group_name work_group_type person_code person_first_name person_last_name
history

If true, includes historicized entries.

boolean
Example
{
"filter": {
"work_group_id": "3a4b5c6d-7e8f-9012-abcd-ef3456789012"
},
"per-page": 20,
"page": 1,
"sort": "person_last_name"
}

List of person-work group assignments

Array<object>
object
work_group_person_id
string format: uuid
work_group_id
string format: uuid
person_office_id
string format: uuid
time_spent_measure
string
unit_of_measure_id
string format: uuid
person_id

The person ID.

string format: uuid
person_code

Employee code.

string
person_first_name
string
person_last_name
string
person_is_employee
boolean
person_is_external
boolean
work_group_code
string
work_group_name
string
work_group_type
string
Allowed values: WORK_PLACE HGROUP JOB
unit_of_measure_code
string
unit_of_measure_name
string
office_id
string format: uuid
office_name
string
office_code
string
project_id
string format: uuid
project_name
string
project_type
string
Allowed values: safety template
owned_active

Whether this assignment is currently active.

boolean
nullable
parent_active

Whether the parent entities are currently active.

boolean
nullable
X-Pagination-Current-Page
integer

Current page

X-Pagination-Page-Count
integer

Total number of pages

X-Pagination-Per-Page
integer

Number of items per page

X-Pagination-Total-Count
integer

Total number of items

POST
/v2/work-group-person/create

Assigns a person to a work group.

Requires work_group_id and person_office_id. The work_group_person_id is auto-generated if not provided.

The person must be assigned to the same office as the work group (via PersonOffice).

Assignment to create

object
work_group_person_id

Unique identifier. Auto-generated if not provided.

string format: uuid
work_group_id
required

The work group. Pass the work_group_id from the WorkGroup API.

string format: uuid
person_office_id
required

The person-office assignment. Pass the person_office_id from the PersonOffice API. The person must be assigned to the same office as the work group.

string format: uuid
time_spent_measure

Exposure time value. If specified, unit_of_measure_id is also required.

string
<= 255 characters
unit_of_measure_id

Unit of measure for the exposure time. Required if time_spent_measure is set.

string format: uuid

Person assigned to work group successfully

object
work_group_person_id

Unique identifier. Auto-generated if not provided.

string format: uuid
work_group_id
required

The work group. Pass the work_group_id from the WorkGroup API.

string format: uuid
person_office_id
required

The person-office assignment. Pass the person_office_id from the PersonOffice API. The person must be assigned to the same office as the work group.

string format: uuid
time_spent_measure

Exposure time value. If specified, unit_of_measure_id is also required.

string
<= 255 characters
unit_of_measure_id

Unit of measure for the exposure time. Required if time_spent_measure is set.

string format: uuid
GET
/v2/work-group-person/view/{id}

Retrieves a single assignment by its ID.

id
required
string format: uuid

The work_group_person_id to retrieve.

Assignment found

object
work_group_person_id
string format: uuid
work_group_id
string format: uuid
person_office_id
string format: uuid
time_spent_measure
string
unit_of_measure_id
string format: uuid
person_id

The person ID.

string format: uuid
person_code

Employee code.

string
person_first_name
string
person_last_name
string
person_is_employee
boolean
person_is_external
boolean
work_group_code
string
work_group_name
string
work_group_type
string
Allowed values: WORK_PLACE HGROUP JOB
unit_of_measure_code
string
unit_of_measure_name
string
office_id
string format: uuid
office_name
string
office_code
string
project_id
string format: uuid
project_name
string
project_type
string
Allowed values: safety template
owned_active

Whether this assignment is currently active.

boolean
nullable
parent_active

Whether the parent entities are currently active.

boolean
nullable

Assignment not found

PUT
/v2/work-group-person/update/{id}

Updates an existing assignment.

id
required
string format: uuid

The work_group_person_id to update.

Fields to update

object
work_group_person_id

Unique identifier. Auto-generated if not provided.

string format: uuid
work_group_id
required

The work group. Pass the work_group_id from the WorkGroup API.

string format: uuid
person_office_id
required

The person-office assignment. Pass the person_office_id from the PersonOffice API. The person must be assigned to the same office as the work group.

string format: uuid
time_spent_measure

Exposure time value. If specified, unit_of_measure_id is also required.

string
<= 255 characters
unit_of_measure_id

Unit of measure for the exposure time. Required if time_spent_measure is set.

string format: uuid

Assignment updated successfully

object
work_group_person_id

Unique identifier. Auto-generated if not provided.

string format: uuid
work_group_id
required

The work group. Pass the work_group_id from the WorkGroup API.

string format: uuid
person_office_id
required

The person-office assignment. Pass the person_office_id from the PersonOffice API. The person must be assigned to the same office as the work group.

string format: uuid
time_spent_measure

Exposure time value. If specified, unit_of_measure_id is also required.

string
<= 255 characters
unit_of_measure_id

Unit of measure for the exposure time. Required if time_spent_measure is set.

string format: uuid

Assignment not found

DELETE
/v2/work-group-person/delete/{id}

Deletes a person-work group assignment.

If force=false (default), the response lists child entities. If force=true, the assignment and related entities are deleted.

id
required
string format: uuid

The work_group_person_id to delete.

force
boolean

If true, deletes the assignment and all child entities.

Assignment deleted successfully

Preview of entities that would be deleted (returned when force=false)