Skip to content

Survey

SafetyCulture
API integration

Ship Survey features without building the integration. Full SafetyCulture API access via Proxy and 360+ MCP-ready tools for AI agents — extend models and mappings to fit your product.

Talk to us
SafetyCulture

Use Cases

Why integrate with SafetyCulture

Common scenarios for SaaS companies building SafetyCulture integrations for their customers.

01

Close the loop between field inspections and back-office resolution

CMMS, ITSM, and work order platforms can turn SafetyCulture Actions (failed audit items, hazard reports) into tickets in their own system and push status updates back, giving customers a single source of truth for frontline issues.

02

Sync asset registries with maintenance and EAM platforms

Maintenance SaaS vendors can keep asset records, locations, and service history aligned between their platform and SafetyCulture, so frontline workers and technicians always see the same equipment state.

03

Power EHS and compliance reporting from frontline data

EHS platforms can ingest hazard-related Actions and incident data from SafetyCulture, apply regulatory codes, and write compliance references back as custom fields on the original task.

04

Feed operations BI and AI copilots with SafetyCulture data

Analytics, AI copilot, and connected-worker platforms can pull Actions, asset service history, and maintenance program data to build dashboards or daily briefings on operational risk.

05

Extend SafetyCulture with domain-specific schema

SaaS vendors can programmatically create action custom fields, action types, and status groups so the data captured by frontline workers maps cleanly to their product's data model.

What You Can Build

Ship these features with Truto + SafetyCulture

Concrete product features your team can ship faster by leveraging Truto’s SafetyCulture integration instead of building from scratch.

01

Two-way Action-to-ticket sync

Create SafetyCulture Actions from your app and keep status, assignees, priority, due date, description, and site in sync using granular update endpoints.

02

Bi-directional asset registry

Bulk create and update assets, manage asset fields and asset types, and update asset locations to keep equipment records aligned across systems.

03

Closed-loop maintenance workflows

Read asset maintenance details and service history, add last-service records, and manage maintenance programs and their asset memberships from your platform.

04

Custom fields and action types for your data model

Create, map, and unmap action custom fields to specific action types, and manage custom action types so your product's schema shows up natively in SafetyCulture.

05

Status groups and labels management

Create custom status groups, attach them to asset types, and upsert or bulk-delete action labels to model your product's lifecycle inside SafetyCulture.

06

Shareable Action links for cross-app collaboration

Generate, retrieve, and revoke shared links for Actions so users in your platform can jump directly into the underlying SafetyCulture task with context.

SuperAI

SafetyCulture AI agent tools

Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.

list_all_safety_culture_groups

List SafetyCulture groups in your organization. Returns: group_id, name, group.

create_a_safety_culture_group

Create a new SafetyCulture group. Returns: group_id, name, group. Required: name.

create_a_safety_culture_action_custom_field

Create a custom field for action task types in SafetyCulture. Returns the created custom field including field_id, name, and value_type. Required: type_id, attributes.

delete_a_safety_culture_action_custom_field_by_id

Delete a custom field in SafetyCulture by id. Returns an empty 200 response on success. Required: id.

safety_culture_action_custom_fields_list_unmapped_for_type

List custom fields not yet mapped to a specific action type in SafetyCulture. Returns each unmapped field with field_id, name, and value_type. Required: type_id.

safety_culture_action_custom_fields_list_mapped_for_type

List custom fields mapped to a SafetyCulture action task type. Returns: field_id, name, value_type for each mapped custom field. Required: type_id.

safety_culture_action_custom_fields_map_to_type

Map a SafetyCulture custom field to an action type by associating the specified field with the given type. Returns a successful response confirming the mapping. Required: type_id, field_id.

update_a_safety_culture_action_custom_field_by_id

Rename a SafetyCulture custom field by updating its name. Returns an empty 200 response on success. Required: id, name.

safety_culture_action_custom_fields_unmap_from_type

Unmap a custom field from an action type in SafetyCulture. Returns an empty 200 response on success. Required: type_id, field_id.

create_a_safety_culture_action_type

Create a new action type (task type) in SafetyCulture. Returns the created action type with its type_id and name. Required: type_attributes.

delete_a_safety_culture_action_type_by_id

Delete a SafetyCulture task type by id. Returns an empty 200 response on success. Required: id.

get_single_safety_culture_action_type_by_id

Get a single action type (task type) configuration in SafetyCulture by id. Returns: id, name, reference. Required: id.

list_all_safety_culture_action_types

List SafetyCulture action types (task types) configured for the organization. Returns: id, name, reference.

update_a_safety_culture_action_type_by_id

Rename a SafetyCulture action type (task type) by providing a new name. Returns: id, name, reference. Required: id, name.

safety_culture_action_labels_bulk_delete

Bulk delete action labels in SafetyCulture by submitting a list of label IDs. Returns an empty response on success. Required: label_ids.

list_all_safety_culture_action_labels

List action labels configured for your SafetyCulture organization. Returns: id, reference. Each organization can have up to 100 action labels.

safety_culture_action_labels_upsert

Create or update an action label in SafetyCulture to categorize or group actions at scale. Returns the action label object including its id. Required: label (must contain a valid UUID — provide your own when creating, or the existing label's UUID when updating). Each organization is limited to 100 action labels.

create_a_safety_culture_action

Create a new action in SafetyCulture. Returns the created action object including its task_id, title, description, status, priority_id, created_at, due_at, collaborators, and site.

safety_culture_actions_create_schedule

Create a recurring action schedule in SafetyCulture that generates actions on an RRule frequency. Returns: title, description, collaborators, priority_id, type, reference. Required: title, frequency. The frequency field follows RFC 5545 RRule format.

safety_culture_actions_create_shared_link

Create a shared link for a SafetyCulture action that can be shared with anyone, even without a SafetyCulture account. Returns the action object including task_id, title, description, status, creator, and site. Required: task_id. Action links are public — anyone with the link can view the action and its media attachments until the link is disabled or the action is deleted.

safety_culture_actions_bulk_delete

Delete multiple SafetyCulture actions in a single request by providing a list of action ids. Returns an empty response on success. Required: ids.

get_single_safety_culture_action_by_id

Get a SafetyCulture action by id. Returns the action object including task_id, title, description, creator, status, site, collaborators, and reference information. Required: id.

list_all_safety_culture_actions

List SafetyCulture actions in your organization with optional filters and sorting. Returns each action's task_id, title, description, created_at, modified_at, due_at, completed_at, priority_id, status, creator, collaborators, site, inspection, and template details. Supports task_filters for narrowing results; max 100 per page.

safety_culture_actions_get_shared_link

Get the shared link for a SafetyCulture action by task_id. Returns the shared link details including reference type, id, inspection_context, and sensor_alert_context. Required: task_id. Action links are public URLs accessible by anyone, even without a SafetyCulture account.

safety_culture_actions_delete_shared_link

Delete a shared action link in SafetyCulture by task_id, revoking public access to the action. A new link created afterwards generates a fresh URL rather than reactivating the old one. Returns an empty 200 response on success. Required: task_id.

safety_culture_actions_update_asset

Update the asset linked to a SafetyCulture action task. Returns the action task object including task_id, title, description, status, created_at, and modified_at. Required: task_id.

safety_culture_actions_update_assignees

Update the assignees of a SafetyCulture action (task). Returns the updated action object containing the task with task_id, title, status, collaborators, creator, and site. Required: task_id, assignees.

safety_culture_actions_update_description

Update the description of a SafetyCulture action (task). Returns an empty 200 response on success. Required: task_id, description.

safety_culture_actions_update_due_at

Update the due date of a SafetyCulture action (task). If due_at is empty the due date will be unset. Returns an empty 200 response on success. Required: task_id.

safety_culture_actions_update_priority

Update the priority of a SafetyCulture action (task). Returns an empty 200 response on success. Required: task_id, priority_id.

safety_culture_actions_update_site

Update the site associated with a SafetyCulture action (task) by task_id. Required: task_id (the action UUID) and site_id (the site UUID to assign). Returns an empty 204 response on success.

safety_culture_actions_update_status

Update the status of a SafetyCulture action or issue by task_id. Returns the updated action including task_id, title, status, modified_at, and creator. Required: task_id, status_id. Action statuses use hardcoded UUIDs (To do, In progress, Complete, Can't do); issue statuses use Open and Resolved UUIDs.

safety_culture_actions_update_title

Update the title of a SafetyCulture action (task) by task_id. Returns the updated task object including task_id, title, description, status, created_at, and modified_at. Required: task_id, title. The title must be between 0 and 255 characters.

safety_culture_actions_bulk_update

Update the labels associated with a SafetyCulture action by providing a list of label IDs. Returns: modified_at, reference. Required: action_id. Sending an empty label_ids list removes all labels currently associated with the action.

safety_culture_assets_archive

Archive a SafetyCulture asset so users can no longer select it in inspections or other features. Archived assets retain all their data and can be restored at any time. Returns the archived asset including id, code, type, state, created_at, and modified_at. Required: asset_id.

safety_culture_assets_bulk_create

Create multiple SafetyCulture assets in a single request for bulk imports or data migrations. For large-scale migrations, call this endpoint in batches. Returns the created asset objects including id, code, type, fields, state, created_at, and modified_at. Required: assets.

safety_culture_assets_bulk_update

Update multiple SafetyCulture assets in a single request, applying the same changes or different values across several assets. Supports partial success, separating results into updated_assets and failed_assets with error details for each failure. Required: assets, update_mask.

create_a_safety_culture_asset

Create a single SafetyCulture asset. Returns the created asset including id, code, type, fields, site, state, created_at, modified_at, profile_image, and media. Required: code, type_id.

delete_a_safety_culture_asset_by_id

Delete a SafetyCulture asset and all its data from your organization. This action cannot be undone. To preserve data while preventing users from selecting an asset, archive it instead. Returns an empty response on success. Required: id.

get_single_safety_culture_asset_by_id

Get a single SafetyCulture asset by its system-generated id. Returns the full asset object including id, code, type, fields, site, state, created_at, modified_at, profile_image, and media. Required: id.

safety_culture_assets_get_by_code

Get a single SafetyCulture asset by its user-defined code instead of its system-generated id. Useful when integrating with external systems that track assets by your own identifiers. Returns the full asset object including id, code, type, fields, site, state, created_at, modified_at, profile_image, and media. Required: code.

list_all_safety_culture_assets

List SafetyCulture assets in your organization that match the provided filters and sorting options. Returns asset records including id, code, type, fields, site, state, created_at, modified_at, profile_image, and media. By default, assets are sorted by creation date (newest first).

safety_culture_assets_restore

Restore an archived SafetyCulture asset so users can select it in inspections and other features again. Returns the restored asset object including id, code, type, fields, site, state, created_at, modified_at, profile_image, and media. Required: asset_id.

safety_culture_assets_set_field_values

Update values for one or more fields on a SafetyCulture asset by asset id, without modifying other asset details. Returns the updated asset object including id, code, type, fields, site, state, created_at, modified_at, profile_image, and media. Required: asset_id, fields.

update_a_safety_culture_asset_by_id

Update a SafetyCulture asset by id, replacing it with the provided values. Returns the updated asset including id, code, type, fields, site, state, created_at, and modified_at. Required: id. When updating custom fields, include values for all custom fields you want to keep—missing fields may be cleared. To change status, include statuses with a status_option_id and add statuses to the update_mask.

safety_culture_assets_update_location

Set or change a SafetyCulture asset's geographic coordinates so the updated location appears on the asset's profile page and in the map view. Returns the full asset object including id, code, type, fields, site, state, created_at, and modified_at. Required: asset_id, location.

create_a_safety_culture_asset_field

Create a custom asset field in SafetyCulture. Returns: id, name, value_type, select_options, field_type. Required: name. Select fields require select_options with at least one option. New fields must be associated with asset types separately.

delete_a_safety_culture_asset_field_by_id

Delete a custom asset field by id in SafetyCulture. The field is removed from all asset types and all field values on existing assets are permanently deleted. Returns an empty 204 response on success. Required: id. Predefined fields cannot be deleted.

list_all_safety_culture_asset_fields

List asset fields in SafetyCulture to discover available fields before setting field values on assets. Returns: id, name. Includes custom, predefined, and select fields visible to the authenticated user.

update_a_safety_culture_asset_field_by_id

Update specific attributes of an existing asset field in SafetyCulture using an update mask to control which properties are modified. Returns: id, name. Required: id, update_mask. Predefined fields cannot be updated.

create_a_safety_culture_asset_type

Create a custom asset type in SafetyCulture to categorize and organize assets. Returns: id, name. Required: name.

delete_a_safety_culture_asset_type_by_id

Delete a SafetyCulture asset type by id. All assets of this type must be deleted first; field associations are removed and the type cannot be recovered. Returns an empty 204 response on success. Required: id.

get_single_safety_culture_asset_type_by_id

Get a single SafetyCulture asset type by id, including its display name. Returns: id, name. Required: id.

safety_culture_asset_types_list_fields

List all asset fields in your SafetyCulture organization and check which are associated with a specific asset type. Returns: name, id. Required: type_id.

list_all_safety_culture_asset_types

List asset types in a SafetyCulture organization. Returns: id, name.

update_a_safety_culture_asset_type_by_id

Update a SafetyCulture asset type by id, controlling which properties are modified via the update_mask parameter. Returns: id, name. Required: id, update_mask. Only attributes listed in update_mask are changed; other attributes in the request body are ignored.

safety_culture_asset_types_bulk_update

Update field associations for a SafetyCulture asset type. Use replace_all to control whether field_ids replace all existing associations or merge with them; removing a field from a type does not delete field values on existing assets. Returns an empty 200 response on success. Required: type_id.

create_a_safety_culture_app_configuration

Create a configuration for an existing SafetyCulture app installation in your organization. Returns: id. Required: app_id, installation_id, external_web_experience.

delete_a_safety_culture_app_configuration_by_id

Delete a configuration for an existing SafetyCulture app installation by id. The configuration is permanently removed and cannot be recovered. Returns an empty 204 response on success. Required: app_id, installation_id, id.

update_a_safety_culture_app_configuration_by_id

Update a configuration for an existing SafetyCulture app installation in your organization. Returns: id. Required: app_id, installation_id, id, external_web_experience.

create_a_safety_culture_app_installation

Install an existing SafetyCulture app in your organization. Returns: id. Required: app_id.

delete_a_safety_culture_app_installation_by_id

Delete an existing SafetyCulture app installation. The installation is permanently removed and cannot be recovered. Returns an empty 204 response on success. Required: app_id, id.

get_single_safety_culture_app_installation_by_id

Get details of a specific SafetyCulture app installation by app_id and id. Returns: id. Required: app_id, id.

list_all_safety_culture_app_installations

List all existing SafetyCulture app installations. Returns: id. Optional filter: app_id.

list_all_safety_culture_apps

List all SafetyCulture applications available to be installed by your organization. Returns: app_id, app_name, external_web_experience.

create_a_safety_culture_app

Register a new custom application in SafetyCulture. Returns: app_id, app_name, external_web_experience. Required: app_name. The app name is limited to 50 characters and supports alphanumeric characters and the symbols +, /, =, -, _, !, ?, #.

update_a_safety_culture_app_by_id

Update an existing custom application in SafetyCulture by id. Returns: app_id, app_name, external_web_experience. Required: id, app_name. The app name is limited to 50 characters and supports alphanumeric characters and the symbols +, /, =, -, _, !, ?, #.

safety_culture_maintenance_add_asset_last_service

Add the last service record for a SafetyCulture asset. Returns an empty 204 response on success. Required: asset_id.

safety_culture_maintenance_list_status_counts

Retrieve counts of SafetyCulture maintenance assets grouped by their current status. Returns the number of assets in each maintenance status option, along with status identifiers and labels. Filter criteria (such as asset type, site, or status filters) are sent in the request body.

safety_culture_maintenance_programs_add_assets

Add assets to a SafetyCulture maintenance program. Returns: id. Required: program_id.

create_a_safety_culture_maintenance_program

Create a new maintenance program in SafetyCulture. Returns: id, created_at, modified_at.

delete_a_safety_culture_maintenance_program_by_id

Delete a SafetyCulture maintenance program by id. Returns an empty 204 response on success. Required: id.

list_all_safety_culture_maintenance_programs

List maintenance programs in SafetyCulture. Returns: id, created_at, modified_at.

safety_culture_maintenance_programs_remove_assets

Remove assets from a SafetyCulture maintenance program. Returns: id. Required: program_id.

update_a_safety_culture_maintenance_program_by_id

Update a maintenance program in SafetyCulture by id. Returns the updated maintenance program object. Required: id.

get_single_safety_culture_maintenance_program_by_id

Get a single SafetyCulture maintenance program by id. Returns the maintenance program object including its id. Required: id (UUID format).

create_a_safety_culture_maintenance_plan

Create a new maintenance plan in SafetyCulture under a specified maintenance program. Returns: id, created_at, updated_at. Required: program_id.

delete_a_safety_culture_maintenance_plan_by_id

Delete a SafetyCulture maintenance plan by id. Returns an empty 204 response on success. Required: id.

update_a_safety_culture_maintenance_plan_by_id

Update a SafetyCulture maintenance plan by id. Returns: id, created_at, updated_at. Required: id.

safety_culture_status_groups_add_to_asset_types

Assign a SafetyCulture status group to asset types so the group's statuses become available on those assets. An asset type supports a single status group only. Returns: status, group. Required: status_group_id.

create_a_safety_culture_status_group

Create a SafetyCulture status group and its initial status options. A status group defines the set of statuses (e.g. 'In use', 'Under repair', 'Retired') that can be assigned to assets. Each option has a name and a color; a group supports up to 10 options. Returns: status, group. Required: name.

delete_a_safety_culture_status_group_by_id

Delete a SafetyCulture status group by id. Status groups define the set of statuses that can be assigned to assets. Returns an empty 204 response on success. Required: id.

get_single_safety_culture_status_group_by_id

Get a SafetyCulture asset status group by id. A status group defines the set of statuses (e.g. "In use", "Under repair", "Retired") assignable to assets. Returns: id, name, description, options, status. Required: id.

list_all_safety_culture_status_groups

List status groups in SafetyCulture that define the statuses assignable to assets. Returns: id, name, description, options, status, group. A status group supports up to 10 options.

safety_culture_status_groups_remove_from_asset_types

Remove a SafetyCulture status group from its associated asset types. Returns an empty 204 response on success. Required: status_group_id.

update_a_safety_culture_status_group_by_id

Update a SafetyCulture status group by id. Returns the updated group (group_id, name) and status (status_id, key, label, display_order). Required: id.

list_all_safety_culture_search_assets

Search SafetyCulture assets by a specific field value (e.g., VIN or fleet ID) rather than by the unique asset ID. Returns matching assets with id, code, type, fields, site, state, created_at, modified_at, and profile_image. Currently only supports asset fields that store string values.

list_all_safety_culture_asset_maintenance_details

List asset maintenance details in SafetyCulture. Returns: id, type, created_at.

list_all_safety_culture_asset_service_history

List service history records for a specific SafetyCulture asset. Returns a collection of service history entries, each including id. Required: asset_id.

list_all_safety_culture_maintenance_program_details

List maintenance program details in SafetyCulture. Returns program detail records including id, created_at, modified_at, and program-specific attributes.

list_all_safety_culture_user_groups

List groups that a SafetyCulture user belongs to. Returns: group_id, name, user. Required: user_id.

list_all_safety_culture_group_users

List users belonging to a SafetyCulture group. Returns: user_id, firstname, lastname, group. Required: group_id.

create_a_safety_culture_group_user

Add users to a SafetyCulture group by group_id. Returns the updated group object including group_id and name. Required: group_id.

delete_a_safety_culture_group_user_by_id

Remove a user from a SafetyCulture group. Returns an empty 204 response on success. Required: group_id, id.

safety_culture_organisation_accounts_bulk_delete

Bulk delete multiple groups in SafetyCulture by providing a list of group IDs. Returns an empty 200 response on success. Required: group_ids.

create_a_safety_culture_audit

Start a new SafetyCulture inspection from a template. Returns the created inspection object including audit_id, template_id, archived, created_at, modified_at, and audit_data. Required: template_id.

safety_culture_audits_search

Search SafetyCulture inspections with optional filters by modification time and template. Returns: audit_id, modified_at, date_created, file_ext, media_id, label, href. Required: field (must include audit_id). Results are sorted by modified_at oldest to newest, up to 1,000 per page.

get_single_safety_culture_audit_by_id

Get a single SafetyCulture inspection (audit) by id. Returns the full inspection object including audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, and items. Required: id.

update_a_safety_culture_audit_by_id

Update a SafetyCulture inspection (audit) by id with a modified inspection JSON payload. Returns the updated inspection including audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, and items. Required: id.

create_a_safety_culture_audit_deep_link

Create a deep link for a SafetyCulture inspection. Returns the inspection object including audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, and items. Required: audit_id.

create_a_safety_culture_audit_share

Share a SafetyCulture inspection (audit) by audit_id. Returns the inspection object including audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, and items. Required: audit_id.

list_all_safety_culture_audit_web_report_links

Get the web report link for a SafetyCulture audit (inspection). Returns: audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items. Required: audit_id.

safety_culture_audit_web_report_links_bulk_delete

Revoke the web report link for a SafetyCulture audit (inspection). Returns an empty 204 response on success. Required: audit_id.

get_single_safety_culture_audit_media_by_id

Get a specific media item attached to a SafetyCulture audit. Returns: media_id, date_created, file_ext, label, href. Required: audit_id, id.

list_all_safety_culture_investigation_media

List media items attached to a SafetyCulture investigation. Returns: media_id, media_type, media_url, content_length, file_extension, date_created, file_ext, label, href, webhook_id, event, resource, data. Required: investigation_id.

create_a_safety_culture_user

Create a SafetyCulture user. Returns a user object with user_id, firstname, and lastname, or an external_user object with id and email. Accepts a user or external_user object in the request body.

get_single_safety_culture_user_by_id

Get a SafetyCulture user by id. Returns a user object with user_id, firstname, and lastname, or an external_user object with id and email. Required: id.

update_a_safety_culture_user_by_id

Update a SafetyCulture user by id. Returns the updated user object including user_id, firstname, and lastname for internal users, or id and email for external users. Required: id.

list_all_safety_culture_search_users

Search SafetyCulture users in the organization. Returns: user_id, firstname, lastname, user. No required parameters.

create_a_safety_culture_directory_folder

Create a new folder in SafetyCulture's directory. Returns the folder object including id, name, org_id, creator_id, created_at, modified_at, and meta_label. Required: name.

get_single_safety_culture_directory_folder_by_id

Get a single SafetyCulture directory folder by id. Returns the folder object including id, name, org_id, creator_id, created_at, modified_at, and meta_label. Required: id.

update_a_safety_culture_directory_folder_by_id

Update a SafetyCulture directory folder's properties by id. Returns the updated folder object including id, name, org_id, creator_id, created_at, modified_at, and meta_label. Required: id.

list_all_safety_culture_directory_folders

List SafetyCulture directory folders. Returns: id, name, org_id, creator_id, created_at, modified_at, meta_label, folder. Supports filtering by meta_label and folder_id filter objects, and sorting by sort_order (1 ascending, 2 descending).

safety_culture_directory_folders_bulk_delete

Delete multiple SafetyCulture directory folders in bulk by folder IDs. Returns an empty 204 response on success. Required: folder_ids.

safety_culture_directory_folders_search

Search SafetyCulture directory folders by meta_label and folder_id filter objects. Returns folder, folder_with_member_count, and folder_with_ancestors objects including id, name, org_id, creator_id, created_at, modified_at, and meta_label. Multiple filters of the same type are combined with OR; different filter types are combined with AND.

safety_culture_directory_folders_move

Move SafetyCulture directory folders to a new parent folder. Returns the moved folder object including id, name, org_id, creator_id, created_at, modified_at, and meta_label.

list_all_safety_culture_folder_users

List users associated with a specific SafetyCulture folder. Returns: user_id, firstname, lastname, not, folder_id. Required: folder_id.

safety_culture_folder_users_bulk_delete

Remove the user association from a SafetyCulture folder by folder_id. Returns an empty 204 response on success. Required: folder_id.

list_all_safety_culture_folder_associated_users

List users associated with a SafetyCulture folder (site) in the directory. Returns each user's user_id, firstname, and lastname. Required: folder_id.

list_all_safety_culture_folder_inherited_users

List users who have inherited membership to a SafetyCulture folder (users assigned to parent folders in the hierarchy). Returns: user_id, firstname, lastname, not, folder_id. Required: folder_id.

list_all_safety_culture_child_folders

List child folders under a parent folder in SafetyCulture. Returns: folder, members_count, has_children, inherited_member_count, depth, children_count, folder_with_member_count. Required: parent_id.

safety_culture_user_folders_bulk_delete

Remove a SafetyCulture user from their assigned folders in the directory. Returns an empty 204 response on success. Required: user_id.

list_all_safety_culture_user_folder_ids

List the folder IDs assigned to the authenticated SafetyCulture user. Returns: folder_id, not. No required parameters.

create_a_safety_culture_folder_membership

Add folder membership for a user in SafetyCulture, assigning the user to one or more site folders. Returns the folder object including its id, name, org_id, creator_id, created_at, modified_at, and meta_label. Each user can only be a member of up to 40 sites; inherited memberships are not counted toward this limit.

list_all_safety_culture_organization_labels

List custom organization labels (site labels) in SafetyCulture. Returns: meta_label. These custom labels are used for display purposes to categorize sites and folders within the directory.

get_single_safety_culture_inspection_by_id

Get a SafetyCulture inspection by id. Returns: created_at, name, image. Required: id.

delete_a_safety_culture_inspection_by_id

Delete a SafetyCulture inspection by id. Returns an empty 204 response on success. Required: id.

safety_culture_inspections_archive

Archive a SafetyCulture inspection. Returns the full inspection object including audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, and items. Required: inspection_id.

safety_culture_inspections_restore

Restore an archived SafetyCulture inspection. Returns the full inspection object including audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, and items. Required: inspection_id.

safety_culture_inspections_clone

Clone a SafetyCulture inspection. Returns the full inspection object including audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, and items. Required: inspection_id.

create_a_safety_culture_inspection

Create a new SafetyCulture inspection from a template, optionally pre-filling responses and metadata. Returns the created inspection object including audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, and items. Required: template_id.

update_a_safety_culture_inspection_by_id

Update a SafetyCulture inspection by id. Returns the full inspection object including audit_id, template_id, archived, audit_data, template_data, header_items, and items. Required: id.

safety_culture_inspections_complete

Complete a SafetyCulture inspection by marking it as finished. Returns the inspection object including audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, and items. Required: inspection_id.

list_all_safety_culture_inspection_details

Get detailed information about a specific SafetyCulture inspection. Returns: created_at, inspection_context. Required: inspection_id.

safety_culture_inspection_locations_bulk_update

Update the location of a SafetyCulture inspection by replacing it with a new location object. Returns the updated location including country, formatted_address, geometry, locality, and postal_code. Required: inspection_id.

safety_culture_inspection_owners_bulk_update

Update the owner of a SafetyCulture inspection by transferring ownership to a new user. Returns the authorship object including owner, owner_id, device_id, author, and author_id. Required: inspection_id, owner_id.

safety_culture_inspection_sites_bulk_update

Update the site assigned to a SafetyCulture inspection. Sites belong to an area, which in turn belongs to a region. Returns: site. Required: inspection_id, site.

list_all_safety_culture_inspection_access

List access details for a specific SafetyCulture inspection. Returns: inspection_id, inspection_name, inspection_item_id, and inspection_item_name. Required: inspection_id.

safety_culture_inspection_access_bulk_update

Update access rules for a SafetyCulture inspection, controlling which users or groups can view or manage it. Returns an empty 204 response on success. Required: inspection_id.

safety_culture_inspection_access_bulk_delete

Remove a user's access to a SafetyCulture inspection. Returns an empty 204 response on success. Required: inspection_id, removed_user_id.

get_single_safety_culture_inspections_answer_by_id

Get a single SafetyCulture inspection answer by id. Returns the inspection item including item_id, label, type, responses (text, value, selected, failed), media, and scoring. Required: id.

create_a_safety_culture_inspection_export

Create an inspection export in SafetyCulture, initiating an asynchronous report generation job (PDF or Word) for a specified inspection. Returns the export job including its id and status, which can be polled for completion. Required: inspection_id.

create_a_safety_culture_integration_inspection

Create a new inspection in SafetyCulture from a template. Returns: audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, items, name, image. Required: template_id.

update_a_safety_culture_integration_inspection_by_id

Update a SafetyCulture inspection by id. Returns the updated inspection including its id, name, description, responses, authorship, and location. Required: id.

safety_culture_integration_inspections_complete

Complete a SafetyCulture inspection by marking it as complete. Returns the completed inspection object including audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, and items. Required: inspection_id.

list_all_safety_culture_announcements

List SafetyCulture announcements (Heads Up) in your organization. Returns: id, created_at, updated_at.

safety_culture_announcements_get_completion_counts

Get completion counts for a specific SafetyCulture Heads Up announcement. Returns: id. Required: id.

safety_culture_announcements_get_messages

Get messages for a specific SafetyCulture Heads Up announcement. Returns: id. Required: id.

safety_culture_announcements_list_users

List users assigned to a specific SafetyCulture Heads Up announcement. Returns: id. Required: id.

get_single_safety_culture_announcement_by_id

Get a single SafetyCulture Heads Up announcement by id. Returns: id, created_at, updated_at. Required: id.

safety_culture_companies_bulk_create

Create one or more companies (third-party contractor organizations) in SafetyCulture via the Companies API. Useful for automating vendor, subcontractor, and operational partner onboarding. Returns: id, name, description, image. Required: companies.

list_all_safety_culture_companies

List contractor companies in SafetyCulture. Returns: id, name, description, image, created_at, updated_at. Used to manage third-party contractor organizations, subcontractors, and operational partners.

create_a_safety_culture_company

Create a new company (contractor organization) in SafetyCulture. Returns: id, name, description, image. Required: name.

get_single_safety_culture_company_by_id

Get information about a contractor company in SafetyCulture. Returns: id, name, description, image.

safety_culture_companies_bulk_update

Update an existing company (contractor organization) in SafetyCulture by submitting the updated company details in the request body. Returns: id, name, description, image, created_at, updated_at.

safety_culture_companies_bulk_delete

Delete a company (contractor organization) in SafetyCulture. Returns an empty 204 response on success.

create_a_safety_culture_company_document

Create a document in SafetyCulture by uploading a file (PDF, Word document, spreadsheet, or image) to your organization. Supports automatic folder creation based on a specified path and uploading new versions of existing files. Returns: id, name, description, image, location, authorship.

list_all_safety_culture_company_documents

List company documents from SafetyCulture's companies data feed. Returns a data array of document records along with metadata containing next_page and remaining_records. Supports modified_after and modified_before date-time filters in Internet Date-Time format.

create_a_safety_culture_company_document_type

Create company document types in SafetyCulture. Returns: id, name, description, image. Required: name.

safety_culture_company_document_types_bulk_delete

Delete a company document type in SafetyCulture by id. Returns an empty 204 response on success. Required: id.

list_all_safety_culture_feed_companies

List companies (contractor organizations) from the SafetyCulture companies data feed. Returns: id, name, description, image, created_at. Optional filters modified_after and modified_before accept Internet Date-Time format timestamps (e.g., 2014-01-28T23:14:23.000Z).

list_all_safety_culture_company_members

List company members from SafetyCulture's Companies data feed, covering third-party contractor organization memberships. Returns member records including id, user_id, and created_at. Uses SafetyCulture's standard data feed cursor pagination via next_page.

list_all_safety_culture_company_type_metrics

List company type metrics for contractor organizations in SafetyCulture. Returns metrics for each company type used to categorize third-party contractors, subcontractors, and operational partners managed through the Companies API. No required parameters.

get_single_safety_culture_company_type_by_id

Get a SafetyCulture company type by its id. Company types are used to categorize contractor organizations. Returns: id, name, description, image. Required: id.

create_a_safety_culture_company_type

Create a new company type in SafetyCulture to categorize contractor organizations. Returns: id, name, description, image. Required: name.

create_a_safety_culture_company_user

Create a new user in SafetyCulture via the Companies API. Returns the created user object including user_id, firstname, and lastname. Required: firstname, lastname, email.

create_a_safety_culture_api_credential

Create a new credential in SafetyCulture to manage credential types and credentials in your organization. Returns: id, created_at, modified_at.

safety_culture_api_credentials_delete_media

Delete a media item attached to a credential in SafetyCulture. Returns an empty 204 response on success. Required: media_id.

safety_culture_api_credentials_bulk_delete

Delete a credential from your SafetyCulture organization. Returns an empty 204 response on success.

create_a_safety_culture_credential_type

Create a SafetyCulture credential type. Returns: id, name. Required: name.

get_single_safety_culture_credential_type_by_id

Get a SafetyCulture credential type by id. Returns: id, name. Required: id.

delete_a_safety_culture_credential_type_by_id

Delete a SafetyCulture credential type by id. Returns: id, name. Required: id. All credentials of this type must be removed before the type can be deleted; deletion is permanent and the type id cannot be reused.

safety_culture_credential_types_bulk_create

Create multiple SafetyCulture credential types in a single request. Returns: id, name. Required: credential_types.

list_all_safety_culture_credential_types

List credential types in SafetyCulture. Returns: id, name.

safety_culture_credential_types_bulk_update

Update a SafetyCulture credential type. Returns: id, name. Required: id, name.

list_all_safety_culture_credential_versions

List credential versions in your SafetyCulture organization. Returns: id, credential_id, created_at, updated_at.

create_a_safety_culture_credential_version

Create a new credential version in your SafetyCulture organization. Returns: id, credential_id, created_at, updated_at. Required: credential_id.

safety_culture_credential_versions_bulk_create

Create multiple credential versions in bulk in SafetyCulture. Returns: id, attributes. The request body and response fields depend on the credential type configured in your organization; consult the upstream API documentation for the field-level breakdown.

safety_culture_credential_versions_bulk_update

Update a credential version in SafetyCulture. Returns: id, attributes. The request body and response fields depend on the credential type configured in your organization; consult the upstream API documentation for the field-level breakdown.

list_all_safety_culture_feed_credential_types

List credential types in your SafetyCulture organization from the credentials feed. Returns: id, name. Supports optional modified_after and modified_before date filters in Internet Date-Time format.

list_all_safety_culture_feed_credentials

List SafetyCulture credentials from the credentials data feed for your organization. Returns: id, modified_at. Use modified_after and modified_before to filter by modification time; timestamps must be in Internet Date-Time format (e.g. 2014-01-28T23:14:23.000Z).

list_all_safety_culture_credentials_settings

Get credential settings for your SafetyCulture organization. Returns: id, colour, enable_score, label, score, short_label, type.

safety_culture_credentials_settings_bulk_update

Update credential settings for your SafetyCulture organization. Returns: id, colour, enable_score, label, score, short_label, type.

create_a_safety_culture_document

Create a document in SafetyCulture by uploading a file such as a PDF, Word document, spreadsheet, or image. Supports automatic folder creation based on a specified path and uploading new versions of existing files. Returns: id, name.

update_a_safety_culture_document_by_id

Update a SafetyCulture document by id, including uploading new versions of existing files. Returns: id, name. Required: id.

safety_culture_documents_search

Search SafetyCulture documents (files and folders) by name or ID. Returns: id, name.

safety_culture_documents_bulk_add_owners

Bulk add owners to SafetyCulture documents. Returns: id, name.

safety_culture_documents_bulk_remove_owners

Bulk remove owners from SafetyCulture documents. Returns: id, name.

safety_culture_documents_bulk_update_owners

Bulk update the owners of multiple SafetyCulture documents in a single request. Returns a successful response with no documented response body fields.

safety_culture_documents_archive

Archive a SafetyCulture document by its document ID so it is no longer active in the organization. Returns a successful response with no documented response body fields. Required: document_id.

safety_culture_documents_move

Move a SafetyCulture document to a different folder location by its document ID. Returns a successful response with no documented response body fields. Required: document_id.

safety_culture_documents_create_children

Create child documents under a parent SafetyCulture document. Returns a successful response with no documented response body fields.

safety_culture_documents_create_link

Create a shareable link for a SafetyCulture document that can be distributed to team members. Returns a successful response with no documented response body fields.

safety_culture_templates_search

Search SafetyCulture templates to discover template records and their IDs. Returns: metadata, authorship, response_sets, name, image.

get_single_safety_culture_template_by_id

Get a single SafetyCulture template by id. Returns: metadata, authorship, response_sets, name, image. Required: id.

delete_a_safety_culture_template_by_id

Delete a SafetyCulture template by id. Returns an empty 204 response on success. Required: id.

safety_culture_templates_archive

Archive a SafetyCulture template by template_id so users can no longer select it in inspections. Returns: metadata, authorship, response_sets, name, image. Required: template_id.

safety_culture_templates_restore

Restore an archived SafetyCulture template by template_id so users can select it in inspections again. Returns: metadata, authorship, response_sets, name, image. Required: template_id.

list_all_safety_culture_template_definitions

Get the definition of a SafetyCulture template by template_id. Returns: metadata, authorship, response_sets, name, image. Required: template_id.

get_single_safety_culture_template_inspection_by_id

Get a single SafetyCulture template inspection by id. Returns the full inspection object including audit_id, template_id, archived, created_at, modified_at, audit_data, template_data, header_items, and items. Required: id.

create_a_safety_culture_response_set

Create a new response set in SafetyCulture. Returns the created response set including its id and responses, where each response item contains id, colour, enable_score, label, score, short_label, and type.

list_all_safety_culture_response_sets

List response sets in SafetyCulture. Returns each set's id and responses (array of response items with id, colour, enable_score, label, score, short_label, and type).

get_single_safety_culture_response_set_by_id

Get a single SafetyCulture response set by id. Returns the response set including its id and responses, where each response item contains id, colour, enable_score, label, score, short_label, and type. Required: id.

update_a_safety_culture_response_set_by_id

Update a SafetyCulture response set by id. Returns: id. Required: id.

delete_a_safety_culture_response_set_by_id

Delete a SafetyCulture response set by id. Returns an empty 204 response on success. Required: id.

create_a_safety_culture_response_set_response

Create a new response item in a SafetyCulture response set. Returns: id, colour, enable_score, label, score, short_label, type. Required: response_set_id.

update_a_safety_culture_response_set_response_by_id

Update a response item in a SafetyCulture response set by id. Returns: id, colour, enable_score, label, score, short_label, type. Required: response_set_id, id.

delete_a_safety_culture_response_set_response_by_id

Delete a response item from a SafetyCulture response set by id. Returns an empty 204 response on success. Required: response_set_id, id.

list_all_safety_culture_schedule_items

List SafetyCulture schedule items. Returns each item with id, document, assignees, from_date, to_date, timezone, duration, recurrence, description, start_time, and must_complete.

create_a_safety_culture_schedule_item

Create a new schedule item in SafetyCulture. Returns the created item including id, document, assignees, from_date, to_date, timezone, duration, recurrence, description, start_time, and must_complete.

update_a_safety_culture_schedule_item_by_id

Update a SafetyCulture schedule item by id. Returns the updated item including id, document, assignees, from_date, to_date, timezone, duration, recurrence, description, start_time, and must_complete. Required: id.

delete_a_safety_culture_schedule_item_by_id

Delete a SafetyCulture schedule item by id. Returns an empty 204 response on success. Required: id.

create_a_safety_culture_scheduling_schedule

Create a new schedule in SafetyCulture. Returns the created schedule object including id, document, assignees, from_date, to_date, timezone, duration, recurrence, description, start_time, and must_complete.

get_single_safety_culture_scheduling_schedule_by_id

Get a single SafetyCulture schedule by id. Returns the schedule object including id, document, assignees, from_date, to_date, timezone, duration, recurrence, description, start_time, and must_complete. Required: id.

delete_a_safety_culture_scheduling_schedule_by_id

Delete a SafetyCulture schedule by id. Returns an empty 204 response on success. Required: id.

safety_culture_scheduling_schedules_pause

Pause a SafetyCulture schedule by schedule_id. Returns the updated schedule object including id, document, assignees, from_date, to_date, timezone, duration, recurrence, description, start_time, and must_complete. Required: schedule_id.

safety_culture_scheduling_schedules_resume

Resume a paused SafetyCulture schedule by schedule_id. Returns the updated schedule object including id, document, assignees, from_date, to_date, timezone, duration, recurrence, description, start_time, and must_complete. Required: schedule_id.

safety_culture_scheduling_schedules_end

End a SafetyCulture schedule, stopping any further scheduled occurrences. Returns an empty 204 response on success. Required: schedule_id.

list_all_safety_culture_scheduling_schedules

List schedules in SafetyCulture. Returns schedule objects including id, document, assignees, from_date, to_date, timezone, duration, recurrence, description, start_time, and must_complete.

safety_culture_schedule_assignees_bulk_update

Update the assignees for a SafetyCulture schedule by replacing the current set of assignees. Returns: assignees, modified_at. Required: schedule_id, assignees.

safety_culture_schedule_details_bulk_update

Update the details of a SafetyCulture schedule by schedule_id. Returns the updated schedule details including schedule_id, document, assignees, from_date, to_date, timezone, duration, recurrence, description, start_time, and must_complete. Required: schedule_id.

safety_culture_schedule_recurrences_bulk_update

Update the recurrence configuration for a SafetyCulture schedule by schedule_id. Returns the updated recurrence settings including recurrence, from_date, to_date, timezone, and duration. Required: schedule_id.

get_single_safety_culture_schedule_target_by_id

Get a SafetyCulture schedule target by id. Returns the schedule target record including its id, created_at, and updated_at. Required: id.

safety_culture_schedule_targets_bulk_update

Update the target of a SafetyCulture schedule by schedule_id. Returns the updated schedule target record including its id, created_at, and updated_at. Required: schedule_id.

list_all_safety_culture_loneworker_jobs

List lone worker jobs in SafetyCulture. Returns a paginated collection of job records including id, status, and created_at. No required parameters.

get_single_safety_culture_media_download_by_id

Download a SafetyCulture media file by its media id. Returns the raw file content directly with a Content-Type header matching the file type — not a JSON response. Required: id.

get_single_safety_culture_permission_set_by_id

Get a SafetyCulture permission set by id. Returns: id, colour, enable_score, label, score, short_label, type. Required: id.

create_a_safety_culture_permission_set

Create a new permission set in SafetyCulture. Returns: id, colour, enable_score, label, score, short_label, type.

safety_culture_permission_sets_assign

Assign a SafetyCulture permission set to a user or service user. Returns: id, colour, enable_score, label, score, short_label, type. Required: id.

list_all_safety_culture_share_connections

List sharing connections in SafetyCulture. Returns connection records with their id.

list_all_safety_culture_sensors

List sensors in SafetyCulture. Returns a sensor_alert_context object including sensor_alert_id, level, created_at, detected_at, sensor_id, site_name, metric_type, and sensor_name.

safety_culture_sensors_ingest_readings

Ingest sensor readings into SafetyCulture. Returns a sensor_alert_context object including sensor_alert_id, level, created_at, detected_at, sensor_id, site_name, metric_type, and sensor_name.

safety_culture_sensors_provision

Provision sensors in SafetyCulture. Returns a sensor_alert_context object including sensor_alert_id, level, created_at, detected_at, sensor_id, site_name, metric_type, and sensor_name.

get_single_safety_culture_sensor_by_id

Get a single SafetyCulture sensor by id. Returns a sensor_alert_context object including sensor_alert_id, level, created_at, detected_at, sensor_id, site_name, metric_type, and sensor_name. Required: id.

list_all_safety_culture_user_fields

List user fields configured in SafetyCulture via the users service. Returns: user_id, firstname, lastname.

list_all_safety_culture_feed_action_assignees

List SafetyCulture action assignees (collaborators with the ASSIGNEE role) from the action feed. Returns: task_id, modified_at, reference.

list_all_safety_culture_feed_action_fields

List SafetyCulture actions from the data feed. Returns: task_id, template_id, template_name, inspection, inspection_item, creator, title, description, created_at, modified_at, completed_at, due_at, priority_id, status_id, status, site, collaborators, reference, references.

list_all_safety_culture_feed_action_timeline_items

List SafetyCulture action timeline items from the actions feed. Returns: task_id, template_id, template_name, inspection, inspection_item, creator, title, description, created_at, modified_at, completed_at, due_at, priority_id, status_id, status, site, collaborators, references, reference. Supports optional modified_after and modified_before date-time filters.

list_all_safety_culture_feed_actions

List SafetyCulture feed actions, optionally filtered by modification time. Returns each action with task_id, title, description, created_at, modified_at, status, creator, priority_id, site, collaborators, reference, and inspection details. Timestamps in query parameters must use Internet Date-Time format (UTC).

list_all_safety_culture_feed_activity_log_events

List SafetyCulture activity log events from the data feed. Returns: webhook_id, event, resource, data. Supports modified_after and modified_before date filters in Internet Date-Time format.

list_all_safety_culture_feed_assets

List SafetyCulture assets via the assets data feed endpoint. Returns each asset including id, code, type, fields, site, state, created_at, modified_at, profile_image, and media.

list_all_safety_culture_feed_group_users

List group users from the SafetyCulture feed. Returns: user, group, external_user.

list_all_safety_culture_feed_groups

List SafetyCulture groups from the groups data feed. Returns: group_id, name, group. Supports modified_after and modified_before date filters in Internet Date-Time format.

list_all_safety_culture_feed_inspection_items

List SafetyCulture inspection items from the data feed, optionally filtered by modification time. Returns: id, inspection_context, inspection_item, label, type. Timestamps must use Internet Date-Time format (UTC).

list_all_safety_culture_feed_inspections

List SafetyCulture inspections from the data feed with optional filters for completion status, archived status, and modification time range. Returns: id, name, owner_id, author_id, created_at, location, image. Timestamps must be supplied in Internet Date-Time format (UTC).

list_all_safety_culture_feed_issue_assignees

List issue assignees from the SafetyCulture data feed. Returns: id, collaborator_id, collaborator_type, assigned_role, user, group, external_user, created_at, modified_at. Supports optional modified_after and modified_before date filters in Internet Date-Time format.

list_all_safety_culture_feed_issue_relations

List issue relations from the SafetyCulture data feed. Results can be filtered by modification time using modified_after and modified_before. Returns: id, modified_at. Use the next_page cursor from the response metadata to paginate through all records.

list_all_safety_culture_feed_issue_timeline_items

List SafetyCulture issue timeline items from the data feed. Returns records with id, text, value, name, timestamp, datetime, location_text, location, selected, failed, weather, media, image, and modified_at. Supports optional modified_after and modified_before filters in Internet Date-Time format (UTC).

list_all_safety_culture_feed_issues

List SafetyCulture issues from the issues data feed, ordered by modification time. Returns issue records including id, modified_at, and created_at within the standard feed wrapper (data array with metadata.next_page for pagination). Supports modified_after and modified_before filtering using Internet Date-Time format (e.g. 2014-01-28T23:14:23.000Z).

list_all_safety_culture_feed_schedule_assignees

List schedule assignees from the SafetyCulture data feed, useful for incremental syncs and exports. Returns: id, type, modified_at. Supports modified_after and modified_before filters to retrieve only records changed since a checkpoint. Timestamps must be in Internet Date-Time format (UTC).

list_all_safety_culture_feed_schedule_occurrences

List SafetyCulture schedule occurrences from the data feed for reporting and periodic exports. Returns: id, created_at, modified_at. Date/time query parameters must be in Internet Date-Time format (e.g. 2014-01-28T23:14:23.000Z).

list_all_safety_culture_feed_schedules

List SafetyCulture schedule feed records, optionally filtered by modification time. Returns: id, modified_at, created_at. Use modified_after and modified_before with Internet Date-Time format timestamps (e.g. 2014-01-28T23:14:23.000Z).

list_all_safety_culture_feed_site_members

List SafetyCulture site members from the site members data feed. Returns: folder, members_count, has_children, inherited_member_count, depth, children_count, site. Supports modified_after and modified_before date-time filtering.

list_all_safety_culture_feed_sites

List SafetyCulture sites from the sites data feed. Returns each site record with id, name, region, area, and created_at. Date-time query parameters must use Internet Date-Time format (UTC), e.g. 2014-01-28T23:14:23.000Z.

list_all_safety_culture_feed_template_permissions

List template permissions from the SafetyCulture data feed. Returns records with template_id, name, description, created_at, and modified_at.

list_all_safety_culture_feed_templates

List SafetyCulture inspection templates via the data feed. Returns: id, name, description, image, created_at. Timestamps use Internet Date-Time format (UTC).

list_all_safety_culture_feed_users

List SafetyCulture users via the data feed endpoint. Returns: user, external_user. Date/time query parameters must be URL-encoded Internet Date-Time format.

list_all_safety_culture_feed_assets_maintenances

List asset maintenance records from the SafetyCulture data feed. Returns records including id, modified_at, and created_at. Use modified_after and modified_before to filter by modification time range; timestamps must be in Internet Date-Time format (UTC).

list_all_safety_culture_feed_maintenance_plans

List maintenance plans from the SafetyCulture assets data feed. Returns maintenance plan records including id, created_at, and modified_at.

list_all_safety_culture_feed_maintenance_programs

List maintenance programs from the SafetyCulture assets data feed. Returns: id, created_at, modified_at. Date filters accept Internet Date-Time format (e.g., 2014-01-28T23:14:23.000Z).

list_all_safety_culture_feed_investigation_detail_fields

List investigation detail field records from the SafetyCulture incidents data feed. Returns: id, created_at, modified_at. Timestamps use Internet Date-Time format.

list_all_safety_culture_feed_investigation_fields

List investigation field records from the SafetyCulture incidents data feed. Returns: id, modified_at. Optional modified_after and modified_before filters accept Internet Date-Time format timestamps (e.g. 2014-01-28T23:14:23.000Z).

list_all_safety_culture_feed_investigation_relationships

List SafetyCulture incident investigation relationships from the incidents data feed. Returns: id, created_at, modified_at. Supports optional modified_after and modified_before date filters in Internet Date-Time format.

list_all_safety_culture_feed_investigations

List SafetyCulture investigation records from the incidents data feed, optionally filtered by modification time range. Returns: id, created_at, modified_at. Timestamps must be sent in Internet Date-Time format (UTC).

list_all_safety_culture_incident_categories

List incident categories in SafetyCulture. Returns: id, label. No required parameters.

create_a_safety_culture_incident_category

Create a new incident category in SafetyCulture. Returns the created category object including its id.

update_a_safety_culture_incident_category_by_id

Update a SafetyCulture incident category by id. Returns the updated incident category including its id. Required: id.

delete_a_safety_culture_incident_category_by_id

Delete a SafetyCulture incident category by id. Returns an empty 204 response on success. Required: id.

safety_culture_incident_categories_clone

Clone an existing SafetyCulture incident category by creating a copy from a source category. Returns: id, name. Required: category_id.

list_all_safety_culture_incident_category_detail_fields

List detail fields configured for a SafetyCulture incident category. Returns: id, code, type, fields, created_at, modified_at, site, profile_image, state. Required: category_id.

safety_culture_incident_category_detail_fields_bulk_update

Update detail fields for a SafetyCulture incident category. Returns: id, code, type, fields, created_at, modified_at, site, profile_image, state. Required: category_id.

create_a_safety_culture_incident_detail_field

Create a new incident detail field in SafetyCulture. Returns: id, code, type, fields, created_at, modified_at, site, profile_image, state.

update_a_safety_culture_incident_detail_field_by_id

Update an existing incident detail field in SafetyCulture by id. Returns: id, code, type, fields, created_at, modified_at, site, profile_image, state. Required: id.

delete_a_safety_culture_incident_detail_field_by_id

Delete an incident detail field by id in SafetyCulture. Returns an empty 204 response on success. Required: id.

safety_culture_incident_detail_field_options_bulk_update

Update the options for a specific incident detail field in SafetyCulture by replacing its full options object. Returns the updated options including condition, element, label, response_set, type, failed_responses, weighting, visible_in_audit, and visible_in_report. Required: field_id.

list_all_safety_culture_incident_field_libraries

List SafetyCulture incident field library entries, which are the field definitions available for incidents (issues) in your organization. Returns: field_id, name, value_type.

list_all_safety_culture_incident_fields

List available incident field definitions in SafetyCulture. Returns: id, name. No required parameters.

safety_culture_incident_fields_bulk_update

Update incident field configuration in SafetyCulture via a PUT request. Returns a successful response confirming the updated incident field settings. Accepts a JSON request body with the field configuration to apply.

list_all_safety_culture_investigations

List SafetyCulture investigations (incidents). Returns: id, title, description, date_due, status, priority, collaborators, category, site, created_at, updated_at.

create_a_safety_culture_investigation

Create a new SafetyCulture investigation (incident). Returns the created incident including id, title, description, date_due, status, priority, collaborators, category, site, created_at, and updated_at.

safety_culture_investigations_bulk_update

Bulk update SafetyCulture investigations (issues) in a single PUT request. Returns updated investigation records including id, title, status, priority, and date_due. Requires a JSON request body containing the investigations to update.

get_single_safety_culture_investigation_by_id

Get a single SafetyCulture investigation by id. Returns the investigation record including id, title, description, status, priority, category, collaborators, site, and date_due. Required: id.

update_a_safety_culture_investigation_by_id

Update a SafetyCulture investigation by id with a JSON request body. Returns the updated investigation object including its id. Required: id.

delete_a_safety_culture_investigation_by_id

Delete a SafetyCulture investigation by id. Returns an empty 204 response on success. Required: id.

list_all_safety_culture_investigation_counts

Get the count of SafetyCulture investigations. Returns: folder_with_member_count. Pass include_stats to also receive active task and schedule counts for each action type.

list_all_safety_culture_investigation_access

List access entries for a SafetyCulture investigation. Returns: id. Required: investigation_id.

safety_culture_investigation_access_bulk_update

Update access settings for a SafetyCulture investigation. Returns an empty 204 response on success. Required: investigation_id.

list_all_safety_culture_investigation_actions

List SafetyCulture actions for a specific investigation. Returns: task_id, creator, title, description, created_at, modified_at, completed_at, due_at, priority_id, status_id, status, collaborators, template_id, template_name, inspection, inspection_item, site, references, reference. Required: investigation_id.

safety_culture_investigation_actions_count

Get the total count of actions for a specific SafetyCulture investigation. Returns: reference. Required: investigation_id.

list_all_safety_culture_investigation_courses

List training courses associated with a SafetyCulture incident investigation. Returns: id, course_version_id. Required: investigation_id.

safety_culture_investigation_courses_count

Get the count of courses associated with a specific investigation in SafetyCulture. Returns: course_version_id, user_id, score, webhook_id, event, resource, data. Required: investigation_id.

list_all_safety_culture_investigation_inspections

List inspections associated with a SafetyCulture investigation. Returns: created_at, name, image. Required: investigation_id.

safety_culture_investigation_inspections_count

Count inspections associated with a SafetyCulture investigation. Returns: count, name, image. Required: investigation_id.

list_all_safety_culture_investigation_issues

List issues belonging to a SafetyCulture investigation. Returns: id, title, description, date_due, status, priority, collaborators, category, site, created_at, updated_at. Required: investigation_id.

safety_culture_investigation_issues_count

Count the issues associated with a SafetyCulture investigation. Returns: count. Required: investigation_id.

list_all_safety_culture_investigation_logs

List log entries for a SafetyCulture investigation. Returns: id, created_at. Required: investigation_id.

list_all_safety_culture_investigation_media_counts

Get the count of media items attached to a SafetyCulture investigation. Returns: count, webhook_id, event, resource, data. Required: investigation_id.

list_all_safety_culture_investigation_pdfs

Download a PDF report for a SafetyCulture investigation. Returns the investigation report as a binary PDF file (not JSON); use the Content-Type header to determine file type. Required: investigation_id.

list_all_safety_culture_incident_logs

List SafetyCulture incident log entries. Returns: id, created_at, updated_at.

list_all_safety_culture_incident_statuses

List incident statuses in SafetyCulture. Returns the status object including status_id, key, label, and display_order.

safety_culture_incident_statuses_bulk_update

Update an incident status in SafetyCulture. Returns the updated status object including status_id, key, label, and display_order. Required: status_id.

list_all_safety_culture_osha_cases

List OSHA cases recorded in SafetyCulture's incidents system. Returns a collection of OSHA case records including id, created_at, and updated_at.

create_a_safety_culture_osha_case

Create a new OSHA case record in SafetyCulture by submitting a JSON request body to the incidents OSHA cases endpoint. Returns the created OSHA case object.

get_single_safety_culture_osha_case_by_id

Get a specific SafetyCulture OSHA case by id. Returns: id. Required: id.

update_a_safety_culture_osha_case_by_id

Update a SafetyCulture OSHA case by id. Returns: id. Required: id.

delete_a_safety_culture_osha_case_by_id

Delete a SafetyCulture OSHA case by id. Returns an empty 204 response on success. Required: id.

list_all_safety_culture_osha_establishments

List OSHA establishments in SafetyCulture. Returns: id, created_at, modified_at.

create_a_safety_culture_osha_establishment

Create an OSHA establishment in SafetyCulture. Returns: id, created_at, modified_at.

get_single_safety_culture_osha_establishment_by_id

Get a SafetyCulture OSHA establishment by id. Returns: id. Required: id.

update_a_safety_culture_osha_establishment_by_id

Update a SafetyCulture OSHA establishment by id. Returns: id. Required: id.

delete_a_safety_culture_osha_establishment_by_id

Delete a SafetyCulture OSHA establishment by id. Returns an empty 204 response on success. Required: id.

list_all_safety_culture_establishment_employees

List OSHA establishment employees in SafetyCulture. Returns: id, created_at, updated_at. Required: establishment_id.

create_a_safety_culture_establishment_employee

Create a new OSHA establishment employee in SafetyCulture. Returns: id, created_at, updated_at. Required: establishment_id.

list_all_safety_culture_establishment_hours

List OSHA establishment hours records for a specific SafetyCulture establishment. Returns: id, created_at, updated_at. Required: establishment_id.

create_a_safety_culture_establishment_hour

Create an OSHA establishment hours record in SafetyCulture for a specific establishment. Returns the created establishment hours record. Required: establishment_id.

create_a_safety_culture_task_incident

Create a new SafetyCulture incident (issue). Returns the created incident including task_id, title, description, created_at, modified_at, due_at, priority_id, status, creator, collaborators, site, and inspection details. Required: title.

get_single_safety_culture_task_incident_by_id

Get a single SafetyCulture incident (issue) by id. Returns: action. Required: id.

list_all_safety_culture_task_incidents

List SafetyCulture incidents (issues) via a POST search endpoint. Returns incident records including task_id, title, description, created_at, modified_at, status, priority_id, site, and collaborators. No required parameters.

safety_culture_task_incidents_bulk_delete

Bulk delete SafetyCulture incidents (issues) by submitting the incident task object. Returns the action object containing the task with task_id, title, description, created_at, modified_at, status, priority_id, and site. Required: action.

safety_culture_task_incidents_submit

Submit SafetyCulture incidents (issues) by providing the incident task object. Returns the action object containing the task with task_id, title, description, created_at, modified_at, status, priority_id, and site. Required: action.

safety_culture_task_incidents_update_category

Update the category of a SafetyCulture incident (issue) by task id. Returns the updated incident object including task_id, title, description, created_at, modified_at, and status. Required: task_id.

safety_culture_task_incidents_update_description

Update the description of a SafetyCulture incident task. Returns the updated task object including task_id, title, description, status, created_at, and modified_at. Required: task_id, description.

safety_culture_task_incidents_update_due_at

Update the due date of a SafetyCulture incident (task). Returns the updated task including task_id, title, due_at, modified_at, and status. Required: task_id. Send an empty due_at to unset the due date.

safety_culture_task_incidents_update_occurred_at

Update the occurred date of a SafetyCulture incident (task). Returns the updated task including task_id, title, created_at, modified_at, and status. Required: task_id. Send an empty occurred_at to unset the occurred date.

safety_culture_task_incidents_update_priority

Update the priority of a SafetyCulture incident by task_id. Returns the updated action object including task_id, title, priority_id, status, and site. Required: task_id, priority_id.

safety_culture_task_incidents_update_site

Update the site of a SafetyCulture incident by task_id. Returns the updated action object including task_id, title, site, priority_id, and status. Required: task_id, site_id.

safety_culture_task_incidents_update_status

Update the status of a SafetyCulture incident (issue) by task_id. Returns the action object containing the updated task with task_id, title, description, status, creator, priority_id, and site. Required: task_id, status_id. Issue statuses are Open and Resolved, each represented by a hardcoded UUID value.

safety_culture_task_incidents_update_title

Update the title of a SafetyCulture incident (task). Returns the updated task wrapped in the action object including task_id, title, description, status, creator, created_at, and modified_at. Required: task_id, title. The title must be between 0 and 255 characters.

safety_culture_task_incidents_add_collaborator

Add a collaborator to a SafetyCulture incident task. Returns: action. Required: task_id.

safety_culture_task_incidents_remove_collaborator

Remove collaborators from a SafetyCulture incident task. Returns the updated task object including task_id, title, description, collaborators, status, and creator. Required: task_id.

safety_culture_task_incidents_bulk_update

Update the asset associated with a SafetyCulture incident task. Returns the updated action object including task_id, title, description, status, creator, site, created_at, and modified_at. Required: task_id.

list_all_safety_culture_task_incident_counts

Count the total number of incidents (issues) in SafetyCulture matching the specified filters. Returns: count, total. Supports filter parameters in the request body to narrow the count by status, priority, date range, and other criteria.

list_all_safety_culture_task_incident_questions

List questions and answers for a SafetyCulture incident by incident id. Returns: task_id, creator, title, description, created_at, due_at, priority_id, status_id, collaborators, template_id, inspection, inspection_item, site, modified_at, references, completed_at, template_name, status, action. Required: incident_id.

list_all_safety_culture_task_incident_pdf_reports

Download a PDF report for a specific SafetyCulture incident task. Returns the PDF report as a binary file. Required: task_id.

create_a_safety_culture_task_shared_link_web_report

Create a web report shared link for a SafetyCulture task (action), producing a public URL that anyone can view without a SafetyCulture account, including media attachments. Required: task_id. The link remains accessible until it is disabled or the action is deleted.

safety_culture_task_custom_fields_bulk_update

Update a custom field value linked to a SafetyCulture action (task). Returns the updated task object including task_id, title, status, modified_at, and creator details. Required: task_id, field_value.

create_a_safety_culture_task_timeline

Create a SafetyCulture action (task) on the timeline. Returns the created action object containing the task with task_id, title, description, creator, status, priority_id, collaborators, site, and inspection details.

list_all_safety_culture_task_configuration_categories

List SafetyCulture task configuration categories for the authenticated organization. Returns: id, name, and any associated category metadata. No required parameters.

list_all_safety_culture_courses_statistics

List course statistics from SafetyCulture training analytics. Returns course analytics records including course_version_id, user_id, score, and resource identifiers (resource.id, resource.type).

list_all_safety_culture_lessons_attempts

List lesson attempt analytics from SafetyCulture training. Returns: user_id, lesson_version_id, score, webhook_id, event, resource, data.

list_all_safety_culture_progress_events

List lesson progress events from SafetyCulture training analytics. Returns: webhook_id, event, resource, data. Event-specific data fields vary by event type.

list_all_safety_culture_user_progress_events

List lesson progress events for a specific SafetyCulture user, including lesson opened and completed events. Returns: webhook_id, event, resource, data. Required: user_id.

list_all_safety_culture_lessons_statistics

List lesson statistics from SafetyCulture training analytics. Returns: webhook_id, event, resource, data. Rate-limited to 200 requests per 60 seconds.

list_all_safety_culture_rapid_refresh_answers

List SafetyCulture rapid refresh answer records from the training analytics API. Returns: id, user_id, created_at.

list_all_safety_culture_slides_statistics

List slide-level training statistics across the organization from SafetyCulture. Returns analytics records for individual slides within lessons. No required parameters.

list_all_safety_culture_user_slides_statistics

List slide-level training statistics for a specific SafetyCulture user. Returns records containing user_id, firstname, and lastname for each slide statistics entry. Required: user_id.

list_all_safety_culture_surveys_answers

List survey answers from SafetyCulture training analytics. Returns: id, created_at, modified_at.

list_all_safety_culture_surveys_question_definitions

List survey question definitions from SafetyCulture training analytics. Returns each definition with inspection_item_id, inspection_item_name, inspection_item_type, inspection_id, inspection_name, and inspection_item_path.

list_all_safety_culture_training_collections

List training collections in SafetyCulture. Returns: id, created_at, updated_at. Use the collection id with the courses endpoint to retrieve courses within a collection.

create_a_safety_culture_inspection_table_line

Create a new table line in a SafetyCulture inspection table item. Returns: label, type, inspection_context. Required: inspection_id, item_id.

delete_a_safety_culture_inspection_table_line_by_id

Delete a table line from a SafetyCulture inspection table item by id. Returns an empty 204 response on success. Required: inspection_id, item_id, id.

update_a_safety_culture_inspection_table_line_by_id

Update a table line in a SafetyCulture inspection table item by id. Returns: label, type, inspection_context. Required: inspection_id, item_id, id.

safety_culture_inspection_answers_answer_asset

Associate an asset with a SafetyCulture inspection answer (inspection item). Returns the inspection_context including inspection_id, inspection_name, inspection_item_id, inspection_item_name, inspection_item_type, and inspection_item_path. Required: inspection_context.

safety_culture_inspection_answers_answer_checkbox

Submit a checkbox answer for a SafetyCulture inspection item. Returns: inspection_context. Required: inspection_context with inspection_id and inspection_item_id.

safety_culture_inspection_answers_generate_dynamic_field

Generate a dynamic field for a SafetyCulture inspection answer by providing the inspection context. Returns: inspection_context. Required: inspection_context.

list_all_safety_culture_feed_course_progress

List SafetyCulture training course progress records from the data feed. Returns: user_id, course_version_id, score, webhook_id, event, resource, data. Supports optional modified_after and modified_before date-range filters in Internet Date-Time format.

list_all_safety_culture_feed_scheduling_schedule_assignees

List schedule assignees from the SafetyCulture scheduling data feed. Returns: id, collaborator_id, collaborator_type, assigned_role, user, group, external_user, modified_at, created_at. Supports modified_after and modified_before filtering for incremental sync.

list_all_safety_culture_feed_scheduling_schedule_occurrences

List SafetyCulture schedule occurrences from the scheduling feed, with optional modified_after and modified_before date-range filtering. Returns: id, created_at, modified_at.

list_all_safety_culture_feed_scheduling_schedules

List schedules from the SafetyCulture scheduling data feed, optionally filtered by modification time. Returns: id, document, assignees, from_date, to_date, timezone, duration, recurrence, description, start_time, must_complete, created_at, modified_at.

list_all_safety_culture_feed_company_documents

List contractor company documents from the SafetyCulture data feed, optionally filtered by modification time. Returns records with id, name, created_at, modified_at, and other document metadata. Optional: modified_after, modified_before (Internet Date-Time format, e.g. 2014-01-28T23:14:23.000Z).

list_all_safety_culture_feed_document_types

List document types from the SafetyCulture credentials feed. Returns: id, name. Supports modified_after and modified_before date filters for incremental sync.

list_all_safety_culture_feed_user_documents

List user documents from the SafetyCulture credentials data feed. Returns records including user (user_id, firstname, lastname), creator, and external_user (id, email) details, paginated via the standard feed next_page mechanism.

list_all_safety_culture_feed_company_members

List contractor company user memberships from the SafetyCulture Companies data feed. Returns: id, user_id, company_id, created_at, modified_at. Supports modified_after for incremental synchronization.

Why Truto

Why use Truto’s MCP server for SafetyCulture

Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 650+ integrations.

01

Auto-generated, always up to date

Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.

02

Fine-grained access control

Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.

03

Multi-tenant by design

Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.

04

Works with every MCP client

Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.

05

Built-in auth, rate limits, and error handling

Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.

06

Expiring and auditable servers

Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.

How It Works

From zero to integrated

Go live with SafetyCulture in under an hour. No boilerplate, no maintenance burden.

01

Link your customer’s SafetyCulture account

Use Truto’s frontend SDK to connect your customer’s SafetyCulture account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.

02

We handle authentication

Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.

03

Call our API, we call SafetyCulture

Truto’s Proxy API is a 1-to-1 mapping of the SafetyCulture API. You call us, we call SafetyCulture, and pass the response back in the same cycle.

04

Unified response format

Every response follows a single format across all integrations. We translate SafetyCulture’s pagination into unified cursor-based pagination. Data is always in the result attribute.

FAQs

Common questions about SafetyCulture on Truto

Authentication, rate limits, data freshness, and everything else you need to know before you integrate.

How does authentication work for SafetyCulture through Truto?

Truto handles the SafetyCulture auth flow and token management for you. Your end users connect their SafetyCulture account once, and Truto securely stores and refreshes credentials so your app can call the API without managing tokens directly.

What SafetyCulture data models are supported today?

The current integration covers Actions (including custom fields, types, labels, schedules, and shared links), Assets (including fields, types, locations, and bulk operations), Maintenance programs and service history, Status groups, Groups, and Apps/App installations and configurations.

Can we create and update SafetyCulture Actions, not just read them?

Yes. You can create Actions, bulk update or delete them, and use granular endpoints to update title, description, status, assignees, priority, due date, site, and linked asset independently.

Does the integration support custom fields?

Yes. You can create, update, and delete action custom fields, list mapped and unmapped fields for a given action type, and map or unmap fields to action types so your schema is enforced inside SafetyCulture.

Can we keep asset maintenance history in sync?

Yes. You can list asset maintenance details and service history, add a last-service record to an asset, manage maintenance programs, and add or remove assets from those programs.

How do we get fresh data — webhooks or polling?

The current tools support request-based reads, so most implementations poll list endpoints (for example, list_all_safety_culture_actions or list_all_safety_culture_assets) on an interval. If you need event-driven flows, reach out to Truto and we can extend the integration.

What if we need a SafetyCulture endpoint that isn't listed?

Truto builds integrations on request. If your use case needs an endpoint or resource beyond what's currently available, contact us and we'll add it to the SafetyCulture integration.

SafetyCulture

Get SafetyCulture integrated into your app

Our team understands what it takes to make a SafetyCulture integration successful. A short, crisp 30 minute call with folks who understand the problem.