NAV
Release 1.21

Helm CONNECT API Documentation


Overview & Policies

Please read all Overview and Policies sections carefully prior to using Helm CONNECT APIs. We reserve the right to revoke access to our APIs if we observe inappropriate behavior.

API Authorization

All API HTTP requests must have the following headers attached

API-Key: <key>,
Content-Type: application/json

The key comes from the API key management section of the Users App.

User Defined Fields

Purpose

Data Model

User Defined Field Types

Account Type

URI

api/v2/public/accounttypes

Supported Verbs

Data Models

Account Type Model

{
    "Id": <GUID>,
    "Name": <string>,
    "IsCustomer": <boolean>,
    "IsAgent": <boolean>,
    "IsCompetitor": <boolean>
}

Account Type Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Account Types

URI

GET api/v2/public/accounttypes

Example Usage

GET api/v2/public/accounttypes

Required Parameters

Optional Parameters

Return Value

Action Accepted

Returns an array containing the requested Account Types in the format of the Account Types Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Account Type Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Required Permissions

Either one of:


Activities

Create/Update Activity

URI

api/v1/core/activities/CreateOrUpdateActivity

Supported Verbs

Required Parameters

Data Model

Activity Model

  {
    "Id": <Guid>,
    "VesselId": <GUID>,
    "ActivityTypeId": <GUID>,
    "FromLocationId": <Guid>,
    "ToLocationId": <Guid>,
    "PlannedStartDate": <date>,
    "PlannedEndDate": <date>,
    "StartDate": <date>,
    "EndDate": <date>,
    "RecordedByPersonId": <GUID>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  }

Activity Object Fields

Return Value

Action Accepted

  {
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>,
        "Details": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Find Activities

URI

api/v1/core/activities/FindActivities

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <Guid>,
          "VesselId": <GUID>,
          "ActivityTypeId": <GUID>,
          "FromLocationId": <Guid>,
          "ToLocationId": <Guid>,
          "PlannedStartDate": <date>,
          "PlannedEndDate": <date>,
          "StartDate": <date>,
          "EndDate": <date>,
          "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
        },
        ...
      ]
    }
  }

Archive Activity

URI

api/v1/core/activities/ArchiveActivity

Supported Verbs

Required Parameters

Data Model

Archive Activity Model

  {
    "Id": <Guid>
  }

Archive Activity Object Fields

Return Value

Action Accepted

  {
    "ActionType": "Archive",
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>
        "Message": <string>
      },
      ...
    ]
  }

Action Rejected

  "Data": <Array>

Create/Update Job Activity

URI

api/v1/jobs/activities/CreateOrUpdateJobActivity

Supported Verbs

Required Parameters

Data Model

Job Activity Model

  {
    "Id": <Guid>,
    "JobId": <GUID>,
    "ActivityTypeId": <GUID>,
    "FromLocationId": <Guid>,
    "ToLocationId": <Guid>,
    "PlannedStartDate": <date>,
    "PlannedEndDate": <date>,
    "StartDate": <date>,
    "EndDate": <date>,
    "IsStartDateAutomatic": <boolean>,
    "IsEndDateAutomatic": <boolean>,
    "RecordedByPersonId": <GUID>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  }

Job Activity Object Fields

Return Value

Action Accepted

  {
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>,
        "Details": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Find Job Activities

URI

api/v1/jobs/activities/FindJobActivities

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "JobId": <GUID>,
          "ActivityTypeId": <GUID>,
          "FromLocationId": <GUID>,
          "ToLocationId": <GUID>,
          "PlannedStartDate": <date>,
          "PlannedEndDate": <date>,
          "StartDate": <date>,
          "EndDate": <date>,
          "IsStartDateAutomatic": <boolean>,
          "IsEndDateAutomatic": <boolean>,
          "RecordedByPersonId": <GUID>,
          "UserDefined": UserDefinedDataModel (see User Defined Fields section for more details)
        },
        ...
      ]
    }
  }

Activity Type

URI

api/v2/public/activitytypes

Supported Verbs

Data Models

Activity Type Model

{
    "Id": <GUID>,
    "Name": <string>,
    "AccountingCode": <string>,
    "Type": <string>,
    "Tags": <Array>
    [
        {
            "Id": <GUID>,
            "Name": <string>,
        },
        ...
    ]
}

Activity Type Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Activity Types

URI

GET api/v2/public/activitytypes

or

GET api/v2/public/activitytypes/{Id}

Example Usage

// Get a paginated response of all activity types
GET api/v2/public/activitytypes

// Get a specific activity type by Id
GET api/v2/public/activitytypes/d21d73fb-bb69-11e8-8102-00155d040945

Required Parameters

Optional Parameters

Return Value

Action Accepted

Returns an array containing the requested Activity Types in the format of the Activity Types Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Activity Type Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Required Permissions


Assets

Update Asset

URI

api/v1/core/assets/CreateOrUpdateAsset

Supported Verbs

Required Parameters

Data Model

Asset Model

  {
    "Id": <GUID>,
    "Name": <string>,
    "ShortName": <string>,
    "AccountingCode": <string>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  }

Asset Object Fields

Return Value

Action Accepted

  {
    "Data":
    {
      "ActionType": <string>,
      "Id": <GUID>
    }
  }

Find Assets

URI

api/v1/core/assets/FindAssets

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "Name": <string>,
          "ShortName": <string>,
          "AccountingCode": <string>,
          "VesselTypeNames": <string>,
          "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
        }
        ...
      ]
    }
  }

Company

Create/Update Company

URI

api/v1/jobs/companies/CreateOrUpdateCompany

Supported Verbs

Required Parameters

Data Model

Company Model

[
  {
    "Id": <GUID>,
    "Name": <string>,
    "ShortName": <string>,
    "ExternalSystemCode": <string>,
    "IsMyCompany": <boolean>,
    "IsActive": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
    "AccountingTerm": 
    {
      "Name": <string>,
      "ExternalSystemCode": <string>
    }
  },
  ....
]

Company Object Fields

Return Value

With errors

  {
    "Data":
    [
      {
        "Name": <string>,
        "Errors":
        [
          {
            "Message": <string>,
            "Entity": <string>,
            "Details": <string>
          },
          ....
        ]
      }
    ]
  }

Without errors

  {
    "Data":
    {
      "Created": <Integer>,
      "Updated": <Integer>
    }
  }

Create/Update Account

URI

api/v1/jobs/companies/CreateOrUpdateCompanyAccount

Supported Verbs

Required Parameters

Optional Parameters

Data Model

Account Model

  [
    {
      "Id": <GUID>,
      "Name": <string>,
      "Company":
      {
        "Id": <GUID>,
        "Name": <string>,
        "ShortName": <string>,
        "ExternalSystemCode": <string>,
        "IsMyCompany": <boolean>,
        "IsActive": <boolean>,
        "UserDefined":User Defined Data Model (see User Defined Fields section for more details),
        "AccountingTerm": 
        {
          "Name": <string>,
          "ExternalSystemCode": <string>
        }
      },
      "Division":
      {
        "Id": <GUID>,
        "Name": <string>,
        "ExternalSystemCode": <string>
      },
      "AccountNumber": <string>,
      "AccountType": <string>,
      "AccountTypeId": <GUID>,
      "IsAR": <boolean>,
      "IsAP": <boolean>,
      "IsBlocked": <boolean>,
      "IsActive": <boolean>,
      "AccountingTerm": 
      {
        "Name": <string>,
        "ExternalSystemCode": <string>
      }
    },
    ....
  ]

Account Object Fields

Return Value

With errors

  {
    "Data":
    [
      {
        "Name": <Array>,
        "Errors":
        [
          {
            "Entity": <string>
          },
          ....
        ]
      }
    ]
  }

Without errors

  {
    "Data":
    {
      "Created": <Integer>,
      "Updated": <Integer>,
      "CompanyCreated": <Integer>
    }
  }

Create/Update Account Address

URI

api/v1/jobs/companies/CreateOrUpdateAccountAddress

Supported Verbs

Required Parameters

Data Model

Account Address Model

  [
    {
      "Id": <GUID>,
      "Account":
      {
        "Id": <GUID>,
        "Name": <string>,
        "AccountNumber": <string>
      },
      "Name": <string>,
      "Address": <string>,
      "City": <string>,
      "Zipcode": <string>,
      "State": <string>,
      "Country": <string>,
      "Email": <string>,
      "ExternalSystemCode": <string>,
      "Areas":
      [
        {
          "Id": <GUID>,
          "Name": <string>,
          "ExternalSystemCode": <string>
        },
        ....
      ]
    },
    ....
  ]

Account Address Object Fields

Return Value

With errors

  {
    "Data":
    [
      {
        "Name": <Array>,
        "Errors":
        [
          {
            "Entity": <string>
          },
          ....
        ]
      }
    ]
  }

Without errors

  {
    "Data":
    {
      "Created": <Integer>,
      "Updated": <Integer>
    }
  }

Find Companies

URI

api/v1/jobs/companies/FindCompanies

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "Name": <string>,
          "ShortName": <string>,
          "ExternalSystemCode": <string>,
          "IsMyCompany": <boolean>,
          "IsActive": <boolean>,
          "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
          "AccountingTerm":
          {
            "Name": <string>,
            "NumberOfDays": <integer>,
            "ExternalSystemCode": <string>
          },
          "Accounts": <Array>
          [
            {
              "Id": <GUID>,
              "Name": <string>,
              "Division":
              {
                "Id": <GUID>,
                "Name": <string>,
                "ExternalSystemCode": <string>
              },
              "AccountNumber": <string>,
              "AccountType": <string>,
              "AccountTypeId": <GUID>,
              "IsAR": <boolean>,
              "IsAP": <boolean>,
              "IsBlocked": <boolean>,
              "IsActive": <boolean>,
              "IsRequested": <boolean>,
              "AccountingTerm":
              {
                "Name": <string>,
                "NumberOfDays": <integer>,
                "ExternalSystemCode": <string>
              },
              "Addresses": <Array>
              [
                {
                  "Id": <GUID>,
                  "Name": <string>,
                  "Address": <string>,
                  "City": <string>,
                  "Zipcode": <string>,
                  "State": <string>,
                  "Country": <string>,
                  "Email": <string>,
                  "Areas":
                  [
                    {
                      "Id": <GUID>,
                      "Name": <string>,
                      "ExternalSystemCode": <string>
                    },
                    ....
                  ]
                },
                ....
              ]
            },
            ....
          ]
        },
        ....
      ]
    }
  }

Contract

URI

api/v2/public/contracts

Supported Verbs

Data Models

Contract Model

{
    "Id": <GUID>,
    "Name": <string>,
    "AccountId": <GUID>,
    "Account": 
    {
        "Id": <GUID>,
        "AccountNumber": <string>,
        "Name": <string>
    }
    "EffectiveDate": <string>,
    "ExpiryDate": <string>
}

Contract Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Required Permissions


Components

URI

api/v2/public/components

Supported Verbs

Data Models

Component Model

[
  {
    "Id": <GUID>,
    "Name": <string>,
    "ParentComponentId": <GUID>,
    "AssetId": <GUID>,
    "Active": <boolean>,
    "Deactivated": <date>,
    "ComponentTypeId": <GUID>,
    "ComponentTypeName": <string>,
    "EssentialSystem": <boolean>,
    "MakeId": <GUID>,
    "MakeName": <string>,
    "ModelId": <GUID>,
    "ModelName": <string>,
    "Modified": <date>,
    "SerialNumber": <string>,
    "PartNumber": <string>,
    "ReceivePropagatedReadings": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  },
  ....
]

Component Fields

Error Model

  {
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
  }

Error Model Fields

Find Component

URI

GET api/v2/public/components

or

GET api/v2/public/components/{Id}

Example Usage

// Get a paginated response of all components
GET api/v2/public/components

// Get a specific component by Id
GET api/v2/public/components/d21d73fb-bb69-11e8-8102-00155d040945

Required Parameters

Optional Parameters

Required Permissions

One or both of the following:

Return Value

Action Accepted

Returns an array containing the requested components in the format of the Component Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Component Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Currency Exchange Rate

Create/Update Currency Exchange Rate

URI

api/v1/jobs/billing/CreateOrUpdateCurrencyExchangeRate

Supported Verbs

Required Parameters

Data Model

Currency Exchange Rate Model

  {
    "CurrencyType":
    {
      "Id": <GUID>,
      "Name": <string>,
    },
    "EffectiveDate": <date>,
    "ExchangeRate": <decimal>
  }

Currency Exchange Rate Object Fields

Return Value

Action Accepted

  "Data":
  {
    "CurrencyTypeId": <Guid>,
    "LogMessages":
    [
      {
        "Entity": <string>,
        "Message": <string>,
        "Details": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Delete Currency Exchange Rate

URI

api/v1/jobs/billing/DeleteCurrencyExchangeRate

Supported Verbs

Required Parameters

Data Model

Currency Exchange Rate Model

  {
    "CurrencyType":
    {
      "Id": <GUID>,
      "Name": <string>,
    },
    "EffectiveDate": <date>
  }

User Object Fields

Return Value

Action Accepted

  "Data":
  {
    "CurrencyTypeId": <Guid>,
    "ExchangeRatesDeleted": <integer>,
    "LogMessages":
    [
      {
        "Entity": <string>,
        "Message": <string>,
        "Details": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Divisions

Find Divisions

URI

api/v1/jobs/Divisions/FindDivisions

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "Name": <string>,
          "ShortName": <string>,
          "ExternalSystemCode": <string>,
          "AccountingCode": <string>,
          "DivisionType":
          {
            "Id": <GUID>,
            "Name": <string>  
          },
        },
        ...
      ]
    }
  }

Earning Code

Create/Update Earning Code

URI

api/v1/Personnel/EarningCodes/CreateOrUpdateEarningCode

Supported Verbs

Required Parameters

Data Model

Earning Code Model

  {
    "Id": <GUID>,
    "Name": <string>,
    "AccountingCode": <string>,
    "QuantityType": <string>,
    "DoArchive": <boolean>
  }

Earning Code Object Fields

Return Value

Action Accepted

  Data:
  {
    "ActionType": <string>,
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Find Earning Code

URI

api/v1/Personnel/EarningCodes/FindEarningCodes

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page":
      [
        {
          "Id": <GUID>,
          "Name": <string>,
          "AccountingCode": <string>,
          "QuantityType": <string>
        },
        ....
      ]
    }
  }

Action Rejected

  "Data": <Array>

Event

Create/Update Event

URI

api/v1/core/events/CreateOrUpdateEvent

Supported Verbs

Required Parameters

Data Model

Event Model

  {
    "Id": <GUID>,
    "Description": <string>,
    "EventDate": <date>,
    "EventTypeId": <GUID>,
    "VesselId": <GUID>,
    "SpaceId": <GUID>,
    "LocationId": <GUID>,
    "RecordedByPersonId": <GUID>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  }

Event Object Fields

Return Value

Action Accepted

  Data:
  {
    "ActionType":  <string>,
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>
        "Message": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Find Events

URI

api/v1/core/events/FindEvents

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "Description": <string>,
          "EventDate": <date>,
          "EventTypeId": <GUID>,
          "AssetId": <GUID>,
          "SpaceId": <GUID>,
          "LocationId": <GUID>,
          "RecordedByPersonId": <GUID>,
          "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
        },
        ...
      ]
    }
  }

Archive Event

URI

api/v1/core/events/ArchiveEvent

Supported Verbs

Required Parameters

Data Model

Archive Event Model

  {
    "Id": <Guid>
  }

Archive Event Object Fields

Return Value

Action Accepted

  {
    "ActionType": "Archive",
    "Id": <GUID>
  }

Action Rejected

  "Data": <Array>

Create/Update Trip Event

URI

api/v1/jobs/events/CreateOrUpdateTripEvent

Supported Verbs

Required Parameters

Data Model

Trip Event Model

  {
    "Id": <Guid>,
    "TripId": <GUID>,
    "EventTypeId": <GUID>,
    "Description": <string>,
    "EventDate": <date>,
    "LocationId": <GUID>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  }

Trip Event Object Fields

Return Value

Action Accepted

  {
    "ActionType": <string>,
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>,
        "Details": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Find Trip Events

URI

api/v1/jobs/events/FindTripEvents

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "TripId": <GUID>,
          "EventTypeId": <GUID>,
          "Description": <string>,
          "EventDate": <date>,
          "LocationId": <Guid>,
          "UserDefined": UserDefinedDataModel (see User Defined Fields section for more details)
        },
        ...
      ]
    }
  }

Create/Update Job Event

URI

api/v1/jobs/events/CreateOrUpdateJobEvent

Supported Verbs

Required Parameters

Data Model

Job Event Model

  {
    "Id": <Guid>,
    "JobId": <GUID>,
    "EventTypeId": <GUID>,
    "Description": <string>,
    "PlannedEventDate": <date>,
    "EventDate": <date>,
    "LocationId": <GUID>,
    "RecordedByPersonId": <GUID>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  }

Job Event Object Fields

Return Value

Action Accepted

  {
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>,
        "Details": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Find Job Events

URI

api/v1/jobs/events/FindJobEvents

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "JobId": <GUID>,
          "EventTypeId": <GUID>,
          "Description": <string>,
          "PlannedEventDate": <date>,
          "EventDate": <date>,
          "LocationId": <GUID>,
          "RecordedByPersonId": <GUID>,
          "UserDefined": UserDefinedDataModel (see User Defined Fields section for more details)
        },
        ...
      ]
    }
  }

Event Type

URI

api/v2/public/eventtypes

Supported Verbs

Data Models

Event Type Model

{
    "Id": <GUID>,
    "Name": <string>,
    "Spaces": <Array>
    [
        {
            "Id": <GUID>,
            "Name": <string>,
        },
        ...
    ],
    "Tags": <Array>
    [
        {
            "Id": <GUID>,
            "Name": <string>,
        },
        ...
    ]
}

Event Type Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Event Types

URI

GET api/v2/public/eventtypes

or

GET api/v2/public/eventtypes/{Id}

Example Usage

// Get a paginated response of all event types
GET api/v2/public/eventtypes

// Get a specific event type by Id
GET api/v2/public/eventtypes/d21d73fb-bb69-11e8-8102-00155d040945

Required Parameters

Optional Parameters

Return Value

Action Accepted

Returns an array containing the requested Event Types in the format of the Event Types Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Event Type Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Required Permissions


Emergency Contacts

URI

api/v2/public/emergencycontacts

Supported Verbs

Data Models

Emergency Contact Model

{
    "Id": <GUID>,
    "PersonId": <GUID>,
    "Name": <string>,
    "PhoneNumber": <string>,
    "AlternatePhoneNumber": <string>,
    "EmailAddresses": <string>,
    "Relationship": <string>,
    "Address": <string>,
    "City": <string>,
    "Country": <string>,
    "StateOrProvince": <string>,
    "PostalZipCode": <string>,
    "SortOrder": <integer>,
    "UserDefinedFields": User Defined Data Model (see User Defined Fields section for more details)
}

Emergency Contact Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Emergency Contacts

URIs

GET api/v2/public/emergencycontacts

or

GET api/v2/public/emergencycontacts/{Id}

Example Usage

// Gets a paged result of emergency contacts
GET api/v2/public/emergencycontacts

// Gets a single emergency contact
GET api/v2/public/emergencycontacts/c5e69784-24c5-11e7-82c5-f01faf32a6aa

Required Parameters

Optional Parameters

Required Permissions

One or both of the following:

Return Value

Action Accepted

Returns an array containing the requested Emergency Contacts in the format of the Emergency Conact Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Emergency Contact Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Create Emergency Contact

URI

POST api/v2/public/emergencycontacts

Example Usage

// Add a single emergency contact
POST api/v2/public/emergencycontacts
{
    "PersonId": "c5e69784-24c5-11e7-82c5-f01faf32a6aa",
    "Name": "George Washington",
    "PhoneNumber": "202-456-1111"
}

// Add multiple emergency contacts.
POST api/v2/public/emergencycontacts
[
    {
        "PersonId": "c5e69784-24c5-11e7-82c5-f01faf32a6aa",
        "Name": "Benjamin Franklin",
        "PhoneNumber": "1-800-ASK-USPS"
    },
    {
        "PersonId": "c5e69784-24c5-11e7-82c5-f01faf32a6aa",
        "Name": "James Madison",
        "PhoneNumber": "1-866-272-6272"
    }
]

// The contacts current order would look like the following:
// - James Madison
// - Benjamin Franklin
// - George Washington

// Append an emergency contact
POST api/v2/public/emergencycontacts
{
    "PersonId": "c5e69784-24c5-11e7-82c5-f01faf32a6aa",
    "Name": "Alexandar Hamilton",
    "PhoneNumber": "(202) 622-2000",
    "SortOrder": 100,
}

// Contacts:
// - James Madison
// - Benjamin Franklin
// - George Washington
// - Alexander Hamilton

// Insert an emergency contact
POST api/v2/public/emergencycontacts
{
    "PersonId": "c5e69784-24c5-11e7-82c5-f01faf32a6aa",
    "Name": "Thomas Jefferson",
    "PhoneNumber": "1-866-272-6272",
    "SortOrder": 2,
}

// Contacts:
// - James Madison
// - Benjamin Franklin
// - Thomas Jefferson
// - George Washington
// - Alexander Hamilton

Required Parameters

Required Permissions

Return Value

Action Accepted

Returns a single Emergency Contact Model or an array of Emergency Contact Model.

<Emergency Contact Model> | <Array of Emergency Contact Model>

Action Rejected

{
    "Errors": <Array of Error Model>
}

Update Emergency Contact

URI

PATCH api/v2/public/emergencycontacts

or

PATCH api/v2/public/emergencycontacts/{Id}

Example Usage

// Contacts:
// - James Madison
// - Benjamin Franklin
// - George Washington (Id: 7694520e-b2de-4dbe-9d6d-fbf8addd8a28)
// - Alexander Hamilton

// Update George to be the first contact
PATCH api/v2/public/emergencycontacts/7694520e-b2de-4dbe-9d6d-fbf8addd8a28
{
    "SortOrder": 0
}

// Contacts:
// - George Washington (Id: 7694520e-b2de-4dbe-9d6d-fbf8addd8a28)
// - James Madison
// - Benjamin Franklin
// - Alexander Hamilton

// Update an Emergency Contact's City
PATCH api/v2/public/emergencycontacts
{
    "Id": "7694520e-b2de-4dbe-9d6d-fbf8addd8a28",
    "City": "Mount Vernon"
}

// or

PATCH api/v2/public/emergencycontacts/7694520e-b2de-4dbe-9d6d-fbf8addd8a28
{
    "City": "Mount Vernon"
}

Required Parameters

Required Permissions

Return Value

Action Accepted

Returns a single or an array of all modified Emergency Contacts. If there were two emergency contacts and the second one was updated to be the first, both contacts would be returned.

<Emergency Contact Model> | <Array of Emergency Contact Model>

Action Rejected

{
    "Errors": <Array of Error Model>
}

Delete Emergency Contact

URI

DELETE api/v2/public/emergencycontacts/{Id}

Example Usage

// Contacts:
// - James Madison
// - Benjamin Franklin
// - George Washington (Id: 7694520e-b2de-4dbe-9d6d-fbf8addd8a28)
// - Alexander Hamilton

// Remove George as a contact
DELETE api/v2/public/emergencycontacts/7694520e-b2de-4dbe-9d6d-fbf8addd8a28

// Contacts:
// - James Madison
// - Benjamin Franklin
// - Alexander Hamilton

Required Parameters

Required Permissions

Return Value

Action Accepted

Returns nothing.

Action Rejected

{
    "Errors": <Array of Error Model>
}

Field Settings

URI

api/v1/system/fieldsettings

Supported Verbs

Data Models

Field Setting Model

{
    "EntityType": <string>,
    "TargetType": <string>,
    "TargetId": <GUID>,
    "TargetName": <string>,
    "Site": <string>,
    "DivisionId": <GUID>,
    "DivisionName": <string>,
    "Modified": <date>,
    "SystemFields": {
        ENTITY_SPECIFIC_SYSTEM_FIELD_NAME_1: <Field Details Model>,
        ENTITY_SPECIFIC_SYSTEM_FIELD_NAME_2: <Field Details Model>,
        ...
    },
    "UserDefinedFields": {
        ENTITY_SPECIFIC_USER_DEFINED_FIELD_NAME_1: <Field Details Model>,
        ENTITY_SPECIFIC_USER_DEFINED_FIELD_NAME_2: <Field Details Model>,
        ...
    }
}

Field Details Model

{
    "Visible": <bool>,
    "Required": <bool>,
    "SortOrder": <integer>
}

Field Setting Fields

Field Details Fields

Supported Entity Types

Note that the Helm CONNECT user interface does not support independent configurations for TripEvents, JobEvents, and (core) Events; and JobActivities and (core) Activities. So you will see that the API returns identical data for these types of entities. Moreover, additional entity types may be supported in the future.

Supported Target Types

Note that additional target types may be supported in the future.

Find Field Settings

URI

GET api/v1/system/fieldsettings

Example Usage

// Get a paginated response of all field settings
GET api/v1/system/fieldsettings?page=1

// Get a specific setting entry
GET api/v1/system/fieldsettings?page=1&entityType=Job

Required Parameters

Optional Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the requested Field Settings in the format of the Field Setting Model.

{
    "Page": <Array of Field Setting Model>
}

Job

Create Job

URI

api/v1/jobs/jobs/CreateJob

Supported Verbs

Required Parameters

Optional Parameters

Data Model

Job Model

  {
    "Trip": {
      "Id": <GUID>,
      "TripNumber": <string>
    },
    "RequiredResourceType":
    {
      "Id": <GUID>,
      "Name": <string>
    },
    "Resource": {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "Acknowledged": <boolean>,
    "RunningTo": <decimal>,
    "StartDate": <date>,
    "EndDate": <date>,
    "PlannedStartDate": <date>,
    "PlannedEndDate": <date>,
    "RunningFrom": <decimal>,
    "CancelledDate": <date>,
    "IsNoCharge": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  }

Job Object Fields

Return Value

With no results

  {
    "Data":
    {
      "LogMessages": <Array>
      [
        {
          "Message": <string>,
          "Entity": <string>,
          "Details": <string>
        },
        ....
      ]
    }
  }

With results

  {
    "Data":
    {
      "JobId": <GUID>,
      "LogMessages": <Array>
      [
        {
          "Message": <string>,
          "Entity": <string>,
          "Details": <string>
        },
        ....
      ]
    }
  }

Update Job

URI

api/v1/jobs/jobs/UpdateJob

Supported Verbs

Required Parameters

Optional Parameters

Data Model

Job Model

  {
    "Id": <GUID>,
    "RequiredResourceType":
    {
      "Id": <GUID>,
      "Name": <string>
    },
    "Resource": {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "Acknowledged": <boolean>,
    "RunningTo": <decimal>,
    "StartDate": <date>,
    "EndDate": <date>,
    "PlannedStartDate": <date>,
    "PlannedEndDate": <date>,
    "RunningFrom": <decimal>,
    "CancelledDate": <date>,
    "IsNoCharge": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  }

Job Object Fields

Return Value

With no results

  {
    "Data":
    {
      "LogMessages": <Array>
      [
        {
          "Message": <string>,
          "Entity": <string>,
          "Details": <string>
        },
        ....
      ]
    }
  }

With results

  {
    "Data":
    {
      "JobId": <GUID>,
      "LogMessages": <Array>
      [
        {
          "Message": <string>,
          "Entity": <string>,
          "Details": <string>
        },
        ....
      ]
    }
  }

Find Jobs

URI

api/v1/jobs/jobs/FindJobs

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
  "Data":
  {
    "TotalCount": <integer>,
    "Page": <Array>
    [
      {
        "Id": <GUID>,
        "TripId": <GUID>,
        "JobNumber": <string>,
        "RequiredResourceType":
        {
          "Id": <GUID>,
          "Name": <string>
        },
        "Resource": {
          "Id": <GUID>,
          "Name": <string>,
          "ExternalSystemCode": <string>
        },
        "Acknowledged": <boolean>,
        "RunningTo": <decimal>,
        "RunningFrom": <decimal>,
        "StartDate": <date>,
        "EndDate": <date>,
        "PlannedStartDate": <date>,
        "PlannedEndDate": <date>,
        "CancelledDate": <date>,
        "IsNoCharge": <boolean>,
        "IsRequest": <boolean>
        "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
      },
      ....
    ]
  }

Delete Job

URI

api/v1/jobs/jobs/DeleteJob

Supported Verbs

Required Parameters

Data Model

Delete Job Model

  {
    "Id": <Guid>
  }

Delete Job Object Fields

Return Value

Action Accepted

  {
    "ActionType": "Delete",
    "Id": <GUID>
  }

Action Rejected

  "Data": <Array>

Acknowledge Job

URI

api/v1/jobs/jobs/AcknowledgeJob

Supported Verbs

Required Parameters

Optional Parameters

Return Value

Action Accepted

  {
    "Data": null
  }

Action Rejected

  {
    "Message": <string>
  }

Location

URI

api/v2/public/locations

Supported Verbs

Data Models

Location Model

{
    "Id": <GUID>,
    "Name": <string>,
    "ShortName": <string>,
    "RunningTime": <integer>,
    "IsRequested": <boolean>,
    "ExternalSystemCode": <string>,
    "IsArea": <boolean>,
    "Latitude": <decimal>,    
    "Longitude": <decimal>,
    "TimeZone": <string>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
    "Parent": {
        "Id": <GUID>,
        "Name": <string>,
        "ExternalSystemCode": <string>
    },
    "LocationType": {
        "Id": <GUID>,
        "Name": <string>
    },
    "Divisions": <Array> [
        {
            "Id": <GUID>,
            "Name": <string>,
            "ExternalSystemCode": <string>
        },
        ...
    ],
    "Modified": <datetime>
}

Location Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Location

URI

GET api/v2/public/locations

or

GET api/v2/public/locations/{Id}

Example Usage

// Get a paginated response of all locations
GET api/v2/public/locations

// Get a specific location by Id
GET api/v2/public/locations/d21d73fb-bb69-11e8-8102-00155d040945

Required Parameters

Optional Parameters

Required Permissions

One or both of the following:

Return Value

Action Accepted

Returns an array containing the requested Locations in the format of the Location Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Location Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Create Location

URI

POST api/v2/public/locations

Example Usage

// Create one Location
POST api/v2/public/locations
{ "Name": "Canada" }

// Create a Location tree
POST api/v2/public/locations
[
    {
        "Name": "Canada"
    },
    {
        "Name": "British Columbia",
        "Parent": {
            Name: "Canada"
        }
    }
]

Required Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the created Locations.

<Array of Location Model>

Action Rejected

{
  "Errors": <Array of Error Model>
}

Update Location

URIs

Update a Location

PATCH api/v2/public/locations/

or

PATCH api/v2/public/locations/{Id}

Add a Division to a Location

POST api/v2/public/locations/{Id}/divisions

Remove a Division from a Location

DELETE api/v2/public/locations/{Id}/divisions/{DivisionId}

Required Parameters

Optional Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the modified Locations.

<Array of Location Model>

Action Rejected

{
  "Errors": <Array of Error Model>
}

Location Type

URI

api/v2/public/locationtypes

Supported Verbs

URI

GET api/v2/public/locationtypes

or

GET api/v2/public/locationtypes/{Id}

Data Models

Location Type Model

{
    "Id": <GUID>,
    "Name": <string>
}

Location Type Fields

Example Usage

// Get a paginated response of all location types
GET api/v2/public/locationtypes

// Get a specific location type by Id
GET api/v2/public/locationtypes/15754c54-95b1-4ada-b5bd-f7aef0448348

Required Parameters

Optional Parameters

Required Permissions

One or both of the following:

Return Value

Action Accepted

Returns an array containing the requested Location Types in the format of the Location Type Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Location Type Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Order

Create Order

URI

api/v1/jobs/orders/CreateOrder

Supported Verbs

Required Parameters

Optional Parameters

Data Model

Order Model

  {
    "Division":
    {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "Area":
    {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "Ship":
    {
      "Id": <GUID>,
      "ShipTypeId": <GUID>,
      "Name": <string>,
      "IMONumber": <string>,
      "MMSI": <string>,
      "Nation": <string>,
      "CallSign": <string>,
      "Height": <decimal>,
      "Deadweight": <decimal>,
      "GT": <decimal>,
      "LOA": <decimal>,
      "Beam": <decimal>,
      "TEU": <decimal>,
      "NT": <decimal>,
      "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
    },
    "CustomerAccount":
    {
      "Id": <GUID>,
      "Name": <string>,
      "AccountNumber": <string>
    },
    "AgentAccount":
    {
      "Id": <GUID>,
      "Name": <string>,
      "AccountNumber": <string>
    },
    "AwardedToAccount":
    {
      "Id": <GUID>,
      "Name": <string>,
      "AccountNumber": <string>
    },
    "OrderDate": <date>,
    "CustomerPONumber": <string>,
    "VoyageNumber": <string>,
    "IsBillable": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
    "Trips": <Array>
    [
      <TripModel>,
      ....
    ]
  }

Trip Model

  {
    "TripType":
    {
      "Id": <GUID>,
      "Name": <string>
    },
    "FromLocation":
    {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "ToLocation":
    {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "Status": <string>,
    "RequestedDate": <date>,
    "StartDate": <date>,
    "EndDate": <date>,
    "IsRequestedDateFirm": <boolean>,
    "EstimatedDuration": <decimal>,
    "NumberRequiredResources": <integer>,
    "CancelledDate": <datetime>,
    "IsNoCharge": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
    "Jobs": <Array>
    [
      <JobModel>,
      ....
    ]
  }

Job Model

  {
    "RequiredResourceType":
    {
      "Id": <GUID>,
      "Name": <string>
    },
    "Resource": {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "Acknowledged": <boolean>,
    "RunningTo": <decimal>,
    "StartDate": <date>,
    "EndDate": <date>,
    "PlannedStartDate": <date>,
    "PlannedEndDate": <date>,
    "RunningFrom": <decimal>,
    "CancelledDate": <date>,
    "IsNoCharge": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  }

Order Object Fields

Trip Object Fields

Job Object Fields

Return Value

With no results

  {
    "Data":
    {
      "LogMessages": <Array>
      [
        {
          "Message": <string>,
          "Entity": <string>,
          "Details": <string>
        },
        ....
      ]
    }
  }

With results

  {
    "Data":
    {
      "OrderId": <GUID>,
      "NewShipId": <GUID>,
      "TripIds": <Array of GUID>,
      "JobIds": <Array>
      [
        {
          "TripId": GUID,
          "JobIds": <Array of GUID>
        },
        ...
      ],
      "LogMessages": <Array>
      [
        {
           "Message": <string>,
           "Entity": <string>,
           "Details": <string>
        },
        ...
      ]
    }
  }

Update Order

URI

api/v1/jobs/orders/UpdateOrder

Supported Verbs

Note

Required Parameters

Optional Parameters

Data Model

In the above model, the Order is being updated (Id is supplied). The first Trip is being updated (Id is supplied). The second Trip (which has no Id given), is being inserted for this Order.

Return Value

Find Orders

URI

api/v1/jobs/orders/FindOrders

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
  "Data":
  {
    "TotalCount": <integer>,
    "Page": <Array>
    [
      {
        "Id": <GUID>,
        "OrderNumber": <string>,
        "CustomerPONumber": <string>,
        "VoyageNumber": <string>,
        "OrderDate": <date>,
        "IsRequest": <boolean>,
        "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
        "Division":
        {
          "Id": <GUID>,
          "Name": <string>,
          "ExternalSystemCode": <string>
        },
        "Area": {
          "Id": <GUID>,
          "Name": <string>,
          "ExternalSystemCode": <string>
        },
        "Ship":
        {
          "Id": <GUID>,
          "Name": <string>,
          "IMONumber": <string>
        },
        "CustomerAccount":
        {
          "Id": <GUID>,
          "Name": <string>,
          "AccountNumber": <string>
        },
        "AgentAccount":
        {
          "Id": <GUID>,
          "Name": <string>,
          "AccountNumber": <string>
        },
        "AwardedToAccount":
        {
          "Id": <GUID>,
          "Name": <string>,
          "AccountNumber": <string>
        },
        "Trips": <Array>
        [
          {
            "Id": <GUID>,
            "OrderId": <GUID>,
            "TripNumber": <string>,
            "StartDate": <date>,
            "EndDate": <date>,
            "RequestedDate": <date>,
            "IsRequestedDateFirm": <boolean>,
            "EstimatedDuration": <decimal>,
            "Status": <string>,
            "IsRequest": <boolean>,
            "OriginalTripId": <GUID>,
            "CancelledDate": <datetime>,
            "IsNoCharge": <boolean>,
            "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
            "Triptype":
            {
              "Id": <GUID>,
              "Name": <string>
            },
            "FromLocation":
            {
              "Id": <GUID>,
              "Name": <string>,
              "ExternalSystemCode": <string>
            },
            "ToLocation":
            {
              "Id": <GUID>,
              "Name": <string>,
              "ExternalSystemCode": <string>
            },
            "ContractId": <GUID>,
            "ContractAccount":
            {
              "Id": <GUID>,
              "Name": <string>,
              "AccountNumber": <string>
            },
            "Jobs" : <Array>
            [
              {
                "Id": <GUID>,
                "TripId": <GUID>,
                "JobNumber": <string>,
                "RequiredResourceType":
                {
                  "Id": <GUID>,
                  "Name": <string>
                },
                "Resource": {
                  "Id": <GUID>,
                  "Name": <string>,
                  "ExternalSystemCode": <string>
                },
                "Acknowledged": <boolean>,
                "RunningTo": <decimal>,
                "RunningFrom": <decimal>,
                "StartDate": <date>,
                "EndDate": <date>,
                "PlannedStartDate": <date>,
                "PlannedEndDate": <date>,
                "CancelledDate": <date>,
                "IsNoCharge": <boolean>,
                "IsRequest": <boolean>
                "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
              },
              ....
            ]
          },
          ....
        ]
      },
      ....
    ]
  }

Part

Create/Update Part

URI

api/v1/hsqe/parts/CreateOrUpdatePart

Supported Verbs

Required Parameters

Optional Parameters

Data Model

Part Model

  {
    "Id": <GUID>,
    "PartNumber": <string>,
    "CrossReferenceNumber": <string>,
    "Description": <string>,
    "Info": <string>,
    "PartUnit": <string>,
    "PartCategory": <string>,
    "IsActive": <boolean>,
    "IsCriticalSpare": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
    "AssetTypeNames": <Array of string>
  }

Part Object Fields

Return Value

Action Accepted

  Data:
  {
    "ActionType": <string>,
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Find Part

URI

api/v2/public/parts

Supported Verbs

Data Models

Part Model

{
    "Id": <GUID>,
    "Modified": <date>,
    "PartNumber": <string>,
    "CrossReferenceNumber": <string>,
    "Description": <string>,
    "Info": <string>,
    "IsActive": <boolean>,
    "IsCriticalSpare": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
    "PartUnitType": {
        "Id": <GUID>,
        "Name": <string>
    },
    "PartCategory": {
        "Id": <GUID>,
        "Name": <string>
    },
    "PartAssetTypes": [
        {
            "AssetTypeId": <GUID>,
            "AssetTypeName": <string>
        },
        ...
    ]
}

Part Model Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Example Usage

// Get a paginated response of all parts
GET api/v2/public/parts

// Get a specific part by Id
GET api/v2/public/parts/1928a52f-cdd7-4e01-8e0d-4a6822f49f3b

// Get parts with the given part category name
GET api/v2/public/parts?$filter=PartCategory.Name eq 'Gasket'

// Get parts with the given part category Id
GET api/v2/public/parts?$filter=PartCategory.Id eq guid'5958a52f-cdd7-4e01-8e0d-7a6822f49f3e'

// Get parts with the given part unit type Id 
GET api/v2/public/parts?$filter=PartUnitType.Id eq guid'2a58a520-cfd7-4e41-8e8d-7a6822f49f3f'

// Get all inactive parts
GET api/v2/public/parts?$filter=IsActive eq false

// Get all critical spares
GET api/v2/public/parts?$filter=IsCriticalSpare eq true

// Get all parts modified after the given date
GET api/v2/public/parts?$filter=Modified ge datetime'2020-05-14T20:30:00+00:00'

Required Parameters

Optional Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the requested Parts in the format of the Part Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Part Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}


Part Contract

Create/Update Part Contract

URI

api/v1/hsqe/parts/CreateOrUpdatePartContract

Supported Verbs

Required Parameters

Optional Parameters

Data Model

Part Contract Model

  {
    "Id": <GUID>,
    "VendorId": <GUID>,
    "PartId": <GUID>,
    "VendorPartNumber": <string> [max. 100 char],
    "Price": <decimal>,
    "StartDate": <datetime>,
    "EndDate": <datetime>,
    "Info": <string>
  }

Part Contract Object Fields

Return Value

Action Accepted

  Data:
  {
    "ActionType": <string>,
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Payroll

Find Payroll

URI

api/v1/Personnel/Payroll/FindPayroll

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "PersonId": <GUID>,
          "PayrollPeriodId": <GUID>,
          "DivisionId": <GUID>,
          "Payroll Group": {
              "Id": <GUID>,
              "Name": <string>,
              "AccountingCode": <string>
          },
          "TransactionLines":
          [
            "Id": <GUID>,
            "Rate": <decimal>,
            "Quantity": <decimal>,
            "Factor": <decimal>,
            "Amount": <decimal>,
            "StartDate": <date>,
            "EndDate": <date>,
            "AccountingCodes":
            {
              <string(ReferenceType)>:
              {
                "Id": <GUID>,
                "AccountingCode": <string>,
                "EntityName": <string>,
                "ReferenceType": <string>
              },
              ....
            }
          ],
          "PersonBankRecords":
          [
            {
              "Id": <GUID>,
              "Rate": <decimal>,
              "Quantity": <decimal>,
              "Factor": <decimal>,
              "Amount": <decimal>,
              "Date": <date>,
              "IsWithdrawal": <boolean>,
              "AccountingCodes":
              {
                <string(ReferenceType)>:
                {
                  "Id": <GUID>,
                  "AccountingCode": <string>,
                  "EntityName": <string>,
                  "ReferenceType": <string>
                },
                ....
              }
            }
          ]
        }
      ]
    }
  }

Bank Balance

URI

api/v1/Personnel/Payroll/BankBalance

Supported Verbs

Required Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "BankId": <GUID>,
          "BankName": <string>,
          "BankAccountingCode": <string>,
          "PersonId": <GUID>,
          "Balances": <Array>
          [
            {
              "PayrollClassId": <GUID>,
              "EarningCodeId": <GUID>,
              "AssetId": <GUID>,
              "CostCenterId": <GUID>,
              "Rate": <decimal>,
              "Factor": <decimal>,
              "DivisionId": <GUID>,
              "OpeningBalance": <decimal>,
              "OpeningQuantity": <decimal>,
              "ClosingBalance": <decimal>,
              "ClosingQuantity": <decimal>
            },
            ...
          ]
        }
      ]
    }
  }

Find Payroll Periods

URI

api/v1/Personnel/PayrollPeriods/FindPayrollPeriods

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "StartDate": <date>,
          "EndDate": <date>,
          "PayrollGroup": {
              "Id": <GUID>,
              "Name": <string>,
              "AccountingCode": <string>
          }
        }
      ]
    }
  }

Set Payroll Period Exported

URI

api/v1/Personnel/PayrollPeriods/SetPayrollPeriodExported

Supported Verbs

Required Parameters

Data Model

Payroll Class Model

  {
    "Id": <GUID>,
    "ExportDate": <date>,
    "ResetExportDate": <boolean>
  }

Payroll Class Object Fields

Return Value

Action Accepted

  Data:
  {
    "ActionType": <string>,
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Payroll Class

Create/Update Payroll Class

URI

api/v1/Personnel/PayrollClasses/CreateOrUpdatePayrollClass

Supported Verbs

Required Parameters

Data Model

Payroll Class Model

  {
    "Id": <GUID>,
    "Name": <string>,
    "AccountingCode": <string>,
    "DoArchive": <boolean>
  }

Payroll Class Object Fields

Return Value

Action Accepted

  Data:
  {
    "ActionType": <string>,
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Create/Update Payroll Class Earning Code

URI

api/v1/Personnel/PayrollClasses/CreateOrUpdatePayrollClassEarningCode

Supported Verbs

Required Parameters

Data Model

Payroll Class Earning Code Model

  {
    "Id": <GUID>,
    "PayrollClassId": <GUID>,
    "QuantityType": <string>,
    "EarningCode": {
        "Id": <GUID>,
        "Name": <string>
    },
    "Factor": <decimal>,
    "Rate": <decimal>,
    "AccrualFactor": <decimal>,
    "EffectiveDate": <date>,
    "DoArchive": <boolean>
  }

Payroll Class Earning Code Object Fields

Return Value

Action Accepted

  Data:
  {
    "ActionType": <string>,
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Find Payroll Class

URI

api/v1/Personnel/PayrollClasses/FindPayrollClasses

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "Name": <string>,
          "AccountingCode": <string>,
          "EarningCodes" [
              {
                  "Id": <GUID>,
                  "PayrollClassId": <GUID>,
                  "QuantityType": <string>,
                  "EarningCode": {
                      "Id": <GUID>,
                      "Name": <string>
                  },
                  "Factor": <decimal>,
                  "Rate": <decimal>,
                  "AccrualFactor": <decimal>,
                  "EffectiveDate": <date>
              }, ...
          ]
        },
        ...
      ]
    }
  }

Positions

URI

api/v2/public/positions

Supported Verbs

Data Models

Position Model

{
    "Id": <GUID>,
    "Name": <string>
}

Position Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Positions

URI

GET api/v2/public/positions

Example Usage

GET api/v2/public/positions

Required Parameters

Optional Parameters

Return Value

Action Accepted

Returns an array containing the requested Positions in the format of the Positions Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Position Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Required Permissions

Either one of:


Requests

URI

api/v2/public/requests

Supported Verbs

Data Models

Request Model

    {
        "Id": <GUID>,
        "Type": <string>,
        "State": <string>,
        "RequestedDate": <date>,
        "RequestedByUserId": <GUID>,
        "RequestEntityId": <GUID>,
        "OriginalId", <GUID>,
        "ParentId", <GUID>,
        "ChangeJson": <Json>
    }

Request Fields

Find Requests

URI

GET api/v2/public/requests

or

GET api/v2/public/requests/{Id}

Example usage

// Get a paginated response of all requests
GET api/v2/public/requests

// Get a specific request by Id
GET api/v2/public/requests/<guid>

Required Parameters

Optional Parameters

Accept/Deny Requests

URI

PATCH api/v2/public/requests

or

PATCH api/v2/public/requests/{Id}

Example Usage

// Accept a request
PATCH api/v2/public/requests
{ "State": "Accepted" }

Required Parameters


Requisition

Update Requisition

URI

api/v1/hsqe/Requisitions/UpdateRequisition

Supported Verbs

Required Parameters

Optional Parameters

Data Model

Requisition Model

  {
    "Id": <GUID>,
    "Name": <string> [max. 100 char],
    "Status": <string> ["New", "Confirmed", "Ordered", "Received On Shore", "Received On Asset", "Closed", "Canceled"],
    "DueDate": <datetime>,
    "Priority": <string> ["Low", "Medium", "High"],
    "LinkedItemType": <string> ["Inspection", "Maintenance", "Inventory", "Form", "Task", "Corrective Action"],
    "LinkedItemId": <GUID>,
    "UserDefined": User Defined Data Model (see [User Defined Fields](#UDF) section for more details)
  }

Requisition Object Fields

Return Value

Action Accepted

  "Data":
  {
    "ActionType": <string>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Update Line Item

URI

api/v1/hsqe/Requisitions/UpdateLineItem

Supported Verbs

Required Parameters

Optional Parameters

Data Model

Line Item Model

  {
    "Id": <GUID>,
    "PartId": <GUID>,
    "VesselComponentId": <GUID>,
    "Description": <string> [max. 100 char],
    "Quantity": <integer> or <decimal>
    "EstPrice": <decimal>,
    "VendorId": <GUID>,
    "Status": <string> ["New", "Confirmed", "Ordered", "Received On Shore", "Received On Asset", "Closed", "Canceled"],
    "Type": <string> ["Labor", "Part"],
    "UserDefined": User Defined Data Model (see [User Defined Fields](#UDF) section for more details)
  }

Line Item Object Fields

-    **DataType:** User Defined Data Model (see [User Defined Fields](#UDF) section for more details)

-    **Required:** false

-    **Purpose:** Sets the UserDefined for the Line Item. Will keep the old value if not specified.

Return Value

Action Accepted

  "Data":
  {
    "ActionType": <string>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Find Requisitions

URI

api/v1/hsqe/Requisitions/FindRequisitions

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "Created": <datetime>,
          "DueDate": <datetime>,
          "Name": <string>,
          "Space": <string>,
          "Priority": <string>,
          "ExternalNumber": <string>,
          "LineItemCount": <integer>,
          "Status": <string>,
          "DivisionId": <GUID>,
          "CreatedById": <GUID>,
          "CreatedBy" : {
              "FirstName": <string>,
              "MiddleName": <string>,
              "LastName": <string>
          },
          "Asset": <string>,
          "EstCost": <decimal>,
          "LinkedItemType": <string>,
          "LinkedItemId": <GUID>,
          "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
        },
        ...
      ]
    }
  }

Find Line Items

URI

api/v1/hsqe/Requisitions/FindLineItems

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "Created": <datetime>,
          "Description": <string>,
          "ExternalNumber": <string>,
          "RequisitionId": <GUID>,
          "Space": <string>,
          "DueDate": <datetime>,
          "Priority": <string>,
          "VendorName": <string>,
          "Quantity": <decimal>,
          "EstPrice": <decimal>,
          "PartId": <GUID>,
          "PartDescription": <string>,
          "PartNumber": <string>,
          "PartUnit": <string>,
          "PartCategory": <string>,
          "Status": <string>,
          "Type": <string>,
          "Asset": <string>,
          "CreatedById": <GUID>,
          "CreatedBy" : {
              "FirstName": <string>,
              "MiddleName": <string>,
              "LastName": <string>
          },
          "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
        },
        ...
      ]
    }
  }

Resources

URI

api/v2/public/resources

Supported Verbs

Data Models

Resource Model

{
    "Id": <GUID>,
    "Modified": <datetime>,
    "Name": <string>,
    "ShortName": <string>,
    "ExternalSystemCode": <string>,
    "AccountingCode": <string>,
    "ResourceType": {
        "Id": <GUID>,
        "Name": <string>
    },
    "Division": {
        "Id": <GUID>,
        "Name": <string>,
        "ExternalSystemCode": <string>
    },
    "OperatingAreas": <Array>
    [
        {
            "Id": <GUID>,
            "Name": <string>
        },
        ...
    ],
    "Owner": {
        "Id": <GUID>,
        "Name": <string>
    },
    "Ship": {
        "Id": <GUID>,
        "Name": <string>,
        "IMONumber": <string>
    },
    "IMONumber": <string>,
    "MMSI": <string>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
}

Resource Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Resources

URI

GET api/v2/public/resources

or

GET api/v2/public/resources/{Id}

Example Usage

// Get a paginated response of all resources
GET api/v2/public/resources

// Get a specific resource by Id
GET api/v2/public/resources/d21d73fb-bb69-11e8-8102-00155d040945

// Get resources that have been modified since a certain Datetime 
GET api/v2/public/resources?$filter=Modified gt datetime'2019-09-05T15:55:24'

Required Parameters

Optional Parameters

Required Permissions

One or both of the following:

Return Value

Action Accepted

Returns an array containing the requested Resources in the format of the Resource Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Resource Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Create Resources

URI

POST api/v2/public/resources

Example Usage

// Create one Resource with two operating areas
POST api/v2/public/resources
{
    "Name": "Tug One",
    "Division": {
        "Id": "8a4cf888-5b12-11e9-9d21-6c8814184910"
    },
    "OperatingAreas": [
        {
            "Id": "1edfb9d4-5b12-11e9-9d21-6c8814184910"
        },
        {
            "Id": "7593fd18-5f9c-11e9-9d22-f01faf02f2e9"
        }
    ]
}

Required Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the created Resources.

<Array of Resource Model>

Action Rejected

{
  "Errors": <Array of Error Model>
}

Update Resources

URIs

Update a Resource

PATCH api/v2/public/resources/

or

PATCH api/v2/public/resources/{Id}

Add an Operating Area to a Resource

POST api/v2/public/resources/{Id}/operatingareas

Remove an Operating Area from a Resource

DELETE api/v2/public/resources/{Id}/operatingareas/{OperatingAreaId}

Required Parameters

Optional Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the modified Resources.

<Array of Resource Model>

Action Rejected

{
  "Errors": <Array of Error Model>
}

Resource Type

URI

api/v2/public/resourcetypes

Supported Verbs

Data Models

Resource Type Model

{
    "Id": <GUID>,
    "Name": <string>,
    "Parent": {
        "Id": <GUID>,
        "Name": <string>
    }
}

Resource Type Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Resource Types

URI

GET api/v2/public/resourcetypes

Example Usage

GET api/v2/public/resourcetypes

Required Parameters

Optional Parameters

Return Value

Action Accepted

Returns an array containing the requested Resource Types in the format of the Resource Types Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Resource Type Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Required Permissions

Either one of:


Ship

Create/Update Ship

URI

api/v1/jobs/ships/CreateOrUpdateShip

Supported Verbs

Required Parameters

Optional Parameters

Data Model

Ship Model

  {
    "Name": <string>,
    "MMSI": <string>,
    "IMONumber": <string>,
    "CallSign": <string>,
    "Nation": <string>,
    "Blocked": <boolean>,
    "ShipType": <string>,
    "ShipTypeId": <GUID>,
    "Beam": <decimal>,
    "Deadweight": <decimal>,
    "GT": <decimal>,
    "Height": <decimal>,
    "NT": <decimal>,
    "LOA": <decimal>,
    "TEU": <decimal>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  }

Ship Object Fields

Return Value

Action Accepted

  "Data":
  {
    "ActionType": <string>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>,
        "Details": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Note: ImoNumber, MMSI, CallSign are not required fields when updating. However, one of them needs to be present when inserting.

Find Ships

URI

api/v1/jobs/ships/FindShips

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
  "Data":
  {
    "TotalCount": <integer>,
    "Page": <Array>
    [
      {
        "Id": <GUID>,
        "Name": <string>,
        "MMSI": <string>,
        "IMONumber": <string>,
        "CallSign": <string>,
        "Nation": <string>,
        "Blocked": <boolean>,
        "ShipType": <string>,
        "ShipTypeId": <GUID>,
        "Beam": <decimal>,
        "Deadweight": <decimal>,
        "GT": <decimal>,
        "Height": <decimal>,
        "NT": <decimal>,
        "LOA": <decimal>,
        "TEU": <decimal>,
        "IsRequest": <boolean>,
        "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
      },
      ....
    ]
  }

Ship Types

URI

api/v2/public/ShipTypes

Supported Verbs

Data Models

Ship Type Model

{
    "Id": <GUID>,
    "Name": <string>,
    "AccountingCode": <string>,
    "CargoTypeId": <GUID>,
    "ParentId": <GUID>,
    "Parent": 
    {
        "Id": <GUID>,
        "Name": <string>
    }
}

Ship Type Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Ship Type

URI

GET api/v2/public/shiptypes

or

GET api/v2/public/shiptypes/{Id}

Example Usage

// Get a paginated response of all shiptypes
GET api/v2/public/shiptypes

// Get a specific ship type by Id
GET api/v2/public/shiptypes/69f3ede3-5803-11ea-b615-f01faf08e374

Required Parameters

Optional Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the requested Ship Type in the format of the ShipType Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of ShipType Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Create Ship Type

URI

POST api/v2/public/shiptypes

Example Usage

// Create one ShipType with a Name and a Parent
POST api/v2/public/shiptypes
{
    "Name": "Ship One",
    "ParentId": "69f3ede3-5803-11ea-b615-f01faf08e374"
}

Required Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the created ShipType.

<Array of ShipType Model>

Action Rejected

{
  "Errors": <Array of Error Model>
}

Update Ship Type

URIs

Update a ShipType

PATCH api/v2/public/shiptypes/

or

PATCH api/v2/public/shiptypes/{Id}

Required Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the modified ShipType.

<Array of ShipType Model>

Action Rejected

{
  "Errors": <Array of Error Model>
}

Tariff

URI

api/v2/public/tariffs

Supported Verbs

Data Models

Tariff Model

{
    "Id": <GUID>,
    "Name": <string>,
    "DivisionId": <GUID>,
    "Division":
    {
        "Id": <GUID>,
        "Name": <string>,
        "ExternalSystemCode": <string>
    },
    "AreaId": <GUID>,
    "Area": 
    {
        "Id": <GUID>,
        "Name": <string>,
        "ExternalSystemCode": <string>
    }
}

Tariff Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Required Permissions


Tasks

Create/Update Task

URI

api/v1/hsqe/actionitems/CreateOrUpdateTask

Supported Verbs

Required Parameters

Data Model

Task Model

  {
    "Id": <GUID>,
    "AssetId": <GUID>,
    "ComponentId": <GUID>,
    "LocationId": <GUID>,
    "SpaceId": <GUID>,
    "CreatedById": <GUID>,
    "DeletedById": <GUID>,
    "ScheduledById": <GUID>,
    "ScheduledDate": <date>,
    "DueDate": <date>,
    "CompletedDate": <datetime>,
    "DeletedDate": <datetime>,
    "Description": <string>,
    "AssignTo": <string>,
    "Severity": <string>,
    "ScheduledNote": <string>,
    "CompleteNote": <string>,
    "DeleteNote": <string>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
    "Tags": <Array>
    [
      <string>,
      ....
    ],
    "AssigneeIds": <Array>
    [
      <GUID>,
      ....
    ],
    "CompletedByIds": <Array>
    [
      <GUID>,
      ....
    ],
    "VendorIds": <Array>
    [
      <GUID>,
      ....
    ],
    "PartUsages": <Array>
    [
      <PartUsageModel>,
      ....
    ]
  }

PartUsageModel Model

  {
    "PartId": <GUID>,
    "AssetId": <GUID>,
    "Quantity": <int>
  }

Task Object Fields

PartUsage Object Fields

PartUsage Object Fields

Return Value

Action Accepted

  Data:
  {
    "ActionType": <string>,
    "Id": <GUID>,
    "ErrorMsgs":
    [
      {
        "Entity": <string>,
        "Message": <string>
      },
      ....
    ]
  }

Action Rejected

  "Data": <Array>

Find Task By Id

URI

api/v1/hsqe/actionitems/FindTaskById

Supported Verbs

Required Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "Description": <string>,
          "SourceType": <string>,
          "AssignTo": <string>,
          "Severity": <string>,
          "Status": <string>,
          "AssetId": <GUID>,
          "Asset": <string>,
          "ComponentId": <GUID>,
          "Component": <string>,
          "LocationId": <GUID>,
          "Location": <string>,
          "SpaceId": <GUID>,
          "Space": <string>,
          "ScheduledDate": <datetime>,
          "DueDate": <datetime>,
          "CreatedById": <GUID>,
          "CreatedBy": <string>,
          "CreatedDate": <datetime>,
          "OpenDate": <datetime>,
          "CompletedBy": <Array>
          [
            {
              "Id": <GUID>,
              "PersonId": <GUID>,
              "Name": <string>,
            },
            ....
          ],
          "CompletedDate": <datetime>,
          "CompleteNote": <string>,
          "DeletedById": <GUID>,
          "DeletedBy": <string>,
          "DeletedDate": <datetime>,
          "DeleteNote": <string>,
          "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
          "Tags": <Array>
          [
            <string>,
            ....
          ],
          "Assignee": <Array>
          [
            {
              "Id": <GUID>,
              "PersonId": <GUID>,
              "Name": <string>,
            },
            ....
          ],
          "Vendors": <Array>
          [
            {
              "Id": <GUID>,
              "VendorId": <GUID>,
              "Name": <string>,
            },
            ....
          ],
          "PartUsages": <Array>
          [
            {
              "Id": <GUID>,
              "PartId": <GUID>,
              "Part": <string>,
              "AssetId": <GUID>,
              "Asset": <string>,
              "Quantity": <int>,
            },
            ....
          ],
          "ScheduledNotes": <Array>
          [
            {
              "Id": <GUID>,
              "Note": <string>,
              "PostedById": <GUID>,
              "PostedBy": <string>,
              "PostedDate": <datetime>,
            },
            ....
          ]    
        },
        ...
      ]
    }
  }

Find Tasks

URI

api/v1/hsqe/actionitems/FindTasks

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "Description": <string>,
          "SourceType": <string>,
          "AssignTo": <string>,
          "Severity": <string>,
          "Status": <string>,
          "AssetId": <GUID>,
          "Asset": <string>,
          "ComponentId": <GUID>,
          "Component": <string>,
          "LocationId": <GUID>,
          "Location": <string>,
          "SpaceId": <GUID>,
          "Space": <string>,
          "ScheduledDate": <datetime>,
          "DueDate": <datetime>,
          "CreatedById": <GUID>,
          "CreatedBy": <string>,
          "CreatedDate": <datetime>,
          "OpenDate": <datetime>,
          "CompletedBy": <Array>
          [
            {
              "Id": <GUID>,
              "PersonId": <GUID>,
              "Name": <string>,
            },
            ....
          ],
          "CompletedDate": <datetime>,
          "CompleteNote": <string>,
          "DeletedById": <GUID>,
          "DeletedBy": <string>,
          "DeletedDate": <datetime>,
          "DeleteNote": <string>,
          "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
          "Tags": <Array>
          [
            <string>,
            ....
          ],
          "Assignee": <Array>
          [
            {
              "Id": <GUID>,
              "PersonId": <GUID>,
              "Name": <string>,
            },
            ....
          ],
          "Vendors": <Array>
          [
            {
              "Id": <GUID>,
              "VendorId": <GUID>,
              "Name": <string>,
            },
            ....
          ],
          "PartUsages": <Array>
          [
            {
              "Id": <GUID>,
              "PartId": <GUID>,
              "Part": <string>,
              "AssetId": <GUID>,
              "Asset": <string>,
              "Quantity": <int>,
            },
            ....
          ],
          "ScheduledNotes": <Array>
          [
            {
              "Id": <GUID>,
              "Note": <string>,
              "PostedById": <GUID>,
              "PostedBy": <string>,
              "PostedDate": <datetime>,
            },
            ....
          ]
        },
        ...
      ]
    }
  }

Tax Types

Create/Update Tax Type

URI

api/v1/jobs/TaxTypes/CreateOrUpdateTaxType

Supported Verbs

Required Parameters

Data Model

Tax Type Model

  {
    "Id": <GUID>,
    "Name": <string>,
    "ExternalSystemCode": <string>,
    "AccountingCode": <string>,
    "UsesExternalSystem": <boolean>
  }

Tax Type Object Fields

Return Value

Action Accepted

  Data:
  {
    "ActionType": <string>,
    "Id": <Guid>,
    "ErrorMsgs": <Array>
    [
      {
        "Entity": <string>,
        "Message": <string>,
        "Details": <string>
      },
      ...
    ]
  }

Action Rejected

  "Data": <Array>

Find Tax Types

URI

api/v1/jobs/TaxTypes/FindTaxTypes

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "Name": <string>,
          "ExternalSystemCode": <string>,
          "AccountingCode": <string>,
          "UsesExternalSystem": <boolean>
        },
        ...
      ]
    }
  }

Action Rejected

  "Data": <Array>

Templates

Frequency Field

Helm CONNECT uses later.js for the Frequency field along with its own custom additions.

later.js Used

Helm CONNECT does not use all of the Time Periods later.js has. Helm CONNECT uses:

Helm CONNECT Custom Additions

A null Frequency field means “On Demand” frequency.

Schedule Effective Date

“Repeats every”

Examples

null

The Template has a “On Demand” frequency; it can be filled out whenever someone wants to.

{
  "schedules": [
    {
      "t": [43200],
      "fd_a": [1609459200000],
      "rr_D": [1]
    }
  ],
  "exceptions": []
}

Repeat daily at 1200 based on the Effective Date starting from 2021-01-01.

{
  "schedules": [
    {
      "t": [0],
      "fd_a": [1609459200000],
      "d": [6]
    }
  ],
  "exceptions": []
}

Repeat weekly on Friday at 0000 starting from 2021-01-01.

{
  "schedules": [
    {
      "fd_a": [1609459200000],
      "rr_W": [3],
      "fd_a_variable": ["LastCompleted"]
    }
  ],
  "exceptions": []
}

Repeat every 3 weeks from the Last Completed Date starting from 2021-01-01.

{
  "schedules": [
    {
      "t": [43200],
      "fd_a": [1609459200000],
      "D": [1, 15]
    }
  ]
}

Repeat monthly on the 1st and 15th day of the month at 1200 starting from 2021-01-01.

{
  "schedules": [
    {
      "t": [28800, 72000],
      "fd_a": [1609459200000],
      "D": [1],
      "M": [1]
    },
    {
      "t": [28800, 72000],
      "fd_a": [1609459200000],
      "D": [15],
      "M": [6]
    }
  ]
}

Repeat yearly on January 1st and June 15th at 0800 and 2000 starting from 2021-01-01.

Form Templates

URI

api/v2/public/FormTemplates

Supported Verbs

Data Models

Transaction Model

    {
        "Id": <GUID>,
        "TemplateId": <GUID>,
        "Name": <string>,
        "Modified": <date>,
        "Frequency": <string>,
        "AssetId": <GUID>,
        "LastCompletedDate": <date>,
        "Spaces": [
          {
            "Id": <GUID>,
            "Name": <string>
          },...
        ],
        "IsCrewChangeTriggered": <boolean>,
        "IsShoreOnly": <boolean>,
        "EventTypeId": <GUID>
    }

Form Template Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Example Usage

// Get a paginated response of all Form Templates
GET api/v2/public/FormTemplates

// Get a specific Form Template by Template Id
GET api/v2/public/FormTemplates?$filter=TemplateId eq guid'2a58a342-cfd7-4e41-8e8d-7a6822f49f3f'

// Get Form Templates with the given Form Template's name
GET api/v2/public/FormTemplates?$filter=Name eq 'Basic Form'

// Get Form Templates with the given Asset Id
GET api/v2/public/FormTemplates?$filter=AssetId eq guid'5958a52f-cdd7-4e01-8e0d-7a6822f49f3e'

// Get all Shore Only Form Templates
GET api/v2/public/FormTemplates?$filter=IsShoreOnly eq true

// Get all Crew Change Triggered Form Templates
GET api/v2/public/FormTemplates?$filter=IsCrewChangeTriggered eq true

// Get Event Triggered Form Templates with the given event type Id
GET api/v2/public/FormTemplates?$filter=EventTypeId eq guid'6158e52f-cdd7-4ee1-8e0d-8a1822f49f2e'

// Get Form Templates with Modified Date greater than 2020-01-01
GET api/v2/public/FormTemplates?$filter=Modified gt datetime'2020-01-01'

Required Parameters

Optional Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the requested Form Templates in the format of the Form Template Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Form Template Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Inspection Templates

URI

api/v2/public/InspectionTemplates

Supported Verbs

Data Models

Transaction Model

    {
        "Id": <GUID>,
        "TemplateId": <GUID>,
        "Name": <string>,
        "Modified": <date>,
        "Frequency": <string>,
        "AssetId": <GUID>,
        "LastCompletedDate": <date>,
        "Spaces": [
          {
            "Id": <GUID>,
            "Name": <string>
          },...
        ],
        "ActivityTypes": [
          {
            "Id": <GUID>,
            "Inclusion": <boolean>
          },...
        ]
    }

Inspection Template Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Example Usage

// Get a paginated response of all Inspection Templates
GET api/v2/public/InspectionTemplates

// Get a specific Inspection Template by Template Id
GET api/v2/public/InspectionTemplates?$filter=TemplateId eq guid'2a58a342-cfd7-4e41-8e8d-7a6822f49f3f'

// Get Inspection Templates with the given Inspection Template's name
GET api/v2/public/InspectionTemplates?$filter=Name eq 'Basic Inspection'

// Get Inspection Templates with the given Asset Id
GET api/v2/public/InspectionTemplates?$filter=AssetId eq guid'5958a52f-cdd7-4e01-8e0d-7a6822f49f3e'

// Get Inspection Templates with Modified Date greater than 2020-01-01
GET api/v2/public/InspectionTemplates?$filter=Modified gt datetime'2020-01-01'

Required Parameters

Optional Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the requested Inspection Templates in the format of the Inspection Template Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Inspection Template Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Inventory Templates

URI

api/v2/public/InventoryTemplates

Supported Verbs

Data Models

Transaction Model

    {
        "Id": <GUID>,
        "TemplateId": <GUID>,
        "Name": <string>,
        "Modified": <date>,
        "Frequency": <string>,
        "AssetId": <GUID>,
        "LastCompletedDate": <date>,
        "Spaces": [
          {
            "Id": <GUID>,
            "Name": <string>
          },...
        ],
    }

Inventory Template Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Example Usage

// Get a paginated response of all Inventory Templates
GET api/v2/public/InventoryTemplates

// Get a specific Inventory Template by Template Id
GET api/v2/public/InventoryTemplates?$filter=TemplateId eq guid'2a58a342-cfd7-4e41-8e8d-7a6822f49f3f'

// Get Inventory Templates with the given Inventory Template's name
GET api/v2/public/InventoryTemplates?$filter=Name eq 'Basic Inventory'

// Get Inventory Templates with the given Asset Id
GET api/v2/public/InventoryTemplates?$filter=AssetId eq guid'5958a52f-cdd7-4e01-8e0d-7a6822f49f3e'

// Get Inventory Templates with Modified Date greater than 2020-01-01
GET api/v2/public/InventoryTemplates?$filter=Modified gt datetime'2020-01-01'

Required Parameters

Optional Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the requested Inventory Templates in the format of the Inventory Template Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Inventory Template Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Maintenance Templates

URI

api/v2/public/MaintenanceTemplates

Supported Verbs

Data Models

Transaction Model

    {
        "Id": <GUID>,
        "TemplateId": <GUID>,
        "Name": <string>,
        "Modified": <date>,
        "Frequency": <string>,
        "AssetId": <GUID>,
        "LastCompletedDate": <date>,
        "Spaces": [
          {
            "Id": <GUID>,
            "Name": <string>
          },...
        ],
        "ComponentId": <GUID>,
        "ActivityTypes": [
          {  
            "Id": <GUID>,
            "Inclusion": <boolean>
          },...
        ],
        "ReadingTypes": [
          {
            "Id": <GUID>,
            "Name": <string>,
            "FrequencyHours": <integer>,
            "EstDailyUsageHours": <integer>
          },...
        ],
        "Offsets": [
          {
            "ReadingTypeId": <GUID>,
            "ReadingTypeName": <string>,
            "OffsetHours": <integer>
          },...
        ]
    }

Maintenance Template Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Example Usage

// Get a paginated response of all Maintenance Templates
GET api/v2/public/MaintenanceTemplates

// Get a specific Maintenance Template by Template Id
GET api/v2/public/MaintenanceTemplates?$filter=TemplateId eq guid'2a58a342-cfd7-4e41-8e8d-7a6822f49f3f'

// Get Maintenance Templates with the given Maintenance Template's name
GET api/v2/public/MaintenanceTemplates?$filter=Name eq 'Basic Maintenance'

// Get Maintenance Templates with the given Asset Id
GET api/v2/public/MaintenanceTemplates?$filter=AssetId eq guid'5958a52f-cdd7-4e01-8e0d-7a6822f49f3e'

// Get Maintenance Templates with the given Component Id
GET api/v2/public/MaintenanceTemplates?$filter=ComponentId eq guid'6354e5bf-c127-3ea1-2e0d-7a38e2fa9f3e'

// Get Maintenance Templates with Modified Date greater than 2020-01-01
GET api/v2/public/MaintenanceTemplates?$filter=Modified gt datetime'2020-01-01'

Required Parameters

Optional Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the requested Maintenance Templates in the format of the Maintenance Template Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Maintenance Template Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Transaction (Jobs)

Transactions

URI

api/v2/public/transactions

Supported Verbs

Data Models

Transaction Model

    {
        "Id": <GUID>,
        "TransactionNumber": <string>,
        "Archived": <date>,
        "TransactionType": {
            "Id": <GUID>,
            "Name": <string>,
            "IsAP": <boolean>,
            "IsAR": <boolean>
        },
        "Division": {
            "Id": <GUID>,
            "Name": <string>,
            "ExternalSystemCode": <string>
        },
        "Area": {
            "Id": <GUID>,
            "Name": <string>,
            "ExternalSystemCode": <string>
        },
        "TransactionDate": <date>,
        "DraftDate": <date>,
        "DueDate": <date>,
        "Approved": <date>,
        "Submitted": <date>,
        "Posted": <date>,
        "IsApproved": <boolean>,
        "IsSubmitted": <boolean>,
        "IsPosted": <boolean>,
        "ExternalTransactionNumber": <string>,
        "FormattedAddress": <string>,
        "BillingEmailAddresses": <string>,
        "CustomerPONumber": <string>,
        "ParentTransaction": {
            "Id": <GUID>,
            "TransactionNumber": <string>,
        },
        "ReversedTransaction": {
            "Id": <GUID>,
            "TransactionNumber": <string>,
        },
        "OriginalTransaction": {
            "Id": <GUID>,
            "TransactionNumber": <string>,
        },
        "Reversed": <boolean>,
        "IsReversal": <boolean>,
        "Account": {
            "Id": <GUID>,
            "AccountNumber": <string>,
            "Name": <string>
        },
        "Company": {
            "Id": <GUID>,
            "Name": <string>,
            "ExternalSystemCode": <string>
        },
        "AccountingTerm": {
            "Id": <GUID>,
            "NumberOfDays": <decimal>,
            "TransactionNumber": <string>,
        },
        "Contract": {
            "Id": <GUID>,
            "Description": <string>,
        },
        "CurrencyType": {
            "Id": <GUID>,
            "Name": <string>,
            "ExternalSystemCode": <string>
        },
        "ExchangeRate": <decimal>,
        "ReversalReason": {
            "Id": <GUID>,
            "Reason": <string>,
        },
        "OrderNumber": <string>,
        "ShipName": <string>,
        "InvoiceTemplate": {
            "Id": <GUID>,
            "Name": <string>
        },
        "IsManual": <boolean>,
        "CreatedByUser": {
            "Id": <GUID>,
            "LoginEmail": <string>
        },
        "ModifiedByUser": {
            "Id": <GUID>,
            "LoginEmail": <string>
        },
        "ApprovedByUser": {
            "Id": <GUID>,
            "LoginEmail": <string>
        },
        "SubmittedByUser": {
            "Id": <GUID>,
            "LoginEmail": <string>
        },
        "BillingInterval": {
            "Id": <GUID>,
            "StartDate": <date>,
            "EndDate": <date>
        },
        "Note": <string>,
        "Modified": <date>,
        "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
        "TransactionNotes": [
            {
                "Id": <GUID>,
                "Message": <string>,
                "MessageDate": <date>
            },
            ...
        ],
        "TransactionLines": [
            {
                "Id": <GUID>,
                "Rate": <decimal>,
                "Quantity": <decimal>,
                "Amount": <decimal>,
                "HeaderDescription": <string>,
                "DetailDescription": <string>,
                "DetailDate": <date>,
                "BillingTypeId": <GUID>,
                "BillingIntervalId": <GUID>,
                "OrderId": <GUID>,
                "TripId": <GUID>,
                "JobId": <GUID>,
                "JobActivityId": <GUID>,
                "EventId": <GUID>,
                "LastModifiedUser": {
                    "Id": <GUID>,
                    "LoginEmail": <string>
                },
                "RevenueAllocations": [
                    {
                        "Id": <GUID>,
                        "ReferenceTransactionLineId": <GUID>,
                        "Debit": <decimal>,
                        "Credit": <decimal>,
                        "DivisionId": <GUID>,
                        "BillingIntervalId": <GUID>,
                        "OrderId": <GUID>,
                        "TripId": <GUID>,
                        "JobId": <GUID>,
                        "JobActivityId": <GUID>,
                        "ShipTypeId": <GUID>,
                        "AccountingCodes": []
                    },
                    ...
                ]
            },
            ...
        ]
    }

Transaction Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Transaction

URI

GET api/v2/public/transactions

or

GET api/v2/public/transactions/{Id}

Example Usage

// Get a paginated response of all transactions
GET api/v2/public/transactions

// Get a specific transaction by Id
GET api/v2/public/transactions/d21d73fb-bb69-11e8-8102-00155d040945

Required Parameters

Optional Parameters

Required Permissions

One or both of the following:

Return Value

Action Accepted

Returns an array containing the requested Transactions in the format of the Transaction Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Transaction Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Create Transaction

URI

POST api/v2/public/transactions

Example Usage

// Create one transaction
POST api/v2/public/transactions
{
    "Division": {
        "Id": "ba9269cd-c860-11e9-9328-d89ef3f189da"
    },
    "TransactionType": {
        "Id": "ba926642-c860-11e9-9328-d89ef3f189da"
    },
    "Account": {
        "Id": "c11fdfa4-c860-11e9-9328-d89ef3f189da"
    },
    "CurrencyType": {
        "Id": "c11fdf29-c860-11e9-9328-d89ef3f189da"
    },
    "InvoiceTemplate": {
        "Id": "ba92665e-c860-11e9-9328-d89ef3f189da"
    },
    "TransactionNotes":
    [
        {
            "Message": "This is a test transaction."    
        }
    ]
    ,
    "TransactionLines": 
    [
        {
            "Rate": 10,
            "Quantity": 20,
            "DetailDescription": "a",
            "DetailDate": "2019-01-01 01:00",
            "BillingTypeId": "C11FDF4D-C860-11E9-9328-D89EF3F189DA"
        }
    ]
    
}

Required Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the created Transactions.

<Array of Transaction Model>

Action Rejected

{
  "Errors": <Array of Error Model>
}

Update Transaction

URIs

Update a Transaction

PATCH api/v2/public/transactions/

or

PATCH api/v2/public/transactions/{Id}

Add a Transaction Note to a Transaction

POST api/v2/public/transactions/{Id}/transactionnotes

Add a Transaction Line to a Transaction

POST api/v2/public/transactions/{Id}/transactionlines

Required Parameters

Required Permissions

Return Value

Action Accepted

Returns an array containing the modified Transactions.

<Array of Transaction Model>

Action Rejected

{
  "Errors": <Array of Error Model>
}

Transaction Metadata

URI

api/v2/public/transactionmetadata

Supported Verbs

Data Models

Transaction Metadata Model

{
    "Id": <GUID>,
    "TransactionNumber": <string>,
    "Modified": <date>,
    "TransactionMetadata": <JSON>
}

Transaction Metadata Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Transaction Metadata

URI

GET api/v2/public/transactionmetadata

Example Usage

GET api/v2/public/transactionmetadata

Required Parameters

Optional Parameters

Return Value

Action Accepted

Returns an array containing the requested Transaction Metadata in the format of the Transaction Metadata Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Transaction Metadata Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Required Permissions

Transaction Charge

URI

api/v2/public/transactioncharge

Supported Verbs

Data Models

Transaction Charge Model

{
    "Id": <GUID>,
    "TransactionNumber": <string>,
    "TransactionLines": [
        {
            "Id": <GUID>,
            "ChargeJson": <JSON>
        }
    ]
}

Transaction Charge Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Transaction Charge Data

URI

GET api/v2/public/transactioncharge

Example Usage

GET api/v2/public/transactioncharge

Required Parameters

Optional Parameters

Return Value

Action Accepted

Returns an array containing the requested Transaction Charge Data in the format of the Transaction Charge Model.

{
    "Page": <integer>,
    "Next": <URI>,
    "Results": <Array of Transaction Charge Model>
}

Action Rejected

{
  "Errors": <Array of Error Model>
}

Required Permissions

Transaction Counts by Division

URI

api/v1/jobs/transactions/TransactionCountsByDivision

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "DivisionCounts": []
    }
  }

With results

  {
    "Data":
    {
      "DivisionCounts": <Array>
      [
        {
          "DivisionId": <GUID>,
          "TransactionCount": <integer>
        }
      ]
    }
  }

Set Posted

URI

api/v1/jobs/Transactions/SetPosted

Supported Verbs

Required Parameters

Data Model

model

  {
    "Assignments": <Array>
    [
      {
        "TransactionId": <GUID>,
        "PostedDate": <date>,
        "ExternalTransactionNumber": <string>
        "ExternalComment": <string>
      },
      ....
    ]
  }
-   TransactionId: A GUID that uniquely identifies the Transaction

-   ExternalTransactionNumber: Optional. The transaction number from the external system. If this property is not set then it means no change should be made to the ExternalTransactionNumber.

-   PostedDate: Optional. A Date value that will be written to the Transaction's Posted field.

-   ExternalComment: Optional. Allows external system to send message back to Helm CONNECT if there is any error or comment related to the transaction. ExternalComment will be saved as an invoice note on the invoice being posted.

Example

  {
    "Assignments":
    [
      {
        "TransactionId": "e0adc10c-e0d6-11e5-829b-b8ca3ad26410",
        "PostedDate": "2016-03-10T12:39:31-08:00"
      },
      {
        "TransactionId": "e0adc10d-e0d6-11e5-829b-b8ca3ad26410",
        "ExternalTransactionNumber": "Transaction # 123",
        "PostedDate": "2016-03-10T12:39:31-08:00"
        "ExternalComment": "Error code: 123"
      },     
      {
        "TransactionId": "5a8fb8ee-91f5-11e9-b64e-24fd52356f6b",
        "ExternalComment": "Error code: 456"
      }
      ....
    ]
  }

Return Value

Details

URI

api/v1/jobs/Transactions/Details

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": [ ]
    }
  }

With Results

  {
    "Data":
    {
      "TotalCount": <integer>,
      "Page": <Array>
      [
        {
          "Id": <GUID>,
          "ParentTransactionId": <GUID>,
          "ReversedTransactionId": <GUID>,
          "OriginalTransactionId": <GUID>,
          "GroupId": <GUID>,
          "TransactionNumber": <string>,
          "OrderNumbers": <string>,          
          "TransactionDate": <date>,
          "DueDate": <date>,
          "DivisionName": <string>,
          "DivisionShortName": <string>,
          "DivisionAccountingCode": <string>,
          "AccountName": <string>,
          "AccountNumber": <string>,
          "CompanyName": <string>,
          "CompanyShortName": <string>,
          "Note": <string>,
          "IsAR": <boolean>,
          "IsAP": <boolean>,
          "IsInvoice": <boolean>,
          "AccountingTerm":
          {
            "Name": <string>,
            "NumberOfDays": <integer>,
            "ExternalSystemCode": <string>
          },
          "Area":
          {
            "Name": <string>,
            "ShortName": <string>,
            "ExternalSystemCode": <string>
          },
          "Order":
          {
              "OrderNumber": <string>,
              "ShipName": <string>,
              "CustomerAccount": <string>,
              "CustomerPONumber": <string>,
              "BillToAddressExternalSystemCode": <string>,
              "VoyageNumber": <string>,
              "AgentAccountName": <string>,
              "AgentAccountNumber": <string>,
              "Trips": <Array>
              [
                {
                  "StartDate": <date>,
                  "EndDate": <date>                        
                }
              ]
          },
          "CurrencyType":
          {
              "Id": <GUID>,
              "Name": <string>,
              "ShortName": <string>,
              "Symbol": <string>,
              "ExternalSystemCode": <string>
          },
          "TransactionType":
          {
              "Id": <GUID>,
              "Name": <string>
          },
          "TransactionLines": <Array>
          [
            {
              "Id": <GUID>,
              "Rate": <decimal>,
              "Quantity": <decimal>,
              "Amount": <decimal>,
              "DetailDescription": <string>,
              "RevenueAllocations": <Array>
              [
                {
                  "Id": <GUID>,
                  "ReferenceTransactionLineId": <GUID>,
                  "Debit": <decimal>,
                  "Credit": <decimal>,
                  "DivisionId": <GUID>,
                  "AccountingCodes": <Array>
                  [
                    {
                      "Id": <GUID>,
                      "AccountingCode": <string>,
                      "EntityName": <string>,
                      "ReferenceType": <string>
                    }
                  ]
                }
              ]   
            }
          ]
        }
      ]
    }
  }

Trip

Create Trip

URI

api/v1/jobs/trips/CreateTrip

Supported Verbs

Required Parameters

Optional Parameters

Data Model

Trip Model

  {
    "Order":
    {
      "Id": <GUID>,
      "OrderNumber": <string>
    },
    "TripType":
    {
      "Id": <GUID>,
      "Name": <string>
    },
    "FromLocation":
    {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "ToLocation":
    {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "Status": <string>,
    "RequestedDate": <date>,
    "StartDate": <date>,
    "EndDate": <date>,
    "IsRequestedDateFirm": <boolean>,
    "EstimatedDuration": <decimal>,
    "NumberRequiredResources": <int>,
    "CancelledDate": <datetime>,
    "IsNoCharge": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
    "Jobs": <Array>
    [
      <JobModel>,
      ....
    ]
  }

Job Model

  {
    "RequiredResourceType":
    {
      "Id": <GUID>,
      "Name": <string>
    },
    "Resource": {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "Acknowledged": <boolean>,
    "RunningTo": <decimal>,
    "StartDate": <date>,
    "EndDate": <date>,
    "PlannedStartDate": <date>,
    "PlannedEndDate": <date>,
    "RunningFrom": <decimal>,
    "CancelledDate": <date>,
    "IsNoCharge": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
  }

Trip Object Fields

Job Object Fields

Return Value

With no results

  {
    "Data":
    {
      "LogMessages": <Array>
      [
        {
          "Message": <string>,
          "Entity": <string>,
          "Details": <string>
        },
        ....
      ]
    }
  }

With results

  {
    "Data":
    {
      "TripId": <GUID>,
      "JobIds": <Array of GUID>,
      "LogMessages": <Array>
      [
        {
          "Message": <string>,
          "Entity": <string>,
          "Details": <string>
        },
        ....
      ]
    }
  }

Update Trip

URI

api/v1/jobs/trips/UpdateTrip

Supported Verbs

Required Parameters

Optional Parameters

Data Model

Trip Model

  {
    "Id": <GUID>,
    "TripType":
    {
      "Id": <GUID>,
      "Name": <string>
    },
    "FromLocation":
    {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "ToLocation":
    {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "Status": <string>,
    "RequestedDate": <date>,
    "StartDate": <date>,
    "EndDate": <date>,
    "IsRequestedDateFirm": <boolean>,
    "EstimatedDuration": <decimal>,
    "NumberRequiredResources": <int>,
    "CancelledDate": <date>,
    "IsNoCharge": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
    "Jobs": <Array>
    [
      <JobModel>,
      ....
    ]
  }

Job Model

  {
    "Id": <GUID>,
    "RequiredResourceType":
    {
      "Id": <GUID>,
      "Name": <string>
    },
    "Resource": {
      "Id": <GUID>,
      "Name": <string>,
      "ExternalSystemCode": <string>
    },
    "Acknowledged": <boolean>,
    "RunningTo": <decimal>,
    "StartDate": <date>,
    "EndDate": <date>,
    "PlannedStartDate": <date>,
    "PlannedEndDate": <date>,
    "RunningFrom": <decimal>,
    "CancelledDate": <date>,
    "IsNoCharge": <boolean>,
    "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
  }

Trip Object Fields

Job Object Fields

Return Value

With no results

  {
    "Data":
    {
      "LogMessages": <Array>
      [
        {
          "Message": <string>,
          "Entity": <string>,
          "Details": <string>
        },
        ....
      ]
    }
  }

With results

  {
    "Data":
    {
      "TripId": <GUID>,
      "JobIds": <Array of GUID>,
      "LogMessages": <Array>
      [
        {
          "Message": <string>,
          "Entity": <string>,
          "Details": <string>
        },
        ....
      ]
    }
  }

Find Trips

URI

api/v1/jobs/trips/FindTrips

Supported Verbs

Required Parameters

Optional Parameters

Return Value

With no results

  {
    "Data":
    {
      "TotalCount": 0,
      "Page": []
    }
  }

With results

  {
  "Data":
  {
    "TotalCount": <integer>,
    "Page": <Array>
    [
      {
        "Id": <GUID>,
        "OrderId": <GUID>,
        "TripNumber": <string>,
        "StartDate": <date>,
        "EndDate": <date>,
        "RequestedDate": <date>,
        "IsRequestedDateFirm": <boolean>,
        "EstimatedDuration": <decimal>,
        "Status": <string>,
        "IsRequest": <boolean>,
        "OriginalTripId": <GUID>,
        "CancelledDate": <datetime>,
        "IsNoCharge": <boolean>,
        "UserDefined": User Defined Data Model (see User Defined Fields section for more details),
        "Triptype":
        {
          "Id": <GUID>,
          "Name": <string>
        },
        "FromLocation":
        {
          "Id": <GUID>,
          "Name": <string>,
          "ExternalSystemCode": <string>
        },
        "ToLocation":
        {
          "Id": <GUID>,
          "Name": <string>,
          "ExternalSystemCode": <string>
        },
        "ContractId": <GUID>,
        "ContractAccount":
        {
          "Id": <GUID>,
          "Name": <string>,
          "AccountNumber": <string>
        },
        "Jobs" : <Array>
        [
          {
            "Id": <GUID>,
            "TripId": <GUID>,
            "JobNumber": <string>,
            "RequiredResourceType":
            {
              "Id": <GUID>,
              "Name": <string>
            },
            "Resource": {
              "Id": <GUID>,
              "Name": <string>,
              "ExternalSystemCode": <string>
            },
            "Acknowledged": <boolean>,
            "RunningTo": <decimal>,
            "RunningFrom": <decimal>,
            "StartDate": <date>,
            "EndDate": <date>,
            "PlannedStartDate": <date>,
            "PlannedEndDate": <date>,
            "CancelledDate": <date>,
            "IsNoCharge": <boolean>,
            "IsRequest": <boolean>
            "UserDefined": User Defined Data Model (see User Defined Fields section for more details)
          },
          ....
        ]
      },
      ....
    ]
  }

Archive Trip

URI

api/v1/jobs/trips/ArchiveTrip

Supported Verbs

Required Parameters

Data Model

Archive Trip Model

  {
    "Id": <Guid>
  }

Archive Trip Object Fields

Return Value

Action Accepted

  {
    "ActionType": "Archive",
    "Id": <GUID>
  }

Action Rejected

  "Data": <Array>

Trip Types

URI

api/v2/public/triptypes

Supported Verbs

Data Models

Trip Type Model

{
    "Id": <GUID>,
    "Name": <string>,
    "AccountingCode": <string>,
    "IsVesselCall": <boolean>,
    "ColorCode": <string>,
    "PrimaryActivityType": {
        "Id": <GUID>,
        "Name": <string>
    }
}

Trip Type Fields

Error Model

{
    "ErrorCode": <integer>,
    "ErrorMessage": <string>
}

Error Model Fields

Find Trip Type

URI

GET api/v2/public/triptypes

or

GET api/v2/public/triptypes/{Id}

Example Usage

// Get a paginated response of all trip types
GET api/v2/public/triptypes

// Get a specific trip type by Id
GET api/v2/public/triptypes/d21d73fb-bb69-11e8-8102-00155d040945

Required Parameters

Optional Parameters

Required Permissions

One or both of the following:


Trip Type Template

URI

api/v2/public/triptypetemplates

Supported Verbs

Data Models

Trip Type Template Model