Skip to content

Incident

An Incident represents an event or report registered in an office: an accident, a near-miss, a non-compliance, a malfunction report, or an intervention request.

Belongs to an office (via subtenant_id = office_id) and has a workflow status:

  • new: just reported
  • open: being handled
  • closed: resolved (with closing date)

An incident can have:

  • Involved people (IncidentPerson)
  • Involved resources (IncidentResource): equipment, environments, substances, work groups, materials
  • Linked corrective actions (IncidentAction)

Use this API to:

  • Report a new incident in an office
  • Browse incidents for an office (filter by subtenant_id)
  • Filter by category or status
  • Manage the incident lifecycle (new → open → closed)
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/incident/index

Returns a paginated list of incidents.

Most useful filters:

  • subtenant_id (office_id): all incidents in an office
  • status: filter by workflow status (new, open, closed)
  • category: filter by incident type
  • tenant_id (project_id): all incidents in a company

Parameters for searching incidents

object
filter
object
office_incident_id
string format: uuid
code
string
name
string
date_incident
string format: date
category
string
Allowed values: NON_COMPLIANCE ACCIDENTS ACCIDENTS_AND_MISSED_INJURIES REPORT_MALFUNCTION REPORT_FAILURE REQUEST_INSPECTION REQUEST_MAINTENANCE REQUEST_REPLACEMENT REQUEST_INTERVENTION
description_event
string
description_actions_involved
string
deponent
string
manager
string format: json
assignee
string format: json
watcher
string format: json
to
object
status
string
Allowed values: new open closed
external_reference_id
string
date_closed
string format: date
creator
string
created_at
string
tenant_id
string format: uuid
subtenant_id
string format: uuid
office_name

Name of the office.

string
project_name

Name of the project.

string
project_type
string
Allowed values: safety template
totInvolvedPerson

Total number of people involved in the incident.

integer
totSicknessDays

Total sickness days across all involved people.

integer
per-page
integer
default: 100 >= 1
page
integer
default: 1 >= 1
sort
string
Allowed values: name code date_incident status category office_name project_name
Example
{
"filter": {
"subtenant_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"status": "open"
},
"per-page": 20,
"page": 1,
"sort": "-date_incident"
}

List of incidents

Array<object>
object
office_incident_id
string format: uuid
code
string
name
string
date_incident
string format: date
category
string
Allowed values: NON_COMPLIANCE ACCIDENTS ACCIDENTS_AND_MISSED_INJURIES REPORT_MALFUNCTION REPORT_FAILURE REQUEST_INSPECTION REQUEST_MAINTENANCE REQUEST_REPLACEMENT REQUEST_INTERVENTION
description_event
string
description_actions_involved
string
deponent
string
manager
string format: json
assignee
string format: json
watcher
string format: json
to
object
status
string
Allowed values: new open closed
external_reference_id
string
date_closed
string format: date
creator
string
created_at
string
tenant_id
string format: uuid
subtenant_id
string format: uuid
office_name

Name of the office.

string
project_name

Name of the project.

string
project_type
string
Allowed values: safety template
totInvolvedPerson

Total number of people involved in the incident.

integer
totSicknessDays

Total sickness days across all involved people.

integer
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/incident/create

Reports a new incident.

Requires name, date_incident, subtenant_id (office_id), and tenant_id (project_id). The office_incident_id is auto-generated if not provided.

After creation, add involved people via IncidentPerson, involved resources via IncidentResource, and corrective actions via IncidentAction.

Incident to report

object
office_incident_id

Unique identifier. Auto-generated if not provided.

string format: uuid
code

Identifier code.

string
<= 50 characters
name
required

Title/name of the incident.

string
date_incident
required

Date when the incident occurred.

string format: date
category

Incident category:

  • NON_COMPLIANCE: non-compliance
  • ACCIDENTS: accident
  • ACCIDENTS_AND_MISSED_INJURIES: accident and near-miss
  • REPORT_MALFUNCTION: malfunction report
  • REPORT_FAILURE: failure report
  • REQUEST_INSPECTION: inspection request
  • REQUEST_MAINTENANCE: maintenance request
  • REQUEST_REPLACEMENT: replacement request
  • REQUEST_INTERVENTION: intervention request
string
<= 50 characters
Allowed values: NON_COMPLIANCE ACCIDENTS ACCIDENTS_AND_MISSED_INJURIES REPORT_MALFUNCTION REPORT_FAILURE REQUEST_INSPECTION REQUEST_MAINTENANCE REQUEST_REPLACEMENT REQUEST_INTERVENTION
description_event

Description of what happened.

string
description_actions_involved

Description of actions taken.

string
deponent

Name of the person who reported the incident.

string
manager

Incident managers (JSON).

string format: json
assignee

Incident assignees (JSON).

string format: json
watcher

Incident watchers (JSON).

string format: json
to

Notification recipients (JSON).

object
status

Workflow status:

  • new: just reported
  • open: being handled
  • closed: resolved (requires date_closed)
string
<= 50 characters
Allowed values: new open closed
external_reference_id

External reference number (e.g. INAIL, OSHA, CPAM case number).

string
<= 50 characters
date_closed

Closing date. Required when status is closed.

string format: date
creator

Username of the person who created the incident. Auto-set on creation.

string
created_at

Creation timestamp. Auto-set on creation.

string
tenant_id
required

The project (company). Pass the project_id.

string format: uuid
subtenant_id
required

The office where the incident occurred. Pass the office_id.

string format: uuid

Incident reported successfully

object
office_incident_id

Unique identifier. Auto-generated if not provided.

string format: uuid
code

Identifier code.

string
<= 50 characters
name
required

Title/name of the incident.

string
date_incident
required

Date when the incident occurred.

string format: date
category

Incident category:

  • NON_COMPLIANCE: non-compliance
  • ACCIDENTS: accident
  • ACCIDENTS_AND_MISSED_INJURIES: accident and near-miss
  • REPORT_MALFUNCTION: malfunction report
  • REPORT_FAILURE: failure report
  • REQUEST_INSPECTION: inspection request
  • REQUEST_MAINTENANCE: maintenance request
  • REQUEST_REPLACEMENT: replacement request
  • REQUEST_INTERVENTION: intervention request
string
<= 50 characters
Allowed values: NON_COMPLIANCE ACCIDENTS ACCIDENTS_AND_MISSED_INJURIES REPORT_MALFUNCTION REPORT_FAILURE REQUEST_INSPECTION REQUEST_MAINTENANCE REQUEST_REPLACEMENT REQUEST_INTERVENTION
description_event

Description of what happened.

string
description_actions_involved

Description of actions taken.

string
deponent

Name of the person who reported the incident.

string
manager

Incident managers (JSON).

string format: json
assignee

Incident assignees (JSON).

string format: json
watcher

Incident watchers (JSON).

string format: json
to

Notification recipients (JSON).

object
status

Workflow status:

  • new: just reported
  • open: being handled
  • closed: resolved (requires date_closed)
string
<= 50 characters
Allowed values: new open closed
external_reference_id

External reference number (e.g. INAIL, OSHA, CPAM case number).

string
<= 50 characters
date_closed

Closing date. Required when status is closed.

string format: date
creator

Username of the person who created the incident. Auto-set on creation.

string
created_at

Creation timestamp. Auto-set on creation.

string
tenant_id
required

The project (company). Pass the project_id.

string format: uuid
subtenant_id
required

The office where the incident occurred. Pass the office_id.

string format: uuid
GET
/v2/incident/view/{id}

Retrieves a single incident by its ID.

id
required
string format: uuid

The office_incident_id to retrieve.

Incident found

object
office_incident_id
string format: uuid
code
string
name
string
date_incident
string format: date
category
string
Allowed values: NON_COMPLIANCE ACCIDENTS ACCIDENTS_AND_MISSED_INJURIES REPORT_MALFUNCTION REPORT_FAILURE REQUEST_INSPECTION REQUEST_MAINTENANCE REQUEST_REPLACEMENT REQUEST_INTERVENTION
description_event
string
description_actions_involved
string
deponent
string
manager
string format: json
assignee
string format: json
watcher
string format: json
to
object
status
string
Allowed values: new open closed
external_reference_id
string
date_closed
string format: date
creator
string
created_at
string
tenant_id
string format: uuid
subtenant_id
string format: uuid
office_name

Name of the office.

string
project_name

Name of the project.

string
project_type
string
Allowed values: safety template
totInvolvedPerson

Total number of people involved in the incident.

integer
totSicknessDays

Total sickness days across all involved people.

integer

Incident not found

PUT
/v2/incident/update/{id}

Updates an existing incident.

Common use case: changing status to open (being handled) or closed (resolved). When setting status to closed, the date_closed field is required.

id
required
string format: uuid

The office_incident_id to update.

Fields to update

object
office_incident_id

Unique identifier. Auto-generated if not provided.

string format: uuid
code

Identifier code.

string
<= 50 characters
name
required

Title/name of the incident.

string
date_incident
required

Date when the incident occurred.

string format: date
category

Incident category:

  • NON_COMPLIANCE: non-compliance
  • ACCIDENTS: accident
  • ACCIDENTS_AND_MISSED_INJURIES: accident and near-miss
  • REPORT_MALFUNCTION: malfunction report
  • REPORT_FAILURE: failure report
  • REQUEST_INSPECTION: inspection request
  • REQUEST_MAINTENANCE: maintenance request
  • REQUEST_REPLACEMENT: replacement request
  • REQUEST_INTERVENTION: intervention request
string
<= 50 characters
Allowed values: NON_COMPLIANCE ACCIDENTS ACCIDENTS_AND_MISSED_INJURIES REPORT_MALFUNCTION REPORT_FAILURE REQUEST_INSPECTION REQUEST_MAINTENANCE REQUEST_REPLACEMENT REQUEST_INTERVENTION
description_event

Description of what happened.

string
description_actions_involved

Description of actions taken.

string
deponent

Name of the person who reported the incident.

string
manager

Incident managers (JSON).

string format: json
assignee

Incident assignees (JSON).

string format: json
watcher

Incident watchers (JSON).

string format: json
to

Notification recipients (JSON).

object
status

Workflow status:

  • new: just reported
  • open: being handled
  • closed: resolved (requires date_closed)
string
<= 50 characters
Allowed values: new open closed
external_reference_id

External reference number (e.g. INAIL, OSHA, CPAM case number).

string
<= 50 characters
date_closed

Closing date. Required when status is closed.

string format: date
creator

Username of the person who created the incident. Auto-set on creation.

string
created_at

Creation timestamp. Auto-set on creation.

string
tenant_id
required

The project (company). Pass the project_id.

string format: uuid
subtenant_id
required

The office where the incident occurred. Pass the office_id.

string format: uuid

Incident updated successfully

object
office_incident_id

Unique identifier. Auto-generated if not provided.

string format: uuid
code

Identifier code.

string
<= 50 characters
name
required

Title/name of the incident.

string
date_incident
required

Date when the incident occurred.

string format: date
category

Incident category:

  • NON_COMPLIANCE: non-compliance
  • ACCIDENTS: accident
  • ACCIDENTS_AND_MISSED_INJURIES: accident and near-miss
  • REPORT_MALFUNCTION: malfunction report
  • REPORT_FAILURE: failure report
  • REQUEST_INSPECTION: inspection request
  • REQUEST_MAINTENANCE: maintenance request
  • REQUEST_REPLACEMENT: replacement request
  • REQUEST_INTERVENTION: intervention request
string
<= 50 characters
Allowed values: NON_COMPLIANCE ACCIDENTS ACCIDENTS_AND_MISSED_INJURIES REPORT_MALFUNCTION REPORT_FAILURE REQUEST_INSPECTION REQUEST_MAINTENANCE REQUEST_REPLACEMENT REQUEST_INTERVENTION
description_event

Description of what happened.

string
description_actions_involved

Description of actions taken.

string
deponent

Name of the person who reported the incident.

string
manager

Incident managers (JSON).

string format: json
assignee

Incident assignees (JSON).

string format: json
watcher

Incident watchers (JSON).

string format: json
to

Notification recipients (JSON).

object
status

Workflow status:

  • new: just reported
  • open: being handled
  • closed: resolved (requires date_closed)
string
<= 50 characters
Allowed values: new open closed
external_reference_id

External reference number (e.g. INAIL, OSHA, CPAM case number).

string
<= 50 characters
date_closed

Closing date. Required when status is closed.

string format: date
creator

Username of the person who created the incident. Auto-set on creation.

string
created_at

Creation timestamp. Auto-set on creation.

string
tenant_id
required

The project (company). Pass the project_id.

string format: uuid
subtenant_id
required

The office where the incident occurred. Pass the office_id.

string format: uuid

Incident not found

DELETE
/v2/incident/delete/{id}

Deletes an incident.

If force=false (default), the response lists child entities (people, resources, actions). If force=true, the incident and all related entities are deleted.

id
required
string format: uuid

The office_incident_id to delete.

force
boolean

If true, deletes the incident and all child entities.

Incident deleted successfully

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