Windward Managed Entity Solution API

How Does it work


Each vessel entity is linked to a company by different ownership relationships.
Those relationship layers are defined as “roles” which can be classified by 7 different possible parameters:


BENEFICIAL_OWNER - The current/past Beneficial Owner of the vessel. The controlling interest behind the fleet and the ultimate beneficiary from the ownership.

REGISTERED_OWNER - The current/past Registered Owner of the vessel. The legal entity officially listed as the owner of the vessel, holding its title but not necessarily involved in its operations.

COMMERCIAL_MANAGER - The current/past Commercial Manager of the vessel. The company that is responsible for the commercial activities relating to the ship, and the best day to day contact for the ship regarding all commercial matters

OPERATOR - The current/past Operator of the vessel. Commercial Operator is the charterer of the vessel and the direct beneficiary that determines how and where the vessel is utilized.

COMMERCIAL_CONTROLLER - The current/past Commercial Controller Owner of the vessel. The company or disponent owner which has been novated the rights of use (lease) to a vessel by the Operator. These rights are commonly transferred by way of a sublet or period charter.

ISM_MANAGER - The current/past ISM Manager of the vessel. The organization that has taken on the responsibility of the technical management of the ship but also has agreed to take over the duties and responsibilities of the International Safety Management (ISM) Code.

TECHNICAL_MANAGER - The current/past Technical Manager of the vessel. Responsible for the technical operation and technical superintendency of the ship in terms of repairs and maintenance, surveys, drydocking etc.

The API allows retrieval of both current and historical role values (up to 12 months), depending on the query parameters specified in the request. By default, only current values are included in the response payload.

Permissions setup

The Entity management solution is a permission based feature, for which the Ownership service is used as baseline. Additional permissions can be set to enable fragments derived from Duns & Bradstreet, WC1 identifier, company IMO number and sanctions related to both companies and vessels.

Entities Relations


  1. Vessel - Represents a vessel with attributes like name, IMO number, and ownership details.
  2. Company - Represents a company entity with improved fields such as name, identifiers, ownership roles, and associated vessels.
  3. Ownership - Defines all 7 relationship roles between vessels and companies, including the level and type of ownership.
  4. ultimateBeneficialOwners (a.k.a UBO) - An entity that contains the ultimate beneficial owners of the company based on Dun & Bradstreet data. May include multiple owners.
  5. Sanctions - Defines the relationship between vessels and companies to sanctions and watchlists.

Request Sample

The ownership fragment is included in the response of various endpoints. This is just one example showcasing the JSON structure.

query SearchCompaniesByName($searchTerm: String, $limit: PositiveInt, $includeHistorical: Boolean, $roles: [CompanyRole!]) {
  searchCompaniesByName(searchTerm: $searchTerm, limit: $limit) {
    name
    duns
    roles
    ownerships(includeHistorical: $includeHistorical, roles: $roles) {
      vessel {
        name
        imo
        }
        role
        startDate
        endDate
      }
    sanctions {
      comment
      program
      insertDate
      listType
    }
  }
}

Variables

{
  "searchTerm": "Global Tech Marine Services",
  "limit": 1,
  "roles":["MANAGEMENT",
          "TECHNICAL_MANAGER",
          "OPERATOR",
          "BENEFICIAL_OWNER",
          "ISM_MANAGER",
          "COMMERCIAL_CONTROLLER"],
  "includeHistorical": false
}

Response Sample

📘

Payload sample includes 2 fields which are not yet fully exposed for users (worldCheckOneIds, sanctionsForVessel). Some minor variations may be expected until this feature is fully released as GA.

  • An entity may be listed in the payload multiple times with different ownership attributes.
  • Historical records include an “end-date” field, as opposed to current records which only include a start date.
{
  "data": {
    "searchCompaniesByName": [
      {
        "name": "Global Tech Marine Services",
        "duns": null,
        "roles": [
          "MANAGEMENT",
          "TECHNICAL_MANAGER",
          "OPERATOR",
          "BENEFICIAL_OWNER",
          "ISM_MANAGER",
          "COMMERCIAL_CONTROLLER"
        ],
        "ownerships": [
          {
            "vessel": {
              "name": "FORTUNE GALAXY",
              "imo": 9257010
            },
            "role": "ISM_MANAGER",
            "startDate": "2022-01-06",
            "endDate": null
          },
          {
            "vessel": {
              "name": "HYUNDAINERCURY",
              "imo": 9182045
            },
            "role": "TECHNICAL_MANAGER",
            "startDate": "2023-10-22",
            "endDate": null
          },
          {
            "vessel": {
              "name": "MOLECULE",
              "imo": 9209300
            },
            "role": "ISM_MANAGER",
            "startDate": "2021-04-08",
            "endDate": null
          },
          {
            "vessel": {
              "name": "SINCERE 02",
              "imo": 9226011
            },
            "role": "COMMERCIAL_CONTROLLER",
            "startDate": "2023-09-05",
            "endDate": null
          },
          {
            "vessel": {
              "name": "FORTUNE GALAXY",
              "imo": 9257010
            },
            "role": "BENEFICIAL_OWNER",
            "startDate": "2023-11-02",
            "endDate": null
          },
          {
            "vessel": {
              "name": "MOLECULE",
              "imo": 9209300
            },
            "role": "TECHNICAL_MANAGER",
            "startDate": "2021-04-08",
            "endDate": null
          },
          {
            "vessel": {
              "name": "FORTUNE GALAXY",
              "imo": 9257010
            },
            "role": "OPERATOR",
            "startDate": "2022-07-02",
            "endDate": null
          },
          {
            "vessel": {
              "name": "SINCERE 02",
              "imo": 9226011
            },
            "role": "ISM_MANAGER",
            "startDate": "2023-10-22",
            "endDate": null
          },
          {
            "vessel": {
              "name": "FORTUNE GALAXY",
              "imo": 9257010
            },
            "role": "TECHNICAL_MANAGER",
            "startDate": "2022-06-01",
            "endDate": null
          },
          {
            "vessel": {
              "name": "HYUNDAINERCURY",
              "imo": 9182045
            },
            "role": "BENEFICIAL_OWNER",
            "startDate": "2021-08-14",
            "endDate": null
          },
          {
            "vessel": {
              "name": "MOLECULE",
              "imo": 9209300
            },
            "role": "COMMERCIAL_CONTROLLER",
            "startDate": "2023-09-05",
            "endDate": null
          },
          {
            "vessel": {
              "name": "FORTUNE GALAXY",
              "imo": 9257010
            },
            "role": "COMMERCIAL_CONTROLLER",
            "startDate": "2023-09-13",
            "endDate": null
          },
          {
            "vessel": {
              "name": "SINCERE 02",
              "imo": 9226011
            },
            "role": "TECHNICAL_MANAGER",
            "startDate": "2023-10-22",
            "endDate": null
          },
          {
            "vessel": {
              "name": "BRAD",
              "imo": 9166417
            },
            "role": "BENEFICIAL_OWNER",
            "startDate": "2023-11-02",
            "endDate": null
          },
          {
            "vessel": {
              "name": "HYUNDAINERCURY",
              "imo": 9182045
            },
            "role": "ISM_MANAGER",
            "startDate": "2023-10-22",
            "endDate": null
          },
          {
            "vessel": {
              "name": "HYUNDAINERCURY",
              "imo": 9182045
            },
            "role": "OPERATOR",
            "startDate": "2021-05-19",
            "endDate": null
          },
          {
            "vessel": {
              "name": "SINCERE 02",
              "imo": 9226011
            },
            "role": "MANAGEMENT",
            "startDate": "2022-01-26",
            "endDate": null
          },
          {
            "vessel": {
              "name": "BRAD",
              "imo": 9166417
            },
            "role": "MANAGEMENT",
            "startDate": "2021-08-16",
            "endDate": null
          },
          {
            "vessel": {
              "name": "SINCERE 02",
              "imo": 9226011
            },
            "role": "BENEFICIAL_OWNER",
            "startDate": "2024-05-10",
            "endDate": null
          },
          {
            "vessel": {
              "name": "FORTUNE GALAXY",
              "imo": 9257010
            },
            "role": "MANAGEMENT",
            "startDate": "2022-01-06",
            "endDate": null
          },
          {
            "vessel": {
              "name": "MOLECULE",
              "imo": 9209300
            },
            "role": "BENEFICIAL_OWNER",
            "startDate": "2023-11-02",
            "endDate": null
          },
          {
            "vessel": {
              "name": "BRAD",
              "imo": 9166417
            },
            "role": "OPERATOR",
            "startDate": "2021-09-18",
            "endDate": null
          },
          {
            "vessel": {
              "name": "MOLECULE",
              "imo": 9209300
            },
            "role": "MANAGEMENT",
            "startDate": "2021-07-26",
            "endDate": null
          },
          {
            "vessel": {
              "name": "MOLECULE",
              "imo": 9209300
            },
            "role": "OPERATOR",
            "startDate": "2021-08-07",
            "endDate": null
          }
        ],
        "sanctions": [
          {
            "comment": "USA - SDGT - OFAC SDN List - Global Terrorist",
            "program": null,
            "insertDate": "2024-01-01T00:00:00.000Z",
            "listType": "SDGT"
          }
        ]
      }
    ]
  }
}

Field Description


ObjectFieldDescription
Ownershiprole (array)The role the company plays in the vessel’s ownership
startDate (date)effective date of the ownership. In cases where we don't have a start date, the user gets null.
endDate (date)end date of the ownership. In cases of active ownership, the user gets null.
vesselId (string)WW unique identifier of the vessel
Vessel (VesselIntelligence)
Company (Company object)
CompanyId (string)WW Unique identifier of the company.

Ownership Object
role (array): The role the company plays in the vessel’s ownership startDate (date): effective date of the ownership In cases where we don't have a start date, the user gets null. endDate (date): end date of the ownership In cases of active ownership, the user gets null. vesselId (string): WW unique identifier of the vessel. Vessel (VesselIntelligence): Company (Company object): CompanyId (string): WW Unique identifier of the company.

ultimateBeneficialOwners Object
id (string): D&B Unique identifier of the entity. name (string): Name of the entity. countryEnum (array): A country identifier set by D&B. overallOwnershipPercentage (NonNegativeFloat): Sum of the holding of the entity. additionalFields (object): Additional UBO-specific fields.

Sanctions Object
**comment (String) : Description of the record insertDate (DateTime) :Ttimestamp of the effective date listType (String) : Type of the record - sanction/watchlist program (String) : What sanctions program is relevant for the record. risk (int!) - Numeric representation of the risk level 0-3.




.