Skip to main content

myosh

myosh, built on the Viking platform, is a health, safety, environment & quality (HSEQ) software solution for managing incidents, hazards, corrective actions, and related workplace safety records. Its REST API exposes module records and metadata as JSON, letting you read and write incidents, hazards, actions, users, and site/module configuration in real time.

myosh icon

Power end-to-end data operations for your myosh API with Nexla. Our bi-directional myosh connector is purpose-built for myosh, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to myosh or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your myosh workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

The myosh Viking REST API uses HTTP Basic authentication. To connect Nexla to myosh, you need three things:

  • A myosh username and password that are authorized to access the Viking REST API.
  • Your myosh schema name — the customer-specific {db} path segment (for example, demo1) that identifies your myosh instance in the API URL. All requests are addressed to https://api.myosh.com/v3/{db}/....

API access, the schema name, and the credentials for it are provisioned by your myosh administrator or the myosh support team. If you are unsure of your schema name or do not have API-enabled credentials, contact your myosh administrator. All API requests are made over HTTPS. For endpoint details and the request/response schema, see the myosh Viking API documentation.

Authenticate

Credentials required

Authenticate to the myosh Viking API using HTTP Basic Auth with your myosh username and password.

FieldRequiredSecretDescription
UsernameYesNomyosh Viking API username.
PasswordYesYesmyosh Viking API password.
Database / Schema NameYesNoYour myosh customer schema name (the {db} path segment, e.g. 'demo1'). Provided by your myosh administrator.

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

  2. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  3. Enter your myosh API Username and Password in the corresponding fields.

  4. Enter your Database / Schema Name — the customer schema ({db}) path segment used to address your myosh instance, for example demo1.

  5. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

    Keep your myosh password confidential. If it is compromised, change it in myosh and update the credential in Nexla. For details on the available endpoints and their request/response formats, see the myosh Viking API documentation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the myosh connector tile, then select the credential that will be used to connect to the myosh instance, and click Next; or, create a new myosh credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common myosh endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

[Rest API] List Incidents

List incident records (records filtered to the Incident module by moduleName).

  • This endpoint retrieves records from the /records endpoint filtered to the Incident module. Results are paginated automatically using row-offset paging, and Nexla fetches successive pages until all records have been retrieved.

For details on the incident record schema and available fields, see the myosh Viking API documentation.

[Rest API] List Hazards

List hazard/near-miss records (records filtered to the Hazard module by moduleName).

  • This endpoint retrieves records from the /records endpoint filtered to the Hazard module. Results are paginated automatically using row-offset paging, and Nexla fetches successive pages until all records have been retrieved.

For details on the hazard record schema and available fields, see the myosh Viking API documentation.

[Rest API] List Corrective Actions

List corrective/preventive action records (records filtered to the Action module by moduleName).

  • This endpoint retrieves records from the /records endpoint filtered to the Action module. Results are paginated automatically using row-offset paging, and Nexla fetches successive pages until all records have been retrieved.

For details on the action record schema and available fields, see the myosh Viking API documentation.

[Rest API] Get Record

Retrieve a single record (incident, hazard, action, or any other module record) by ID.

  • Provide the Record ID of the record to retrieve — the myosh record ID returned by List Incidents, List Hazards, List Corrective Actions, or List Users. The endpoint returns the single matching record.

For details on the record schema and available fields, see the myosh Viking API documentation.

[Rest API] List Users

List users accessible to the current account.

  • This endpoint retrieves users from the /users endpoint. Results are paginated automatically using row-offset paging, and Nexla fetches successive pages until all users have been retrieved.

For details on the user schema and available fields, see the myosh Viking API documentation.

[Rest API] Get User

Retrieve a single user by ID.

  • Provide the User ID of the user to retrieve — the myosh user ID returned by List Users. The endpoint returns the single matching user.

For details on the user schema and available fields, see the myosh Viking API documentation.

[Rest API] List Sites

List site/location hierarchy values.

  • This endpoint retrieves the site/location hierarchy from the /sites endpoint in a single request.

For details on the site schema and available fields, see the myosh Viking API documentation.

[Rest API] List Modules

List modules (HSEQ record types, e.g. Incident, Hazard, Action) accessible to the current user.

  • This endpoint retrieves the modules available to your account from the /modules endpoint in a single request. Use it to discover module names and IDs referenced by other endpoints.

For details on the module schema and available fields, see the myosh Viking API documentation.

[Rest API] List Forms

List forms accessible to the current user, optionally filtered by module.

  • This endpoint retrieves the forms available to your account from the /forms endpoint in a single request.

For details on the form schema and available fields, see the myosh Viking API documentation.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

myosh data sources can also be manually configured to ingest data from any valid myosh Viking API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new myosh data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.

Use as a destination

Click the + icon on the Nexset that will be sent to the myosh destination, and select the Send to Destination option from the menu. Select the myosh connector from the list of available destination connectors, then select the credential that will be used to connect to the myosh instance, and click Next; or, create a new myosh credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common myosh endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

[Rest API] Create/Update Incident

Create or update an incident record (matched by id). Body sets "module"/"form" to the numeric id of the Incident module/form.

  • Each record from your Nexset is sent as a JSON request body to the /records endpoint. Include the record id to update an existing incident, or omit it to create a new one. Set module/form to the numeric id of the Incident module/form.

The record body must match the format expected by the myosh Viking API. For the incident record schema and required fields, see the myosh Viking API documentation.

[Rest API] Create/Update Hazard

Create or update a hazard record (matched by id). Body sets "module"/"form" to the numeric id of the Hazard module/form.

  • Each record from your Nexset is sent as a JSON request body to the /records endpoint. Include the record id to update an existing hazard, or omit it to create a new one. Set module/form to the numeric id of the Hazard module/form.

The record body must match the format expected by the myosh Viking API. For the hazard record schema and required fields, see the myosh Viking API documentation.

[Rest API] Create/Update Corrective Action

Create or update a corrective/preventive action record (matched by id). Body sets "module"/"form" to the numeric id of the Action module/form.

  • Each record from your Nexset is sent as a JSON request body to the /records endpoint. Include the record id to update an existing action, or omit it to create a new one. Set module/form to the numeric id of the Action module/form.

The record body must match the format expected by the myosh Viking API. For the action record schema and required fields, see the myosh Viking API documentation.

[Rest API] Create/Update User

Create a new user or update an existing one (matched by id).

  • Each record from your Nexset is sent as a JSON request body to the /users endpoint. Include the user id to update an existing user, or omit it to create a new one.

The user body must match the format expected by the myosh Viking API. For the user schema and required fields, see the myosh Viking API documentation.

Manual configuration

myosh destinations can also be manually configured to send data to any valid myosh Viking API endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.

myosh APIs expect JSON in the request body. For update operations, include the id of the record to be updated in the request body so the API matches the existing record.

Save & activate

Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured myosh endpoint, open the destination resource menu, and select Activate.

The Nexset data will not be sent to the myosh endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.