Download OpenAPI specification:Download
The Maintenance API is an open API covering the Operation & Maintenance area in Equinor.
This document describes the release v1.6.0 for February 2022. We recommend using documentation published at https://equinor.github.io/maintenance-api-docs as it provides the best developer experience. Information on the next release v1.7.0 planned for March 2022 is available at this page.
The API is designed and built according to Equinor's API strategy.
The API is documented in OpenAPI 3.0 format and follows REST principles.
A simple way to test the API is through Postman which is accessible through AccessIT.
The API will use common terminology used across the Oil&Gas industry for the maintenance process. Norsok standard NS-EN 13306 and ISO 14224 are key resource in the naming of resources in the API.
api-version
must be present in all request as part of the query string. Requests without API version will be rejected with a HTTP 404 response code. The latest api-version is v1.
Subscription key must be created from Equinor's API Portal for the consumer application and each request must have the HTTP header Ocp-Apim-Subscription-Key
present with this value.
The Maintenance API will combine information from various business systems in Equinor used in the maintenance area through one common API.
Currently, the majority of endpoints connect to Equinor's ERP system based on SAP.
The API allows you to get mock response for all endpoints if required. This can be useful in special cases. For example if developers from external companies do not have (and should not have) authorization in Equinor's ERP system, they can still interact with the API to see the possibilities.
Add mock-response=true
as a query parmeter to the request and the response will be mock data based on the OpenAPI specification.
Maintenance API can be integrated and provide value in solutions such as web applications, mobile apps, Power Apps, commandline scripts and many more. In order to start using Maintenance API, some setup is required. We strive to keep this to a minimum and will assist developers from IT and the business in the necessary setup.
The standard and prefered scenario for using Maintenance API involves OAuth Authorization Code Flow. Here the client application is configured with permission to call the Maintenance API on behalf of the logged on user in Equinor Azure AD. Interaction with the backend ERP system (such as read a failure report or update a work order) is performed with the logged on user and requires that the logged on user has the necessary authorizations.
The following configuration steps needs to be performed for the initial setup:
Create client app registration in Equinor Azure AD through portal.azure.com for each environment of your solution. This step requires the Application Developer role in Access IT. See Omnia documentation Application Management in AAD for more information. We recommend one client app registration pr client environment such as dev, qa and production.
Create client secrets for your client app registrations
Add an API permission for the app registrations towards the Maintenance API. The following API names are used with application id in parenthesis: Maintenance API Dev (0e595101-1f08-4ce0-8684-148b2e2b8e18), Maintenance API Test (25bb4326-cdc1-4048-8306-29d9fe1102a4), Maintenance API QA (ad711600-154b-4ab0-8945-06cba7f10c4b) and Maintenance API Prod (1aee2186-b5f4-445a-bbf2-d28589ccb59a)
Create a subscription key from Equinor's API Portal. We recommend first creating the subscription key in the API Portal QA environment, before proceeding with the API Portal Production environment
Trigger an authentication request through a http client (such as postman) in order to trigger the consent process of the API permission
Contact us at the #maintenance-api channel on slack or create a Github issue for maintenance-api-docs. We would love to hear how you intend to use the API and to allow us to map the subscription key to an application in our operational logging
We recommend using Postman as a tool for experimenting with the API.
In some scenarios, the standard setup does not cover the requirements and there is a need for system to system communication without user interaction. An example of such a scenario is scheduled background jobs.
For Maintenance API system to system integration requires additional setup both in the ERP system and for the client.
In the ERP system, a role supporting the specific client requirements must be established. In addition, a system user with this role will be need to be created.
The client must use the OAuth 2.0 client credentials flow with certificates. In the client credentials flow, the client application will be registered in Equinor Azure AD as an app registration with a client secret. The client must securely store the client secret. The client must also generate a self-signed client certificate and upload the public key to Equinor Azure AD.
The Maintenance API team will assist in the system to system setup if it's necessary for integration. So contact us at the #maintenance-api channel on slack or create a Github issue for maintenance-api-docs.
Microsoft Power Apps is a low-code platform for implementing business functionality. For more information on the usage of Power Apps in Equinor, see the Microsoft Power Platform group at yammer.
In order to simplify the usage of Maintenance API within Equinor Power Apps, our team maintains a custom connector for the API. The custom connector will be kept up to date with the latest functionality in the API.
We also maintain a proof of concept Power App using the Maintenance API custom connector called "Maintenance API - GP Møte Forberedelser".
The following steps are required in order to add the custom connector to an existing Power Apps project:
Create a subscription key from Equinor's API Portal. We recommend first creating the subscription key in the API Portal QA environment, before proceeding with the API Portal Production environment
Edit the Power App to use. In the data panel, select Add Data, expand connector and add maintenance-api-qa for the QA environment and maintenance-api for the production environment. Power Apps will prompt you to create a connection to the custom connector. For more information see Microsoft documentation Use a custom connector from a Power Apps app
MaintenanceAPI object will now be available from formulas in the Power App. We recommend the results of calls to Maintenance API are stored as a collection. As the last mandatory parameter to all calls, Ocp-Apim-Subscription-Key, use the subscription key from step 1.
Below we have provided some example formulas with Maintenance API which can be used from Power Apps.
ClearCollect(FailureReports, MaintenanceAPI.SearchFailureReports("recent-status-activations",
"<my subscription key>",{'status-id':"CRTE",'plant-id': "1100", 'max-days-since-activation':7}))
ClearCollect(FailureReportSelected, MaintenanceAPI.LookupFailureReport(failureReportId,
"<my subscription key>",{'include-status-details': false,'include-tag-details': false}))
To understand the operations and its parameters available see this documentation.
The resource will be named according to common terminology used across the Oil&Gas industry (for example Norsok standard NS-EN 13306 and ISO 14224).
Example of resources are /work-orders/preventive-work-orders and /plants/{plant-id}/tags .
Resources keys will indicate the resource type as part of the name.
Example: workCenterId
and priorityId
.
If there is a common "supertype resource", the supertype will determine the naming standard of the key.
Example: FailureReports
and ActivityReports
are both a type of MaintenanceRecord
. Therefore, the key for both is recordId
.
Some resources may have multi-line text describing the resource or the contents of it in more detail. This will always have property name text
.
All date and time information are based on UTC (Universal Time Coordinated) and formatted according to RFC3339. This also applies to durations, such as 1 day or 2 hours.
Example values:
2022-08-24T14:15:22Z
2019-08-24
P0Y0M1DT0H0M0S
(one day) and P0Y0M0DT2H0M0S
(two hours)These values are easily compatible with libraries such as moment.js library.
It's worth mentioning that in some special cases for maintenance data outside of Norway, datetimes after timezone conversion is not what the end-users would expect. The reason for this is that users may have entered datetimes in their local timezone into the Equinor ERP system, but the Equinor ERP system is configured to treat the input as if it was in the current Norwegian timezone (UTC+1/UTC+2). This causes a disrepancy in the Equinor ERP system which can not be corrected for in Maintenance API. basicStartDateTime
and basicEndDateTime
for work orders are examples of properties which may have unexpected time conversion.
From some resources there will be a need to provide uri links to other endpoints. This can for example to provide the endpoint for download of a binary attachment from a work order resource it belongs to.
The link will be defined in the data model of the resource and be grouped under the property name _links.
The name of the properties for the _links object will taken from Link relations defined through RFC8288 when possible. Typical link relation names are self
and enclosure
.
The uri will not include query parameters required or supported by the endpoint (such as api-version, include-operations etc). Subscription key header (Ocp-Apim-Subscription-Key
) must also present in the subsequent request.
"attachments": [
{
"attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
"fileName": "equipment_location.jpg",
"fileSize": "1636352",
"mimeType": "image/jpg",
"_links": {
"enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
Lookup operations return a single instance for the resource based on the key.
The resource may have related data which may or may not be relevant for a client. In order to indicate which related data to include, the lookup operation provides include-...
query string boolean options.
Examples: include-operations
and include-tasks
Clients need to retrieve a subset of all resources for an endpoint. Usually, the criteria are non-trivial and in many case are not direct properties of the resource. REST does not provide a well-defined pattern for these types of requests.
Our approach, is to provide predefined filters with parameters. Each filter is documented in the OpenAPI specification.
Examples: maintenance-records/failure-reports/?api-version=v1&filter=recent-status-activation&status-id=RIDO&max-days-since-activation=1
and /maintenance-orders/preventive-work-order/?api-version=v1&filter=same-maintenance-plan&work-order-id=12345678&max=5
Update operations for resources will utilize a sub-set of the JSON Patch proposed standard. JSON Patch is described in RFC 6902 with a user-friendly version at http://jsonpatch.com/.
Our goals with using JSON Patch is to focus on the intent of the update and avoid common pitfalls for the client. The common pitfalls we avoid with JSON Patch are:
Using JSON Patch is straightforward.
application/json-patch+json
. As part of the OpenAPI documentation, we will provide concrete examples for all update operation. In addition, the schema definiton for the request body defines which resource properties can be updated.
Example of JSON Patch request body which replaces the value of the properties title and text:
[
{
"op": "replace",
"path": "/title",
"value": "Material failure"
},
{
"op": "replace",
"path": "/text",
"value": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nMaterial tretthet..\n"
}
]
HTTP response codes will follow established best practice for REST services and will be documented in the OpenAPI specification.
Below is a list of status codes used in the API which the client should handle. Common:
Read - HTTP GET:
Create - HTTP POST:
Create - HTTP PUT
Update - HTTP PATCH:
Delete - HTTP DELETE:
Endpoints that return multiple items will in some cases support pagination. This helps improve performance by only fetching the data which is necessary for the client.
Parameters page
and per-page
are used to define which page is fetched and how many records are returned in the current request. per-page
will typically have a max limit defined in the endpoint's documentation.
The response of a pagination request will include 3 additional HTTP headers:
Total-Count
: Custom HTTP header which shows total number of items found matching the criteria of the request (not just in the page returned)Link
: Pagination data in accordance to RFC 5988. This will include a link for the next, previous, first and last page.Link-Json
: Custom HTTP header for making the information in Total-Count
and Link
accessible in an easy to read JSON formatClients are recommended to use Link-Json
HTTP header to traverse the pages. Example of the data in this HTTP header:
{
"totalCount": 49,
"links": {
"next": "https://api-test.gateway.equinor.com/maintenance-api/equipment?page=3&api-version=v1",
"prev": "https://api-test.gateway.equinor.com/maintenance-api/equipment?page=2&api-version=v1",
"first": "https://api-test.gateway.equinor.com/maintenance-api/equipment?api-version=v1",
"last": "https://api-test.gateway.equinor.com/maintenance-api/equipment?page=4&api-version=v1"
}
}
Note: For some endpoints there is a risk that individual items "disappear" between pages if data is updated in ERP system whilst the pages are requested.
The Maintenance API will use the principles of API evolution instead of introducing a new api-version on every breaking change.
In order to achieve this, endpoints, query parameters and resource properties can become deprecated and will be marked so in the OpenAPI specification.
In general, depcrated properties will be removed after 3 months.
If a client uses a deprecated endpoint or query parameter, the Maintenance API will in the response provide a Sunset HTTP header
Sunset: Sat, 15 May 2021 12:59:59 GMT
representing the removal date for the deprecated feature as specified in RFC8594. In addition, a HTTP header Link: <https://equinor.github.io/maintenance-api-docs/#section/Deprecation>; rel="sunset"
will be provided to pointing to relevant documentation.
Clients must monitor these messages and take corrective actions.
In order to align naming of structured locations within a plant across Equinor systems, Maintenance API is renaming areaId
,area-id
and area
to locationId
,location-id
and location
.
This deprecates the following endpoints:
This deprecates query parameters for the following endpoints:
This deprecates HTTP POST request properties for the following endpoints:
This deprecates properties of the response in the following endpoints:
quantityUnitId
is added to differentiate the field from future requirement where a description of quantityUnit might be added.
This deprecates the response in the following endpoints
Feature requests are welcomed and can be submitted through:
Subscription key created from https://api.equinor.com
Security Scheme Type | API Key |
---|---|
Header parameter name: | ocp-apim-subscription-key |
This endpoint will be de-activated in Production until release 1.7.0. It can still be tested in our QA environment.
Add materials to a work order operation (of any work order type).
The ´operation-id´ parameter to use in the url can be found using the various lookup and search endpoints for work orders. ´operation-id´ consist of two internal ids from the ERP system called routing number and counter separated by the -
character.
There are two types of materials which can be added to work orders:
Requests need to supply either materialId or equipmentId (not both)
operation-id required | string |
Add material details
quantity required | number <double> >= 0 |
quantityUnitId required | string Commonly used values: PC - Pieces L - Liters KG - Kilograms M - Meters |
materialId | string |
equipmentId | string |
requiredDatetime | string <date-time> Nullable Specifies the date and time for when the material is needed at its destination |
[- {
- "equipmentId": "12218664",
- "quantity": 1,
- "quantityUnitId": "PC"
}, - {
- "equipmentId": "12146835",
- "quantity": 1,
- "quantityUnitId": "PC"
}
]
[- {
- "reservationId": "25457443-001",
- "materialId": "741466",
- "material": "LIGHT,FIXTURE,26w,SZ 4155.100,RITTAL",
- "quantity": 1,
- "quantityUnit": "string",
- "quantityUnitId": "string",
- "location": "P10N utenfor lager",
- "holdDeliveryOnshore": true,
- "requiredDatetime": "2019-08-24T14:15:22Z"
}
]
Remove a material from a work order operation (of any work order type).
The ´operation-id´ parameter to use in the url can be found using the various lookup and search endpoints for work orders. ´operation-id´ consist of two internal ids from the ERP system called routing number and counter separated by the -
character.
The ´reservation-id´ parameter to use in the url can be found using the include-materials query parameter to work order lookup.
operation-id required | string |
reservation-id required | string Reservation id for the material found through work order lookup with include-materials |
curl --request DELETE \ --url https://api-test.gateway.equinor.com/maintenance-api/work-order-operations/%7Boperation-id%7D/materials/%7Breservation-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update status of an existing task for failure report.
To find tasks avaliable on a failure report, use the /maintenance-records/failure-reports/{record-id}?include-tasks=true
.
When a task is created, it will have status TSOS - Outstanding task
and CRTE - Created
.
The status TSRL - Task Released
can be set afterwards.
record-id required | string id of the failure report |
task-id required | string id of the task |
status-id required | string id of the status |
Task status to update
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/isActive" Path indicating the property to be impacted by the operation |
required | string or boolean Value to be assigned to a resource property based on the operation and path |
[- {
- "op": "replace",
- "path": "/isActive",
- "value": true
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update status of activity report.
The statuses available for the actiivty report can be found by querying /maintenance-records/activity-reports/{record-id}?include-status-details=true
.
The endpoints supports status activation such as:
If the activity report has a relationship to a Work Order, the status ORAS - Order assigned
will be set automatically on the activity report.
When the activty report is completed, the status NOCO - Notification completed
must be set.
Equinor's governing document GL1561 - Work orders and notifications types provides some additional information.
record-id required | string The recordId of the activity report. |
status-id required | string |
Activity report status to update
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/isActive" Path indicating the property to be impacted by the operation |
required | string or boolean Value to be assigned to a resource property based on the operation and path |
[- {
- "op": "replace",
- "path": "/isActive",
- "value": true
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Upload attachment for technical information update request.
record-id required | string |
files | Array of strings <binary> |
curl --request POST \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/technical-information-update-requests/%7Brecord-id%7D/attachments \ --header 'content-type: multipart/form-data' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update status of an existing task for technical information update request.
To find tasks avaliable on a technical information update request, use the /maintenance-records/technical-information-update-requests/{record-id}?include-tasks=true
.
When a task is created, it will have status TSOS - Outstanding task
and CRTE - Created
.
The status TSRL - Task Released
can be set afterwards.
record-id required | string id of the technical information update request |
task-id required | string id of the task |
status-id required | string id of the status |
Task status to update
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/isActive" Path indicating the property to be impacted by the operation |
required | string or boolean Value to be assigned to a resource property based on the operation and path |
[- {
- "op": "replace",
- "path": "/isActive",
- "value": true
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Remove an operation in a task list of a maintenance plan item.
Note: This action is allowed only for operations that are considered support activities and not operations that constitute concept activities.
The operation belongs to a task list which may be shared with multiple maintenance plan items. Therefore, multiple maintenance plan items may be affected by the change.
Use the HTTP GET endpoint /maintenance-plans?filter=by-task-id&task-id={task-id}&api-version=v1
to view maintenance plans and maintenance plan items affected by this change.
Use the HTTP GET endpoint /maintenance-plans/{plan-id}/items/{item-id}?include-task-list=true
for retrieving current data and necesary ids.
/maintenance-plans/1056916/items/10072940/tasks/T-10012713-1/operations/0010?api-version=v1
plan-id required | string Example: 1056916 The id of the maintenance plan |
item-id required | string Example: 10072940 The id of the maintenance plan item |
task-id required | string Example: T-10012713-1 The id of the task within the maintenance plant item |
operation-id required | string Example: 0020 The id of the operation within the task list |
curl --request DELETE \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-plans/%7Bplan-id%7D/items/%7Bitem-id%7D/tasks/%7Btask-id%7D/operations/%7Boperation-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Lookup a single equipment with related maintenance information.
The endpoint has several include query parameters which allows a client to retrieve only the information which is relevant for their use case.
For warehouse and logistics data of an equipment, use SCM Logistics API.
/equipment/11948620?include-maintenance-records=true&include-maintenance-record-types=failure-report&include-only-open-maintenance-records=true&include-work-orders=true&include-work-order-types=preventiveWorkOrders,subseaWorkOrders&include-only-open-work-orders=true&include-characteritics=true&include-status-details=true&api-version=v1
- Lookup equipment with status details and characteristics. Include open failure reports where the equipment is used as main reference. Include open subsea work orders and open preventive work orders where the equipment is either a material component or the main reference (equipmentId
at work order header level).
include-work-orders
now include work orders where the equipmentId
is the main reference (equipmentId
at work order header level).
Fixed known limitation for include-work-orders
and include-only-open-work-orders=false
.
Bugfix for include-work-orders related to deleted equipment reservations.
Added revisionId and revision to related work orders (represents shutdown or campaign work).
For include-work-orders
, add information on the relationship between the equipment and the work order (for example the id of the reservation)
equipment-id required | string The unique equipmentId in Equinor's system |
include-maintenance-records | boolean Default: true Include maintenance records. If include-maintenance-record-types is not supplied, all support types are returned |
include-maintenance-record-types | Array of strings Items Enum: "modification-proposal" "failure-report" "activity-report" "certification-report" "technical-information-update-request" "technical-clarification" Include which types of maintenance records |
include-only-open-maintenance-records | boolean Default: false Limit include-maintenance-records to only open maintenance records |
include-work-orders | boolean Default: true Include work orders. If include-work-order-types is not supplied, all support types are returned |
include-work-order-types | Array of strings Items Enum: "correctiveWorkOrders" "preventiveWorkOrders" "modificationWorkOrders" "sasChangeWorkOrders" "projectWorkOrders" "subseaWorkOrders" Include which types of work orders. Use comma separated list of entries. |
include-only-open-work-orders | boolean Default: false Limit include-work-orders to only open work order |
include-catalog-profile-details | boolean Default: false Include possible detection methods, failure modes and failure mechanisms |
include-characteristics | boolean Default: false Include equipment characteristics such as 'Kontrollkort gyldig til' and 'Equipment group' |
include-measuring-points | boolean Default: false Include measuring points for this equipment |
include-last-measurement | boolean Default: false Include last measurement for the measuring points (only relevant if include-measuring-points is true) |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/equipment/%7Bequipment-id%7D?include-maintenance-records=SOME_BOOLEAN_VALUE&include-maintenance-record-types=SOME_ARRAY_VALUE&include-only-open-maintenance-records=SOME_BOOLEAN_VALUE&include-work-orders=SOME_BOOLEAN_VALUE&include-work-order-types=SOME_ARRAY_VALUE&include-only-open-work-orders=SOME_BOOLEAN_VALUE&include-catalog-profile-details=SOME_BOOLEAN_VALUE&include-characteristics=SOME_BOOLEAN_VALUE&include-measuring-points=SOME_BOOLEAN_VALUE&include-last-measurement=SOME_BOOLEAN_VALUE&include-status-details=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "activeStatusIds": "OSNO CRTE",
- "maintenanceConceptId": "ST0190",
- "classId": "SUBSEA_POOL",
- "workCenterId": "AKSO",
- "workCenter": "Aker",
- "workCenterPlantId": "1012",
- "planningPlantId": "1012",
- "plannerGroupId": "PL4",
- "plannerGroup": "WOS support Equip",
- "characteristics": [
- {
- "characteristicId": "SP_KONTROLLKORT_GYLDIG_TIL",
- "characteristic": "Kontrollkort gyldig til",
- "valueId": "13.09.2021",
- "value": ""
}
], - "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "maintenanceRecords": {
- "modificationProposals": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "reasonGroupId": "PMB-PRIM",
- "reasonId": "MA70",
- "priorityId": "H",
- "title": "Endre skalering på PDT",
- "isSimpleProposal": false,
- "activeStatusIds": "OSNO CRTE",
- "plannerGroupId": "SPI",
- "plannerGroupPlantId": "1100",
- "plannerGroup": "Anleggsintegritet",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "requiredStartDate": "2019-08-24",
- "requiredEndDate": "2019-08-24",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z"
}
], - "failureReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "requiredEndDate": "2019-08-24",
- "failureImpactId": "D",
- "isBreakdown": false,
- "locationId": "W14",
- "systemId": "11",
- "failureModeId": "STC",
- "failureModeGroupId": "PMMO-080",
- "detectionMethodId": "STC",
- "detectionMethodGroupId": "PMDM-005",
- "failureMechanismId": "2.9",
- "failureMechanismGroupId": "PMMC-010",
- "activeStatusIds": "OSNO CRTE",
- "isOpen": true,
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z",
- "correctiveWorkOrderExist": false,
- "correctiveWorkOrderId": "24871954",
- "failureStartDateTime": "2019-08-24T14:15:22Z",
- "failureEndDateTime": "2019-08-24T14:15:22Z"
}
], - "activityReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "isOpen": true,
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "certificationReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "requiredEndDate": "2019-08-24",
- "failureModeId": "STC",
- "failureMode": "CST Struct. deficiency containment risk",
- "failureModeGroupId": "PMMO-080",
- "failureModeGroup": "ISO Piping",
- "detectionMethodId": "3",
- "detectionMethod": "ISO Inspection",
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "failureMechanismId": "2.9",
- "failureMechanism": "CST Corrosion external",
- "failureMechanismGroupId": "PMMC-010",
- "failureMechanismGroup": "ISO Material failure",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "technicalInformationUpdateRequests": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "hasPersonResponsible": true,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "locationId": "CD2",
- "systemId": "BS",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "self": "/maintenance-records/technical-information-update-requests/46298154?api-version=v1"
}
}
], - "technicalClarifications": [
- {
- "recordId": "45894100",
- "tagId": "D-13L35001A",
- "tagPlantId": "1902",
- "equipmentId": "",
- "title": "Material vurdering FD100 Vanninj service",
- "hasPersonResponsible": true,
- "workCenterId": "SPIMEK",
- "workCenterPlantId": "1901",
- "planningPlantId": "1901",
- "plannerGroupId": "SPIAUT",
- "plannerGroup": "AI Mekanisk",
- "locationId": "DC132",
- "systemId": "13",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDate": "2019-08-24",
- "completedDateTime": "2019-08-24",
- "_links": {
- "self": "/maintenance-records/technical-clarifications/46526114?api-version=v1"
}
}
]
}, - "workOrders": {
- "correctiveWorkOrders": [
- {
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
], - "preventiveWorkOrders": [
- {
- "workOrderId": "24597659",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "plannedDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12"
}
], - "modificationWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "modificationProposalId": "46415269",
- "locationId": "CD17OU",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "006",
- "maintenanceType": "Improvement / minor modificat.",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "sortField": "PRS10239.WP12"
}
], - "sasChangeWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "Z06",
- "maintenanceType": "SAS Change Activity",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "projectWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "isTimeOnlyWorkOrder": false,
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "015",
- "maintenanceType": "Project work",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "subseaWorkOrders": [
- {
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "isObsoleteSubseaWorkOrderType": false,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
]
}, - "catalogProfileDetails": {
- "detectionMethods": [
- {
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "items": [
- {
- "detectionMethodId": "5",
- "detectionMethod": "ISO Continuous condition monitoring"
}
]
}
], - "failureModes": [
- {
- "failureModeGroupId": "PMMO-999",
- "failureModeGroup": "CST General",
- "items": [
- {
- "failureModeId": "ELP",
- "failureMode": "ISO External leakage – process medium"
}
]
}
], - "failureMechanisms": [
- {
- "failureMechanismGroupId": "PMMC-030",
- "failureMechanismGroup": "ISO Miscellaneous",
- "items": [
- {
- "failureMechanismId": "6.2",
- "failureMechanism": "ISO Combined causes"
}
]
}
]
}, - "measuringPoints": [
- {
- "lastMeasurement": {
- "measurementId": "10017608811",
- "measuringPointId": "14626974",
- "measurementDateTime": "2019-08-24T14:15:22Z",
- "measurementTitle": "string",
- "quantitativeReading": 19.2,
- "quantitativeReadingUnitId": "MM",
- "qualitativeCodeGroupId": "OBSMETH",
- "qualitativeCodeId": "UT-I",
- "processingStatusId": "1"
}, - "tagId": "1A1-A16A",
- "tagPlantId": "1111",
- "equipmentId": "12410072",
- "measuringPosition": "P:M03 2\" SV 301",
- "supportsQuantitativeMeasurement": true,
- "quantitativeCharacteristicId": "SM_COATING_CONDITION_ITEM",
- "quantitativeCharacteristicUnit": "mbar",
- "quantitativeCharacteristicUnitId": "MBAR",
- "categoryId": "B",
- "qualitativeCodeGroupId": "OBSMETH",
- "supportsQualitativeMeasurement": true,
- "measuringPointId": "14626974",
- "measuringPoint": "Surface coating condition"
}
], - "serialNumber": "4500695422-20-003",
- "partNumber": "10219863",
- "isInService": true,
- "plantId": "1915",
- "ABCId": "3",
- "ABC": "Crit.=H & Red.=A",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "locationId": "W14",
- "location": "METERING DECK",
- "catalogProfileId": "PM-253",
- "warrantyStartDate": "2019-08-24",
- "warrantyEndDate": "2019-08-24",
- "sortField": "TROLL 01.2017 – 12.2020",
- "equipmentId": "11948620",
- "equipment": "PEDESTAL,TH ISOLAT.SLEEVE,ASSY,10219863",
- "materialId": "854586"
}
Search for equipment and include related maintenance information.
The endpoint has several include query parameters which allows a client to retrieve only the information which is relevant for their use case.
The client must in the request provide at least one of the following search parameters:
equipment-id-any-of
serial-number-any-of
vendor-part-number-any-of
material-id-any-of
These parameters allow a comma-separated list of entries.
If more than one of these parameters are supplied in the same request, the equipment in the response will need to fulfill all parameters (ie. operator AND is used between the parameter).
Query parameters include-only-open-maintenance-records
and include-only-open-work-orders
have a recommended value of true
in order to improve performance (default value false
).
For warehouse and logistics data of an equipment, use SCM Logistics API.
/equipment?serial-number-any-of=4500695422-20-003,4500695422-20-004&include-maintenance-records=true&include-maintenance-record-types=failure-report&include-only-open-maintenance-records=true&include-work-orders=true&include-work-order-types=preventiveWorkOrders,subseaWorkOrders&include-only-open-work-orders=true&include-characteristics=true&api-version=v1
- Search equipment based on serialNumber with characteritics. Include open failure reports where the equipment is used as main reference. Include open subsea work orders and open preventive work orders where the equipment is either a material component or the main reference (equipmentId
at work order header level).
include-work-orders
now include work orders where the equipmentId
is the main reference (equipmentId
at work order header level).
Fixed known limitation for include-work-orders
and include-only-open-work-orders=false
.
Bugfix for include-work-orders related to deleted equipment reservations.
Added revisionId and revision to related work orders (represents shutdown or campaign work).
For include-work-orders
, add information on the relationship between the equipment and the work order (for example the id of the reservation)
equipment-id-any-of | Array of strings Example: equipment-id-any-of=11948620 Search based on equipmentIds. Wildcards are supported |
serial-number-any-of | Array of strings Example: serial-number-any-of=4500695422-20-003 Search based on serialNumber. Wildcards are supported |
vendor-part-number-any-of | Array of strings Example: vendor-part-number-any-of=10219863 Search based on partNumber. Wildcards are supported |
material-id-any-of | Array of strings Example: material-id-any-of=854586 Search based on materialId. Wildcards are supported |
include-maintenance-records | boolean Default: true Include maintenance records. If include-maintenance-record-types is not supplied, all support types are returned |
include-maintenance-record-types | Array of strings Items Enum: "modification-proposal" "failure-report" "activity-report" "certification-report" "technical-information-update-request" "technical-clarification" Include which types of maintenance records |
include-only-open-maintenance-records | boolean Default: false Limit include-maintenance-records to only open maintenance records. Recommend using |
include-work-orders | boolean Default: true Include work orders. If include-work-order-types is not supplied, all support types are returned |
include-work-order-types | Array of strings Items Enum: "correctiveWorkOrders" "preventiveWorkOrders" "modificationWorkOrders" "sasChangeWorkOrders" "projectWorkOrders" "subseaWorkOrders" Include which types of work orders. Use comma separated list of entries. |
include-only-open-work-orders | boolean Default: false Limit include-work-orders to only open work order. Recommend using |
include-characteristics | boolean Default: false Include tag characteristics such as 'Kontrollkort gyldig til' and 'Equipment group' |
per-page | integer Default: 20 Results to return pr page |
page | integer Default: 1 Page to fetch |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/equipment?equipment-id-any-of=SOME_ARRAY_VALUE&serial-number-any-of=SOME_ARRAY_VALUE&vendor-part-number-any-of=SOME_ARRAY_VALUE&material-id-any-of=SOME_ARRAY_VALUE&include-maintenance-records=SOME_BOOLEAN_VALUE&include-maintenance-record-types=SOME_ARRAY_VALUE&include-only-open-maintenance-records=SOME_BOOLEAN_VALUE&include-work-orders=SOME_BOOLEAN_VALUE&include-work-order-types=SOME_ARRAY_VALUE&include-only-open-work-orders=SOME_BOOLEAN_VALUE&include-characteristics=SOME_BOOLEAN_VALUE&per-page=SOME_INTEGER_VALUE&page=SOME_INTEGER_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "characteristics": [
- {
- "characteristicId": "SP_KONTROLLKORT_GYLDIG_TIL",
- "characteristic": "Kontrollkort gyldig til",
- "valueId": "13.09.2021",
- "value": ""
}
], - "maintenanceRecords": {
- "modificationProposals": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "reasonGroupId": "PMB-PRIM",
- "reasonId": "MA70",
- "priorityId": "H",
- "title": "Endre skalering på PDT",
- "isSimpleProposal": false,
- "activeStatusIds": "OSNO CRTE",
- "plannerGroupId": "SPI",
- "plannerGroupPlantId": "1100",
- "plannerGroup": "Anleggsintegritet",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "requiredStartDate": "2019-08-24",
- "requiredEndDate": "2019-08-24",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z"
}
], - "failureReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "requiredEndDate": "2019-08-24",
- "failureImpactId": "D",
- "isBreakdown": false,
- "locationId": "W14",
- "systemId": "11",
- "failureModeId": "STC",
- "failureModeGroupId": "PMMO-080",
- "detectionMethodId": "STC",
- "detectionMethodGroupId": "PMDM-005",
- "failureMechanismId": "2.9",
- "failureMechanismGroupId": "PMMC-010",
- "activeStatusIds": "OSNO CRTE",
- "isOpen": true,
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z",
- "correctiveWorkOrderExist": false,
- "correctiveWorkOrderId": "24871954",
- "failureStartDateTime": "2019-08-24T14:15:22Z",
- "failureEndDateTime": "2019-08-24T14:15:22Z"
}
], - "activityReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "isOpen": true,
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "certificationReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "requiredEndDate": "2019-08-24",
- "failureModeId": "STC",
- "failureMode": "CST Struct. deficiency containment risk",
- "failureModeGroupId": "PMMO-080",
- "failureModeGroup": "ISO Piping",
- "detectionMethodId": "3",
- "detectionMethod": "ISO Inspection",
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "failureMechanismId": "2.9",
- "failureMechanism": "CST Corrosion external",
- "failureMechanismGroupId": "PMMC-010",
- "failureMechanismGroup": "ISO Material failure",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "technicalInformationUpdateRequests": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "hasPersonResponsible": true,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "locationId": "CD2",
- "systemId": "BS",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "self": "/maintenance-records/technical-information-update-requests/46298154?api-version=v1"
}
}
], - "technicalClarifications": [
- {
- "recordId": "45894100",
- "tagId": "D-13L35001A",
- "tagPlantId": "1902",
- "equipmentId": "",
- "title": "Material vurdering FD100 Vanninj service",
- "hasPersonResponsible": true,
- "workCenterId": "SPIMEK",
- "workCenterPlantId": "1901",
- "planningPlantId": "1901",
- "plannerGroupId": "SPIAUT",
- "plannerGroup": "AI Mekanisk",
- "locationId": "DC132",
- "systemId": "13",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDate": "2019-08-24",
- "completedDateTime": "2019-08-24",
- "_links": {
- "self": "/maintenance-records/technical-clarifications/46526114?api-version=v1"
}
}
]
}, - "workOrders": {
- "correctiveWorkOrders": [
- {
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
], - "preventiveWorkOrders": [
- {
- "workOrderId": "24597659",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "plannedDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12"
}
], - "modificationWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "modificationProposalId": "46415269",
- "locationId": "CD17OU",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "006",
- "maintenanceType": "Improvement / minor modificat.",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "sortField": "PRS10239.WP12"
}
], - "sasChangeWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "Z06",
- "maintenanceType": "SAS Change Activity",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "projectWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "isTimeOnlyWorkOrder": false,
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "015",
- "maintenanceType": "Project work",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "subseaWorkOrders": [
- {
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "isObsoleteSubseaWorkOrderType": false,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
]
}, - "serialNumber": "4500695422-20-003",
- "partNumber": "10219863",
- "isInService": true,
- "plantId": "1915",
- "ABCId": "3",
- "ABC": "Crit.=H & Red.=A",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "locationId": "W14",
- "location": "METERING DECK",
- "catalogProfileId": "PM-253",
- "warrantyStartDate": "2019-08-24",
- "warrantyEndDate": "2019-08-24",
- "sortField": "TROLL 01.2017 – 12.2020",
- "equipmentId": "11948620",
- "equipment": "PEDESTAL,TH ISOLAT.SLEEVE,ASSY,10219863",
- "materialId": "854586"
}
]
Lookup a single plant with related information.
Added include-revisions
for reading master data on revisions for the planningPlantId
of the provided plantId
.
plant-id required | string |
include-locations | boolean Default: false Include location for plant |
include-work-centers | boolean Default: false Include work centers for plant |
include-planner-groups | boolean Default: false Include planner groups for plant |
include-tag-catalog-profiles | boolean Default: false Include tag catalog profiles in use for plant |
include-surface-degradation-factors | boolean Default: false Include surface degradations for plant |
include-revisions | boolean Default: false Include revisions for plant |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/plants/%7Bplant-id%7D?include-locations=SOME_BOOLEAN_VALUE&include-work-centers=SOME_BOOLEAN_VALUE&include-planner-groups=SOME_BOOLEAN_VALUE&include-tag-catalog-profiles=SOME_BOOLEAN_VALUE&include-surface-degradation-factors=SOME_BOOLEAN_VALUE&include-revisions=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "locations": [
- {
- "locationId": "MG29",
- "location": "MAIN DECK AFT"
}
], - "workCenters": [
- {
- "workCenterId": "PPMELE",
- "workCenter": "PV Elektro"
}
], - "plannerGroups": [
- {
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV"
}
], - "tagCatalogProfiles": [
- {
- "catalogProfileId": "PM-170",
- "catalogProfile": "SC-Valves",
- "isDefaultProfileForActivityReports": false,
- "isDefaultProfileForFailureReports": false,
- "detectionMethods": [
- {
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "items": [
- {
- "detectionMethodId": "5",
- "detectionMethod": "ISO Continuous condition monitoring"
}
]
}
], - "failureModes": [
- {
- "failureModeGroupId": "PMMO-999",
- "failureModeGroup": "CST General",
- "items": [
- {
- "failureModeId": "ELP",
- "failureMode": "ISO External leakage – process medium"
}
]
}
], - "failureMechanisms": [
- {
- "failureMechanismGroupId": "PMMC-030",
- "failureMechanismGroup": "ISO Miscellaneous",
- "items": [
- {
- "failureMechanismId": "6.2",
- "failureMechanism": "ISO Combined causes"
}
]
}
]
}
], - "surfaceDegradationFactors": [
- {
- "plantId": "1140",
- "tagPrefix": "A4",
- "surface": "PAINTED HANDRAILS",
- "degradationRate1": 0.075,
- "degradationRate2": 0.12,
- "degradationRate3": 0.15
}
], - "revisions": [
- {
- "revisionId": "PS02_21",
- "revision": "Planlagt stans februar 2021",
- "revisionStartDateTime": "2019-08-24T14:15:22Z",
- "revisionEndDateTime": "2019-08-24T14:15:22Z",
- "isCompleted": false
}
], - "plantId": "5033",
- "plant": "Askepott CAT J",
- "planningPlantId": "5033",
- "countryCode": "NO",
- "country": "Norway"
}
Update preventive work order.
Supports:
/plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values)Append to text follows requirement I-103209 - Notation in long text field - Upstream offshore
.
Newest information in text is added above existing information and is automatically signed with date and full name of logged on user.
Added additional properties to update
Adjusted logic for append text to work order. Newest information in text is now added above existing information.
Added possibility for update of sortField and revisionId.
work-order-id required | string |
The information to be updated
op | string Enum: "append" "replace" JSON Patch operation according to RFC6902. Operation Operation |
path | string Enum: "/text" "/workCenterId" "/workCenterPlantId" "/tagId" "/tagPlantId" "/basicStartDateTime" "/basicEndDateTime" "/revisionId" "/sortField" The property to be updated by the non-trivial patch operation.
|
value | string Value to be assigned to a resource property based on the operation and path. |
[- {
- "op": "append",
- "path": "/text",
- "value": "Text to append\nMulti-line"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Activate or deactivate status for Work order.
Overview of how status are used can be found in Equinor's governing document GL1561 - Work orders and notifications types
To identify which status the work order currently has perform a request to: work-orders/preventive-work-orders/{{work-order-id}}?include-status-details=true
The endpoint supports most status activiation such as:
Deactivation is supported in most cases where there is no interdependency between statuses. For status with a statusOrder value, deactivation is not necessary (nor supported) as the business logic will handle the switch.
The following statuses are not supported at the moment and will return a HTTP 405 response:
Support for releasing a work order by setting the REL status.
Support for deactivating TECO status
Support for ActivatedDateTime for TECO status. It is an optional parameter which allows to overwrite the default reference date for TECO. If no value is provided, the value will be set to current timestamp.
work-order-id required | string |
status-id required | string |
Work order status to update
isActive required | boolean |
activatedDateTime | string <date-time> Nullable |
{- "isActive": true
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update corrective work order.
Supports:
/plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values)Append to text follows requirement I-103209 - Notation in long text field - Upstream offshore
.
Newest information in text is added above existing information and is automatically signed with date and full name of logged on user.
Added additional properties to update
Adjusted logic for append text to work order. Newest information in text is now added above existing information.
Added possibility for update of sortField and revisionId.
work-order-id required | string |
The information to be updated
op | string Enum: "append" "replace" JSON Patch operation according to RFC6902. Operation Operation |
path | string Enum: "/text" "/workCenterId" "/workCenterPlantId" "/tagId" "/tagPlantId" "/basicStartDateTime" "/basicEndDateTime" "/revisionId" "/sortField" The property to be updated by the non-trivial patch operation.
|
value | string Value to be assigned to a resource property based on the operation and path. |
[- {
- "op": "append",
- "path": "/text",
- "value": "Text to append\nMulti-line"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Activate or deactivate status for Work order.
Overview of how status are used can be found in Equinor's governing document GL1561 - Work orders and notifications types
To identify which status the work order currently has perform a request to: work-orders/corrective-work-orders/{{work-order-id}}?include-status-details=true
The endpoint supports most status activiation such as:
Deactivation is supported in most cases where there is no interdependency between statuses. For status with a statusOrder value, deactivation is not necessary (nor supported) as the business logic will handle the switch.
The following statuses are not supported at the moment and will return a HTTP 405 response:
Support for releasing a work order by setting the REL status.
Support for complete-outstanding-maintenance-records query parameter for TECO and CLSD statuses.
Support for deactivating TECO status
Support for ActivatedDateTime for TECO status. It is an optional parameter which allows to overwrite the default reference date for TECO. If no value is provided, the value will be set to current timestamp.
Parameter complete-outstanding-maintenance-records set to true will close maintenance records which have a relationship to the work order via the ObjectList
.
work-order-id required | string |
status-id required | string |
complete-outstanding-maintenance-records | boolean Default: true Additional parameter to activation of TECO and CLSD statuses. Determines if related maintenance records should be closed as well. |
Work order status to update
isActive required | boolean |
activatedDateTime | string <date-time> Nullable |
{- "isActive": true
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Create new Corrective Work order based on a supplied failure report.
It's possible to supply operations in the create operation. If no operations are passed, a default operation will be created automatically.
To lookup the created corrective work order use endpoint /work-orders/corrective-work-orders/{work-order-id}
Added externalPartnerWorkOrderId property to be used as reference to work order in external partner system.
Added revisionId and revision to work order response (represents shutdown or campaign work).
Added sortField and revisionId to create request. Use /plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values for revisionId
.
Corrective Work order to create
planningPlantId required | string |
workCenterId required | string |
workCenterPlantId required | string |
title required | string |
plantId required | string |
failureReportId required | string |
externalPartnerWorkOrderId | string Work order id as represented in external partner system |
Array of objects (WorkOrderOperationListCreate) | |
tagId | string |
tagPlantId | string |
plannerGroupId | string |
maintenanceTypeId | string |
basicStartDateTime | string <date-time> |
basicEndDateTime | string <date-time> |
revisionId | string An identifier to the revision (shutdown or campaign work) this work order is related to. Read possible values from |
sortField | string Field used to assist in grouping/sorting Work orders. Unstructured field used non-consistently between plants |
locationId | string Structured location within the plant where the tag is located |
areaId | string Deprecated Deprecated 01.2021 - Use locationId instead |
text | string |
{- "failureReportId": "45836077",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "workCenterId": "CO2PIP",
- "workCenterPlantId": "1100",
- "title": "14xx/Installere flowline CD2",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "plantId": "1100",
- "sortField": "PRS10239.WP12",
- "revisionId": "PV04_21",
- "basicStartDateTime": "2020-11-01T00:00:00Z",
- "basicEndDateTime": "2021-03-01T00:00:00Z",
- "text": "Project for replacing flowing on CD2\n",
- "operations": [
- {
- "operation": "0010",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": "Bygge stillas\n3 x 3 x 5 meter"
}, - {
- "operation": "0020",
- "title": "Bytte del",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": ""
}
]
}
{- "text": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nHvor er utstyret fysisk plassert (legg gjerne med bilde)?\n-\n\nHvordan påvirker feilen utstyrets funksjon? ...\n",
- "workOrderTypeId": "correctiveWorkOrder",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
Update project work order.
Supports:
/plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values) Append to text follows requirement I-103209 - Notation in long text field - Upstream offshore
.
Newest information in text is added above existing information and is automatically signed with date and full name of logged on user.
Added additional properties to update
Adjusted logic for append text to work order. Newest information in text is now added above existing information.
Added possibility for update of sortField and revisionId.
work-order-id required | string |
The information to be updated
op | string Enum: "append" "replace" JSON Patch operation according to RFC6902. Operation Operation |
path | string Enum: "/text" "/workCenterId" "/workCenterPlantId" "/tagId" "/tagPlantId" "/basicStartDateTime" "/basicEndDateTime" "/revisionId" "/sortField" The property to be updated by the non-trivial patch operation.
|
value | string Value to be assigned to a resource property based on the operation and path. |
[- {
- "op": "append",
- "path": "/text",
- "value": "Text to append\nMulti-line"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Activate or deactivate status for Work order
Currently, not all statuses are supported.
The status supported are:
Support for ActivatedDateTime for TECO status. It is an optional parameter which allows to overwrite the default reference date for TECO. If no value is provided, the value will be set to current timestamp.
work-order-id required | string |
status-id required | string |
Work order status to update
isActive required | boolean |
activatedDateTime | string <date-time> Nullable |
{- "isActive": true
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Create new Project Work order
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Fixed bug related to costNetworkId.
Added revisionId and revision to work order response (represents shutdown or campaign work).
Added sortField and revisionId to create request. Use /plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values for revisionId
.
Project Work order to create
planningPlantId required | string |
workCenterId required | string |
workCenterPlantId required | string |
title required | string |
plantId required | string |
locationId required | string Structured location within the plant where the tag is located |
costNetworkId required | string |
costNetworkOperationId required | string |
required | Array of objects (WorkOrderOperationCreate) |
isTimeOnlyWorkOrder | boolean If true, this project work order can only be used for time cost and is represented by a different work order type (PM20) in SAP |
tagId | string |
tagPlantId | string |
plannerGroupId | string |
maintenanceTypeId | string |
basicStartDateTime | string <date-time> |
basicEndDateTime | string <date-time> |
revisionId | string An identifier to the revision (shutdown or campaign work) this work order is related to. Read possible values from |
sortField | string Field used to assist in grouping/sorting Work orders. Unstructured field used non-consistently between plants |
areaId | string Deprecated Deprecated 01.2021 - Use locationId instead |
text | string |
{- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "title": "14xx/Installere flowline CD2",
- "isTimeOnlyWorkOrder": false,
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "plantId": "1100",
- "locationId": "CD2",
- "sortField": "PRS10239.WP12",
- "revisionId": "PV04_21",
- "maintenanceTypeId": "015",
- "basicStartDateTime": "2020-11-01T00:00:00Z",
- "basicEndDateTime": "2021-03-01T00:00:00Z",
- "text": "Project for replacing flowing on CD2\n",
- "operations": [
- {
- "operation": "0010",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": "Bygge stillas\n3 x 3 x 5 meter",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}, - {
- "operation": "0020",
- "title": "Bytte del",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": "",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}
]
}
{- "text": "Beskrivelse av prosjekt modifikasjon\n",
- "workOrderTypeId": "projectWorkOrder",
- "costWBS": "Conc.: Well A10 GL hook-up FL",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "isTimeOnlyWorkOrder": false,
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "015",
- "maintenanceType": "Project work",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
Update modification work order.
Supports:
/plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values)Append to text follows requirement I-103209 - Notation in long text field - Upstream offshore
.
Newest information in text is added above existing information and is automatically signed with date and full name of logged on user.
Added additional properties to update
Adjusted logic for append text to work order. Newest information in text is now added above existing information.
Added possibility for update of sortField and revisionId.
work-order-id required | string |
The information to be updated
op | string Enum: "append" "replace" JSON Patch operation according to RFC6902. Operation Operation |
path | string Enum: "/text" "/workCenterId" "/workCenterPlantId" "/tagId" "/tagPlantId" "/basicStartDateTime" "/basicEndDateTime" "/revisionId" "/sortField" The property to be updated by the non-trivial patch operation.
|
value | string Value to be assigned to a resource property based on the operation and path. |
[- {
- "op": "append",
- "path": "/text",
- "value": "Text to append\nMulti-line"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update SAS Change work order.
Supports:
/plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values)Append to text follows requirement I-103209 - Notation in long text field - Upstream offshore
.
Newest information in text is added above existing information and is automatically signed with date and full name of logged on user.
Added additional properties to update
Adjusted logic for append text to work order. Newest information in text is now added above existing information.
Added possibility for update of sortField and revisionId.
work-order-id required | string |
The information to be updated
op | string Enum: "append" "replace" JSON Patch operation according to RFC6902. Operation Operation |
path | string Enum: "/text" "/workCenterId" "/workCenterPlantId" "/tagId" "/tagPlantId" "/basicStartDateTime" "/basicEndDateTime" "/revisionId" "/sortField" The property to be updated by the non-trivial patch operation.
|
value | string Value to be assigned to a resource property based on the operation and path. |
[- {
- "op": "append",
- "path": "/text",
- "value": "Text to append\nMulti-line"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Activate or deactivate status for Work order
Currently, not all statuses are supported.
The status supported are:
Support for ActivatedDateTime for TECO status. It is an optional parameter which allows to overwrite the default reference date for TECO. If no value is provided, the value will be set to current timestamp.
work-order-id required | string |
status-id required | string |
Work order status to update
isActive required | boolean |
activatedDateTime | string <date-time> Nullable |
{- "isActive": true
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Create new SAS Change Work order
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Added revisionId and revision to work order response (represents shutdown or campaign work).
Added sortField and revisionId to create request. Use /plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values for revisionId
.
SAS Change Work order to create
planningPlantId required | string |
workCenterId required | string |
workCenterPlantId required | string |
title required | string |
plantId required | string |
locationId required | string Structured location within the plant where the tag is located |
required | Array of objects (WorkOrderOperationCreate) |
tagId required | string |
tagPlantId required | string |
costNetworkId | string |
costNetworkOperationId | string |
plannerGroupId | string |
maintenanceTypeId | string |
basicStartDateTime | string <date-time> |
basicEndDateTime | string <date-time> |
revisionId | string An identifier to the revision (shutdown or campaign work) this work order is related to. Read possible values from |
sortField | string Field used to assist in grouping/sorting Work orders. Unstructured field used non-consistently between plants |
areaId | string Deprecated Deprecated 01.2021 - Use locationId instead |
text | string |
{- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "title": "14xx/Installere flowline CD2",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "plantId": "1100",
- "locationId": "CD2",
- "sortField": "PRS10239.WP12",
- "revisionId": "PV04_21",
- "maintenanceTypeId": "015",
- "basicStartDateTime": "2020-11-01T00:00:00Z",
- "basicEndDateTime": "2021-03-01T00:00:00Z",
- "text": "Project for replacing flowing on CD2\n",
- "operations": [
- {
- "operation": "0010",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": "Bygge stillas\n3 x 3 x 5 meter",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}, - {
- "operation": "0020",
- "title": "Bytte del",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": "",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}
]
}
{- "text": "Beskrivelse av prosjekt modifikasjon\n",
- "workOrderTypeId": "sasChangeWorkOrder",
- "costWBS": "Conc.: Well A10 GL hook-up FL",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "Z06",
- "maintenanceType": "SAS Change Activity",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
Lookup a single activity report. The activity report represents work performed for a maintenance activity against a tag or an equipment.
Added createdDateTime
for attachments.
Added 301
response.
Added isOpen
to lookup response.
record-id required | string The recordId of the activity report. |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-activities | boolean Default: false Include detailed information for activities |
include-attachments | boolean Default: false Include attachments |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/activity-reports/%7Brecord-id%7D?include-status-details=SOME_BOOLEAN_VALUE&include-activities=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "activities": [
- {
- "activityId": "12",
- "title": "Lubricated parts",
- "text": "Smørt deler\nStrammet bolter\n",
- "activityCodeId": "A50",
- "activityCode": "Lubrication",
- "activityCodeGroupId": "PM-GENE1",
- "activityCodeGroup": "PM: General Actions (E)",
- "startDateTime": "2019-08-24T14:15:22Z",
- "endDateTime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "text": "Multi-line text based on template",
- "isOpen": true,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
Create new activity report
Equinor governing documents states that activity reports should be created at the lowest possible level in the tag hierachy.
Currently, it's only supported to create failure reports for tags. In the future, support for equipment will be provided.
Added workCenterId, workCenterPlantId to create endpoint.
Added activities to create endpoint.
Added relatedWorkOrder
to create endpoint. This will allow a relationship to be established on creation to either technical feedback or object list of a work order.
Added isOpen
to create endpoint. isOpen set to true enables creation of activity report in status OSNO - Outstanding Notification
. By default isOpen
is set to false, and activity report is created with NOCO - Notification Completed
status.
Activity report to create
title required | string |
text required | string |
tagId | string Required to input either tag or equipment |
tagPlantId | string Required to input either tag or equipment |
equipmentId | string Required to input either tag or equipment |
workCenterId | string If workCenter is not provided, it will use default defined on tag/equipment |
workCenterPlantId | string If workCenter is not provided, it will use default defined on tag/equipment |
isOpen | boolean If isOpen is not provided, it will be set by default to false |
Array of objects (MaintenanceRecordActivityCreate) Activities to add to the activity report on creation | |
object Defines a relationship to a specific part of a work order |
{- "tagId": "PX",
- "tagPlantId": "1100",
- "title": "Skiftet ventiler på bulk system",
- "isOpen": true,
- "text": "Skiftet 5 stk ventiler på bulk system sement og barytt da både vent og\nTrykkside var utvasket, testet alt OK.\n"
}
{- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "text": "Multi-line text based on template",
- "isOpen": true,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
Lookup a single tag with related information
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Added include-measuring-points
and include-last-measurement
query parameters.
Added additional characteristics with ids CRIT_MAIN_FUNCTION and CRIT_SUB_FUNCTION.
Added certification-report, technical-information-update-requests and technical-clarifications for include-maintenance-records
query parameter.
Added include-work-orders
to return work orders where the requested tag is the main reference. include-work-order-types
can be used to limit to certain work order types.
Added isOpen and completedDateTime propertiers for maintenance records if include-maintenance-records
is true.
Fixed bug for include-installed-equipment
.
Added workCenterId
, workCenterPlantId
, workCenter
, planningPlantId
,plannerGroupId
and plannerGroup
properties.
Added include-bill-of-materials
query parameter.
Added revisionId and revision to related work orders (represents shutdown or campaign work).
plant-id required | string |
tag-id required | string |
include-maintenance-records | boolean Default: true Include maintenance records. If include-maintenance-record-types is not supplied, all support types are returned |
include-maintenance-record-types | Array of strings Items Enum: "failure-report" "activity-report" "certification-report" "technical-information-update-request" "technical-clarification" Include which types of maintenance records |
include-work-orders | boolean Default: true Include work orders. If include-work-order-types is not supplied, all support types are returned |
include-work-order-types | Array of strings Items Enum: "correctiveWorkOrders" "preventiveWorkOrders" "modificationWorkOrders" "sasChangeWorkOrders" "projectWorkOrders" "subseaWorkOrders" Include which types of work orders. Use comma separated list of entries. |
include-installed-equipment | boolean Default: false Include installed equipment |
include-catalog-profile-details | boolean Default: false Include possible detection methods, failure modes and failure mechanisms |
include-characteristics | boolean Default: false Include tag characteristics such as 'Function Fail Consequence' and 'Safety Critical Element (SCE)' |
include-maintenance-plan-items | boolean Default: false Include Maintenance Plan items this functional location is part of |
include-measuring-points | boolean Default: false Include measuring points for this tag |
include-last-measurement | boolean Default: false Include last measurement for the measuring points (only relevant if include-measuring-points is true) |
include-bill-of-materials | boolean Default: false Include bill of materials (also known as structure list) for tag and installed equipment |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/plants/%7Bplant-id%7D/tags/%7Btag-id%7D?include-maintenance-records=SOME_BOOLEAN_VALUE&include-maintenance-record-types=SOME_ARRAY_VALUE&include-work-orders=SOME_BOOLEAN_VALUE&include-work-order-types=SOME_ARRAY_VALUE&include-installed-equipment=SOME_BOOLEAN_VALUE&include-catalog-profile-details=SOME_BOOLEAN_VALUE&include-characteristics=SOME_BOOLEAN_VALUE&include-maintenance-plan-items=SOME_BOOLEAN_VALUE&include-measuring-points=SOME_BOOLEAN_VALUE&include-last-measurement=SOME_BOOLEAN_VALUE&include-bill-of-materials=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "maintenanceConceptId": "VA1631",
- "classId": "DG0105",
- "workCenterId": "PPMELE",
- "workCenter": "PV Elektro",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "characteristics": [
- {
- "characteristicId": "HIDDEN_FAILURE",
- "characteristic": "Safety Critical Element (SCE)",
- "valueId": "01",
- "value": "Pressure Safety Valve (PSV)"
}
], - "maintenanceRecords": {
- "failureReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "requiredEndDate": "2019-08-24",
- "failureImpactId": "D",
- "isBreakdown": false,
- "locationId": "W14",
- "systemId": "11",
- "failureModeId": "STC",
- "failureModeGroupId": "PMMO-080",
- "detectionMethodId": "STC",
- "detectionMethodGroupId": "PMDM-005",
- "failureMechanismId": "2.9",
- "failureMechanismGroupId": "PMMC-010",
- "activeStatusIds": "OSNO CRTE",
- "isOpen": true,
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z",
- "correctiveWorkOrderExist": false,
- "correctiveWorkOrderId": "24871954",
- "failureStartDateTime": "2019-08-24T14:15:22Z",
- "failureEndDateTime": "2019-08-24T14:15:22Z"
}
], - "activityReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "isOpen": true,
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "certificationReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "requiredEndDate": "2019-08-24",
- "failureModeId": "STC",
- "failureMode": "CST Struct. deficiency containment risk",
- "failureModeGroupId": "PMMO-080",
- "failureModeGroup": "ISO Piping",
- "detectionMethodId": "3",
- "detectionMethod": "ISO Inspection",
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "failureMechanismId": "2.9",
- "failureMechanism": "CST Corrosion external",
- "failureMechanismGroupId": "PMMC-010",
- "failureMechanismGroup": "ISO Material failure",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "technicalInformationUpdateRequests": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "hasPersonResponsible": true,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "locationId": "CD2",
- "systemId": "BS",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "self": "/maintenance-records/technical-information-update-requests/46298154?api-version=v1"
}
}
], - "technicalClarifications": [
- {
- "recordId": "45894100",
- "tagId": "D-13L35001A",
- "tagPlantId": "1902",
- "equipmentId": "",
- "title": "Material vurdering FD100 Vanninj service",
- "hasPersonResponsible": true,
- "workCenterId": "SPIMEK",
- "workCenterPlantId": "1901",
- "planningPlantId": "1901",
- "plannerGroupId": "SPIAUT",
- "plannerGroup": "AI Mekanisk",
- "locationId": "DC132",
- "systemId": "13",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDate": "2019-08-24",
- "completedDateTime": "2019-08-24",
- "_links": {
- "self": "/maintenance-records/technical-clarifications/46526114?api-version=v1"
}
}
]
}, - "workOrders": {
- "correctiveWorkOrders": [
- {
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
], - "preventiveWorkOrders": [
- {
- "workOrderId": "24597659",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "plannedDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12"
}
], - "modificationWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "modificationProposalId": "46415269",
- "locationId": "CD17OU",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "006",
- "maintenanceType": "Improvement / minor modificat.",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "sortField": "PRS10239.WP12"
}
], - "sasChangeWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "Z06",
- "maintenanceType": "SAS Change Activity",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "projectWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "isTimeOnlyWorkOrder": false,
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "015",
- "maintenanceType": "Project work",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "subseaWorkOrders": [
- {
- "workOrderId": "24597659",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12"
}
]
}, - "installedEquipment": [
- {
- "equipmentId": "12578254",
- "equipment": "CAP 22 OB Protection",
- "catalogProfileId": "PMM-01",
- "serialNumber": "450024-10-001",
- "partNumber": "BB14-NT2012",
- "warrantyStartDate": "2019-08-24",
- "warrantyEndDate": "2019-08-24"
}
], - "maintenancePlanItems": [
- {
- "maintenancePlanItemId": "10072940",
- "maintenancePlanItem": "24M FV-TELE MODULPROGRAM CD2",
- "maintenancePlanId": "1056916",
- "planningPlantId": "1100",
- "mainTagId": "AE5566",
- "mainTagPlantId": "1100",
- "maintenanceActivityTypeId": "002",
- "maintenanceActivityType": "Periodic maintenance"
}
], - "catalogProfileDetails": {
- "detectionMethods": [
- {
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "items": [
- {
- "detectionMethodId": "5",
- "detectionMethod": "ISO Continuous condition monitoring"
}
]
}
], - "failureModes": [
- {
- "failureModeGroupId": "PMMO-999",
- "failureModeGroup": "CST General",
- "items": [
- {
- "failureModeId": "ELP",
- "failureMode": "ISO External leakage – process medium"
}
]
}
], - "failureMechanisms": [
- {
- "failureMechanismGroupId": "PMMC-030",
- "failureMechanismGroup": "ISO Miscellaneous",
- "items": [
- {
- "failureMechanismId": "6.2",
- "failureMechanism": "ISO Combined causes"
}
]
}
]
}, - "measuringPoints": [
- {
- "lastMeasurement": {
- "measurementId": "10017608811",
- "measuringPointId": "14626974",
- "measurementDateTime": "2019-08-24T14:15:22Z",
- "measurementTitle": "string",
- "quantitativeReading": 19.2,
- "quantitativeReadingUnitId": "MM",
- "qualitativeCodeGroupId": "OBSMETH",
- "qualitativeCodeId": "UT-I",
- "processingStatusId": "1"
}, - "tagId": "1A1-A16A",
- "tagPlantId": "1111",
- "equipmentId": "12410072",
- "measuringPosition": "P:M03 2\" SV 301",
- "supportsQuantitativeMeasurement": true,
- "quantitativeCharacteristicId": "SM_COATING_CONDITION_ITEM",
- "quantitativeCharacteristicUnit": "mbar",
- "quantitativeCharacteristicUnitId": "MBAR",
- "categoryId": "B",
- "qualitativeCodeGroupId": "OBSMETH",
- "supportsQualitativeMeasurement": true,
- "measuringPointId": "14626974",
- "measuringPoint": "Surface coating condition"
}
], - "billOfMaterials": [
- {
- "bomItemId": "E-270227-1-2",
- "bomTypeId": "T",
- "materialId": "169170",
- "material": "HEATER,EL,427997,BAC.THU.,IN14 1.0kW230V",
- "quantity": 1,
- "quantityUnitId": "string",
- "parentTagId": "",
- "parentEquipmentId": "",
- "parentBOMItemId": "E-270226-1-1"
}
], - "isInactive": false,
- "parentTagId": "AT5566",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "ABCId": "5",
- "ABC": "Crit.=M & Red.=B",
- "locationId": "W14",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "catalogProfileId": "PM-160",
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}
Get the entire tag hierachy for a plant. For each tag you will be provided with catalog profile and the parent tag.
Limits the response to the sub trees defined by the provided root tags. Parameters:
This returns a significant amount of data as it returns all tags for a plant (which may be up to 250 000).
The data will be cached in the API and renewed on a daily basis.
Added filter-by-root-tags filter.
plant-id required | string |
filter | string Value: "filter-by-root-tags" Filter to limit the tag hierachy by |
root-tags | string Example: root-tags=10A1,10A10,10A11,10A12,10A13 Comma separated list of tags (without tagPlantId prefix) |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/plants/%7Bplant-id%7D/tag-hierachy?filter=SOME_STRING_VALUE&root-tags=10A1%2C10A10%2C10A11%2C10A12%2C10A13' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "tagId": "AE5566",
- "parentTagId": "AT5566",
- "catalogProfileId": "PM-160"
}
]
Lookup a single equipment with related maintenance information.
The endpoint has several include query parameters which allows a client to retrieve only the information which is relevant for their use case.
For warehouse and logistics data of an equipment, use SCM Logistics API.
/equipment/11948620?include-maintenance-records=true&include-maintenance-record-types=failure-report&include-only-open-maintenance-records=true&include-work-orders=true&include-work-order-types=preventiveWorkOrders,subseaWorkOrders&include-only-open-work-orders=true&include-characteritics=true&include-status-details=true&api-version=v1
- Lookup equipment with status details and characteristics. Include open failure reports where the equipment is used as main reference. Include open subsea work orders and open preventive work orders where the equipment is either a material component or the main reference (equipmentId
at work order header level).
include-work-orders
now include work orders where the equipmentId
is the main reference (equipmentId
at work order header level).
Fixed known limitation for include-work-orders
and include-only-open-work-orders=false
.
Bugfix for include-work-orders related to deleted equipment reservations.
Added revisionId and revision to related work orders (represents shutdown or campaign work).
For include-work-orders
, add information on the relationship between the equipment and the work order (for example the id of the reservation)
equipment-id required | string The unique equipmentId in Equinor's system |
include-maintenance-records | boolean Default: true Include maintenance records. If include-maintenance-record-types is not supplied, all support types are returned |
include-maintenance-record-types | Array of strings Items Enum: "modification-proposal" "failure-report" "activity-report" "certification-report" "technical-information-update-request" "technical-clarification" Include which types of maintenance records |
include-only-open-maintenance-records | boolean Default: false Limit include-maintenance-records to only open maintenance records |
include-work-orders | boolean Default: true Include work orders. If include-work-order-types is not supplied, all support types are returned |
include-work-order-types | Array of strings Items Enum: "correctiveWorkOrders" "preventiveWorkOrders" "modificationWorkOrders" "sasChangeWorkOrders" "projectWorkOrders" "subseaWorkOrders" Include which types of work orders. Use comma separated list of entries. |
include-only-open-work-orders | boolean Default: false Limit include-work-orders to only open work order |
include-catalog-profile-details | boolean Default: false Include possible detection methods, failure modes and failure mechanisms |
include-characteristics | boolean Default: false Include equipment characteristics such as 'Kontrollkort gyldig til' and 'Equipment group' |
include-measuring-points | boolean Default: false Include measuring points for this equipment |
include-last-measurement | boolean Default: false Include last measurement for the measuring points (only relevant if include-measuring-points is true) |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/equipment/%7Bequipment-id%7D?include-maintenance-records=SOME_BOOLEAN_VALUE&include-maintenance-record-types=SOME_ARRAY_VALUE&include-only-open-maintenance-records=SOME_BOOLEAN_VALUE&include-work-orders=SOME_BOOLEAN_VALUE&include-work-order-types=SOME_ARRAY_VALUE&include-only-open-work-orders=SOME_BOOLEAN_VALUE&include-catalog-profile-details=SOME_BOOLEAN_VALUE&include-characteristics=SOME_BOOLEAN_VALUE&include-measuring-points=SOME_BOOLEAN_VALUE&include-last-measurement=SOME_BOOLEAN_VALUE&include-status-details=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "activeStatusIds": "OSNO CRTE",
- "maintenanceConceptId": "ST0190",
- "classId": "SUBSEA_POOL",
- "workCenterId": "AKSO",
- "workCenter": "Aker",
- "workCenterPlantId": "1012",
- "planningPlantId": "1012",
- "plannerGroupId": "PL4",
- "plannerGroup": "WOS support Equip",
- "characteristics": [
- {
- "characteristicId": "SP_KONTROLLKORT_GYLDIG_TIL",
- "characteristic": "Kontrollkort gyldig til",
- "valueId": "13.09.2021",
- "value": ""
}
], - "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "maintenanceRecords": {
- "modificationProposals": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "reasonGroupId": "PMB-PRIM",
- "reasonId": "MA70",
- "priorityId": "H",
- "title": "Endre skalering på PDT",
- "isSimpleProposal": false,
- "activeStatusIds": "OSNO CRTE",
- "plannerGroupId": "SPI",
- "plannerGroupPlantId": "1100",
- "plannerGroup": "Anleggsintegritet",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "requiredStartDate": "2019-08-24",
- "requiredEndDate": "2019-08-24",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z"
}
], - "failureReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "requiredEndDate": "2019-08-24",
- "failureImpactId": "D",
- "isBreakdown": false,
- "locationId": "W14",
- "systemId": "11",
- "failureModeId": "STC",
- "failureModeGroupId": "PMMO-080",
- "detectionMethodId": "STC",
- "detectionMethodGroupId": "PMDM-005",
- "failureMechanismId": "2.9",
- "failureMechanismGroupId": "PMMC-010",
- "activeStatusIds": "OSNO CRTE",
- "isOpen": true,
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z",
- "correctiveWorkOrderExist": false,
- "correctiveWorkOrderId": "24871954",
- "failureStartDateTime": "2019-08-24T14:15:22Z",
- "failureEndDateTime": "2019-08-24T14:15:22Z"
}
], - "activityReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "isOpen": true,
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "certificationReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "requiredEndDate": "2019-08-24",
- "failureModeId": "STC",
- "failureMode": "CST Struct. deficiency containment risk",
- "failureModeGroupId": "PMMO-080",
- "failureModeGroup": "ISO Piping",
- "detectionMethodId": "3",
- "detectionMethod": "ISO Inspection",
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "failureMechanismId": "2.9",
- "failureMechanism": "CST Corrosion external",
- "failureMechanismGroupId": "PMMC-010",
- "failureMechanismGroup": "ISO Material failure",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "technicalInformationUpdateRequests": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "hasPersonResponsible": true,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "locationId": "CD2",
- "systemId": "BS",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "self": "/maintenance-records/technical-information-update-requests/46298154?api-version=v1"
}
}
], - "technicalClarifications": [
- {
- "recordId": "45894100",
- "tagId": "D-13L35001A",
- "tagPlantId": "1902",
- "equipmentId": "",
- "title": "Material vurdering FD100 Vanninj service",
- "hasPersonResponsible": true,
- "workCenterId": "SPIMEK",
- "workCenterPlantId": "1901",
- "planningPlantId": "1901",
- "plannerGroupId": "SPIAUT",
- "plannerGroup": "AI Mekanisk",
- "locationId": "DC132",
- "systemId": "13",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDate": "2019-08-24",
- "completedDateTime": "2019-08-24",
- "_links": {
- "self": "/maintenance-records/technical-clarifications/46526114?api-version=v1"
}
}
]
}, - "workOrders": {
- "correctiveWorkOrders": [
- {
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
], - "preventiveWorkOrders": [
- {
- "workOrderId": "24597659",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "plannedDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12"
}
], - "modificationWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "modificationProposalId": "46415269",
- "locationId": "CD17OU",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "006",
- "maintenanceType": "Improvement / minor modificat.",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "sortField": "PRS10239.WP12"
}
], - "sasChangeWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "Z06",
- "maintenanceType": "SAS Change Activity",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "projectWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "isTimeOnlyWorkOrder": false,
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "015",
- "maintenanceType": "Project work",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "subseaWorkOrders": [
- {
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "isObsoleteSubseaWorkOrderType": false,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
]
}, - "catalogProfileDetails": {
- "detectionMethods": [
- {
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "items": [
- {
- "detectionMethodId": "5",
- "detectionMethod": "ISO Continuous condition monitoring"
}
]
}
], - "failureModes": [
- {
- "failureModeGroupId": "PMMO-999",
- "failureModeGroup": "CST General",
- "items": [
- {
- "failureModeId": "ELP",
- "failureMode": "ISO External leakage – process medium"
}
]
}
], - "failureMechanisms": [
- {
- "failureMechanismGroupId": "PMMC-030",
- "failureMechanismGroup": "ISO Miscellaneous",
- "items": [
- {
- "failureMechanismId": "6.2",
- "failureMechanism": "ISO Combined causes"
}
]
}
]
}, - "measuringPoints": [
- {
- "lastMeasurement": {
- "measurementId": "10017608811",
- "measuringPointId": "14626974",
- "measurementDateTime": "2019-08-24T14:15:22Z",
- "measurementTitle": "string",
- "quantitativeReading": 19.2,
- "quantitativeReadingUnitId": "MM",
- "qualitativeCodeGroupId": "OBSMETH",
- "qualitativeCodeId": "UT-I",
- "processingStatusId": "1"
}, - "tagId": "1A1-A16A",
- "tagPlantId": "1111",
- "equipmentId": "12410072",
- "measuringPosition": "P:M03 2\" SV 301",
- "supportsQuantitativeMeasurement": true,
- "quantitativeCharacteristicId": "SM_COATING_CONDITION_ITEM",
- "quantitativeCharacteristicUnit": "mbar",
- "quantitativeCharacteristicUnitId": "MBAR",
- "categoryId": "B",
- "qualitativeCodeGroupId": "OBSMETH",
- "supportsQualitativeMeasurement": true,
- "measuringPointId": "14626974",
- "measuringPoint": "Surface coating condition"
}
], - "serialNumber": "4500695422-20-003",
- "partNumber": "10219863",
- "isInService": true,
- "plantId": "1915",
- "ABCId": "3",
- "ABC": "Crit.=H & Red.=A",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "locationId": "W14",
- "location": "METERING DECK",
- "catalogProfileId": "PM-253",
- "warrantyStartDate": "2019-08-24",
- "warrantyEndDate": "2019-08-24",
- "sortField": "TROLL 01.2017 – 12.2020",
- "equipmentId": "11948620",
- "equipment": "PEDESTAL,TH ISOLAT.SLEEVE,ASSY,10219863",
- "materialId": "854586"
}
Search for equipment and include related maintenance information.
The endpoint has several include query parameters which allows a client to retrieve only the information which is relevant for their use case.
The client must in the request provide at least one of the following search parameters:
equipment-id-any-of
serial-number-any-of
vendor-part-number-any-of
material-id-any-of
These parameters allow a comma-separated list of entries.
If more than one of these parameters are supplied in the same request, the equipment in the response will need to fulfill all parameters (ie. operator AND is used between the parameter).
Query parameters include-only-open-maintenance-records
and include-only-open-work-orders
have a recommended value of true
in order to improve performance (default value false
).
For warehouse and logistics data of an equipment, use SCM Logistics API.
/equipment?serial-number-any-of=4500695422-20-003,4500695422-20-004&include-maintenance-records=true&include-maintenance-record-types=failure-report&include-only-open-maintenance-records=true&include-work-orders=true&include-work-order-types=preventiveWorkOrders,subseaWorkOrders&include-only-open-work-orders=true&include-characteristics=true&api-version=v1
- Search equipment based on serialNumber with characteritics. Include open failure reports where the equipment is used as main reference. Include open subsea work orders and open preventive work orders where the equipment is either a material component or the main reference (equipmentId
at work order header level).
include-work-orders
now include work orders where the equipmentId
is the main reference (equipmentId
at work order header level).
Fixed known limitation for include-work-orders
and include-only-open-work-orders=false
.
Bugfix for include-work-orders related to deleted equipment reservations.
Added revisionId and revision to related work orders (represents shutdown or campaign work).
For include-work-orders
, add information on the relationship between the equipment and the work order (for example the id of the reservation)
equipment-id-any-of | Array of strings Example: equipment-id-any-of=11948620 Search based on equipmentIds. Wildcards are supported |
serial-number-any-of | Array of strings Example: serial-number-any-of=4500695422-20-003 Search based on serialNumber. Wildcards are supported |
vendor-part-number-any-of | Array of strings Example: vendor-part-number-any-of=10219863 Search based on partNumber. Wildcards are supported |
material-id-any-of | Array of strings Example: material-id-any-of=854586 Search based on materialId. Wildcards are supported |
include-maintenance-records | boolean Default: true Include maintenance records. If include-maintenance-record-types is not supplied, all support types are returned |
include-maintenance-record-types | Array of strings Items Enum: "modification-proposal" "failure-report" "activity-report" "certification-report" "technical-information-update-request" "technical-clarification" Include which types of maintenance records |
include-only-open-maintenance-records | boolean Default: false Limit include-maintenance-records to only open maintenance records. Recommend using |
include-work-orders | boolean Default: true Include work orders. If include-work-order-types is not supplied, all support types are returned |
include-work-order-types | Array of strings Items Enum: "correctiveWorkOrders" "preventiveWorkOrders" "modificationWorkOrders" "sasChangeWorkOrders" "projectWorkOrders" "subseaWorkOrders" Include which types of work orders. Use comma separated list of entries. |
include-only-open-work-orders | boolean Default: false Limit include-work-orders to only open work order. Recommend using |
include-characteristics | boolean Default: false Include tag characteristics such as 'Kontrollkort gyldig til' and 'Equipment group' |
per-page | integer Default: 20 Results to return pr page |
page | integer Default: 1 Page to fetch |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/equipment?equipment-id-any-of=SOME_ARRAY_VALUE&serial-number-any-of=SOME_ARRAY_VALUE&vendor-part-number-any-of=SOME_ARRAY_VALUE&material-id-any-of=SOME_ARRAY_VALUE&include-maintenance-records=SOME_BOOLEAN_VALUE&include-maintenance-record-types=SOME_ARRAY_VALUE&include-only-open-maintenance-records=SOME_BOOLEAN_VALUE&include-work-orders=SOME_BOOLEAN_VALUE&include-work-order-types=SOME_ARRAY_VALUE&include-only-open-work-orders=SOME_BOOLEAN_VALUE&include-characteristics=SOME_BOOLEAN_VALUE&per-page=SOME_INTEGER_VALUE&page=SOME_INTEGER_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "characteristics": [
- {
- "characteristicId": "SP_KONTROLLKORT_GYLDIG_TIL",
- "characteristic": "Kontrollkort gyldig til",
- "valueId": "13.09.2021",
- "value": ""
}
], - "maintenanceRecords": {
- "modificationProposals": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "reasonGroupId": "PMB-PRIM",
- "reasonId": "MA70",
- "priorityId": "H",
- "title": "Endre skalering på PDT",
- "isSimpleProposal": false,
- "activeStatusIds": "OSNO CRTE",
- "plannerGroupId": "SPI",
- "plannerGroupPlantId": "1100",
- "plannerGroup": "Anleggsintegritet",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "requiredStartDate": "2019-08-24",
- "requiredEndDate": "2019-08-24",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z"
}
], - "failureReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "requiredEndDate": "2019-08-24",
- "failureImpactId": "D",
- "isBreakdown": false,
- "locationId": "W14",
- "systemId": "11",
- "failureModeId": "STC",
- "failureModeGroupId": "PMMO-080",
- "detectionMethodId": "STC",
- "detectionMethodGroupId": "PMDM-005",
- "failureMechanismId": "2.9",
- "failureMechanismGroupId": "PMMC-010",
- "activeStatusIds": "OSNO CRTE",
- "isOpen": true,
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z",
- "correctiveWorkOrderExist": false,
- "correctiveWorkOrderId": "24871954",
- "failureStartDateTime": "2019-08-24T14:15:22Z",
- "failureEndDateTime": "2019-08-24T14:15:22Z"
}
], - "activityReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "isOpen": true,
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "certificationReports": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "requiredEndDate": "2019-08-24",
- "failureModeId": "STC",
- "failureMode": "CST Struct. deficiency containment risk",
- "failureModeGroupId": "PMMO-080",
- "failureModeGroup": "ISO Piping",
- "detectionMethodId": "3",
- "detectionMethod": "ISO Inspection",
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "failureMechanismId": "2.9",
- "failureMechanism": "CST Corrosion external",
- "failureMechanismGroupId": "PMMC-010",
- "failureMechanismGroup": "ISO Material failure",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "technicalInformationUpdateRequests": [
- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "hasPersonResponsible": true,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "locationId": "CD2",
- "systemId": "BS",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "self": "/maintenance-records/technical-information-update-requests/46298154?api-version=v1"
}
}
], - "technicalClarifications": [
- {
- "recordId": "45894100",
- "tagId": "D-13L35001A",
- "tagPlantId": "1902",
- "equipmentId": "",
- "title": "Material vurdering FD100 Vanninj service",
- "hasPersonResponsible": true,
- "workCenterId": "SPIMEK",
- "workCenterPlantId": "1901",
- "planningPlantId": "1901",
- "plannerGroupId": "SPIAUT",
- "plannerGroup": "AI Mekanisk",
- "locationId": "DC132",
- "systemId": "13",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDate": "2019-08-24",
- "completedDateTime": "2019-08-24",
- "_links": {
- "self": "/maintenance-records/technical-clarifications/46526114?api-version=v1"
}
}
]
}, - "workOrders": {
- "correctiveWorkOrders": [
- {
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
], - "preventiveWorkOrders": [
- {
- "workOrderId": "24597659",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "plannedDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12"
}
], - "modificationWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "modificationProposalId": "46415269",
- "locationId": "CD17OU",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "006",
- "maintenanceType": "Improvement / minor modificat.",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "sortField": "PRS10239.WP12"
}
], - "sasChangeWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "Z06",
- "maintenanceType": "SAS Change Activity",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "projectWorkOrders": [
- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "isTimeOnlyWorkOrder": false,
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "015",
- "maintenanceType": "Project work",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "subseaWorkOrders": [
- {
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "isObsoleteSubseaWorkOrderType": false,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
]
}, - "serialNumber": "4500695422-20-003",
- "partNumber": "10219863",
- "isInService": true,
- "plantId": "1915",
- "ABCId": "3",
- "ABC": "Crit.=H & Red.=A",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "locationId": "W14",
- "location": "METERING DECK",
- "catalogProfileId": "PM-253",
- "warrantyStartDate": "2019-08-24",
- "warrantyEndDate": "2019-08-24",
- "sortField": "TROLL 01.2017 – 12.2020",
- "equipmentId": "11948620",
- "equipment": "PEDESTAL,TH ISOLAT.SLEEVE,ASSY,10219863",
- "materialId": "854586"
}
]
Search tags for a plant based on the first few characters of the tag.
The results include key information for a tag.
Additional information for each tag can be retrieved by using the endpoint /plants/{plant-id}/tags/{tag-id}
.
If there are no tags found for the search, the response will be HTTP 200 with an empty array as content.
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
The value of the tag-prefix parameter should be url-encoded in order to support special characters
/plants/1219/tags?tag-prefix=44&api-version=v1
/plants/1100/tags?tag-prefix=02%22-EC-%202525-M&api-version=v1
plant-id required | string |
tag-prefix required | string >= 2 characters The first few characters of the tag |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/plants/%7Bplant-id%7D/tags?tag-prefix=SOME_STRING_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "isInactive": false,
- "parentTagId": "AT5566",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "ABCId": "5",
- "ABC": "Crit.=M & Red.=B",
- "locationId": "W14",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "catalogProfileId": "PM-160",
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}
]
Provide master data for a plant for example for tags, areas and work centers. This is information is often required as parameters to other endpoints for example when creating a failure report.
Get all catalog profiles used in active tags at a plant.
The catalog profile provides valid values for detection method, failure mode and failure mechanism when creating and updating maintenance-records
such as failure-reports
.
Some tags will not have an assigned catalog profile. For these tags use the catalog profile defined as isDefaultProfileForActivityReports
or isDefaultProfileForFailureReports
when creating and updating maintenance-records
.
plant-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/plants/%7Bplant-id%7D/tag-catalog-profiles \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "catalogProfileId": "PM-170",
- "catalogProfile": "SC-Valves",
- "isDefaultProfileForActivityReports": false,
- "isDefaultProfileForFailureReports": false,
- "detectionMethods": [
- {
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "items": [
- {
- "detectionMethodId": "5",
- "detectionMethod": "ISO Continuous condition monitoring"
}
]
}
], - "failureModes": [
- {
- "failureModeGroupId": "PMMO-999",
- "failureModeGroup": "CST General",
- "items": [
- {
- "failureModeId": "ELP",
- "failureMode": "ISO External leakage – process medium"
}
]
}
], - "failureMechanisms": [
- {
- "failureMechanismGroupId": "PMMC-030",
- "failureMechanismGroup": "ISO Miscellaneous",
- "items": [
- {
- "failureMechanismId": "6.2",
- "failureMechanism": "ISO Combined causes"
}
]
}
]
}
]
Get structured locations within the plant.
locationId
is commonly used as metadata for tags and when creating project-work-orders
.
plant-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/plants/%7Bplant-id%7D/locations \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "locationId": "MG29",
- "location": "MAIN DECK AFT"
}
]
Get areas
Endpoint is deprecated as of 01.2021 in order to align with naming across Equinor system. Use /plants/{plant-id}/locations instead .
plant-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/plants/%7Bplant-id%7D/areas \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "areaId": "MG29",
- "area": "MAIN DECK AFT"
}
]
Get planner groups
plant-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/plants/%7Bplant-id%7D/planner-groups \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV"
}
]
Get Work centers for plant.
plant-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/plants/%7Bplant-id%7D/work-centers \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "workCenterId": "PPMELE",
- "workCenter": "PV Elektro"
}
]
Lookup a single plant with related information.
Added include-revisions
for reading master data on revisions for the planningPlantId
of the provided plantId
.
plant-id required | string |
include-locations | boolean Default: false Include location for plant |
include-work-centers | boolean Default: false Include work centers for plant |
include-planner-groups | boolean Default: false Include planner groups for plant |
include-tag-catalog-profiles | boolean Default: false Include tag catalog profiles in use for plant |
include-surface-degradation-factors | boolean Default: false Include surface degradations for plant |
include-revisions | boolean Default: false Include revisions for plant |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/plants/%7Bplant-id%7D?include-locations=SOME_BOOLEAN_VALUE&include-work-centers=SOME_BOOLEAN_VALUE&include-planner-groups=SOME_BOOLEAN_VALUE&include-tag-catalog-profiles=SOME_BOOLEAN_VALUE&include-surface-degradation-factors=SOME_BOOLEAN_VALUE&include-revisions=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "locations": [
- {
- "locationId": "MG29",
- "location": "MAIN DECK AFT"
}
], - "workCenters": [
- {
- "workCenterId": "PPMELE",
- "workCenter": "PV Elektro"
}
], - "plannerGroups": [
- {
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV"
}
], - "tagCatalogProfiles": [
- {
- "catalogProfileId": "PM-170",
- "catalogProfile": "SC-Valves",
- "isDefaultProfileForActivityReports": false,
- "isDefaultProfileForFailureReports": false,
- "detectionMethods": [
- {
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "items": [
- {
- "detectionMethodId": "5",
- "detectionMethod": "ISO Continuous condition monitoring"
}
]
}
], - "failureModes": [
- {
- "failureModeGroupId": "PMMO-999",
- "failureModeGroup": "CST General",
- "items": [
- {
- "failureModeId": "ELP",
- "failureMode": "ISO External leakage – process medium"
}
]
}
], - "failureMechanisms": [
- {
- "failureMechanismGroupId": "PMMC-030",
- "failureMechanismGroup": "ISO Miscellaneous",
- "items": [
- {
- "failureMechanismId": "6.2",
- "failureMechanism": "ISO Combined causes"
}
]
}
]
}
], - "surfaceDegradationFactors": [
- {
- "plantId": "1140",
- "tagPrefix": "A4",
- "surface": "PAINTED HANDRAILS",
- "degradationRate1": 0.075,
- "degradationRate2": 0.12,
- "degradationRate3": 0.15
}
], - "revisions": [
- {
- "revisionId": "PS02_21",
- "revision": "Planlagt stans februar 2021",
- "revisionStartDateTime": "2019-08-24T14:15:22Z",
- "revisionEndDateTime": "2019-08-24T14:15:22Z",
- "isCompleted": false
}
], - "plantId": "5033",
- "plant": "Askepott CAT J",
- "planningPlantId": "5033",
- "countryCode": "NO",
- "country": "Norway"
}
Search for plants through predefined filters.
Search plant based on one or more plant-id
Parameters:
Search plant based on one or more planning-plant-id
Parameters:
filter required | string Enum: "by-plant" "by-planning-plant" Filter to limit plants by |
plant-id | string Example: plant-id=5033,1201 Plant identifier |
planning-plant-id | string Example: planning-plant-id=1901,1100 Plant used to plan the maintenance work. Usually same as |
include-locations | boolean Default: false Include location for plant |
include-work-centers | boolean Default: false Include work centers for plant |
include-planner-groups | boolean Default: false Include planner groups for plant |
include-tag-catalog-profiles | boolean Default: false Include tag catalog profiles in use for plant |
include-surface-degradation-factors | boolean Default: false Include surface degradations for plant |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/plants?filter=SOME_STRING_VALUE&plant-id=5033%2C1201&planning-plant-id=1901%2C1100&include-locations=SOME_BOOLEAN_VALUE&include-work-centers=SOME_BOOLEAN_VALUE&include-planner-groups=SOME_BOOLEAN_VALUE&include-tag-catalog-profiles=SOME_BOOLEAN_VALUE&include-surface-degradation-factors=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "locations": [
- {
- "locationId": "MG29",
- "location": "MAIN DECK AFT"
}
], - "workCenters": [
- {
- "workCenterId": "PPMELE",
- "workCenter": "PV Elektro"
}
], - "plannerGroups": [
- {
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV"
}
], - "tagCatalogProfiles": [
- {
- "catalogProfileId": "PM-170",
- "catalogProfile": "SC-Valves",
- "isDefaultProfileForActivityReports": false,
- "isDefaultProfileForFailureReports": false,
- "detectionMethods": [
- {
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "items": [
- {
- "detectionMethodId": "5",
- "detectionMethod": "ISO Continuous condition monitoring"
}
]
}
], - "failureModes": [
- {
- "failureModeGroupId": "PMMO-999",
- "failureModeGroup": "CST General",
- "items": [
- {
- "failureModeId": "ELP",
- "failureMode": "ISO External leakage – process medium"
}
]
}
], - "failureMechanisms": [
- {
- "failureMechanismGroupId": "PMMC-030",
- "failureMechanismGroup": "ISO Miscellaneous",
- "items": [
- {
- "failureMechanismId": "6.2",
- "failureMechanism": "ISO Combined causes"
}
]
}
]
}
], - "surfaceDegradationFactors": [
- {
- "plantId": "1140",
- "tagPrefix": "A4",
- "surface": "PAINTED HANDRAILS",
- "degradationRate1": 0.075,
- "degradationRate2": 0.12,
- "degradationRate3": 0.15
}
], - "revisions": [
- {
- "revisionId": "PS02_21",
- "revision": "Planlagt stans februar 2021",
- "revisionStartDateTime": "2019-08-24T14:15:22Z",
- "revisionEndDateTime": "2019-08-24T14:15:22Z",
- "isCompleted": false
}
], - "plantId": "5033",
- "plant": "Askepott CAT J",
- "planningPlantId": "5033",
- "countryCode": "NO",
- "country": "Norway"
}
]
Get the surface degradation factors defined for a plant. This information can be used to understand how paint degrades over time.
plant-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/plants/%7Bplant-id%7D/surface-degradation-factors \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "plantId": "1140",
- "tagPrefix": "A4",
- "surface": "PAINTED HANDRAILS",
- "degradationRate1": 0.075,
- "degradationRate2": 0.12,
- "degradationRate3": 0.15
}
]
Lookup a single activity report. The activity report represents work performed for a maintenance activity against a tag or an equipment.
Added createdDateTime
for attachments.
Added 301
response.
Added isOpen
to lookup response.
record-id required | string The recordId of the activity report. |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-activities | boolean Default: false Include detailed information for activities |
include-attachments | boolean Default: false Include attachments |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/activity-reports/%7Brecord-id%7D?include-status-details=SOME_BOOLEAN_VALUE&include-activities=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "activities": [
- {
- "activityId": "12",
- "title": "Lubricated parts",
- "text": "Smørt deler\nStrammet bolter\n",
- "activityCodeId": "A50",
- "activityCode": "Lubrication",
- "activityCodeGroupId": "PM-GENE1",
- "activityCodeGroup": "PM: General Actions (E)",
- "startDateTime": "2019-08-24T14:15:22Z",
- "endDateTime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "text": "Multi-line text based on template",
- "isOpen": true,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
Create new activity report
Equinor governing documents states that activity reports should be created at the lowest possible level in the tag hierachy.
Currently, it's only supported to create failure reports for tags. In the future, support for equipment will be provided.
Added workCenterId, workCenterPlantId to create endpoint.
Added activities to create endpoint.
Added relatedWorkOrder
to create endpoint. This will allow a relationship to be established on creation to either technical feedback or object list of a work order.
Added isOpen
to create endpoint. isOpen set to true enables creation of activity report in status OSNO - Outstanding Notification
. By default isOpen
is set to false, and activity report is created with NOCO - Notification Completed
status.
Activity report to create
title required | string |
text required | string |
tagId | string Required to input either tag or equipment |
tagPlantId | string Required to input either tag or equipment |
equipmentId | string Required to input either tag or equipment |
workCenterId | string If workCenter is not provided, it will use default defined on tag/equipment |
workCenterPlantId | string If workCenter is not provided, it will use default defined on tag/equipment |
isOpen | boolean If isOpen is not provided, it will be set by default to false |
Array of objects (MaintenanceRecordActivityCreate) Activities to add to the activity report on creation | |
object Defines a relationship to a specific part of a work order |
{- "tagId": "PX",
- "tagPlantId": "1100",
- "title": "Skiftet ventiler på bulk system",
- "isOpen": true,
- "text": "Skiftet 5 stk ventiler på bulk system sement og barytt da både vent og\nTrykkside var utvasket, testet alt OK.\n"
}
{- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "text": "Multi-line text based on template",
- "isOpen": true,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
Update status of activity report.
The statuses available for the actiivty report can be found by querying /maintenance-records/activity-reports/{record-id}?include-status-details=true
.
The endpoints supports status activation such as:
If the activity report has a relationship to a Work Order, the status ORAS - Order assigned
will be set automatically on the activity report.
When the activty report is completed, the status NOCO - Notification completed
must be set.
Equinor's governing document GL1561 - Work orders and notifications types provides some additional information.
record-id required | string The recordId of the activity report. |
status-id required | string |
Activity report status to update
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/isActive" Path indicating the property to be impacted by the operation |
required | string or boolean Value to be assigned to a resource property based on the operation and path |
[- {
- "op": "replace",
- "path": "/isActive",
- "value": true
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Add activities for activity report.
To find possible activityCodeGroupId and activityCodeId use the /maintenance-records/activity-codes?maintenance-record-id=...
.
record-id required | string id of the activity report |
Activities to add to existing activity report
title required | string |
text | string |
activityCodeId | string |
activityCodeGroupId | string |
startDateTime | string <date-time> |
endDateTime | string <date-time> |
[- {
- "title": "Smøring av deler",
- "text": " Smør deler\n Stram bolter",
- "activityCodeId": "A50",
- "activityCodeGroupId": "PM-GENE1",
- "startDateTime": "2020-11-01T00:00:00Z",
- "endDateTime": "2020-11-14T00:00:00Z"
}, - {
- "title": "Rengjøring",
- "activityCodeId": "A40",
- "activityCodeGroupId": "PM-GENE1",
- "startDateTime": "2020-11-11T12:00:00Z",
- "endDateTime": "2020-11-11T16:00:00Z"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update existing activity for activity report
To find possible activityCodeGroupId and activityCodeId use the /maintenance-records/activity-codes?maintenance-record-id=...
.
record-id required | string id of the actuvity report |
activity-id required | string id of the activity |
Activities to add to existing failure report
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Enum: "/title" "/text" "/activityCodeId" "/activityCodeGroupId" "/startDateTime" "/endDateTime" Path indicating the property to be impacted by the operation |
value required | string Value to be assigned to a resource property based on the operation and path
|
[- {
- "op": "replace",
- "path": "/title",
- "value": "Smøring av deler"
}, - {
- "op": "replace",
- "path": "/text",
- "value": "Smør deler\\n Stram bolter"
}, - {
- "op": "replace",
- "path": "/activityCodeGroupId",
- "value": "PM-GENE1"
}, - {
- "op": "replace",
- "path": "/activityCodeId",
- "value": "A50"
}, - {
- "op": "replace",
- "path": "/startDateTime",
- "value": "2020-11-11T12:00:00Z"
}, - {
- "op": "replace",
- "path": "/endDateTime",
- "value": "2020-11-11T16:00:00Z"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Download single attachment for activity report
record-id required | string |
attachment-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/activity-reports/%7Brecord-id%7D/attachments/%7Battachment-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Upload attachment for activity report
record-id required | string |
files | Array of strings <binary> |
curl --request POST \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/activity-reports/%7Brecord-id%7D/attachments \ --header 'content-type: multipart/form-data' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Used when an equipment fault/degradation is detected or when there is need for work that is not related to equipment fault.
Lookup a single failure report
Added failureMechanismId,failureMechanismGroupId to additionalMetadata.
Added tasks for failure reports through query option include-tasks. Added properties plannerGroupId, plannerGroup and planningPlantId.
Added isOpen and completedDateTime.
Added hasUnsafeFailureMode and unsafeFailureModeStatus properties according to business process requirement R-12137 - Give immediate warning of unsafe failure modes
.
Added priorityId
to response.
Added workCenter
and equipment
to response. Fields include descriptions of workCenterId and equipmentId
Added createdDateTime for attachments.
Added 301
response.
record-id required | string The recordId of the failure report. |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-tag-details | boolean Default: false Include details about tag for failure report |
include-activities | boolean Default: false Include detailed information for activities |
include-tasks | boolean Default: false Include detailed information for tasks |
include-attachments | boolean Default: false Include attachments |
include-additional-metadata | boolean Default: false Include extra metadata related to additional failure modes and detection modes. This is only used in rare cases |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/failure-reports/%7Brecord-id%7D?include-status-details=SOME_BOOLEAN_VALUE&include-tag-details=SOME_BOOLEAN_VALUE&include-activities=SOME_BOOLEAN_VALUE&include-tasks=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE&include-additional-metadata=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "activities": [
- {
- "activityId": "12",
- "title": "Lubricated parts",
- "text": "Smørt deler\nStrammet bolter\n",
- "activityCodeId": "A50",
- "activityCode": "Lubrication",
- "activityCodeGroupId": "PM-GENE1",
- "activityCodeGroup": "PM: General Actions (E)",
- "startDateTime": "2019-08-24T14:15:22Z",
- "endDateTime": "2019-08-24T14:15:22Z"
}
], - "tasks": [
- {
- "taskId": "12",
- "sortField": "01",
- "title": "Teknisk avklaringsbehov",
- "text": "Behov for å identifisere historikk ifra AO\n",
- "activeStatusIds": "TSRL CRTE",
- "isCompleted": false,
- "taskCodeId": "1020",
- "taskCode": "Technical clarification needed",
- "taskCodeGroupId": "PM-M2",
- "taskCodeGroup": "M2 Notification Tasks",
- "taskResponsibleType": "",
- "taskResponsibleId": "433937",
- "plannedStartDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "tagDetails": {
- "isInactive": false,
- "parentTagId": "AT5566",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "ABCId": "5",
- "ABC": "Crit.=M & Red.=B",
- "locationId": "W14",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "catalogProfileId": "PM-160",
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}, - "additionalMetadata": [
- {
- "metadataId": "2",
- "title": "NES additional info",
- "failureModeId": "STC",
- "failureModeGroupId": "PMMO-080",
- "detectionMethodId": "STC",
- "detectionMethodGroupId": "PMDM-005",
- "failureMechanismId": "2.9",
- "failureMechanismGroupId": "PMMC-010"
}
], - "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "equipment": "Strainer at inlet Recirc Pmp",
- "title": "Endre skalering på PDT",
- "text": "Multi-line text based on template",
- "workCenterId": "SPIAUT",
- "workCenter": "AI Automasjon",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "systemId": "11",
- "failureImpactId": "D",
- "failureImpact": "Unwell (InF)",
- "priorityId": "D",
- "isBreakdown": false,
- "hasUnsafeFailureMode": false,
- "unsafeFailureModeStatus": "OUTSTANDING",
- "requiredEndDate": "2019-08-24",
- "failureModeId": "STC",
- "failureMode": "CST Struct. deficiency containment risk",
- "failureModeGroupId": "PMMO-080",
- "failureModeGroup": "ISO Piping",
- "detectionMethodId": "3",
- "detectionMethod": "ISO Inspection",
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "failureMechanismId": "2.9",
- "failureMechanism": "CST Corrosion external",
- "failureMechanismGroupId": "PMMC-010",
- "failureMechanismGroup": "ISO Material failure",
- "correctiveWorkOrderExist": false,
- "correctiveWorkOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "isOpen": true,
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z",
- "failureStartDateTime": "2019-08-24T14:15:22Z",
- "failureEndDateTime": "2019-08-24T14:15:22Z"
}
Update key fields of a failure report.
To avoid accidently overwriting the multi-line text property, the endpoint will reject any requests with an empty text property.
Added possibility to update plannerGroupId.
Added hasUnsafeFailureMode and unsafeFailureModeStatus properties to response according to business process requirement R-12137 - Give immediate warning of unsafe failure modes
.
Added priorityId
to response.
Added workCenter
and equipment
to response. Fields include descriptions of workCenterId and equipmentId
record-id required | string The recordId of the failure report. |
Failure report to create
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Enum: "/tagId" "/tagPlantId" "/equipmentId" "/failureImpactId" "/failureModeId" "/failureModeGroupId" "/detectionMethodId" "/detectionMethodGroupId" "/failureMechanismId" "/failureMechanismGroupId" "/workCenterId" "/workCenterPlantId" "/locationId" "/title" "/text" "/failureStartDateTime" "/failureEndDateTime" "/plannerGroupId" Path indicating the property to be impacted by the operation |
value required | string Value to be assigned to a resource property based on the operation and path. Path specific information:
|
[- {
- "op": "replace",
- "path": "/title",
- "value": "Material failure"
}, - {
- "op": "replace",
- "path": "/text",
- "value": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nMaterial tretthet..\n"
}
]
{- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "equipment": "Strainer at inlet Recirc Pmp",
- "title": "Endre skalering på PDT",
- "text": "Multi-line text based on template",
- "workCenterId": "SPIAUT",
- "workCenter": "AI Automasjon",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "systemId": "11",
- "failureImpactId": "D",
- "failureImpact": "Unwell (InF)",
- "priorityId": "D",
- "isBreakdown": false,
- "hasUnsafeFailureMode": false,
- "unsafeFailureModeStatus": "OUTSTANDING",
- "requiredEndDate": "2019-08-24",
- "failureModeId": "STC",
- "failureMode": "CST Struct. deficiency containment risk",
- "failureModeGroupId": "PMMO-080",
- "failureModeGroup": "ISO Piping",
- "detectionMethodId": "3",
- "detectionMethod": "ISO Inspection",
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "failureMechanismId": "2.9",
- "failureMechanism": "CST Corrosion external",
- "failureMechanismGroupId": "PMMC-010",
- "failureMechanismGroup": "ISO Material failure",
- "correctiveWorkOrderExist": false,
- "correctiveWorkOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "isOpen": true,
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z",
- "failureStartDateTime": "2019-08-24T14:15:22Z",
- "failureEndDateTime": "2019-08-24T14:15:22Z"
}
Update status of failure report.
The statuses available for the failure report can be found by querying /maintenance-records/failure-reports/{record-id}?include-status-details=true
.
When a failure report is created, it will have status CRTE - Created
and OSNO - Outstanding Notification
.
Technical responsible (Norwegian: Fagansvarlig) will be responsible for initial evaluation of the failure report.
As part of this, the statuses QAVE - Notification QA Verified
or RIDO - Risk Assessment Done
can be set.
The statuses REJE - Rejected, Not Needed
or CANC - Cancelled, Duplicate
can also be set at this stage. Clients should ensure text of failure report is updated with reasoning behind REJE/CANC
status through PATCH request to /maintenance-records/failure-reports/{record-id}
If the failure report fulfills the criteria for simplified maintenance, the status NOSI - Exec. as Simpl. Maint.
can be set.
When the failure report is ready to be approved and prioritized, the status NOPR - Notification in process
must be set.
When the failure report has been approved and prioritized, the status RIVE - Risk Assesment Verified
can be set. In addition, the failure report will be assigned to a corrective work order (either in ERP system or through POST request to /work-orders/corrective-work-orders
) and the status ORAS - Order assigned
will be set automatically on the failure report.
When the failure report is completed, the status NOCO - Notification completed
must be set. This will typically be set automatically for the failure report when the corrective work order is set to status TECO - Technical Complete
(either in ERP system or through PATCH request to /work-orders/corrective-work-orders/{work-order-id}/statuses/TECO
).
Setting the status EXTR - Date Extension Required
is not supported for this endpoint and will give a HTTP 400 response. Clients should use POST request against /maintenance-records/failure-reports/{record-id}/required-end-extensions
instead.
Setting the ORAS - Order assigned
is not supported for this endpoint and will give a HTTP 400 response.
Equinor's governing document GL1561 - Work orders and notifications types provides some additional information.
record-id required | string The recordId of the failure report. |
status-id required | string |
Failure report status to update
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/isActive" Path indicating the property to be impacted by the operation |
required | string or boolean Value to be assigned to a resource property based on the operation and path |
[- {
- "op": "replace",
- "path": "/isActive",
- "value": true
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Download single attachment for failure report
record-id required | string |
attachment-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/failure-reports/%7Brecord-id%7D/attachments/%7Battachment-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Upload attachment for failure report
record-id required | string |
files | Array of strings <binary> |
curl --request POST \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/failure-reports/%7Brecord-id%7D/attachments \ --header 'content-type: multipart/form-data' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Search for failure reports through predefined filters. Each filter has a defined action and a set of parameters as described below.
The response does not include status details for each failure report. This can be found by subsequent call to lookup failure-reports
Failure reports based on recent status activations for the failure reports. Parameters:
Find open failure reports by plant Parameters:
Added open-by-plant filter and properties systemId and locationId.
filter required | string Enum: "recent-status-activations" "open-by-plant" Filter to limit the failure reports by |
status-id | string Status |
plant-id | string Plant |
location-id | string Structured location within the plant. Use /plants/{plant-id}/locations for possible values |
system-id | string System id to filter by |
max-days-since-activation | integer <int32> [ 0 .. 255 ] Define how many days from the current day to include results for. 0 if only include for today |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/failure-reports?filter=SOME_STRING_VALUE&status-id=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&location-id=SOME_STRING_VALUE&system-id=SOME_STRING_VALUE&max-days-since-activation=SOME_INTEGER_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "requiredEndDate": "2019-08-24",
- "failureImpactId": "D",
- "isBreakdown": false,
- "locationId": "W14",
- "systemId": "11",
- "failureModeId": "STC",
- "failureModeGroupId": "PMMO-080",
- "detectionMethodId": "STC",
- "detectionMethodGroupId": "PMDM-005",
- "failureMechanismId": "2.9",
- "failureMechanismGroupId": "PMMC-010",
- "activeStatusIds": "OSNO CRTE",
- "isOpen": true,
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z",
- "correctiveWorkOrderExist": false,
- "correctiveWorkOrderId": "24871954",
- "failureStartDateTime": "2019-08-24T14:15:22Z",
- "failureEndDateTime": "2019-08-24T14:15:22Z"
}
]
Create new failure report
Equinor governing documents states that failure reports should be created at the lowest possible level in the tag hierachy.
It is possible to create failure report for either tagId or equipmentId.
If hasUnsafeFailureMode
is true after creation, operations supervisor must be contacted immediately in accordance with business process requirement R-12137 - Give immediate warning of unsafe failure modes
Added failureMechanismId,failureMechanismGroupId properties to additionalMetadata on creation.
Added hasUnsafeFailureMode and unsafeFailureModeStatus properties according to business process requirement R-12137 - Give immediate warning of unsafe failure modes
.
Added relatedWorkOrder
to create endpoint. This will allow a relationship to be established on creation to either technical feedback or object list of a work order.
Addded externalPartnerId
.
Added priorityId
to response.
Added workCenter
and equipment
to response. Fields include descriptions of workCenterId and equipmentId
Failure report to create
title required | string |
text required | string |
failureImpactId required | string Enum: "D" "S" "U" "X" |
failureModeId required | string |
failureModeGroupId required | string |
detectionMethodId required | string |
detectionMethodGroupId required | string |
tagId | string Required to input either tag or equipment |
tagPlantId | string Required to input either tag or equipment |
isBreakdown | boolean |
failureMechanismId | string |
failureMechanismGroupId | string |
workCenterId | string If workCenter is not provided, it will use default defined on tag |
workCenterPlantId | string If workCenter is not provided, it will use default defined on tag |
externalPartnerRecordId | string <= 12 characters If failure report was initially created in an external system, this represent the unique id of it |
externalPartnerId | string <= 20 characters If modification proposal was initially created in an external system, this represent the name of the external system |
createdDateTime | string <date-time> Optional parameter used in special cases where the failure report was created at an earlier time. Should not be a date in the future |
failureStartDateTime | string <date-time> The point in time where the failure started |
failureEndDateTime | string <date-time> The point in time where the failure resolved |
Array of objects (MaintenanceRecordItemMetadataCreate) Additional metadata to be used in special cases | |
object Defines a relationship to a specific part of a work order |
{- "tagId": "PX",
- "tagPlantId": "1100",
- "title": "Skiftet ventiler på bulk system",
- "failureImpactId": "S",
- "failureModeId": "STC",
- "failureModeGroupId": "PMMO-080",
- "detectionMethodId": "3",
- "detectionMethodGroupId": "PMDM-005",
- "failureMechanismId": "2.9",
- "failureMechanismGroupId": "PMMC-010",
- "text": "Skiftet 5 stk ventiler på bulk system sement og barytt da både vent og\nTrykkside var utvasket, testet alt OK.\n"
}
{- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "equipment": "Strainer at inlet Recirc Pmp",
- "title": "Endre skalering på PDT",
- "text": "Multi-line text based on template",
- "workCenterId": "SPIAUT",
- "workCenter": "AI Automasjon",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "systemId": "11",
- "failureImpactId": "D",
- "failureImpact": "Unwell (InF)",
- "priorityId": "D",
- "isBreakdown": false,
- "hasUnsafeFailureMode": false,
- "unsafeFailureModeStatus": "OUTSTANDING",
- "requiredEndDate": "2019-08-24",
- "failureModeId": "STC",
- "failureMode": "CST Struct. deficiency containment risk",
- "failureModeGroupId": "PMMO-080",
- "failureModeGroup": "ISO Piping",
- "detectionMethodId": "3",
- "detectionMethod": "ISO Inspection",
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "failureMechanismId": "2.9",
- "failureMechanism": "CST Corrosion external",
- "failureMechanismGroupId": "PMMC-010",
- "failureMechanismGroup": "ISO Material failure",
- "correctiveWorkOrderExist": false,
- "correctiveWorkOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "isOpen": true,
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z",
- "failureStartDateTime": "2019-08-24T14:15:22Z",
- "failureEndDateTime": "2019-08-24T14:15:22Z"
}
Add activities for failure report.
To find possible activityCodeGroupId and activityCodeId use the /maintenance-records/activity-codes?maintenance-record-id=...
.
activityCodeId and activityCodeGroupId are no longer required properties. Client's are still recommended to provide them if possible.
record-id required | string id of the failure report |
Activities to add to existing failure report
title required | string |
text | string |
activityCodeId | string |
activityCodeGroupId | string |
startDateTime | string <date-time> |
endDateTime | string <date-time> |
[- {
- "title": "Smøring av deler",
- "text": " Smør deler\n Stram bolter",
- "activityCodeId": "A50",
- "activityCodeGroupId": "PM-GENE1",
- "startDateTime": "2020-11-01T00:00:00Z",
- "endDateTime": "2020-11-14T00:00:00Z"
}, - {
- "title": "Rengjøring",
- "activityCodeId": "A40",
- "activityCodeGroupId": "PM-GENE1",
- "startDateTime": "2020-11-11T12:00:00Z",
- "endDateTime": "2020-11-11T16:00:00Z"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Add task to failure report.
If taskResponsibleEmail is provided and has a valid Equinor email address, the taskResponsibleId will be set to the employee id of the user.
To find possible taskCodeGroupId and taskCodeId use the /maintenance-records/task-codes?maintenance-record-id=...
.
record-id required | string id of the failure report |
Tasks to add to existing failure report
title required | string |
text | string |
taskCodeId | string |
taskCodeGroupId | string |
taskResponsibleEmail | string Must be an Equinor email address. TaskResponsibleId is populated with the employee id of this user. |
plannedStartDateTime | string <date-time> Nullable |
plannedEndDateTime | string <date-time> Nullable |
[- {
- "title": "Teknisk avklaringsbehov",
- "text": "Behov for å identifisere historikk ifra AO",
- "taskCodeId": "1020",
- "taskCodeGroupId": "PM-M2",
- "taskResponsibleEmail": "shortname@equinor.com",
- "plannedStartDateTime": "2020-11-01T00:00:00Z",
- "plannedEndDateTime": "2020-11-14T00:00:00Z"
}, - {
- "title": "Teknisk avklaringsbehov #2",
- "text": "Behov for å identifisere historikk ifra AO",
- "taskCodeId": "1020",
- "taskCodeGroupId": "PM-M2",
- "taskResponsibleEmail": "shortname@equinor.com",
- "plannedStartDateTime": "2020-12-01T00:00:00Z",
- "plannedEndDateTime": "2020-12-14T00:00:00Z"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update status of an existing task for failure report.
To find tasks avaliable on a failure report, use the /maintenance-records/failure-reports/{record-id}?include-tasks=true
.
When a task is created, it will have status TSOS - Outstanding task
and CRTE - Created
.
The status TSRL - Task Released
can be set afterwards.
record-id required | string id of the failure report |
task-id required | string id of the task |
status-id required | string id of the status |
Task status to update
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/isActive" Path indicating the property to be impacted by the operation |
required | string or boolean Value to be assigned to a resource property based on the operation and path |
[- {
- "op": "replace",
- "path": "/isActive",
- "value": true
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update existing activity for failure report
To find possible activityCodeGroupId and activityCodeId use the /maintenance-records/activity-codes?maintenance-record-id=...
.
record-id required | string id of the failure report |
activity-id required | string id of the activity |
Activities to update for existing failure report
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Enum: "/title" "/text" "/activityCodeId" "/activityCodeGroupId" "/startDateTime" "/endDateTime" Path indicating the property to be impacted by the operation |
value required | string Value to be assigned to a resource property based on the operation and path
|
[- {
- "op": "replace",
- "path": "/title",
- "value": "Smøring av deler"
}, - {
- "op": "replace",
- "path": "/text",
- "value": "Smør deler\\n Stram bolter"
}, - {
- "op": "replace",
- "path": "/activityCodeGroupId",
- "value": "PM-GENE1"
}, - {
- "op": "replace",
- "path": "/activityCodeId",
- "value": "A50"
}, - {
- "op": "replace",
- "path": "/startDateTime",
- "value": "2020-11-11T12:00:00Z"
}, - {
- "op": "replace",
- "path": "/endDateTime",
- "value": "2020-11-11T16:00:00Z"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Extend the required end date of the failure report. This endpoint should only be executed by persons which have access to the 'action box' in Equinor's ERP system.
Client applications should take special care in ensuring the business process of Equinor is followed in advance of calling this endpoint.
The activityCodeId defines the reason for the extension
A121
= Lack of resourcesA122
= Lack of sparesA123
=Maintenance accessA124
=Failure development timeAn activity for the failure report will be created by this call and the status Date Extension Required ('EXTR')
will be set.
Most users will not have sufficient authorizations to execute this endpoint. If a request fails due to missing authorizations, the response code will be HTTP 403.
record-id required | string id of the failure report |
Activities to add to existing failure report
requiredEndDate required | string <date> The extended required end date of the failure report |
riskAssessmentTitle required | string Title of the risk assessment done for the extension |
riskAssessmentText required | string The text should describe the risk assessment done |
activityCodeId required | string Enum: "A121" "A122" "A123" "A124" The activity code defines the reason for the extension. |
activityCodeGroupId required | string Value: "PM-ACB-1" The group the activityCodeId belongs to. Currently, only a single value is possible |
{- "requiredEndDate": "2021-11-20",
- "riskAssessmentTitle": "Risk vurdering for utsettelse",
- "riskAssessmentText": "Risk vurdert nøye\nVedlikehold kan utsettes",
- "activityCodeId": "A121",
- "activityCodeGroupId": "PM-ACB-1"
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update additional metadata for a failure report. This related to additional failure modes and detection modes for a failure report and only used in rare cases.
The metadata-id available to update for a given failure report can be found by querying /maintenance-records/failure-reports/{record-id}?include-additional-metadata=true
Added failureMechanismId,failureMechanismGroupId properties.
record-id required | string The recordId of the failure report. |
metadata-id required | string The id of the metadata record |
Update to make for metadata
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Enum: "/title" "/failureModeId" "/failureModeGroupId" "/detectionMethodId" "/detectionMethodGroupId" "/failureMechanismId" "/failureMechanismGroupId" Path indicating the property to be impacted by the operation |
value required | string Value to be assigned to a resource property based on the operation and path Path specific information:
|
[- {
- "op": "replace",
- "path": "/title",
- "value": "Material failure"
}, - {
- "op": "replace",
- "path": "/failureModeId",
- "value": "STC"
}, - {
- "op": "replace",
- "path": "/failureModeGroupId",
- "value": "PMMO-080"
}, - {
- "op": "replace",
- "path": "/failureModeId",
- "value": "STC"
}, - {
- "op": "replace",
- "path": "/detectionMethodId",
- "value": "3"
}, - {
- "op": "replace",
- "path": "/detectionMethodGroupId",
- "value": "PMDM-005"
}, - {
- "op": "replace",
- "path": "/failureMechanismId",
- "value": "2.9"
}, - {
- "op": "replace",
- "path": "/failureMechanismGroupId",
- "value": "PMMC-010"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Add additional metadata for a failure report. This related to additional failure modes and detection modes for a failure report and only used in rare cases.
The metadata-id available to update for a given failure report can be found by querying /maintenance-records/failure-reports/{record-id}?include-additional-metadata=true
Added failureMechanismId,failureMechanismGroupId properties.
record-id required | string The recordId of the failure report. |
Update to make for metadata
title | string <= 40 characters |
failureModeId | string |
failureModeGroupId | string |
detectionMethodId | string |
detectionMethodGroupId | string |
failureMechanismId | string |
failureMechanismGroupId | string |
[- {
- "title": "Material failure",
- "failureModeId": "STC",
- "failureModeGroupId": "PMMO-080",
- "detectionMethodId": "3",
- "detectionMethodGroupId": "PMDM-005",
- "failureMechanismId": "2.9",
- "failureMechanismGroupId": "PMMC-010"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Modification proposal initiates the processing of a modification, replacement or maintenance project. In Equinor for upstream offshore, a modification proposal initiates the business processes 'OM103.01 - Initiate projects on plants in operation' or 'OM103.70.01 - Propose simple modifications in safety and automation systems'.
Modification proposal initiates the processing of a modification, replacement or maintenance project. In Equinor for upstream offshore, a modification proposal initiates the business processes 'OM103.01 - Initiate projects on plants in operation' or 'OM103.70.01 - Propose simple modifications in safety and automatiion systems'. This request looks up a single Modification proposal.
Added createdDateTime for attachments.
Added 301
response.
record-id required | string |
include-tasks | boolean Default: true Include detailed information for tasks |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-attachments | boolean Default: false Include attachments |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/modification-proposals/%7Brecord-id%7D?include-tasks=SOME_BOOLEAN_VALUE&include-status-details=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "tasks": [
- {
- "taskId": "12",
- "sortField": "01",
- "title": "Teknisk avklaringsbehov",
- "text": "Behov for å identifisere historikk ifra AO\n",
- "activeStatusIds": "TSRL CRTE",
- "isCompleted": false,
- "taskCodeId": "1020",
- "taskCode": "Technical clarification needed",
- "taskCodeGroupId": "PM-M2",
- "taskCodeGroup": "M2 Notification Tasks",
- "taskResponsibleType": "",
- "taskResponsibleId": "433937",
- "plannedStartDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z"
}
], - "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "text": "Multi-line text based on template",
- "plannerGroup": "Anleggsintegritet",
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "reasonGroupId": "PMB-PRIM",
- "reasonId": "MA70",
- "priorityId": "H",
- "title": "Endre skalering på PDT",
- "isSimpleProposal": false,
- "activeStatusIds": "OSNO CRTE",
- "plannerGroupId": "SPI",
- "plannerGroupPlantId": "1100",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "requiredStartDate": "2019-08-24",
- "requiredEndDate": "2019-08-24",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z"
}
Create a new modification proposal maintenance record.
Modification proposal initiates the processing of a modification, replacement or maintenance project. In Equinor for upstream offshore, a modification proposal initiates the business processes 'OM103.01 - Initiate projects on plants in operation' or 'OM103.70.01 - Propose simple modifications in safety and automatiion systems'.
The following attributes rely on master data:
reasonGroupId
and reasonId
- Use values from endpoint /maintenance-records/reason-codes
plannerGroupId
and plannerGroupPlantId
- Use values from endpoint /plants/{plant-id}/planner-groups
workCenterId
and workCenterPlantId
- USe values from /plants/{plant-id}/work-centers
The isSimpleProposal
attribute determines if this is a simple proposal. For a simple proposal, reasonGroupId
and reasonId
are not required.
Modification proposal to create
title required | string |
priorityId required | string Enum: "H" "M" "L" Priority:
|
tagId | string Required to input either tag or equipment |
tagPlantId | string Required to input either tag or equipment |
equipmentId | string Required to input either tag or equipment |
text | string |
workCenterId | string If workCenter is not provided, it will use default defined on tag |
workCenterPlantId | string If workCenter is not provided, it will use default defined on tag |
plannerGroupId | string |
plannerGroupPlantId | string |
reasonGroupId | string |
reasonId | string |
isSimpleProposal | boolean Default: false |
externalPartnerRecordId | string <= 12 characters If modification proposal was initially created in an external system, this represent the unique id of it |
externalPartnerId | string <= 20 characters If modification proposal was initially created in an external system, this represent the name of the external system |
{- "tagId": "20PDT1541",
- "tagPlantId": "1100",
- "reasonGroupId": "PMB-PRIM",
- "reasonId": "MA70",
- "priorityId": "M",
- "title": "Endre skalering på PDT",
- "text": "·,,System og disiplinbeskrivelse\n·,,Videre Modningsbehov\n<U>7,,Spesielle tekniske og operative forhold</>\n·,,Behov for RS, system- eller enhetsstans?\n·,,Relevante tekniske og/eller operasjonelle krav<(>,<)>\no,,,,inkl. vurdering av gyldighet/versjon av krav?\no,,,,eventuelle godkjente dispensasjoner?\n·,,Påvirkes anleggets integritet? (Er der behov for kompenserende\ntiltak?)\n·,,Behov for ny teknologi / teknologikvalifisering ?\n<U>8,,Dokument / tegningsreferanser</>\n<U>9,,Vedlegg til notifikasjonen</>\nStandard vedleggsliste (alternativt kan dokumentene lagres på teamsite\nog link legges inn her):\n·,,HMS-sjekkliste\n·,,·,,Beslutningspresentasjon (uten kost informasjon)\n·,,Eventuell ALARP-vurdering\n·,,Annet\n"
}
{- "text": "Multi-line text based on template",
- "plannerGroup": "Anleggsintegritet",
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "reasonGroupId": "PMB-PRIM",
- "reasonId": "MA70",
- "priorityId": "H",
- "title": "Endre skalering på PDT",
- "isSimpleProposal": false,
- "activeStatusIds": "OSNO CRTE",
- "plannerGroupId": "SPI",
- "plannerGroupPlantId": "1100",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "requiredStartDate": "2019-08-24",
- "requiredEndDate": "2019-08-24",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z"
}
Download single attachment for a modification proposal maintenance record.
record-id required | string |
attachment-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/modification-proposals/%7Brecord-id%7D/attachments/%7Battachment-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "One or more validation errors occurred.",
- "status": 400,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00",
- "errors": {
- "property1": { },
- "property2": { }
}
}
Used to represent the results of a certification such as PSV or lifting certificate
Lookup a single certification report.
The certification report represents the results of PSV or lifting certification.
For PSV certification, details are reported as measurements for 33 predefined measuring points. For lifting certification, details are stored in attachment and possibly as characteristics on the tag/equipment.
Added createdDateTime for attachments.
Added 301
response.
record-id required | string The recordId of the certification report |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-tag-details | boolean Default: false Include details about tag for failure report |
include-attachments | boolean Default: false Include attachments |
include-measuring-points | boolean Default: false Include measuring points related to tagId/equipmentId |
include-last-measurement | boolean Default: false Include last measurement for the measuring points |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/certification-reports/%7Brecord-id%7D?include-status-details=SOME_BOOLEAN_VALUE&include-tag-details=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE&include-measuring-points=SOME_BOOLEAN_VALUE&include-last-measurement=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "tagDetails": {
- "isInactive": false,
- "parentTagId": "AT5566",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "ABCId": "5",
- "ABC": "Crit.=M & Red.=B",
- "locationId": "W14",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "catalogProfileId": "PM-160",
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}, - "measuringPoints": [
- {
- "lastMeasurement": {
- "measurementId": "10017608811",
- "measuringPointId": "14626974",
- "measurementDateTime": "2019-08-24T14:15:22Z",
- "measurementTitle": "string",
- "quantitativeReading": 19.2,
- "quantitativeReadingUnitId": "MM",
- "qualitativeCodeGroupId": "OBSMETH",
- "qualitativeCodeId": "UT-I",
- "processingStatusId": "1"
}, - "tagId": "1A1-A16A",
- "tagPlantId": "1111",
- "equipmentId": "12410072",
- "measuringPosition": "P:M03 2\" SV 301",
- "supportsQuantitativeMeasurement": true,
- "quantitativeCharacteristicId": "SM_COATING_CONDITION_ITEM",
- "quantitativeCharacteristicUnit": "mbar",
- "quantitativeCharacteristicUnitId": "MBAR",
- "categoryId": "B",
- "qualitativeCodeGroupId": "OBSMETH",
- "supportsQualitativeMeasurement": true,
- "measuringPointId": "14626974",
- "measuringPoint": "Surface coating condition"
}
], - "text": "Multi-line text based on template",
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "requiredEndDate": "2019-08-24",
- "failureModeId": "STC",
- "failureMode": "CST Struct. deficiency containment risk",
- "failureModeGroupId": "PMMO-080",
- "failureModeGroup": "ISO Piping",
- "detectionMethodId": "3",
- "detectionMethod": "ISO Inspection",
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "failureMechanismId": "2.9",
- "failureMechanism": "CST Corrosion external",
- "failureMechanismGroupId": "PMMC-010",
- "failureMechanismGroup": "ISO Material failure",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
Search for certification reports through predefined filters. Each filter has a defined action and a set of parameters as described below.
The response does not include all details for each certification report. Use lookup of certification report to retrieve additional details.
Certification reports based on recent status activations Parameters:
Example request: /maintenance-records/certification-reports?api-version=v1&filter=recent-status-activations&status-id=CRTE&plant-id=1100&max-days-since-activation=10
Find certification reports by tag with possibility of not including completed ones. /plants/{plant-id}/tags/{tag-id}?include-maintenance-records=true
may also be used for a similar effect.
Parameters:
Example request: /maintenance-records/certification-reports?api-version=v1&filter=by-tag&plant-id=1100&tag-id=DV50100&created-after-datetime=2020-11-01T00%3A00%3A00Z&include-completed=true
Find certification reports by equipment with possibility of not including completed ones. /plants/{plant-id}/tags/{tag-id}?include-maintenance-records=true
may also be used for a similar effect.
Parameters:
Example request: /maintenance-records/certification-reports?api-version=v1&filter=by-equipment&equipment-id=10255408&include-completed=false
filter required | string Enum: "recent-status-activations" "by-tag" "by-equipment" Filter to limit the certification reports by |
status-id | string Status |
plant-id | string Plant |
max-days-since-activation | integer <int32> [ 0 .. 255 ] Define how many days from the current day to include results for. 0 if only include for today |
created-after-datetime | string <date-time> Optional parameter to limit the response to only work orders changed after changed-since-datetime but before this datetime |
include-completed | boolean Default: false Filter based on if it's completed or open |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/certification-reports?filter=SOME_STRING_VALUE&status-id=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&max-days-since-activation=SOME_INTEGER_VALUE&created-after-datetime=SOME_STRING_VALUE&include-completed=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "requiredEndDate": "2019-08-24",
- "failureModeId": "STC",
- "failureMode": "CST Struct. deficiency containment risk",
- "failureModeGroupId": "PMMO-080",
- "failureModeGroup": "ISO Piping",
- "detectionMethodId": "3",
- "detectionMethod": "ISO Inspection",
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "failureMechanismId": "2.9",
- "failureMechanism": "CST Corrosion external",
- "failureMechanismGroupId": "PMMC-010",
- "failureMechanismGroup": "ISO Material failure",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
]
Used to request for update of technical information or maintenance programs
Lookup a single technical information update request.
A technical information update request represents a notice of change to initiate, distribute and follow up work to update technical information.
Examples of usage:
Equinor's governing document GL1561 - Work orders and notifications types provides additional information for this maintenance record type.
Added createdDateTime for attachments.
Added 301
response.
record-id required | string The recordId of the technical information update request |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-tasks | boolean Default: false Include detailed information for tasks |
include-attachments | boolean Default: false Include attachments |
include-tag-details | boolean Default: false Include details about tag for failure report |
include-person-responsible | boolean Default: false Include person responsible information in response. If user does not have significant rights, this will return a |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/technical-information-update-requests/%7Brecord-id%7D?include-status-details=SOME_BOOLEAN_VALUE&include-tasks=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE&include-tag-details=SOME_BOOLEAN_VALUE&include-person-responsible=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "tagDetails": {
- "isInactive": false,
- "parentTagId": "AT5566",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "ABCId": "5",
- "ABC": "Crit.=M & Red.=B",
- "locationId": "W14",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "catalogProfileId": "PM-160",
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}, - "tasks": [
- {
- "taskId": "12",
- "sortField": "01",
- "title": "Teknisk avklaringsbehov",
- "text": "Behov for å identifisere historikk ifra AO\n",
- "activeStatusIds": "TSRL CRTE",
- "isCompleted": false,
- "taskCodeId": "1020",
- "taskCode": "Technical clarification needed",
- "taskCodeGroupId": "PM-M2",
- "taskCodeGroup": "M2 Notification Tasks",
- "taskResponsibleType": "",
- "taskResponsibleId": "433937",
- "plannedStartDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z"
}
], - "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "text": "Multi-line text based on template",
- "hasPersonResponsible": true,
- "personResponsibleId": "433937",
- "personResponsibleEmail": "shortname@equinor.com",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "costWBS": "Vedlikehold - System PV",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
Update key fields of a technical information update request.
To avoid accidently overwriting the multi-line text property, the endpoint will reject any requests with an empty text property.
record-id required | string The recordId of the technical information update request |
Details on how to update technical information update request
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Enum: "/personResponsibleEmail" "/plannerGroupId" "/title" "/text" "/priorityId" "/requiredEndDate" Path indicating the property to be impacted by the operation |
value required | string Value to be assigned to a resource property based on the operation and path. Path specific information:
|
[- {
- "op": "replace",
- "path": "/personResponsibleEmail",
- "value": "shortname@equinor.com"
}
]
{- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "text": "Multi-line text based on template",
- "hasPersonResponsible": true,
- "personResponsibleId": "433937",
- "personResponsibleEmail": "shortname@equinor.com",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "costWBS": "Vedlikehold - System PV",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
Download single attachment for technical information update request
record-id required | string |
attachment-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/technical-information-update-requests/%7Brecord-id%7D/attachments/%7Battachment-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Upload attachment for technical information update request.
record-id required | string |
files | Array of strings <binary> |
curl --request POST \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/technical-information-update-requests/%7Brecord-id%7D/attachments \ --header 'content-type: multipart/form-data' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Search for technical information update requests through predefined filters. Each filter has a defined action and a set of parameters as described below.
The response does not include all details for each technical information update requests. Use lookup of technical information update requests to retrieve additional details.
If query parameter include-person-responsible is set to true in the request, the response will contain values for personResponsibleId and personResponsibleEmail. This will have a performance impact and therefore the default value is false.
Technical information update requests based on recent status activations. Parameters:
Example request: /maintenance-records/technical-information-update-requests?api-version=v1&filter=recent-status-activations&status-id=CRTE&plant-id=1100&max-days-since-activation=10
Find open technical information update requests by plant. Parameters:
Example request: /maintenance-records/technical-information-update-requests?api-version=v1&filter=open-by-plant&plant-id=1100&has-person-responsible=false
Find technical information update requests by tag with possibility of not including completed ones. /plants/{plant-id}/tags/{tag-id}?include-maintenance-records=true
may also be used for a similar effect.
Parameters:
Example request: /maintenance-records/technical-information-update-requests?api-version=v1&filter=by-tag&plant-id=1100&tag-id=DV50100&include-completed=true
Find technical information update requests by person responsible. Parameters:
Example request: /maintenance-records/technical-information-update-requests?api-version=v1&filter=by-person-responsible&person-responsible-email=dapa%40equinor.com&include-completed=false&include-person-responsible=true
Added filter by-person-responsible.
Added query parameter include-person-responsible.
Added properties personResponsibleId and personResponsibleEmail to response (only populated if include-person-responsible=true in the request).
filter required | string Enum: "recent-status-activations" "open-by-plant" "by-tag" "by-person-responsible" Filter to limit the technical information update requests by |
include-person-responsible | boolean Default: false Include person responsible information in response |
status-id | string Status |
plant-id | string Plant |
location-id | string Structured location within the plant. Use /plants/{plant-id}/locations for possible values |
system-id | string System id to filter by |
tag-id | string |
planning-plant-id | string Example: planning-plant-id=1901 Planning plant used for planner group id |
planner-group-id | string Example: planner-group-id=SRM Planner group id (planning-plant-id must also be supplied) |
max-days-since-activation | integer <int32> [ 0 .. 255 ] Define how many days from the current day to include results for. 0 if only include for today |
has-person-responsible | boolean Default: false Define if it should have a person responsible or not |
created-after-datetime | string <date-time> Optional parameter to limit the response to only work orders changed after changed-since-datetime but before this datetime |
include-completed | boolean Default: false Filter based on if it's completed or open |
person-responsible-email | string Email of the person responsible in urlencoded format |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/technical-information-update-requests?include-person-responsible=SOME_BOOLEAN_VALUE&filter=SOME_STRING_VALUE&status-id=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&location-id=SOME_STRING_VALUE&system-id=SOME_STRING_VALUE&tag-id=SOME_STRING_VALUE&planning-plant-id=1901&planner-group-id=SRM&max-days-since-activation=SOME_INTEGER_VALUE&has-person-responsible=SOME_BOOLEAN_VALUE&created-after-datetime=SOME_STRING_VALUE&include-completed=SOME_BOOLEAN_VALUE&person-responsible-email=SOME_STRING_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "text": "Multi-line text based on template",
- "hasPersonResponsible": true,
- "personResponsibleId": "433937",
- "personResponsibleEmail": "shortname@equinor.com",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "costWBS": "Vedlikehold - System PV",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
]
Add task to technical information update request.
If taskResponsibleEmail is provided and has a valid Equinor email address, the taskResponsibleId will be set to the employee id of the user.
To find possible taskCodeGroupId and taskCodeId use the /maintenance-records/task-codes?maintenance-record-id=...
.
record-id required | string id of the technical information update request |
Tasks to add to existing technical information update request
title required | string |
text | string |
taskCodeId | string |
taskCodeGroupId | string |
taskResponsibleEmail | string Must be an Equinor email address. TaskResponsibleId is populated with the employee id of this user. |
plannedStartDateTime | string <date-time> Nullable |
plannedEndDateTime | string <date-time> Nullable |
[- {
- "title": "Oppdater bill of material",
- "text": "Bill of material for tag xxx må oppdateres med følgende:",
- "taskCodeId": "A50",
- "taskCodeGroupId": "PM-TI",
- "taskResponsibleEmail": "shortname@equinor.com",
- "plannedStartDateTime": "2022-11-01T00:00:00Z",
- "plannedEndDateTime": "2022-11-14T00:00:00Z"
}, - {
- "title": "Tekniske tegninger",
- "text": "Behov for å oppdatere tekniske tegninger med følgende:",
- "taskCodeId": "A10",
- "taskCodeGroupId": "PM-TI",
- "taskResponsibleEmail": "shortname@equinor.com",
- "plannedStartDateTime": "2022-12-01T00:00:00Z",
- "plannedEndDateTime": "2022-12-14T00:00:00Z"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update status of an existing task for technical information update request.
To find tasks avaliable on a technical information update request, use the /maintenance-records/technical-information-update-requests/{record-id}?include-tasks=true
.
When a task is created, it will have status TSOS - Outstanding task
and CRTE - Created
.
The status TSRL - Task Released
can be set afterwards.
record-id required | string id of the technical information update request |
task-id required | string id of the task |
status-id required | string id of the status |
Task status to update
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/isActive" Path indicating the property to be impacted by the operation |
required | string or boolean Value to be assigned to a resource property based on the operation and path |
[- {
- "op": "replace",
- "path": "/isActive",
- "value": true
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Used to request technical clarification when not covered by other maintenance records (such as failure reports)
Lookup a single technical clarification.
Represents a request for technical clarification when not covered by other maintenance records (such as failure-reports and corrective-work-orders).
Equinor's governing document GL1561 - Work orders and notifications types provides additional information for this maintenance record type.
Added createdDateTime for attachments.
Added 301
response.
record-id required | string The recordId of the technical clarification |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-tasks | boolean Default: false Include detailed information for tasks |
include-attachments | boolean Default: false Include attachments |
include-tag-details | boolean Default: false Include details about tag for technical clarification |
include-person-responsible | boolean Default: false Include person responsible information in response. If user does not have significant rights, this will return a |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/technical-clarifications/%7Brecord-id%7D?include-status-details=SOME_BOOLEAN_VALUE&include-tasks=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE&include-tag-details=SOME_BOOLEAN_VALUE&include-person-responsible=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "tagDetails": {
- "isInactive": false,
- "parentTagId": "AT5566",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "ABCId": "5",
- "ABC": "Crit.=M & Red.=B",
- "locationId": "W14",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "catalogProfileId": "PM-160",
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}, - "tasks": [
- {
- "taskId": "12",
- "sortField": "01",
- "title": "Teknisk avklaringsbehov",
- "text": "Behov for å identifisere historikk ifra AO\n",
- "activeStatusIds": "TSRL CRTE",
- "isCompleted": false,
- "taskCodeId": "1020",
- "taskCode": "Technical clarification needed",
- "taskCodeGroupId": "PM-M2",
- "taskCodeGroup": "M2 Notification Tasks",
- "taskResponsibleType": "",
- "taskResponsibleId": "433937",
- "plannedStartDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z"
}
], - "recordId": "45894100",
- "tagId": "D-13L35001A",
- "tagPlantId": "1902",
- "equipmentId": "",
- "title": "Material vurdering FD100 Vanninj service",
- "text": "Multi-line text\nbased on template",
- "hasPersonResponsible": true,
- "personResponsibleId": "433937",
- "personResponsibleEmail": "shortname@equinor.com",
- "workCenterId": "SPIMEK",
- "workCenterPlantId": "1901",
- "planningPlantId": "1901",
- "plannerGroupId": "SPIAUT",
- "plannerGroup": "AI Mekanisk",
- "locationId": "DC132",
- "location": "Wellbay Area Center Cellar Deck",
- "systemId": "13",
- "system": "RISER/WELL TOP",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "costWBS": "Vedlikehold - System PV",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "ATCO OSNO RPRI",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDate": "2019-08-24",
- "completedDateTime": "2019-08-24"
}
Update key fields of a technical clarification.
To avoid accidently overwriting the multi-line text property, the endpoint will reject any requests with an empty text property.
record-id required | string The recordId of the technical clarification |
Details on how to update technical clarification
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Enum: "/personResponsibleEmail" "/plannerGroupId" "/title" "/text" "/priorityId" "/requiredEndDate" Path indicating the property to be impacted by the operation |
value required | string Value to be assigned to a resource property based on the operation and path. Path specific information:
|
[- {
- "op": "replace",
- "path": "/personResponsibleEmail",
- "value": "shortname@equinor.com"
}
]
{- "title": "One or more validation errors occurred.",
- "status": 400,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00",
- "errors": {
- "property1": { },
- "property2": { }
}
}
Download single attachment for technical clarification
record-id required | string |
attachment-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/technical-clarifications/%7Brecord-id%7D/attachments/%7Battachment-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Search for technical clarifications through predefined filters. Each filter has a defined action and a set of parameters as described below.
The response does not include all details for each technical clarification. Use lookup of technical clarification to retrieve additional details.
If query parameter include-person-responsible is set to true in the request, the response will contain values for personResponsibleId and personResponsibleEmail. This will have a performance impact and therefore the default value is false.
Technical clarifications based on recent status activations. Parameters:
Example request: /maintenance-records/technical-clarifications?api-version=v1&filter=recent-status-activations&status-id=CRTE&plant-id=1100&max-days-since-activation=10
Find open Technical clarifications by plant. Parameters:
Example request: /maintenance-records/technical-clarifications?api-version=v1&filter=open-by-plant&plant-id=1100&has-person-responsible=false
Find Technical clarifications by tag with possibility of not including completed ones. /plants/{plant-id}/tags/{tag-id}?include-maintenance-records=true
may also be used for a similar effect.
Parameters:
Example request: /maintenance-records/technical-clarifications?api-version=v1&filter=by-tag&plant-id=1100&tag-id=DV50100&include-completed=true
Find technical clarificatons by person responsible. Parameters:
Example request: /maintenance-records/technical-clarifications?api-version=v1&filter=by-person-responsible&person-responsible-email=shortname%40equinor.com&include-completed=false&include-person-responsible=true
Added filter by-person-responsible.
Added query parameter include-person-responsible.
Added properties personResponsibleId and personResponsibleEmail to response (only populated if include-person-responsible=true in the request).
filter required | string Enum: "recent-status-activations" "open-by-plant" "by-tag" "by-person-responsible" Filter to limit the technical clarifications by |
include-person-responsible | boolean Default: false Include person responsible information in response |
status-id | string Status |
plant-id | string Plant |
location-id | string Structured location within the plant. Use /plants/{plant-id}/locations for possible values |
system-id | string System id to filter by |
planning-plant-id | string Example: planning-plant-id=1901 Planning plant used for planner group id |
planner-group-id | string Example: planner-group-id=SRM Planner group id (planning-plant-id must also be supplied) |
max-days-since-activation | integer <int32> [ 0 .. 255 ] Define how many days from the current day to include results for. 0 if only include for today |
has-person-responsible | boolean Default: false Define if it should have a person responsible or not |
created-after-datetime | string <date-time> Optional parameter to limit the response to only work orders changed after changed-since-datetime but before this datetime |
include-completed | boolean Default: false Filter based on if it's completed or open |
person-responsible-email | string Email of the person responsible in urlencoded format |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/technical-clarifications?include-person-responsible=SOME_BOOLEAN_VALUE&filter=SOME_STRING_VALUE&status-id=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&location-id=SOME_STRING_VALUE&system-id=SOME_STRING_VALUE&planning-plant-id=1901&planner-group-id=SRM&max-days-since-activation=SOME_INTEGER_VALUE&has-person-responsible=SOME_BOOLEAN_VALUE&created-after-datetime=SOME_STRING_VALUE&include-completed=SOME_BOOLEAN_VALUE&person-responsible-email=SOME_STRING_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "recordId": "45894100",
- "tagId": "D-13L35001A",
- "tagPlantId": "1902",
- "equipmentId": "",
- "title": "Material vurdering FD100 Vanninj service",
- "text": "Multi-line text\nbased on template",
- "hasPersonResponsible": true,
- "personResponsibleId": "433937",
- "personResponsibleEmail": "shortname@equinor.com",
- "workCenterId": "SPIMEK",
- "workCenterPlantId": "1901",
- "planningPlantId": "1901",
- "plannerGroupId": "SPIAUT",
- "plannerGroup": "AI Mekanisk",
- "locationId": "DC132",
- "location": "Wellbay Area Center Cellar Deck",
- "systemId": "13",
- "system": "RISER/WELL TOP",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "costWBS": "Vedlikehold - System PV",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "ATCO OSNO RPRI",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDate": "2019-08-24",
- "completedDateTime": "2019-08-24"
}
]
Maintenance records represent registration, prioritisation, control of needs/activities and registration of technical history. Each maintenance records type is tailored for a specific purpose.
Search for Maintenance records regardless of type through predefined filters. Each filter has a defined action and a set of parameters as described below.
The response does not include all details for each Maintenance record. This can be found by subsequent call to lookup for the respective maintenance record resource type
Find open Maintenance records for an id in an external partner system. Note: In theory different external system could have the same external-partner-record-id
but it's very unlikely. Clients are recommended to filter the response based on the plants they are intersted in to avoid any issues.
Parameters:
Find maintenance record created by the logged in user.
Parameters:
Find maintenance records which have been recently changed (created or updated) for a given plant. Normally, clients will provide parameters changed-since-datetime and plant-id and in this case the endpoint will return any changed maintenance record from changed-since-datetime and to now. It is also possible to add before-datetime query parameter and the endpoint will then return any changed maintenance between changed-since-datetime and before-datetime.
Parameters:
Added filter my-recent-maintenance-records
.
Added filter recently-changed
and maintenance record types modification-proposal
, certification-report
,technical-information-update-request
and technical-clarification
.
filter required | string Enum: "by-external-partner-record-id" "my-recent-maintenance-records" "recently-changed" Filter to limit the failure reports by |
external-partner-record-id | string If failure report was initially created in an external system, this represent the unique id of it |
created-after-datetime | string <date-time> Optional parameter to limit the response to only maintenance records changed after changed-since-datetime but before this datetime |
plant-id | string Plant |
changed-since-datetime | string <date-time> Earliest datetime to returned changed work orders for |
before-datetime | string <date-time> Optional parameter to limit the response to only work orders changed after changed-since-datetime but before this datetime |
include-maintenance-record-types | Array of strings Items Enum: "modification-proposal" "failure-report" "activity-report" "certification-report" "technical-information-update-request" "technical-clarification" Include maintenance records. If include-maintenance-record-types is not supplied, all support types are returned |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records?filter=SOME_STRING_VALUE&external-partner-record-id=SOME_STRING_VALUE&created-after-datetime=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&changed-since-datetime=SOME_STRING_VALUE&before-datetime=SOME_STRING_VALUE&include-maintenance-record-types=SOME_ARRAY_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "modificationProposals": [
- {
- "_links": {
- "self": "/maintenance-records/modification-proposal/45894100?api-version=v1"
}, - "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "reasonGroupId": "PMB-PRIM",
- "reasonId": "MA70",
- "priorityId": "H",
- "title": "Endre skalering på PDT",
- "isSimpleProposal": false,
- "activeStatusIds": "OSNO CRTE",
- "plannerGroupId": "SPI",
- "plannerGroupPlantId": "1100",
- "plannerGroup": "Anleggsintegritet",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "requiredStartDate": "2019-08-24",
- "requiredEndDate": "2019-08-24",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z"
}
], - "failureReports": [
- {
- "_links": {
- "self": "/maintenance-records/failure-reports/45939208?api-version=v1"
}, - "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "requiredEndDate": "2019-08-24",
- "failureImpactId": "D",
- "isBreakdown": false,
- "locationId": "W14",
- "systemId": "11",
- "failureModeId": "STC",
- "failureModeGroupId": "PMMO-080",
- "detectionMethodId": "STC",
- "detectionMethodGroupId": "PMDM-005",
- "failureMechanismId": "2.9",
- "failureMechanismGroupId": "PMMC-010",
- "activeStatusIds": "OSNO CRTE",
- "isOpen": true,
- "createdDateTime": "2019-08-24T14:15:22Z",
- "completedDateTime": "2019-08-24T14:15:22Z",
- "correctiveWorkOrderExist": false,
- "correctiveWorkOrderId": "24871954",
- "failureStartDateTime": "2019-08-24T14:15:22Z",
- "failureEndDateTime": "2019-08-24T14:15:22Z"
}
], - "activityReports": [
- {
- "_links": {
- "self": "/maintenance-records/activity-reports/46126319?api-version=v1"
}, - "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "isOpen": true,
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "certificationReports": [
- {
- "_links": {
- "self": "/maintenance-records/certification-reports/45894100?api-version=v1"
}, - "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "plannerGroup": "Plattform PV",
- "locationId": "CD2",
- "location": "METERING DECK",
- "requiredEndDate": "2019-08-24",
- "failureModeId": "STC",
- "failureMode": "CST Struct. deficiency containment risk",
- "failureModeGroupId": "PMMO-080",
- "failureModeGroup": "ISO Piping",
- "detectionMethodId": "3",
- "detectionMethod": "ISO Inspection",
- "detectionMethodGroupId": "PMDM-005",
- "detectionMethodGroup": "ISO Scheduled activities",
- "failureMechanismId": "2.9",
- "failureMechanism": "CST Corrosion external",
- "failureMechanismGroupId": "PMMC-010",
- "failureMechanismGroup": "ISO Material failure",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "activeStatusIds": "OSNO CRTE",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "technicalInformationUpdateRequests": [
- {
- "_links": {
- "self": "/maintenance-records/technical-information-update-requests/46298154?api-version=v1"
}, - "recordId": "45894100",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "hasPersonResponsible": true,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "locationId": "CD2",
- "systemId": "BS",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z"
}
], - "technicalClarifications": [
- {
- "_links": {
- "self": "/maintenance-records/technical-clarifications/46526114?api-version=v1"
}, - "recordId": "45894100",
- "tagId": "D-13L35001A",
- "tagPlantId": "1902",
- "equipmentId": "",
- "title": "Material vurdering FD100 Vanninj service",
- "hasPersonResponsible": true,
- "workCenterId": "SPIMEK",
- "workCenterPlantId": "1901",
- "planningPlantId": "1901",
- "plannerGroupId": "SPIAUT",
- "plannerGroup": "AI Mekanisk",
- "locationId": "DC132",
- "systemId": "13",
- "requiredEndDate": "2019-08-24",
- "priorityId": "H",
- "sortField": "RETUR",
- "costWBSId": "T.O265C.GA.00007",
- "workOrderExist": false,
- "workOrderId": "24871954",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "plannedEndDate": "2019-08-24",
- "completedDateTime": "2019-08-24"
}
]
}
Provide master data related to maintenance records for example activity codes.
Get a list of all activity codes which are in use for maintenance records.
To be used when adding new activities to an existing failure report
/maintenance-records/activity-codes?maintenance-record-id=45939208&api-version=v1
- Use when maintenance record already exist
/maintenance-records/activity-codes?catalog-profile-id=PM-600&maintenance-record-type=failure-report&api-version=v1
- Use when maintenance record does not already exist. Get catalog-profile-id from tag or equipment to be used when the maintenance record is created
Endpoint now requires a query parameter maintenance-record-id. The values returned are dependent on the maintenance record type and possibly tag or equipment for the maintenance record.
activityCodeHelpText added as property.
Endpoint requires either query parameter maintenance-record-id or both catalog-profile-id and maintenance-record-type.
maintenance-record-id | string The maintenance record to get activity codes for |
catalog-profile-id | string The catalog profile of the functional location/equipment |
maintenance-record-type | string Enum: "failure-report" "activity-report" The type of maintenance record to get activities or |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/activity-codes?maintenance-record-id=SOME_STRING_VALUE&catalog-profile-id=SOME_STRING_VALUE&maintenance-record-type=SOME_STRING_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "activityCodeGroupId": "PM-GENE1",
- "activityCodeGroup": "PM: General Actions (E)",
- "activityCodes": [
- {
- "activityCodeId": "A50",
- "activityCode": "Lubrication",
- "activityCodeHelpText": "English\nTHIS CODE IS NORMALLY USED FOR:\nAll kinds of lubrication and preservation.\n\nCOVERS/ USED FOR:\nLubrication. Lubrication/ Topping up/ Oil change/ Pre\nCorrosion protection/ Surface treatment.\n\nNorwegian\nNÅR BRUKES NORMALT KODENE:\nVed alle former for smøring og preservering.\n\nDEKKER / BRUKES OM:\nSmøreaktivitet / etterfylling / oljeskift / preserver\nkorrosjonsbeskyttelse / overflatebehandling.\n"
}
]
}
]
Get a list of all task codes which are in use for maintenance records.
To be used when adding new tasks to an existing failure report
Endpoint requires a query parameter maintenance-record-id. The values returned are dependent on the maintenance record type and possibly tag or equipment for the maintenance record.
/maintenance-records/task-codes?maintenance-record-id=45939208&api-version=v1
- Use when maintenance record already exist
/maintenance-records/task-codes?catalog-profile-id=PM-600&maintenance-record-type=failure-report&api-version=v1
- Use when maintenance record does not already exist. Get catalog-profile-id from tag or equipment to be used when the maintenance record is created
taskCodeHelpText is defined for relatively few codes.
maintenance-record-id | string The maintenance record to get task codes for |
catalog-profile-id | string The catalog profile of the functional location/equipment |
maintenance-record-type | string Enum: "failure-report" "activity-report" The type of maintenance record to get activities or |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/task-codes?maintenance-record-id=SOME_STRING_VALUE&catalog-profile-id=SOME_STRING_VALUE&maintenance-record-type=SOME_STRING_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "taskCodeGroupId": "PM-M2",
- "taskCodeGroup": "M2 Notification Tasks",
- "taskCodes": [
- {
- "taskCodeId": "1020",
- "taskCode": "Technical clarification needed",
- "taskCodeHelpText": "NÅR BRUKES NORMALT KODEN:\nNår tiltaket for å lukke denne saken er å reklamere/benytte gyldig\ngaranti\n\nDEKKER / BRUKES OM:\n- Tiltak som skal sikre at kvalitetsavvik rettes gjennom\n bruk av gyldig garantiavtale\n- Kan kombineres sammen med bruk av andre tiltakskoder\n\n***********************************************************\n\nWHEN IS THE CODE NORMALLY USED:\nWhen the way to close this case and avoid such warranty issues in the\nfuture is to contact the supplier through their own purchasing department\n\nCOVERS / USED FOR:\n- Measures to ensure that such incidents do not occur in future\n and that the supplier fixes or provides the\n mistake/missing/broken items at no additional cost to the\n company\n- Can be used in combination with other task codes\n"
}
]
}
]
Get a list of all reason codes used in modification proposal maintenance records.
/maintenance-records/reason-codes?maintenance-record-type=modification-proposal&api-version=v1
maintenance-record-type required | string Value: "modification-proposal" The type of maintenance record to get activities or |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-records/reason-codes?maintenance-record-type=SOME_STRING_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "reasonGroupId": "PMB-PRIM",
- "reasonGroup": "Proposal for improvement (modification)",
- "reasons": [
- {
- "reasonId": "MA70",
- "reason": "Environment"
}
]
}
]
Provide master data related to work orders for example standard text templates.
Work orders are used to describe and plan activities regarding the plants technical structure for operations, maintenance, improvement work, modifications, and projects.
Search for Work orders regardless of type through predefined filters. Each filter has a defined action and a set of parameters as described below.
The response can include most of the details for each work order.
If additional data is needed, it can be retrieved by using the endpoint represented in the _links.self
property.
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Introduced property calculationKey for operations.
Find Work orders which have been recently changed (created or updated) for a given plant. Normally, clients will provide parameters changed-since-datetime and plant-id and in this case the endpoint will return any changed work order from changed-since-datetime and to now. It is also possible to add before-datetime query parameter and the endpoint will then return any changed work order between changed-since-datetime and before-datetime. Parameters:
Find open work orders before the basic-end-date Parameters:
Find work orders for an id in an external partner system. Note: In theory different external system could have the same external-partner-id
but it's very unlikely. Clients are recommended to filter the response based on the plants they are intersted in to avoid any issues.
Parameters:
Work order operation actualPercentageComplete now represents progress reported through technical feedback. If the Work order operation is completed, the value of actualPercentageComplete will always be 100.
Filter by-external-partner-work-order-id added.
Bugfix related to plantId source.
Introduced property calculationKey for operations.
Added revisionId and revision to work order response (represents shutdown or campaign work).
filter required | string Enum: "recently-changed" "before-basic-end-date" "by-external-partner-work-order-id" Filter to limit the work order by |
plant-id | string Plant |
changed-since-datetime | string <date-time> Earliest datetime to returned changed work orders for |
before-datetime | string <date-time> Optional parameter to limit the response to only work orders changed after changed-since-datetime but before this datetime |
include-work-order-text | boolean The text of the Work order is time-consuming to retrieve. Set to false to avoid returning it |
include-work-order-operation-text | boolean The text of the Work order operation is time-consuming to retrieve. Set to false to avoid returning it |
include-work-order-types | Array of strings Items Enum: "correctiveWorkOrders" "preventiveWorkOrders" "modificationWorkOrders" "sasChangeWorkOrders" "projectWorkOrders" "subseaWorkOrders" Include which types of work orders. Use comma separated list of entries. |
basic-end-date | string <date-time> Earliest date to find maintenance plan history for (optional for filter) |
area-id | string Deprecated Deprecated. Use location-id instead |
location-id | string Structured location within the plant. Use /plants/{plant-id}/locations for possible values |
external-partner-work-order-id | string If work order was initially created in an external system, this represent the unique id of it |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders?filter=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&changed-since-datetime=SOME_STRING_VALUE&before-datetime=SOME_STRING_VALUE&include-work-order-text=SOME_BOOLEAN_VALUE&include-work-order-operation-text=SOME_BOOLEAN_VALUE&include-work-order-types=SOME_ARRAY_VALUE&basic-end-date=SOME_STRING_VALUE&area-id=SOME_STRING_VALUE&location-id=SOME_STRING_VALUE&external-partner-work-order-id=SOME_STRING_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "correctiveWorkOrders": [
- {
- "text": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nHvor er utstyret fysisk plassert (legg gjerne med bilde)?\n-\n Hvordan påvirker feilen utstyrets funksjon? ...\n",
- "_links": {
- "self": "/work-orders/corrective-work-orders/24983466?api-version=v1"
}, - "operations": [
- {
- "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
], - "preventiveWorkOrders": [
- {
- "text": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nHvor er utstyret fysisk plassert (legg gjerne med bilde)?\n-\n Hvordan påvirker feilen utstyrets funksjon? ...\n",
- "_links": {
- "self": "/work-orders/preventive-work-orders/24597659?api-version=v1"
}, - "operations": [
- {
- "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "workOrderId": "24597659",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "plannedDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12"
}
], - "modificationWorkOrders": [
- {
- "text": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nHvor er utstyret fysisk plassert (legg gjerne med bilde)?\n-\n Hvordan påvirker feilen utstyrets funksjon? ...\n",
- "_links": {
- "self": "/work-orders/modification-work-orders/24597659?api-version=v1"
}, - "operations": [
- {
- "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "workOrderId": "24597659",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12"
}
], - "sasChangeWorkOrders": [
- {
- "text": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nHvor er utstyret fysisk plassert (legg gjerne med bilde)?\n-\n Hvordan påvirker feilen utstyrets funksjon? ...\n",
- "_links": {
- "self": "/work-orders/sas-change-work-orders/24684145?api-version=v1"
}, - "operations": [
- {
- "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "Z06",
- "maintenanceType": "SAS Change Activity",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "projectWorkOrders": [
- {
- "text": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nHvor er utstyret fysisk plassert (legg gjerne med bilde)?\n-\n Hvordan påvirker feilen utstyrets funksjon? ...\n",
- "_links": {
- "self": "/work-orders/project-work-orders/24684145?api-version=v1"
}, - "operations": [
- {
- "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "isTimeOnlyWorkOrder": false,
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "015",
- "maintenanceType": "Project work",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
], - "subseaWorkOrders": [
- {
- "text": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nHvor er utstyret fysisk plassert (legg gjerne med bilde)?\n-\n Hvordan påvirker feilen utstyrets funksjon? ...\n",
- "_links": {
- "self": "/work-orders/subsea-work-orders/24597659?api-version=v1"
}, - "operations": [
- {
- "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "isObsoleteSubseaWorkOrderType": false,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
]
}
Query work orders for potentially complicated patterns where speed is of the essence.
planning-plants
is the only mandatory fields, but clients should normally provide at least one more query criteria.
A normal use case would be to first provide an initial query criteria based on user input. Then allow the end-users based on the resulting data select unwanted results based on specific attributes. The unwanted results should then be added to the exclusion list (for example keywords-not
or work-centers-not)
and the API call repeated.
max-results
have a default value of 1000 and is necessary to provide a quick response.
The multi-line text
property is not included by default, but can included by setting include-text=true
in the request. This will influence performance significantly.
The response schema differs slightly from the other work order endpoints as a result of the optimization for speed.
/work-orders-optimized-for-query?api-version=v1&planning-plants=1100,1101,1102&tags-all-of=10B9
- Return work orders where tag is 10B9
/work-orders-optimized-for-query?api-version=v1&planning-plants=1100,1101,1102&tags-all-of=AA15*&tags-not=AA15002
- Return work orders where tag has pattern AA15*
but is not AA15002
/work-orders-optimized-for-query?api-version=v1&planning-plants=1100,1101,1102&keyworkds-all-of=heli,male
- Return work orders where the ttle contains both heli
and male
/work-orders-optimized-for-query?api-version=v1&planning-plants=1100,1101,1102&status-any-of=PREP,RDEX&created-after-date=2021-06-01
- Return work orders with status PREP or RDEX and created after a certain date
Added revisionId to work order response (represents shutdown or campaign work).
planning-plants required | Array of strings Example: planning-plants=1100 Query based on planningPlantIds (any-of) |
keywords-all-of | Array of strings Example: keywords-all-of=stillas Query based on keywords in title (case insensitive) |
keywords-any-of | Array of strings Example: keywords-any-of=sand Query based on keywords in title (case insensitive) |
keywords-not | Array of strings Example: keywords-not=12M Query based on keywords in title (case insensitive) |
tags-all-of | Array of strings Example: tags-all-of=1A*-6A Query based on tagIds. Expressions with wildcards can be used for example |
tags-any-of | Array of strings Example: tags-any-of=BF Query based on tagIds. Expressions with wildcards can be used for example |
tags-not | Array of strings Example: tags-not=AE5566 Query based on tagIds. Expressions with wildcards can be used for example |
work-centers-any-of | Array of strings Example: work-centers-any-of=PPMMEC Query based on workCenterIds |
work-centers-not | Array of strings Example: work-centers-not=SPIAUT Query based on workCenterIds |
systems-any-of | Array of strings Example: systems-any-of=73 Query based on systemIds |
systems-not | Array of strings Example: systems-not=99 Query based on systemIds |
locations-any-of | Array of strings Example: locations-any-of=MG29 Query based on locationIds |
locations-not | Array of strings Example: locations-not=W14 Query based on locationIds |
sort-field-any-of | Array of strings Example: sort-field-any-of=RS1_11_S Query based on sortField ()used for grouping work orders) |
sort-field-not | Array of strings Example: sort-field-not=PRS10239.WP12 Query based on sortField (used for grouping work orders) |
revision-code-any-of | Array of strings Example: revision-code-any-of=FACILITY Query based on revisionCode |
revision-code-not | Array of strings Example: revision-code-not=WELL Query based on sortField (often used for revision codes) |
status-all-of | Array of strings Example: status-all-of=RDEX Query based on statusIds (not all statuses are supported) |
status-any-of | Array of strings Example: status-any-of=TECO Query based on statusIds (not all statuses are supported) |
status-not | Array of strings Example: status-not=PREP Query based on statusIds (not all statuses are supported) |
is-open | boolean Example: is-open=true Include only open work orders or only closed work orders. By default, all work orders are included. |
created-after-date | string <date> Earliest creation date to include |
created-before-date | string <date> Latest creation date to include |
work-order-types | Array of strings Items Enum: "correctiveWorkOrders" "preventiveWorkOrders" "modificationWorkOrders" "sasChangeWorkOrders" "projectWorkOrders" "subseaWorkOrders" Limit to specific work order types (one-of) |
sort-by | Array of strings Items Enum: "createdDateTime desc" "createdDateTime asc" "workOrderId desc" "workOrderId asc" "systemId desc" "systemId asc" "locationId desc" "locationId asc" "sortField desc" "sortField asc" "title desc" "title asc" Property to sort the results by |
include-text | boolean Default: false Include the multi-line text of the work order (will cause the endpoint to go significantly slower) |
max-results | number Example: max-results=100 Maximum number of results to include. Default is 1000. |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders-optimized-for-query?planning-plants=SOME_ARRAY_VALUE&keywords-all-of=SOME_ARRAY_VALUE&keywords-any-of=SOME_ARRAY_VALUE&keywords-not=SOME_ARRAY_VALUE&tags-all-of=SOME_ARRAY_VALUE&tags-any-of=SOME_ARRAY_VALUE&tags-not=SOME_ARRAY_VALUE&work-centers-any-of=SOME_ARRAY_VALUE&work-centers-not=SOME_ARRAY_VALUE&systems-any-of=SOME_ARRAY_VALUE&systems-not=SOME_ARRAY_VALUE&locations-any-of=SOME_ARRAY_VALUE&locations-not=SOME_ARRAY_VALUE&sort-field-any-of=SOME_ARRAY_VALUE&sort-field-not=SOME_ARRAY_VALUE&revision-code-any-of=SOME_ARRAY_VALUE&revision-code-not=SOME_ARRAY_VALUE&status-all-of=SOME_ARRAY_VALUE&status-any-of=SOME_ARRAY_VALUE&status-not=SOME_ARRAY_VALUE&is-open=true&created-after-date=SOME_STRING_VALUE&created-before-date=SOME_STRING_VALUE&work-order-types=SOME_ARRAY_VALUE&sort-by=SOME_ARRAY_VALUE&include-text=SOME_BOOLEAN_VALUE&max-results=100' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "workOrderId": "24597659",
- "workOrderTypeId": "correctiveWorkOrder",
- "tagId": "BF",
- "tagPlantId": "1100",
- "title": "Modifikasjon av brannmur",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "revisionId": "PS02_21",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "revisionCodeId": "PS02_21",
- "isOpen": true,
- "hasStatusPREP": true,
- "hasStatusPRCO": true,
- "hasStatusRDEX": true,
- "hasStatusSTRT": true,
- "hasStatusRDOP": true,
- "hasStatusCANC": true,
- "hasStatusTECO": true,
- "_links": {
- "related": "/work-orders/<type>-work-orders/24597659"
}
}
]
Search for Work orders changes done recently.
The response contains only minimum information about the change made to the work orders.
For more information about each individual work order, use the lookup end-point referenced in _links.related
.
This endpoint relies on change log being activated for the plant in question.
Find Work orders which have recently had a change in a specific property. Parameters:
basicStartDateTime
and basicEndDateTime
include-work-order-types is an optional parameter to define which work orders to return changes for.
The response contains list of changes to work orders (not list of work orders changed). Therefore, an individual work order may be represented multiple times. Consumers can use changeDateTime to identify the last change.
filter required | string Value: "recently-changed-property" Filter to limit the work order by |
plant-id | string Plant |
changed-since-datetime | string <date-time> Earliest datetime to returned changed work orders for |
property-name | string Enum: "basicStartDateTime" "basicEndDateTime" The property which was recently changed |
include-work-order-types | Array of strings Items Enum: "correctiveWorkOrders" "preventiveWorkOrders" "modificationWorkOrders" "sasChangeWorkOrders" "projectWorkOrders" "subseaWorkOrders" Include which types of work orders. Use comma separated list of entries. |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders-change-log?filter=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&changed-since-datetime=SOME_STRING_VALUE&property-name=SOME_STRING_VALUE&include-work-order-types=SOME_ARRAY_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "correctiveWorkOrdersChanged": [
- {
- "_links": {
- "related": "/work-orders/<type>-work-orders/24597659"
}, - "workOrderId": "24597659",
- "property": "basicStartDateTime",
- "changeDateTime": "2021-01-15T13:10:00Z",
- "oldValue": "2020-09-16T00:00:00Z",
- "newValue": "2020-10-16T00:00:00Z"
}
], - "preventiveWorkOrdersChanged": [
- {
- "_links": {
- "related": "/work-orders/<type>-work-orders/24597659"
}, - "workOrderId": "24597659",
- "property": "basicStartDateTime",
- "changeDateTime": "2021-01-15T13:10:00Z",
- "oldValue": "2020-09-16T00:00:00Z",
- "newValue": "2020-10-16T00:00:00Z"
}
], - "modificationWorkOrdersChanged": [
- {
- "_links": {
- "related": "/work-orders/<type>-work-orders/24597659"
}, - "workOrderId": "24597659",
- "property": "basicStartDateTime",
- "changeDateTime": "2021-01-15T13:10:00Z",
- "oldValue": "2020-09-16T00:00:00Z",
- "newValue": "2020-10-16T00:00:00Z"
}
], - "sasChangeWorkOrdersChanged": [
- {
- "_links": {
- "related": "/work-orders/<type>-work-orders/24597659"
}, - "workOrderId": "24597659",
- "property": "basicStartDateTime",
- "changeDateTime": "2021-01-15T13:10:00Z",
- "oldValue": "2020-09-16T00:00:00Z",
- "newValue": "2020-10-16T00:00:00Z"
}
], - "projectWorkOrdersChanged": [
- {
- "_links": {
- "related": "/work-orders/<type>-work-orders/24597659"
}, - "workOrderId": "24597659",
- "property": "basicStartDateTime",
- "changeDateTime": "2021-01-15T13:10:00Z",
- "oldValue": "2020-09-16T00:00:00Z",
- "newValue": "2020-10-16T00:00:00Z"
}
], - "subseaWorkOrdersChanged": [
- {
- "_links": {
- "related": "/work-orders/<type>-work-orders/24597659"
}, - "workOrderId": "24597659",
- "property": "basicStartDateTime",
- "changeDateTime": "2021-01-15T13:10:00Z",
- "oldValue": "2020-09-16T00:00:00Z",
- "newValue": "2020-10-16T00:00:00Z"
}
]
}
Work orders operations are part of a work order and describe the planned activitied.
Update the work order operation for all work order types.
The ´operation-id´ parameter to use in the url can be found using the various lookup and search endpoints for work orders. ´operation-id´ consist of two internal ids from the ERP system called routing number and counter separated by the -
character.
The following fields are possible to update:
MSO
- Must start on, SNET
- Start no earlier than or SNLT
- Start no later thanMFO
- Must finish on, FNET
- Finish no earlier than or FNLT
- Finish no later thanoperation-id required | string |
Update of Work order details
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Enum: "/isCompleted" "/actualPercentageComplete" "/schedulingStartConstraintId" "/schedulingStartConstraintDateTime" "/schedulingFinishConstraintId" "/schedulingFinishConstraintDateTime" Path indicating the property to be impacted by the operation |
required | string or boolean or number Value to be assigned to a resource property based on the operation and path. /schedulingStartConstraintId allowed values:
/schedulingFinishConstraintId allowed values:
|
[- {
- "op": "replace",
- "path": "/schedulingStartConstraintId",
- "value": "SNET"
}, - {
- "op": "replace",
- "path": "/schedulingStartConstraintDateTime",
- "value": "2022-12-01T00:00:00Z"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
This endpoint will be de-activated in Production until release 1.7.0. It can still be tested in our QA environment.
Add materials to a work order operation (of any work order type).
The ´operation-id´ parameter to use in the url can be found using the various lookup and search endpoints for work orders. ´operation-id´ consist of two internal ids from the ERP system called routing number and counter separated by the -
character.
There are two types of materials which can be added to work orders:
Requests need to supply either materialId or equipmentId (not both)
operation-id required | string |
Add material details
quantity required | number <double> >= 0 |
quantityUnitId required | string Commonly used values: PC - Pieces L - Liters KG - Kilograms M - Meters |
materialId | string |
equipmentId | string |
requiredDatetime | string <date-time> Nullable Specifies the date and time for when the material is needed at its destination |
[- {
- "equipmentId": "12218664",
- "quantity": 1,
- "quantityUnitId": "PC"
}, - {
- "equipmentId": "12146835",
- "quantity": 1,
- "quantityUnitId": "PC"
}
]
[- {
- "reservationId": "25457443-001",
- "materialId": "741466",
- "material": "LIGHT,FIXTURE,26w,SZ 4155.100,RITTAL",
- "quantity": 1,
- "quantityUnit": "string",
- "quantityUnitId": "string",
- "location": "P10N utenfor lager",
- "holdDeliveryOnshore": true,
- "requiredDatetime": "2019-08-24T14:15:22Z"
}
]
Remove a material from a work order operation (of any work order type).
The ´operation-id´ parameter to use in the url can be found using the various lookup and search endpoints for work orders. ´operation-id´ consist of two internal ids from the ERP system called routing number and counter separated by the -
character.
The ´reservation-id´ parameter to use in the url can be found using the include-materials query parameter to work order lookup.
operation-id required | string |
reservation-id required | string Reservation id for the material found through work order lookup with include-materials |
curl --request DELETE \ --url https://api-test.gateway.equinor.com/maintenance-api/work-order-operations/%7Boperation-id%7D/materials/%7Breservation-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Covers updating relationships between Work order and other resources such as maintenance records, tags and material
Add new relationship between a work order and a maintenance record.
For source
type ObjectList
, the relationship will be stored in the object list of the work order.
This will add a relationship that is accessible by lookup requests to the work order.
For source
type TechnicalFeedback
, the relationship will be stored as part of the technical feedback for the work order. Depending on technicalFeedbackParameters.statusId
and technicalFeedbackParameters.reasonId
, different types of maintenance records are required (either failureReport
or activityReport
). If these requirements are not fulfilled, the response status code will be 409 - Conflict.
This endpoint returns no response data. Perform a lookup request for the specific work order type to get updated information. This is currently not possible for technical feedback, but is expected to be added in the future.
The maintenance record must not be closed.
Added relationship of type TechnicalFeedback
.
work-order-id required | string Id of the work order (can be any type) |
Define maintenance record to add relationship to
recordId required | string Id of the maintenance record |
source | string Default: "ObjectList" Enum: "ObjectList" "TechnicalFeedback" Defines the type of relationship to the work order |
sourceId | string Reference to the specific element the relationship will be defined for. The specific format for this value will depend on the |
object For source |
{- "recordId": "45894100",
- "source": "ObjectList"
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Remove an existing relationship between a work order and a maintenance record.
Internally in the ERP system, this relationship will be removed from the object list of the work order.
This endpoint returns no response data. Perform a lookup request for the specific work order type to get updated information.
In some case, it will not be possible to remove a maintenance record relationship to a work order. For example, when a corrective work order is created from a failure report, it is not possible to remove this initial relationship (internally this is refered to as the header notification of the work order).
work-order-id required | string Id of the work order (can be any type) |
record-id required | string Id of the maintenance record (can be any type) |
curl --request DELETE \ --url https://api-test.gateway.equinor.com/maintenance-api/work-order-relationships/%7Bwork-order-id%7D/related-maintenance-records/%7Brecord-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Used for all corrective maintenance, i.e. all maintenance that is intended to restore the equipment's technical condition, so that it can perform its assigned function.
Corrective work orders can also be used for activities not directly connected with equipment failure (corrective), but as follows same work process for prioritisation and scheduling.
Lookup single Corrective Work order with related information
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Work order operation actualPercentageComplete now represents progress reported through technical feedback. If the Work order operation is completed, the value of actualPercentageComplete will always be 100.
If work-order-id exist, but is not a correctiveWorkOrder
, the response is a HTTP 301 Moved Permanently with the url to the resource in the HTTP header Location.
Introduced holdDeliveryOnshore and requiredDatetime properties for materials.
Introduced property calculationKey for operations.
Added createdDateTime for attachments.
Added revisionId and revision to work order response (represents shutdown or campaign work).
work-order-id required | string |
include-operations | boolean Default: true Include Work order operations |
include-materials | boolean Default: true Include materials for Work order operations |
include-maintenance-records | boolean Default: false Include related maintenance records (from object list) |
include-attachments | boolean Default: false Include Work order attachments (on header and for operation) |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-tag-details | boolean Default: false Include detailed for the main tag of the Work order |
include-related-tags | boolean Default: false Include related tags (from object list) |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders/corrective-work-orders/%7Bwork-order-id%7D?include-operations=SOME_BOOLEAN_VALUE&include-materials=SOME_BOOLEAN_VALUE&include-maintenance-records=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE&include-status-details=SOME_BOOLEAN_VALUE&include-tag-details=SOME_BOOLEAN_VALUE&include-related-tags=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "operations": [
- {
- "materials": [
- {
- "reservationId": "25457443-001",
- "materialId": "741466",
- "material": "LIGHT,FIXTURE,26w,SZ 4155.100,RITTAL",
- "quantity": 1,
- "quantityUnit": "string",
- "quantityUnitId": "string",
- "location": "P10N utenfor lager",
- "holdDeliveryOnshore": true,
- "requiredDatetime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "tagsRelated": [
- {
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}
], - "maintenanceRecords": [
- {
- "recordId": "45894100",
- "recordResource": "maintenance-records/modification-proposals",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "source": "ObjectList",
- "_links": {
- "self": "/maintenance-records/failure-reports/45894100?api-version=v1"
}
}
], - "tagDetails": {
- "isInactive": false,
- "parentTagId": "AT5566",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "ABCId": "5",
- "ABC": "Crit.=M & Red.=B",
- "locationId": "W14",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "catalogProfileId": "PM-160",
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}, - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "text": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nHvor er utstyret fysisk plassert (legg gjerne med bilde)?\n-\n\nHvordan påvirker feilen utstyrets funksjon? ...\n",
- "workOrderTypeId": "correctiveWorkOrder",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
Update corrective work order.
Supports:
/plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values)Append to text follows requirement I-103209 - Notation in long text field - Upstream offshore
.
Newest information in text is added above existing information and is automatically signed with date and full name of logged on user.
Added additional properties to update
Adjusted logic for append text to work order. Newest information in text is now added above existing information.
Added possibility for update of sortField and revisionId.
work-order-id required | string |
The information to be updated
op | string Enum: "append" "replace" JSON Patch operation according to RFC6902. Operation Operation |
path | string Enum: "/text" "/workCenterId" "/workCenterPlantId" "/tagId" "/tagPlantId" "/basicStartDateTime" "/basicEndDateTime" "/revisionId" "/sortField" The property to be updated by the non-trivial patch operation.
|
value | string Value to be assigned to a resource property based on the operation and path. |
[- {
- "op": "append",
- "path": "/text",
- "value": "Text to append\nMulti-line"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Add operations
work-order-id required | string |
Operations to add to existing Work order
title required | string [ 0 .. 40 ] characters |
operation required | string Id of operation user is familiar with |
workCenterId | string |
workCenterPlantId | string |
text | string |
plannedWorkDuration | string Duration as defined in ISO8601 |
plannedWorkHours | string Duration as defined in ISO8601 |
capacityCount | integer <int32> |
schedulingStartConstraintId | string Enum: "MSO" "SNET" "SNLT" Constraint: * |
schedulingStartConstraintDateTime | string <date-time> |
schedulingFinishConstraintId | string Enum: "MFO" "FNET" "FNLT" Constraint: * |
schedulingFinishConstraintDateTime | string <date-time> |
isScheduledExternally | boolean |
earliestStartDateTime | string <date-time> |
earliestFinishDateTime | string <date-time> |
[- {
- "operation": "0010",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkHours": "P0Y0M0DT4H0M0S",
- "capacityCount": 2,
- "text": "Bygge stillas\n3 x 3 x 5 meter",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}, - {
- "operation": "0020",
- "title": "Bytte del",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkHours": "P0Y0M0DT3H30M0S",
- "capacityCount": 1,
- "text": "",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Endpoint is deprecated as of 06.2021.
It is replaced by a generic endpoint for all work order types /work-order-operations/{operation-id}
.
Update the work order operation. Currently, we support completing the operation but additional functionality will be added in future releases.
Deprecated endpoint
work-order-id required | string |
operation required | string Example: 0020 |
Work order operation to update
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/isCompleted" Path indicating the property to be impacted by the operation |
required | boolean or string Value to be assigned to a resource property based on the operation and path. |
{- "op": "replace",
- "path": "/isCompleted",
- "value": true
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Add time ticket for work performed
Text multi-line property now is persisted as expected in ERP system.
work-order-id required | string |
operation required | string Example: 0020 |
Time ticket to add to operation
workHours required | string The work performed for the operation. Duration as defined in ISO8601 |
remainingWorkHours | string New estimate of remaining work for the operation. In Duration format as defined in ISO8601 |
workStartDateTime | string <date-time> Nullable |
workEndDateTime | string <date-time> Nullable |
workCenterId | string Resource which performed the work. Default is based on Work order operation. |
workCenterPlantId | string Resource which performed the work. Default is based on Work order operation. |
title | string <= 40 characters Title for time ticket |
text | string Multi-line description for the time ticket |
{- "workHours": "P0Y0M0DT2H0M0S",
- "remainingWorkHours": "P0Y0M0DT2H0M0S",
- "workStartDateTime": "2020-11-01T00:00:00Z",
- "workEndDateTime": "2020-11-05T00:00:00Z",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "title": "Prep jobb",
- "text": "Multi-line text\nDescribing the work done"
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Download single attachment for corrective Work order
work-order-id required | string |
attachment-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/work-orders/corrective-work-orders/%7Bwork-order-id%7D/attachments/%7Battachment-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Activate or deactivate status for Work order.
Overview of how status are used can be found in Equinor's governing document GL1561 - Work orders and notifications types
To identify which status the work order currently has perform a request to: work-orders/corrective-work-orders/{{work-order-id}}?include-status-details=true
The endpoint supports most status activiation such as:
Deactivation is supported in most cases where there is no interdependency between statuses. For status with a statusOrder value, deactivation is not necessary (nor supported) as the business logic will handle the switch.
The following statuses are not supported at the moment and will return a HTTP 405 response:
Support for releasing a work order by setting the REL status.
Support for complete-outstanding-maintenance-records query parameter for TECO and CLSD statuses.
Support for deactivating TECO status
Support for ActivatedDateTime for TECO status. It is an optional parameter which allows to overwrite the default reference date for TECO. If no value is provided, the value will be set to current timestamp.
Parameter complete-outstanding-maintenance-records set to true will close maintenance records which have a relationship to the work order via the ObjectList
.
work-order-id required | string |
status-id required | string |
complete-outstanding-maintenance-records | boolean Default: true Additional parameter to activation of TECO and CLSD statuses. Determines if related maintenance records should be closed as well. |
Work order status to update
isActive required | boolean |
activatedDateTime | string <date-time> Nullable |
{- "isActive": true
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Search for corrective Work orders through predefined filters. Each filter has a defined action and a set of parameters as described below.
The response does not include all details for each corrective work order. This can be found by subsequent call to lookup corrective-work-order
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Corrective work orders based on recent status activations for the work orders. Parameters:
Find open Corrective work orders before the required-end-date Parameters:
Find preventive work orders by maintenance type. Response will only include open work orders. Parameters:
Added filter by-maintenance-type-id.
Added system-id as optional parameter til filter before-required-end-date.
Added revisionId and revision to work order response (represents shutdown or campaign work).
filter required | string Enum: "recent-status-activations" "same-maintenance-plan" "before-required-end-date" "by-maintenance-type-id" Filter to limit the Corrective work order by |
status-id | string Status |
plant-id | string Plant |
max-days-since-activation | integer <int32> [ 0 .. 255 ] Define how many days from the current day to include results for. 0 if only include for today |
max-work-orders | integer <int32> >= 0 Maximal numbers of results returned (optional for filter) |
area-id | string Deprecated Deprecated. Use location-id instead |
location-id | string Structured location within the plant. Use /plants/{plant-id}/locations for possible values |
required-end-date | string <date> placeholder |
system-id | string Deprecated system-id of the corrective work order |
maintenance-type-id | string Example: maintenance-type-id=017 Type of maintenance for the work order |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders/corrective-work-orders?filter=SOME_STRING_VALUE&status-id=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&max-days-since-activation=SOME_INTEGER_VALUE&max-work-orders=SOME_INTEGER_VALUE&area-id=SOME_STRING_VALUE&location-id=SOME_STRING_VALUE&required-end-date=SOME_STRING_VALUE&system-id=SOME_STRING_VALUE&maintenance-type-id=017' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
]
Create new Corrective Work order based on a supplied failure report.
It's possible to supply operations in the create operation. If no operations are passed, a default operation will be created automatically.
To lookup the created corrective work order use endpoint /work-orders/corrective-work-orders/{work-order-id}
Added externalPartnerWorkOrderId property to be used as reference to work order in external partner system.
Added revisionId and revision to work order response (represents shutdown or campaign work).
Added sortField and revisionId to create request. Use /plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values for revisionId
.
Corrective Work order to create
planningPlantId required | string |
workCenterId required | string |
workCenterPlantId required | string |
title required | string |
plantId required | string |
failureReportId required | string |
externalPartnerWorkOrderId | string Work order id as represented in external partner system |
Array of objects (WorkOrderOperationListCreate) | |
tagId | string |
tagPlantId | string |
plannerGroupId | string |
maintenanceTypeId | string |
basicStartDateTime | string <date-time> |
basicEndDateTime | string <date-time> |
revisionId | string An identifier to the revision (shutdown or campaign work) this work order is related to. Read possible values from |
sortField | string Field used to assist in grouping/sorting Work orders. Unstructured field used non-consistently between plants |
locationId | string Structured location within the plant where the tag is located |
areaId | string Deprecated Deprecated 01.2021 - Use locationId instead |
text | string |
{- "failureReportId": "45836077",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "workCenterId": "CO2PIP",
- "workCenterPlantId": "1100",
- "title": "14xx/Installere flowline CD2",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "plantId": "1100",
- "sortField": "PRS10239.WP12",
- "revisionId": "PV04_21",
- "basicStartDateTime": "2020-11-01T00:00:00Z",
- "basicEndDateTime": "2021-03-01T00:00:00Z",
- "text": "Project for replacing flowing on CD2\n",
- "operations": [
- {
- "operation": "0010",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": "Bygge stillas\n3 x 3 x 5 meter"
}, - {
- "operation": "0020",
- "title": "Bytte del",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": ""
}
]
}
{- "text": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nHvor er utstyret fysisk plassert (legg gjerne med bilde)?\n-\n\nHvordan påvirker feilen utstyrets funksjon? ...\n",
- "workOrderTypeId": "correctiveWorkOrder",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
Used for work orders generated from pre-defined preventive maintenance programs.
Lookup single Preventive Work order with related information.
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Work order operation actualPercentageComplete now represents progress reported through technical feedback. If the Work order operation is completed, the value of actualPercentageComplete will always be 100.
If work-order-id exist, but is not a preventiveWorkOrder
, the response is a HTTP 301 Moved Permanently with the url to the resource in the HTTP header Location.
Introduced holdDeliveryOnshore and requiredDatetime properties for materials.
Introduced property calculationKey for operations.
Added createdDateTime for attachments.
Added revisionId and revision to work order response (represents shutdown or campaign work).
work-order-id required | string |
include-operations | boolean Default: true Include Work order operations |
include-materials | boolean Default: false Include materials for Work order operations |
include-maintenance-records | boolean Default: false Include related maintenance records (from object list and technical feedback) |
include-maintenance-plan-details | boolean Default: false Include details for maintenance plan |
include-attachments | boolean Default: false Include Work order attachments (on header and for operation) |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-tag-details | boolean Default: false Include detailed for the main tag of the Work order |
include-related-tags | boolean Default: false Include related tags (from object list) |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders/preventive-work-orders/%7Bwork-order-id%7D?include-operations=SOME_BOOLEAN_VALUE&include-materials=SOME_BOOLEAN_VALUE&include-maintenance-records=SOME_BOOLEAN_VALUE&include-maintenance-plan-details=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE&include-status-details=SOME_BOOLEAN_VALUE&include-tag-details=SOME_BOOLEAN_VALUE&include-related-tags=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "operations": [
- {
- "materials": [
- {
- "reservationId": "25457443-001",
- "materialId": "741466",
- "material": "LIGHT,FIXTURE,26w,SZ 4155.100,RITTAL",
- "quantity": 1,
- "quantityUnit": "string",
- "quantityUnitId": "string",
- "location": "P10N utenfor lager",
- "holdDeliveryOnshore": true,
- "requiredDatetime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "tagsRelated": [
- {
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}
], - "maintenanceRecords": [
- {
- "recordId": "45894100",
- "recordResource": "maintenance-records/modification-proposals",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "source": "ObjectList",
- "_links": {
- "self": "/maintenance-records/failure-reports/45894100?api-version=v1"
}
}
], - "maintenancePlan": {
- "maintenancePlanId": "1108244",
- "maintenancePlanItemId": "10149640",
- "planDate": "2019-08-24"
}, - "tagDetails": {
- "isInactive": false,
- "parentTagId": "AT5566",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "ABCId": "5",
- "ABC": "Crit.=M & Red.=B",
- "locationId": "W14",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "catalogProfileId": "PM-160",
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}, - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "text": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nHvor er utstyret fysisk plassert (legg gjerne med bilde)?\n-\n\nHvordan påvirker feilen utstyrets funksjon? ...\n",
- "workOrderTypeId": "preventiveWorkOrder",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "workOrderId": "24597659",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "plannedDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12"
}
Update preventive work order.
Supports:
/plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values)Append to text follows requirement I-103209 - Notation in long text field - Upstream offshore
.
Newest information in text is added above existing information and is automatically signed with date and full name of logged on user.
Added additional properties to update
Adjusted logic for append text to work order. Newest information in text is now added above existing information.
Added possibility for update of sortField and revisionId.
work-order-id required | string |
The information to be updated
op | string Enum: "append" "replace" JSON Patch operation according to RFC6902. Operation Operation |
path | string Enum: "/text" "/workCenterId" "/workCenterPlantId" "/tagId" "/tagPlantId" "/basicStartDateTime" "/basicEndDateTime" "/revisionId" "/sortField" The property to be updated by the non-trivial patch operation.
|
value | string Value to be assigned to a resource property based on the operation and path. |
[- {
- "op": "append",
- "path": "/text",
- "value": "Text to append\nMulti-line"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Add operations
work-order-id required | string |
Operations to add to existing Work order
title required | string [ 0 .. 40 ] characters |
operation required | string Id of operation user is familiar with |
workCenterId | string |
workCenterPlantId | string |
text | string |
plannedWorkDuration | string Duration as defined in ISO8601 |
plannedWorkHours | string Duration as defined in ISO8601 |
capacityCount | integer <int32> |
schedulingStartConstraintId | string Enum: "MSO" "SNET" "SNLT" Constraint: * |
schedulingStartConstraintDateTime | string <date-time> |
schedulingFinishConstraintId | string Enum: "MFO" "FNET" "FNLT" Constraint: * |
schedulingFinishConstraintDateTime | string <date-time> |
isScheduledExternally | boolean |
earliestStartDateTime | string <date-time> |
earliestFinishDateTime | string <date-time> |
[- {
- "operation": "0010",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkHours": "P0Y0M0DT4H0M0S",
- "capacityCount": 2,
- "text": "Bygge stillas\n3 x 3 x 5 meter",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}, - {
- "operation": "0020",
- "title": "Bytte del",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkHours": "P0Y0M0DT3H30M0S",
- "capacityCount": 1,
- "text": "",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Endpoint is deprecated as of 06.2021.
It is replaced by a generic endpoint for all work order types /work-order-operations/{operation-id}
.
Update the work order operation. Currently, we support completing the operation but additional functionality will be added in future releases.
Deprecated endpoint.
work-order-id required | string |
operation required | string Example: 0020 |
Work order operation to update
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/isCompleted" Path indicating the property to be impacted by the operation |
required | boolean or string Value to be assigned to a resource property based on the operation and path. |
{- "op": "replace",
- "path": "/isCompleted",
- "value": true
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Add time ticket for work performed
Text multi-line property now is persisted as expected in ERP system.
work-order-id required | string |
operation required | string Example: 0020 |
Time ticket to add to operation
workHours required | string The work performed for the operation. Duration as defined in ISO8601 |
remainingWorkHours | string New estimate of remaining work for the operation. In Duration format as defined in ISO8601 |
workStartDateTime | string <date-time> Nullable |
workEndDateTime | string <date-time> Nullable |
workCenterId | string Resource which performed the work. Default is based on Work order operation. |
workCenterPlantId | string Resource which performed the work. Default is based on Work order operation. |
title | string <= 40 characters Title for time ticket |
text | string Multi-line description for the time ticket |
{- "workHours": "P0Y0M0DT2H0M0S",
- "remainingWorkHours": "P0Y0M0DT2H0M0S",
- "workStartDateTime": "2020-11-01T00:00:00Z",
- "workEndDateTime": "2020-11-05T00:00:00Z",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "title": "Prep jobb",
- "text": "Multi-line text\nDescribing the work done"
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Download single attachment for preventive Work order
record-id required | string |
attachment-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/work-orders/preventive-work-orders/%7Brecord-id%7D/attachments/%7Battachment-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Activate or deactivate status for Work order.
Overview of how status are used can be found in Equinor's governing document GL1561 - Work orders and notifications types
To identify which status the work order currently has perform a request to: work-orders/preventive-work-orders/{{work-order-id}}?include-status-details=true
The endpoint supports most status activiation such as:
Deactivation is supported in most cases where there is no interdependency between statuses. For status with a statusOrder value, deactivation is not necessary (nor supported) as the business logic will handle the switch.
The following statuses are not supported at the moment and will return a HTTP 405 response:
Support for releasing a work order by setting the REL status.
Support for deactivating TECO status
Support for ActivatedDateTime for TECO status. It is an optional parameter which allows to overwrite the default reference date for TECO. If no value is provided, the value will be set to current timestamp.
work-order-id required | string |
status-id required | string |
Work order status to update
isActive required | boolean |
activatedDateTime | string <date-time> Nullable |
{- "isActive": true
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Search for preventive Work orders through predefined filters. Each filter has a defind action and a set of parameters as described below.
The response does not include all details for each preventive work order. This can be found by subsequent call to lookup preventive-work-order
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Based on the maintenance plan of the Preventive Work order provided, find other instances sorted by start date Parameters:
Preventive work orders based on recent status activations for the work order. Parameters:
Find open Preventive work orders before the before-planned-date Parameters:
Find preventive work orders by maintenance type. Response will only include open work orders. Parameters:
Added filter by-maintenance-type-id.
Added system-id as optional parameter til filter before-planned-date.
Added revisionId and revision to work order response (represents shutdown or campaign work).
filter required | string Enum: "recent-status-activations" "before-planned-date" "by-maintenance-type-id" "maintenance-plan-history" Filter to limit the failure reports by |
status-id | string Status |
plant-id | string Plant |
max-days-since-activation | integer <int32> [ 0 .. 255 ] Define how many days from the current day to include results for. 0 if only include for today |
work-order-id | string Preventive Work order id |
earliest-date | string <date> Earliest date to find maintenance plan history for (optional for filter) |
max-work-orders | integer <int32> Maximal numbers of results returned (optional for filter) |
location-id | string Structured location within the plant. Use /plants/{plant-id}/locations for possible values |
area-id | string <date> Deprecated Deprecated. Use locationId instead |
planned-date | string <date> Earliest date to find maintenance plan history for (optional for filter) |
system-id | string Deprecated system-id of the preventive work order |
maintenance-type-id | string Example: maintenance-type-id=005 Type of maintenance for the work order |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders/preventive-work-orders?filter=SOME_STRING_VALUE&status-id=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&max-days-since-activation=SOME_INTEGER_VALUE&work-order-id=SOME_STRING_VALUE&earliest-date=SOME_STRING_VALUE&max-work-orders=SOME_INTEGER_VALUE&location-id=SOME_STRING_VALUE&area-id=SOME_STRING_VALUE&planned-date=SOME_STRING_VALUE&system-id=SOME_STRING_VALUE&maintenance-type-id=005' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "workOrderId": "24597659",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "plannedDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12"
}
]
Used as a tool to ensure change control of software changes to Safety and Automation Systems.
Download single attachment for SAS Change Work order
work-order-id required | string |
attachment-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/work-orders/sas-change-work-orders/%7Bwork-order-id%7D/attachments/%7Battachment-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Lookup single SAS Change Work order with related information
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Work order operation actualPercentageComplete now represents progress reported through technical feedback. If the Work order operation is completed, the value of actualPercentageComplete will always be 100.
If work-order-id exist, but is not a sasChangeWorkOrder
, the response is a HTTP 301 Moved Permanently with the url to the resource in the HTTP header Location.
Introduced holdDeliveryOnshore and requiredDatetime properties for materials.
Introduced property calculationKey for operations.
Added createdDateTime for attachments.
Added revisionId and revision to work order response (represents shutdown or campaign work).
work-order-id required | string |
include-operations | boolean Default: true Include Work order operations |
include-materials | boolean Default: true Include materials for Work order operations |
include-maintenance-records | boolean Default: false Include related maintenance records (from object list) |
include-attachments | boolean Default: false Include Work order attachments (on header and for operation) |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-tag-details | boolean Default: false Include detailed for the main tag of the Work order |
include-related-tags | boolean Default: false Include related tags (from object list) |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders/sas-change-work-orders/%7Bwork-order-id%7D?include-operations=SOME_BOOLEAN_VALUE&include-materials=SOME_BOOLEAN_VALUE&include-maintenance-records=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE&include-status-details=SOME_BOOLEAN_VALUE&include-tag-details=SOME_BOOLEAN_VALUE&include-related-tags=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "operations": [
- {
- "materials": [
- {
- "reservationId": "25457443-001",
- "materialId": "741466",
- "material": "LIGHT,FIXTURE,26w,SZ 4155.100,RITTAL",
- "quantity": 1,
- "quantityUnit": "string",
- "quantityUnitId": "string",
- "location": "P10N utenfor lager",
- "holdDeliveryOnshore": true,
- "requiredDatetime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "tagsRelated": [
- {
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}
], - "maintenanceRecords": [
- {
- "recordId": "45894100",
- "recordResource": "maintenance-records/modification-proposals",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "source": "ObjectList",
- "_links": {
- "self": "/maintenance-records/failure-reports/45894100?api-version=v1"
}
}
], - "tagDetails": {
- "isInactive": false,
- "parentTagId": "AT5566",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "ABCId": "5",
- "ABC": "Crit.=M & Red.=B",
- "locationId": "W14",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "catalogProfileId": "PM-160",
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}, - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "text": "Beskrivelse av prosjekt modifikasjon\n",
- "workOrderTypeId": "sasChangeWorkOrder",
- "costWBS": "Conc.: Well A10 GL hook-up FL",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "Z06",
- "maintenanceType": "SAS Change Activity",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
Update SAS Change work order.
Supports:
/plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values)Append to text follows requirement I-103209 - Notation in long text field - Upstream offshore
.
Newest information in text is added above existing information and is automatically signed with date and full name of logged on user.
Added additional properties to update
Adjusted logic for append text to work order. Newest information in text is now added above existing information.
Added possibility for update of sortField and revisionId.
work-order-id required | string |
The information to be updated
op | string Enum: "append" "replace" JSON Patch operation according to RFC6902. Operation Operation |
path | string Enum: "/text" "/workCenterId" "/workCenterPlantId" "/tagId" "/tagPlantId" "/basicStartDateTime" "/basicEndDateTime" "/revisionId" "/sortField" The property to be updated by the non-trivial patch operation.
|
value | string Value to be assigned to a resource property based on the operation and path. |
[- {
- "op": "append",
- "path": "/text",
- "value": "Text to append\nMulti-line"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Activate or deactivate status for Work order
Currently, not all statuses are supported.
The status supported are:
Support for ActivatedDateTime for TECO status. It is an optional parameter which allows to overwrite the default reference date for TECO. If no value is provided, the value will be set to current timestamp.
work-order-id required | string |
status-id required | string |
Work order status to update
isActive required | boolean |
activatedDateTime | string <date-time> Nullable |
{- "isActive": true
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Search for SAS Change Work orders through predefined filters. Each filter has a defined action and a set of parameters as described below.
The response does not include all details for each SAS Change Work order. This can be found by subsequent call to lookup sas-change-work-orders
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Find open SAS Change Work orders by plant Parameters:
SAS Change Work orders based on recent status activations for the work orders. Parameters:
Added location-id and system-id to filter open-by-plant
.
Added revisionId to work order response (represents shutdown or campaign work).
filter required | string Enum: "open-by-plant" "recent-status-activations" Filter to limit the SAS Change work order by |
status-id | string Status |
plant-id | string Plant |
location-id | string Structured location within the plant. Use /plants/{plant-id}/locations for possible values |
system-id | string System id to filter by |
max-days-since-activation | integer <int32> [ 0 .. 255 ] Define how many days from the current day to include results for. 0 if only include for today |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders/sas-change-work-orders?filter=SOME_STRING_VALUE&status-id=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&location-id=SOME_STRING_VALUE&system-id=SOME_STRING_VALUE&max-days-since-activation=SOME_INTEGER_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "Z06",
- "maintenanceType": "SAS Change Activity",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
]
Create new SAS Change Work order
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Added revisionId and revision to work order response (represents shutdown or campaign work).
Added sortField and revisionId to create request. Use /plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values for revisionId
.
SAS Change Work order to create
planningPlantId required | string |
workCenterId required | string |
workCenterPlantId required | string |
title required | string |
plantId required | string |
locationId required | string Structured location within the plant where the tag is located |
required | Array of objects (WorkOrderOperationCreate) |
tagId required | string |
tagPlantId required | string |
costNetworkId | string |
costNetworkOperationId | string |
plannerGroupId | string |
maintenanceTypeId | string |
basicStartDateTime | string <date-time> |
basicEndDateTime | string <date-time> |
revisionId | string An identifier to the revision (shutdown or campaign work) this work order is related to. Read possible values from |
sortField | string Field used to assist in grouping/sorting Work orders. Unstructured field used non-consistently between plants |
areaId | string Deprecated Deprecated 01.2021 - Use locationId instead |
text | string |
{- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "title": "14xx/Installere flowline CD2",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "plantId": "1100",
- "locationId": "CD2",
- "sortField": "PRS10239.WP12",
- "revisionId": "PV04_21",
- "maintenanceTypeId": "015",
- "basicStartDateTime": "2020-11-01T00:00:00Z",
- "basicEndDateTime": "2021-03-01T00:00:00Z",
- "text": "Project for replacing flowing on CD2\n",
- "operations": [
- {
- "operation": "0010",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": "Bygge stillas\n3 x 3 x 5 meter",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}, - {
- "operation": "0020",
- "title": "Bytte del",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": "",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}
]
}
{- "text": "Beskrivelse av prosjekt modifikasjon\n",
- "workOrderTypeId": "sasChangeWorkOrder",
- "costWBS": "Conc.: Well A10 GL hook-up FL",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "Z06",
- "maintenanceType": "SAS Change Activity",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
Add operations
work-order-id required | string |
Operations to add to existing Work order
title required | string [ 0 .. 40 ] characters |
operation required | string Id of operation user is familiar with |
workCenterId | string |
workCenterPlantId | string |
text | string |
plannedWorkDuration | string Duration as defined in ISO8601 |
plannedWorkHours | string Duration as defined in ISO8601 |
capacityCount | integer <int32> |
schedulingStartConstraintId | string Enum: "MSO" "SNET" "SNLT" Constraint: * |
schedulingStartConstraintDateTime | string <date-time> |
schedulingFinishConstraintId | string Enum: "MFO" "FNET" "FNLT" Constraint: * |
schedulingFinishConstraintDateTime | string <date-time> |
isScheduledExternally | boolean |
earliestStartDateTime | string <date-time> |
earliestFinishDateTime | string <date-time> |
[- {
- "operation": "0010",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkHours": "P0Y0M0DT4H0M0S",
- "capacityCount": 2,
- "text": "Bygge stillas\n3 x 3 x 5 meter",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}, - {
- "operation": "0020",
- "title": "Bytte del",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkHours": "P0Y0M0DT3H30M0S",
- "capacityCount": 1,
- "text": "",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Used for modification projects that are controlled and managed using standard modification project structures that include WBS, network orders and activities.
Download single attachment for Project Work order
record-id required | string |
attachment-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/work-orders/project-work-orders/%7Brecord-id%7D/attachments/%7Battachment-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Lookup single Project Work order with related information
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Work order operation actualPercentageComplete now represents progress reported through technical feedback. If the Work order operation is completed, the value of actualPercentageComplete will always be 100.
If work-order-id exist, but is not a projectWorkOrder
, the response is a HTTP 301 Moved Permanently with the url to the resource in the HTTP header Location.
Introduced holdDeliveryOnshore and requiredDatetime properties for materials.
Introduced property calculationKey for operations.
Added createdDateTime for attachments.
Added revisionId and revision to work order response (represents shutdown or campaign work).
work-order-id required | string |
include-operations | boolean Default: true Include Work order operations |
include-materials | boolean Default: true Include materials for Work order operations |
include-maintenance-records | boolean Default: false Include related maintenance records (from object list) |
include-attachments | boolean Default: false Include Work order attachments (on header and for operation) |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-tag-details | boolean Default: false Include detailed for the main tag of the Work order |
include-related-tags | boolean Default: false Include related tags (from object list) |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders/project-work-orders/%7Bwork-order-id%7D?include-operations=SOME_BOOLEAN_VALUE&include-materials=SOME_BOOLEAN_VALUE&include-maintenance-records=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE&include-status-details=SOME_BOOLEAN_VALUE&include-tag-details=SOME_BOOLEAN_VALUE&include-related-tags=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "operations": [
- {
- "materials": [
- {
- "reservationId": "25457443-001",
- "materialId": "741466",
- "material": "LIGHT,FIXTURE,26w,SZ 4155.100,RITTAL",
- "quantity": 1,
- "quantityUnit": "string",
- "quantityUnitId": "string",
- "location": "P10N utenfor lager",
- "holdDeliveryOnshore": true,
- "requiredDatetime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "tagsRelated": [
- {
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}
], - "maintenanceRecords": [
- {
- "recordId": "45894100",
- "recordResource": "maintenance-records/modification-proposals",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "source": "ObjectList",
- "_links": {
- "self": "/maintenance-records/failure-reports/45894100?api-version=v1"
}
}
], - "tagDetails": {
- "isInactive": false,
- "parentTagId": "AT5566",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "ABCId": "5",
- "ABC": "Crit.=M & Red.=B",
- "locationId": "W14",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "catalogProfileId": "PM-160",
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}, - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "text": "Beskrivelse av prosjekt modifikasjon\n",
- "workOrderTypeId": "projectWorkOrder",
- "costWBS": "Conc.: Well A10 GL hook-up FL",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "isTimeOnlyWorkOrder": false,
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "015",
- "maintenanceType": "Project work",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
Update project work order.
Supports:
/plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values) Append to text follows requirement I-103209 - Notation in long text field - Upstream offshore
.
Newest information in text is added above existing information and is automatically signed with date and full name of logged on user.
Added additional properties to update
Adjusted logic for append text to work order. Newest information in text is now added above existing information.
Added possibility for update of sortField and revisionId.
work-order-id required | string |
The information to be updated
op | string Enum: "append" "replace" JSON Patch operation according to RFC6902. Operation Operation |
path | string Enum: "/text" "/workCenterId" "/workCenterPlantId" "/tagId" "/tagPlantId" "/basicStartDateTime" "/basicEndDateTime" "/revisionId" "/sortField" The property to be updated by the non-trivial patch operation.
|
value | string Value to be assigned to a resource property based on the operation and path. |
[- {
- "op": "append",
- "path": "/text",
- "value": "Text to append\nMulti-line"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Activate or deactivate status for Work order
Currently, not all statuses are supported.
The status supported are:
Support for ActivatedDateTime for TECO status. It is an optional parameter which allows to overwrite the default reference date for TECO. If no value is provided, the value will be set to current timestamp.
work-order-id required | string |
status-id required | string |
Work order status to update
isActive required | boolean |
activatedDateTime | string <date-time> Nullable |
{- "isActive": true
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Search for project Work orders through predefined filters. Each filter has a defined action and a set of parameters as described below.
The response does not include all details for each project work order. This can be found by subsequent call to lookup project-work-order
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Find open Project Work orders by plant Parameters:
Project work orders based on recent status activations for the work orders. Parameters:
Added location-id and system-id to filter open-by-plant
.
Added revisionId to work order response (represents shutdown or campaign work).
filter required | string Enum: "open-by-plant" "recent-status-activations" Filter to limit the Project work order by |
status-id | string Status |
plant-id | string Plant |
location-id | string Structured location within the plant. Use /plants/{plant-id}/locations for possible values |
system-id | string System id to filter by |
max-days-since-activation | integer <int32> [ 0 .. 255 ] Define how many days from the current day to include results for. 0 if only include for today |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders/project-work-orders?filter=SOME_STRING_VALUE&status-id=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&location-id=SOME_STRING_VALUE&system-id=SOME_STRING_VALUE&max-days-since-activation=SOME_INTEGER_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "isTimeOnlyWorkOrder": false,
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "015",
- "maintenanceType": "Project work",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
]
Create new Project Work order
Properties areaId and area are deprecated as of 01.2021 in order to align with naming across Equinor system. Use locationId and location instead.
Fixed bug related to costNetworkId.
Added revisionId and revision to work order response (represents shutdown or campaign work).
Added sortField and revisionId to create request. Use /plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values for revisionId
.
Project Work order to create
planningPlantId required | string |
workCenterId required | string |
workCenterPlantId required | string |
title required | string |
plantId required | string |
locationId required | string Structured location within the plant where the tag is located |
costNetworkId required | string |
costNetworkOperationId required | string |
required | Array of objects (WorkOrderOperationCreate) |
isTimeOnlyWorkOrder | boolean If true, this project work order can only be used for time cost and is represented by a different work order type (PM20) in SAP |
tagId | string |
tagPlantId | string |
plannerGroupId | string |
maintenanceTypeId | string |
basicStartDateTime | string <date-time> |
basicEndDateTime | string <date-time> |
revisionId | string An identifier to the revision (shutdown or campaign work) this work order is related to. Read possible values from |
sortField | string Field used to assist in grouping/sorting Work orders. Unstructured field used non-consistently between plants |
areaId | string Deprecated Deprecated 01.2021 - Use locationId instead |
text | string |
{- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "title": "14xx/Installere flowline CD2",
- "isTimeOnlyWorkOrder": false,
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "plantId": "1100",
- "locationId": "CD2",
- "sortField": "PRS10239.WP12",
- "revisionId": "PV04_21",
- "maintenanceTypeId": "015",
- "basicStartDateTime": "2020-11-01T00:00:00Z",
- "basicEndDateTime": "2021-03-01T00:00:00Z",
- "text": "Project for replacing flowing on CD2\n",
- "operations": [
- {
- "operation": "0010",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": "Bygge stillas\n3 x 3 x 5 meter",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}, - {
- "operation": "0020",
- "title": "Bytte del",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkDuration": "P0Y0M0DT3H30M0S",
- "text": "",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}
]
}
{- "text": "Beskrivelse av prosjekt modifikasjon\n",
- "workOrderTypeId": "projectWorkOrder",
- "costWBS": "Conc.: Well A10 GL hook-up FL",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "isTimeOnlyWorkOrder": false,
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "areaId": "Deprecated - Use locationId",
- "systemId": "11",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "015",
- "maintenanceType": "Project work",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "sortField": "PRS10239.WP12"
}
Add operations
work-order-id required | string |
Operations to add to existing Work order
title required | string [ 0 .. 40 ] characters |
operation required | string Id of operation user is familiar with |
workCenterId | string |
workCenterPlantId | string |
text | string |
plannedWorkDuration | string Duration as defined in ISO8601 |
plannedWorkHours | string Duration as defined in ISO8601 |
capacityCount | integer <int32> |
schedulingStartConstraintId | string Enum: "MSO" "SNET" "SNLT" Constraint: * |
schedulingStartConstraintDateTime | string <date-time> |
schedulingFinishConstraintId | string Enum: "MFO" "FNET" "FNLT" Constraint: * |
schedulingFinishConstraintDateTime | string <date-time> |
isScheduledExternally | boolean |
earliestStartDateTime | string <date-time> |
earliestFinishDateTime | string <date-time> |
[- {
- "operation": "0010",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkHours": "P0Y0M0DT4H0M0S",
- "capacityCount": 2,
- "text": "Bygge stillas\n3 x 3 x 5 meter",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}, - {
- "operation": "0020",
- "title": "Bytte del",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "plannedWorkHours": "P0Y0M0DT3H30M0S",
- "capacityCount": 1,
- "text": "",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2020-11-01T00:00:00Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2021-03-01T00:00:00Z"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Lookup single Modification Work order with related information.
If work-order-id exist, but is not a modificationWorkOrder
, the response is a HTTP 301 Moved Permanently with the url to the resource in the HTTP header Location.
Introduced holdDeliveryOnshore and requiredDatetime properties for materials.
Introduced property calculationKey for operations.
Added createdDateTime for attachments.
Added revisionId and revision to work order response (represents shutdown or campaign work).
work-order-id required | string |
include-operations | boolean Default: true Include Work order operations |
include-materials | boolean Default: true Include materials for Work order operations |
include-maintenance-records | boolean Default: false Include related maintenance records (from object list) |
include-attachments | boolean Default: false Include Work order attachments (on header and for operation) |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
include-tag-details | boolean Default: false Include detailed for the main tag of the Work order |
include-related-tags | boolean Default: false Include related tags (from object list) |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders/modification-work-orders/%7Bwork-order-id%7D?include-operations=SOME_BOOLEAN_VALUE&include-materials=SOME_BOOLEAN_VALUE&include-maintenance-records=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE&include-status-details=SOME_BOOLEAN_VALUE&include-tag-details=SOME_BOOLEAN_VALUE&include-related-tags=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "operations": [
- {
- "materials": [
- {
- "reservationId": "25457443-001",
- "materialId": "741466",
- "material": "LIGHT,FIXTURE,26w,SZ 4155.100,RITTAL",
- "quantity": 1,
- "quantityUnit": "string",
- "quantityUnitId": "string",
- "location": "P10N utenfor lager",
- "holdDeliveryOnshore": true,
- "requiredDatetime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "tagsRelated": [
- {
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}
], - "maintenanceRecords": [
- {
- "recordId": "45894100",
- "recordResource": "maintenance-records/modification-proposals",
- "tagId": "PX",
- "tagPlantId": "1100",
- "equipmentId": "12410072",
- "title": "Endre skalering på PDT",
- "source": "ObjectList",
- "_links": {
- "self": "/maintenance-records/failure-reports/45894100?api-version=v1"
}
}
], - "tagDetails": {
- "isInactive": false,
- "parentTagId": "AT5566",
- "systemId": "BS",
- "system": "PM-PROG.SYST.",
- "ABCId": "5",
- "ABC": "Crit.=M & Red.=B",
- "locationId": "W14",
- "location": "METERING DECK",
- "areaId": "Deprecated - Use locationId",
- "area": "Deprecated - Use location",
- "catalogProfileId": "PM-160",
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE."
}, - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "text": "Beskrivelse av prosjekt modifikasjon\n",
- "workOrderTypeId": "modificationWorkOrder",
- "costWBS": "Conc.: Well A10 GL hook-up FL",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "workOrderId": "24684145",
- "tagId": "LZ1012",
- "tagPlantId": "1100",
- "tag": "A10 OIL PRODUCTION WELL",
- "title": "1416/Installerer Flowlinw A10",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "modificationProposalId": "46415269",
- "locationId": "CD17OU",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "006",
- "maintenanceType": "Improvement / minor modificat.",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "costWBSId": "M.O037C.20.A.0002.A2",
- "projectId": "M.O037C.20.A.0002",
- "sortField": "PRS10239.WP12"
}
Update modification work order.
Supports:
/plants/{plant-id}?include-revisions=true&api-version=v1
to get a list of possible values)Append to text follows requirement I-103209 - Notation in long text field - Upstream offshore
.
Newest information in text is added above existing information and is automatically signed with date and full name of logged on user.
Added additional properties to update
Adjusted logic for append text to work order. Newest information in text is now added above existing information.
Added possibility for update of sortField and revisionId.
work-order-id required | string |
The information to be updated
op | string Enum: "append" "replace" JSON Patch operation according to RFC6902. Operation Operation |
path | string Enum: "/text" "/workCenterId" "/workCenterPlantId" "/tagId" "/tagPlantId" "/basicStartDateTime" "/basicEndDateTime" "/revisionId" "/sortField" The property to be updated by the non-trivial patch operation.
|
value | string Value to be assigned to a resource property based on the operation and path. |
[- {
- "op": "append",
- "path": "/text",
- "value": "Text to append\nMulti-line"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Lookup single Subsea Work order with related information.
By default include-person-responsible
is false and then the fields personResponsibleId
and personResponsibleEmail
will always have null value.
Introduced property calculationKey for operations.
Added createdDateTime for attachments.
Added revisionId and revision to work order response (represents shutdown or campaign work).
work-order-id required | string |
include-operations | boolean Default: true Include Work order operations |
include-materials | boolean Default: true Include materials for Work order operations |
include-attachments | boolean Default: false Include Work order attachments (on header and for operation) |
include-person-responsible | boolean Default: false Include person responsible information in response. If user does not have sufficient rights, this will return a |
include-status-details | boolean Default: false Include detailed information for statuses (both active and non-active) |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/work-orders/subsea-work-orders/%7Bwork-order-id%7D?include-operations=SOME_BOOLEAN_VALUE&include-materials=SOME_BOOLEAN_VALUE&include-attachments=SOME_BOOLEAN_VALUE&include-person-responsible=SOME_BOOLEAN_VALUE&include-status-details=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "personResponsibleId": "433937",
- "personResponsibleEmail": "shortname@equinor.com",
- "operations": [
- {
- "materials": [
- {
- "equipmentId": "11948620",
- "equipment": "PEDESTAL,TH ISOLAT.SLEEVE,ASSY,10219863",
- "supplyingPlantId": "1915",
- "reservationId": "25457443-001",
- "materialId": "741466",
- "material": "LIGHT,FIXTURE,26w,SZ 4155.100,RITTAL",
- "quantity": 1,
- "quantityUnit": "string",
- "quantityUnitId": "string",
- "location": "P10N utenfor lager",
- "holdDeliveryOnshore": true,
- "requiredDatetime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "operationId": "1005419798-00000001",
- "operation": "0020",
- "title": "Bygge stillas",
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "standardTextTemplate": "1100-GS",
- "isCompleted": false,
- "plannedWorkHours": "PT3H",
- "actualWorkHours": "PT2H30M",
- "actualPercentageComplete": 75,
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "isScheduledExternally": true,
- "earliestStartDateTime": "2019-08-24T14:15:22Z",
- "earliestFinishDateTime": "2019-08-24T14:15:22Z",
- "schedulingStartConstraintId": "MSO",
- "schedulingStartConstraintDateTime": "2019-08-24T14:15:22Z",
- "schedulingFinishConstraintId": "MFO",
- "schedulingFinishConstraintDateTime": "2019-08-24T14:15:22Z",
- "calculationKey": "CALC_KEY_MANUAL"
}
], - "statuses": [
- {
- "statusId": "RDEX",
- "status": "Ready for execution",
- "statusOrder": 2,
- "isActive": false,
- "activatedDateTime": "2019-08-24T14:15:22Z"
}
], - "attachments": [
- {
- "attachmentId": "H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA",
- "fileName": "equipment_location.jpg",
- "fileSize": "1636352",
- "mimeType": "image/jpg",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "_links": {
- "enclosure": "/work-orders/preventive-work-orders/20005446/attachments/H4sIAAAAAAAACqsxMDA1MDVzNDQ3srAwdHVxdDR0dDI1MjB3MjFyMzA0cqsxMgAqMTExq6mpMTQwMDSwNKoBitQ4GRsA6ZqAzOSS0qLU-LTMvJTMvHQFXQXn_IJKBQ1jTb2CvHQAwLV5WV4AAAA"
}
}
], - "text": "OBSERVERT FEILTILSTAND FYLLES UT AV INNMELDER:\nBeskriv feilen så godt som mulig (legg gjerne med bilde):\nHvor er utstyret fysisk plassert (legg gjerne med bilde)?\n-\n\nHvordan påvirker feilen utstyrets funksjon? ...\n",
- "workOrderTypeId": "subseaWorkOrder",
- "plannerGroup": "Plattform PV",
- "workCenter": "AI Automasjon",
- "hasPersonResponsible": true,
- "costWBSId": "T.O089E.WI.00007",
- "projectId": "T.O089E",
- "costNetworkId": "9045173",
- "costNetworkOperationId": "0010",
- "workOrderId": "24983466",
- "tagId": "BF",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "title": "Modifikasjon av brannmur",
- "isObsoleteSubseaWorkOrderType": false,
- "workCenterId": "SPIAUT",
- "workCenterPlantId": "1100",
- "locationId": "CD17OU",
- "failureReportId": "45836077",
- "plantId": "1100",
- "planningPlantId": "1100",
- "plannerGroupId": "PPM",
- "activeStatusIds": "OSNO CRTE",
- "maintenanceTypeId": "002",
- "maintenanceType": "Periodic maintenance",
- "requiredEndDate": "2019-08-24",
- "revisionId": "PS02_21",
- "revision": "FV 26A/RIA",
- "basicStartDateTime": "2019-08-24T14:15:22Z",
- "basicEndDateTime": "2019-08-24T14:15:22Z",
- "createdDateTime": "2019-08-24T14:15:22Z",
- "changedDateTime": "2019-08-24T14:15:22Z",
- "sortField": "PRS10239.WP12",
- "priorityId": "L"
}
Download single attachment for subsea work order
record-id required | string |
attachment-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/work-orders/subsea-work-orders/%7Brecord-id%7D/attachments/%7Battachment-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
A measuring point represents the physical or virtual location at which process values, events or conditions are described. For instance a temperature reader, pressure sensor, or a spot on a pipe where thickness is measured.
Measuring points indicate where measurements (or derived/calculated values) occur.
A measuring point is normally connected to a tag or equipment, facilitating the monitoring of its state and perfomance.
Lookup a single measuring point.
A measuring point represents the physical or virtual location at which process values, events or conditions are described. For instance a temperature reader, pressure sensor, or a spot on a pipe where thickness is measured.
Measuring points indicate where measurements (or derived/calculated values) occur.
A measuring point is normally connected to a tag or equipment, facilitating the monitoring of its state and perfomance.
Measuring points support quantitative (example 3mm), qualitative (example YES) or combination of the two when creating measurements for the measuring point.
Quantitative measurements are defined by quantitativeCharacteristicId and have a unit of measure.
Qualitative measurement codes are defined by qualitativeCodeGroupId.
point-id required | string Example: 14626974 |
include-last-measurement | boolean Default: false Include the last measurement of the measuring point |
include-measurements | boolean Default: false Include measurements of the measuring point |
include-qualitative-code-group | boolean Default: false Include possible codes for qualitative measurements if qualitativeCodeGroupId is set |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/measuring-points/%7Bpoint-id%7D?include-last-measurement=SOME_BOOLEAN_VALUE&include-measurements=SOME_BOOLEAN_VALUE&include-qualitative-code-group=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "lastMeasurement": {
- "measurementId": "10017608811",
- "measuringPointId": "14626974",
- "measurementDateTime": "2019-08-24T14:15:22Z",
- "measurementTitle": "string",
- "quantitativeReading": 19.2,
- "quantitativeReadingUnitId": "MM",
- "qualitativeCodeGroupId": "OBSMETH",
- "qualitativeCodeId": "UT-I",
- "processingStatusId": "1"
}, - "measurements": [
- {
- "measurementId": "10017608811",
- "measuringPointId": "14626974",
- "measurementDateTime": "2019-08-24T14:15:22Z",
- "measurementTitle": "string",
- "quantitativeReading": 19.2,
- "quantitativeReadingUnitId": "MM",
- "qualitativeCodeGroupId": "OBSMETH",
- "qualitativeCodeId": "UT-I",
- "processingStatusId": "1"
}
], - "qualitativeCodes": [
- {
- "qualitativeCodeId": "UT-I",
- "qualitativeCode": "UT Man. Pulse-Echo: Internal degradation"
}
], - "tagId": "1A1-A16A",
- "tagPlantId": "1111",
- "equipmentId": "12410072",
- "measuringPosition": "P:M03 2\" SV 301",
- "supportsQuantitativeMeasurement": true,
- "quantitativeCharacteristicId": "SM_COATING_CONDITION_ITEM",
- "quantitativeCharacteristicUnit": "mbar",
- "quantitativeCharacteristicUnitId": "MBAR",
- "categoryId": "B",
- "qualitativeCodeGroupId": "OBSMETH",
- "supportsQualitativeMeasurement": true,
- "measuringPointId": "14626974",
- "measuringPoint": "Surface coating condition"
}
Search measuring point.
Search measuring points based on plant and one other property of the measuring point. Parameters:
/measuring-points?filter=by-plant&plant-id=1180&tag-prefix=18HV10&api-version=v1
/measuring-points?filter=by-plant&plant-id=1102&quantitative-characteristic=SURFACE_MAINTEANC&api-version=v1
/measuring-points?filter=by-plant&plant-id=1180&tag-prefix=18HV10&position=VALVE%20STATUS&include-last-measurement=true&api-version=v1
filter required | string Value: "by-plant" Filter to limit the measuring points by |
plant-id | string Plant the tag-prefix belongs to |
tag-prefix | string >= 2 characters Example: tag-prefix=02%22-EC-%202525-M The first few characters of the tag |
measuring-position | string Example: measuring-position=VALVE%20STATUS Limit result based on a specific measuring position value |
quantitative-characteristic | string Example: quantitative-characteristic=SM_COATING_CONDITION_ITEM Limit result based on a specific quantitative characteristic value |
qualitative-code-group | string Example: qualitative-code-group=OBSMETH Limit result based on a specific qualitative code group value |
measuring-point-name | string Example: measuring-point-name=Breakout%20torque Limit result based on a specific measuring point name value |
include-last-measurement | boolean Default: false Include the last measurement of the measuring points |
include-measurements | boolean Default: false Include measurements of the measuring points |
include-qualitative-code-group | boolean Default: false Include possible codes for qualitative measurements if qualitativeCodeGroupId is set |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/measuring-points?filter=SOME_STRING_VALUE&plant-id=SOME_STRING_VALUE&tag-prefix=02%2522-EC-%25202525-M&measuring-position=VALVE%2520STATUS&quantitative-characteristic=SM_COATING_CONDITION_ITEM&qualitative-code-group=OBSMETH&measuring-point-name=Breakout%2520torque&include-last-measurement=SOME_BOOLEAN_VALUE&include-measurements=SOME_BOOLEAN_VALUE&include-qualitative-code-group=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "lastMeasurement": {
- "measurementId": "10017608811",
- "measuringPointId": "14626974",
- "measurementDateTime": "2019-08-24T14:15:22Z",
- "measurementTitle": "string",
- "quantitativeReading": 19.2,
- "quantitativeReadingUnitId": "MM",
- "qualitativeCodeGroupId": "OBSMETH",
- "qualitativeCodeId": "UT-I",
- "processingStatusId": "1"
}, - "measurements": [
- {
- "measurementId": "10017608811",
- "measuringPointId": "14626974",
- "measurementDateTime": "2019-08-24T14:15:22Z",
- "measurementTitle": "string",
- "quantitativeReading": 19.2,
- "quantitativeReadingUnitId": "MM",
- "qualitativeCodeGroupId": "OBSMETH",
- "qualitativeCodeId": "UT-I",
- "processingStatusId": "1"
}
], - "qualitativeCodes": [
- {
- "qualitativeCodeId": "UT-I",
- "qualitativeCode": "UT Man. Pulse-Echo: Internal degradation"
}
], - "tagId": "1A1-A16A",
- "tagPlantId": "1111",
- "equipmentId": "12410072",
- "measuringPosition": "P:M03 2\" SV 301",
- "supportsQuantitativeMeasurement": true,
- "quantitativeCharacteristicId": "SM_COATING_CONDITION_ITEM",
- "quantitativeCharacteristicUnit": "mbar",
- "quantitativeCharacteristicUnitId": "MBAR",
- "categoryId": "B",
- "qualitativeCodeGroupId": "OBSMETH",
- "supportsQualitativeMeasurement": true,
- "measuringPointId": "14626974",
- "measuringPoint": "Surface coating condition"
}
]
Create new measurement for measuring point.
Measuring points support quantitative (example 3mm), qualitative (example YES) or combination of the two when creating measurements for the measuring point.
Quantitative measurements are defined by quantitativeCharacteristicId property of the measuring point. Make sure the quantitativeReading is in the reading unit of the measuring point.
Qualitative measurement codes are defined by qualitativeCodeGroupId property of the measuring point.
point-id required | string Example: 14626974 |
Measurement of measuring point to create
measurementDateTime | string <date-time> When the measurement was performed. If not provided, the current datetime will be used. |
quantitativeReading | number |
qualitativeCodeGroupId | string |
qualitativeCodeId | string |
measurementTitle | string <= 40 characters |
processingStatusId | string <= 1 characters '1' - MeasReading processed: activities need to be carried out '2' - MeasReading processed: activities covered by planned task '7'- MeasReading processed: no activities need to be carried out |
{- "quantitativeReading": 19.2
}
{- "measurementId": "10017608811",
- "measuringPointId": "14626974",
- "measurementDateTime": "2019-08-24T14:15:22Z",
- "measurementTitle": "string",
- "quantitativeReading": 19.2,
- "quantitativeReadingUnitId": "MM",
- "qualitativeCodeGroupId": "OBSMETH",
- "qualitativeCodeId": "UT-I",
- "processingStatusId": "1"
}
The function of the maintenance programme is to systematize the maintenance effort so that the maintenance resources are used in a controlled, cost-effective manner to ensure a safe workplace with stable production and high production efficiency.
Maintenance is defined in accordance with international standards and is about activities intended to prevent loss of or restore an item's ability to provide a required function. In practice, this involves activities to check condition, test functions, prolong life or repair.
Overview of maintenance programme structure can be found in Equinor's internal governing document GL1624 Guidelines for the establishment of a preventive maintenance programme in SAP
The maintenance programme consists of maintenance plans.
Lookup single Maintenance Plan
plan-id required | string |
include-items | boolean Default: true Include items of the maintenance plan |
include-item-calls | boolean Default: true Include calls for items of the maintenance plan |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-plans/%7Bplan-id%7D?include-items=SOME_BOOLEAN_VALUE&include-item-calls=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "maintenancePlanId": "1056916",
- "maintenancePlan": "1100-AKCD2 MODULPROGRAM TELE CD2",
- "items": [
- {
- "maintenanceStrategyId": "1100-1",
- "maintenanceStrategy": "Statfjord A Platform (Month)",
- "status": "RDEX PLAN",
- "objectList": [
- {
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "equipmentId": "12578254",
- "equipment": "CAP 22 OB Protection",
- "sortField": "B-4102"
}
], - "calls": [
- {
- "callNr": 8,
- "plannedDate": "2019-08-24",
- "isExecuted": true,
- "preventiveWorkOrderId": "20132844"
}
], - "taskList": {
- "taskListId": "T-10012713-02",
- "taskList": "24/48M FV-MULTI TRAIN1 GLYCOL REBOILER",
- "taskListTypeId": "T",
- "planningPlantId": "1100",
- "statusId": "4",
- "operations": [
- {
- "objectListLinkage": [
- {
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "equipmentId": "12578254",
- "equipment": "CAP 22 OB Protection",
- "sortField": "B-4102"
}
], - "maintenancePackages": [
- {
- "maintenanceStrategyId": "1100-1",
- "packageId": "26",
- "cycleId": "24",
- "cycle": " 24 Monthly-2Y (GROUP A)"
}
], - "materialNeeds": [
- {
- "materialId": "741466",
- "material": "LIGHT,FIXTURE,26w,SZ 4155.100,RITTAL",
- "quantity": 1,
- "quantityUnit": "PC"
}
], - "operationId": "0020",
- "subOperationId": "",
- "title": "24M AUTOMASJON BR2151 - GLYCOL STILL REB",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "calculationKey": "CALC_KEY_MANUAL",
- "plannedWorkHours": "PT3H",
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "executionFactor": 1,
- "standardTextTemplate": "1100-GS",
- "activityTypeId": "X4"
}
]
}, - "maintenancePlanItemId": "10072940",
- "maintenancePlanItem": "24M FV-TELE MODULPROGRAM CD2",
- "maintenancePlanId": "1056916",
- "planningPlantId": "1100",
- "mainTagId": "AE5566",
- "mainTagPlantId": "1100",
- "maintenanceActivityTypeId": "002",
- "maintenanceActivityType": "Periodic maintenance"
}
]
}
Lookup single maintenance plan item
Maintenance Item contains the object list, task list and previous calls for preventive work orders.
The object list describes the tag/equipment covered in the maintenance plan item.
The task list describes the maintenance activities with the necessary support activities to be performed in the maintenance programme. These are divided into operations that are listed in an order that is natural for the practical implementation of the maintenance. The task List also sets the interval of operations through maintenance packages.
Added calculationKey
for operations in the task list.
Bugfix related to text for operation.
plan-id required | string The id of the maintenance plan |
item-id required | string The id of the maintenance plan item |
include-item-calls | boolean Default: true Include calls to maintenance plan item |
include-item-object-list | boolean Default: false Include list of objects for the maintenance plan item |
include-item-task-list | boolean Default: false Include task list, operations (w/related objects and material needs) for the maintenance plan item |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-plans/%7Bplan-id%7D/items/%7Bitem-id%7D?include-item-calls=SOME_BOOLEAN_VALUE&include-item-object-list=SOME_BOOLEAN_VALUE&include-item-task-list=SOME_BOOLEAN_VALUE' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "maintenanceStrategyId": "1100-1",
- "maintenanceStrategy": "Statfjord A Platform (Month)",
- "status": "RDEX PLAN",
- "objectList": [
- {
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "equipmentId": "12578254",
- "equipment": "CAP 22 OB Protection",
- "sortField": "B-4102"
}
], - "calls": [
- {
- "callNr": 8,
- "plannedDate": "2019-08-24",
- "isExecuted": true,
- "preventiveWorkOrderId": "20132844"
}
], - "taskList": {
- "taskListId": "T-10012713-02",
- "taskList": "24/48M FV-MULTI TRAIN1 GLYCOL REBOILER",
- "taskListTypeId": "T",
- "planningPlantId": "1100",
- "statusId": "4",
- "operations": [
- {
- "objectListLinkage": [
- {
- "tagId": "AE5566",
- "tagPlantId": "1100",
- "tag": "CT5023/24 - POT.WATER PH PROBE.",
- "equipmentId": "12578254",
- "equipment": "CAP 22 OB Protection",
- "sortField": "B-4102"
}
], - "maintenancePackages": [
- {
- "maintenanceStrategyId": "1100-1",
- "packageId": "26",
- "cycleId": "24",
- "cycle": " 24 Monthly-2Y (GROUP A)"
}
], - "materialNeeds": [
- {
- "materialId": "741466",
- "material": "LIGHT,FIXTURE,26w,SZ 4155.100,RITTAL",
- "quantity": 1,
- "quantityUnit": "PC"
}
], - "operationId": "0020",
- "subOperationId": "",
- "title": "24M AUTOMASJON BR2151 - GLYCOL STILL REB",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "calculationKey": "CALC_KEY_MANUAL",
- "plannedWorkHours": "PT3H",
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "executionFactor": 1,
- "standardTextTemplate": "1100-GS",
- "activityTypeId": "X4"
}
]
}, - "maintenancePlanItemId": "10072940",
- "maintenancePlanItem": "24M FV-TELE MODULPROGRAM CD2",
- "maintenancePlanId": "1056916",
- "planningPlantId": "1100",
- "mainTagId": "AE5566",
- "mainTagPlantId": "1100",
- "maintenanceActivityTypeId": "002",
- "maintenanceActivityType": "Periodic maintenance"
}
Update maintenance plan item.
This endpoint updates the direct properties of the maintenance plan item. Other endpoints allow update of other parts of the maintenance plan item such as:
HTTP PATCH maintenance-plans/{plan-id}/items/{item-id}/tasks/{task-id}?api-version=v1
HTTP POST maintenance-plans/{plan-id}/items/{item-id}/tasks/{task-id}/operations/{operation-id}?api-version=v1
HTTP PATCH maintenance-plans/{plan-id}/items/{item-id}/tasks/{task-id}/operations/{operation-id}?api-version=v1
HTTP PUT maintenance-plans/{plan-id}/items/{item-id}/tasks/{task-id}/operations/{operation-id}/maintenance-packages?api-version=v1
HTTP POST maintenance-plans/{plan-id}/items/{item-id}/tasks/{task-id}/operations/{operation-id}/material-needs?api-version=v1
HTTP PATCH maintenance-plans/{plan-id}/items/{item-id}/tasks/{task-id}/operations/{operation-id}/material-needs/{material-id}?api-version=v1
HTTP DEL maintenance-plans/{plan-id}/items/{item-id}/tasks/{task-id}/operations/{operation-id}/material-needs/{material-id}?api-version=v1
plan-id required | string The id of the maintenance plan |
item-id required | string The id of the maintenance plan item |
Update maintenance plan item body
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/maintenancePlanItem" Path indicating the property to be impacted by the operation |
value required | string Value to be assigned to a resource property based on the operation and path. Path specific information:
|
[- {
- "op": "replace",
- "path": "/maintenancePlanItem",
- "value": "12M FV-TELE MODULPROGRAM CD2"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update task lit of maintenance plan item.
This endpoint updates the direct properties of the task list of maintenance plan item. Other maintenance plan item may use the same task list and will be affected by this change.
plan-id required | string The id of the maintenance plan |
item-id required | string The id of the maintenance plan item |
task-id required | string Example: T-10012713-02 The id of the task within the maintenance plant item |
Update task list of maintenance plan item body
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/taskList" Path indicating the property to be impacted by the operation |
value required | string Value to be assigned to a resource property based on the operation and path. Path specific information:
|
[- {
- "op": "replace",
- "path": "/taskList",
- "value": "36M FV-MULTI TRAIN1 GLYCOL REBOILER"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Search for maintenance plans and maintenance plan items which are connected to a specific task list.
This endpoint can be used to identify affected maintenance plans and maintenance plan items if an operation or a material in a task list will be updated or deleted.
Find maintenance plans and maintenance plan items which are affected by changes in a task list operation.
/maintenance-plans?filter=by-task-id&task-id=T-10012713-02&api-version=v1
.
filter required | string Value: "by-task-id" Filter to limit maintenance plans by |
task-id required | string Example: task-id=T-10012713-02 The id of the task within the maintenance plant item |
curl --request GET \ --url 'https://api-test.gateway.equinor.com/maintenance-api/maintenance-plans?filter=SOME_STRING_VALUE&task-id=T-10012713-02' \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
[- {
- "maintenancePlanId": "1056916",
- "maintenancePlan": "1100-AKCD2 MODULPROGRAM TELE CD2",
- "items": [
- {
- "maintenancePlanItemId": "10072940",
- "maintenancePlanItem": "24M FV-TELE MODULPROGRAM CD2",
- "maintenancePlanId": "1056916",
- "planningPlantId": "1100",
- "mainTagId": "AE5566",
- "mainTagPlantId": "1100",
- "maintenanceActivityTypeId": "002",
- "maintenanceActivityType": "Periodic maintenance"
}
]
}
]
Sets the maintenance packages for a single operation. As the endpoint is of type HTTP PUT, this replaces existing maintenance packages set for the operation. Therefore, the client must pass all maintenance packages to be used for for the operation regardless if they have been modified.
Use the HTTP GET endpoint /maintenance-plans/{plan-id}/items/{item-id}?include-task-list=true
for retrieving current data and necesary ids.
Use the HTTP GET endpoint /maintenance-strategies/{strategy-id}
for retrieving possible maintenance package for a maintenance strategy.
Most end-users will not have authorizations to perform this update. Clients must take precautions when changing the maintenance packages. The change will effect all maintenance plans which the maintenance plan item is assigned to.
plan-id required | string Example: 1056916 The id of the maintenance plan |
item-id required | string Example: 10072940 The id of the maintenance plan item |
task-id required | string Example: T-10012713-02 The id of the task within the maintenance plant item |
operation-id required | string Example: 0020 The id of the operation within the task list |
Operations to add to existing Work order
packageId | string <= 2 characters The SAP internal id for the package (not the cycleId) |
[- {
- "packageId": "12"
}, - {
- "packageId": "26"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update operation for a maintenance plan item.
Note: The operation belongs to a task list which may be shared with multiple maintenance plan items. Therefore, multiple maintenance plan items may be affected by the change.
Use the HTTP GET endpoint /maintenance-plans?filter=by-task-id&task-id={task-id}&api-version=v1
to view maintenance plans and maintenance plan items affected by this change.
Use the HTTP GET endpoint /maintenance-plans/{plan-id}/items/{item-id}?include-task-list=true
for retrieving current data and necesary ids.
Added calculationKey
as updatable field.
Bugfix related to text for operation.
plan-id required | string Example: 1056916 The id of the maintenance plan |
item-id required | string Example: 10072940 The id of the maintenance plan item |
task-id required | string Example: 10012713-1 The id of the task within the maintenance plant item |
operation-id required | string Example: 0020 The id of the operation within the task list |
Operations to add to existing Work order
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Enum: "/operationId" "/workCenterId" "/workCenterPlantId" "/title" "/text" "/capacityCount" "/standardTextTemplate" "/plannedDuration" "/plannedWorkHours" "/calculationKey" Path indicating the property to be impacted by the operation |
value required | string Value to be assigned to a resource property based on the operation and path. Calculation key defines which of the fields plannedWorkHours,capacityCount and plannedDuration are derived based on the values of the two others. /calculationKey allowed values:
|
[- {
- "op": "replace",
- "path": "/operationId",
- "value": "PX"
}, - {
- "op": "replace",
- "path": "/workCenterId",
- "value": "SPIAUT"
}, - {
- "op": "replace",
- "path": "/workCenterPlantId",
- "value": "1100"
}, - {
- "op": "replace",
- "path": "/title",
- "value": "Endre skalering på PDT"
}, - {
- "op": "replace",
- "path": "/text",
- "value": "Multi-line text for operation\nLine nr 2"
}, - {
- "op": "replace",
- "path": "/capacityCount",
- "value": "2"
}, - {
- "op": "replace",
- "path": "/standardTextTemplate",
- "value": "1100-GS"
}, - {
- "op": "replace",
- "path": "/plannedDuration",
- "value": "PT2H45M"
}, - {
- "op": "replace",
- "path": "/plannedWorkHours",
- "value": "PT3H"
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Remove an operation in a task list of a maintenance plan item.
Note: This action is allowed only for operations that are considered support activities and not operations that constitute concept activities.
The operation belongs to a task list which may be shared with multiple maintenance plan items. Therefore, multiple maintenance plan items may be affected by the change.
Use the HTTP GET endpoint /maintenance-plans?filter=by-task-id&task-id={task-id}&api-version=v1
to view maintenance plans and maintenance plan items affected by this change.
Use the HTTP GET endpoint /maintenance-plans/{plan-id}/items/{item-id}?include-task-list=true
for retrieving current data and necesary ids.
/maintenance-plans/1056916/items/10072940/tasks/T-10012713-1/operations/0010?api-version=v1
plan-id required | string Example: 1056916 The id of the maintenance plan |
item-id required | string Example: 10072940 The id of the maintenance plan item |
task-id required | string Example: T-10012713-1 The id of the task within the maintenance plant item |
operation-id required | string Example: 0020 The id of the operation within the task list |
curl --request DELETE \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-plans/%7Bplan-id%7D/items/%7Bitem-id%7D/tasks/%7Btask-id%7D/operations/%7Boperation-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Create an operation for a maintenance plan item.
In order for the operation to be part of the next maintenance plan call, the client must also assign a maintenance package to the newly created operation. This can be done via endpoint /maintenance-plans/{plan-id}/items/{item-id}/tasks/{task-id}/operations/{operation-id}/maintenance-packages
.
The operation belongs to a task list which may be shared with multiple maintenance plan items. Therefore, multiple maintenance plan items may be affected by the change.
Use the HTTP GET endpoint /maintenance-plans?filter=by-task-id&task-id={task-id}&api-version=v1
to view maintenance plans and maintenance plan items affected by this change.
Use the HTTP GET endpoint /maintenance-plans/{plan-id}/items/{item-id}?include-task-list=true
for retrieving current data and necesary ids.
activityTypeId
is related to cost center and fisical year, and there is currently no endpoint to get possible values.
Bugfix related to text for operation.
plan-id required | string Example: 1056916 The id of the maintenance plan |
item-id required | string Example: 10072940 The id of the maintenance plan item |
task-id required | string Example: 10012713-1 The id of the task within the maintenance plan item |
Operation to add to existing maintenance plan item
title required | string |
operationId | string Operation |
subOperationId | string Sub operation numbering (often empty) |
workCenterId | string |
workCenterPlantId | string |
text | string |
calculationKey | string Nullable Enum: "CALC_KEY_MANUAL" "CALC_KEY_DURATION" "CALC_KEY_PLANNED_HOURS" "CALC_KEY_CAPACITY" Calculation key defines which of the fields plannedWorkHours,capacityCount and plannedDuration are derived based on the values of the two others. If calculation key is |
plannedWorkHours | string Nullable Duration as defined in ISO8601 |
capacityCount | integer <int32> [ 0 .. 255 ] Number of capacity from work center required for the operation |
plannedDuration | string Nullable Planned duration for operation is based on plannedManHours and capacityCount. Property format is as defined in ISO8601 |
executionFactor | integer <int32> Number of times the processing of operation is repeated during order processing |
standardTextTemplate | string |
activityTypeId | string Used to the describe the activity type produced by the related cost center |
{- "title": "24M AUTOMASJON BR2151 - GLYCOL STILL REB"
}
{- "operationId": "0020",
- "subOperationId": "",
- "title": "24M AUTOMASJON BR2151 - GLYCOL STILL REB",
- "workCenterId": "PPMAUT",
- "workCenterPlantId": "1100",
- "text": "Bygge stillas\\n\r\n3 x 3 x 5 meter",
- "calculationKey": "CALC_KEY_MANUAL",
- "plannedWorkHours": "PT3H",
- "capacityCount": 1,
- "plannedDuration": "PT2H45M",
- "executionFactor": 1,
- "standardTextTemplate": "1100-GS",
- "activityTypeId": "X4"
}
Create material needs of operation for a maintenance plan item.
Note: The operation belongs to a task list which may be shared with multiple maintenance plan items. Therefore, multiple maintenance plan items may be affected by the change.
Use the HTTP GET endpoint /maintenance-plans/{plan-id}/items/{item-id}?include-task-list=true
for retrieving current data and necesary ids.
plan-id required | string Example: 1056916 The id of the maintenance plan |
item-id required | string Example: 10072940 The id of the maintenance plan item |
task-id required | string Example: 10012713-1 The id of the task within the maintenance plant item |
operation-id required | string Example: 0020 The id of the operation within the task list |
Operations to add to existing Work order
materialId required | string The material number there is a need for |
quantity required | number <double> [ 0 .. 1000 ] |
{- "materialId": "741466",
- "quantity": 2
}
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Update material needs of operation for a maintenance plan item.
Note: The operation belongs to a task list which may be shared with multiple maintenance plan items. Therefore, multiple maintenance plan items may be affected by the change.
Use the HTTP GET endpoint /maintenance-plans/{plan-id}/items/{item-id}?include-task-list=true
for retrieving current data and necesary ids.
plan-id required | string Example: 1056916 The id of the maintenance plan |
item-id required | string Example: 10072940 The id of the maintenance plan item |
task-id required | string Example: 10012713-1 The id of the task within the maintenance plant item |
operation-id required | string Example: 0020 The id of the operation within the task list |
material-id required | string Example: 411285 The id of the material to modify |
Operations to add to existing Work order
op required | string Value: "replace" JSON Patch operation according to RFC6902 |
path required | string Value: "/quantity" Path indicating the property to be impacted by the operation |
value required | number Value to be assigned to a resource property based on the operation and path. Path specific information:
|
[- {
- "op": "replace",
- "path": "/quantity",
- "value": 2
}
]
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
Remove specific material need of operation for a maintenance plan item.
Note: The operation belongs to a task list which may be shared with multiple maintenance plan items. Therefore, multiple maintenance plan items may be affected by the change.
Use the HTTP GET endpoint /maintenance-plans/{plan-id}/items/{item-id}?include-task-list=true
for retrieving current data and necesary ids.
plan-id required | string Example: 1056916 The id of the maintenance plan |
item-id required | string Example: 10072940 The id of the maintenance plan item |
task-id required | string Example: 10012713-1 The id of the task within the maintenance plant item |
operation-id required | string Example: 0020 The id of the operation within the task list |
material-id required | string Example: 552382 The id of the material to remove |
curl --request DELETE \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-plans/%7Bplan-id%7D/items/%7Bitem-id%7D/tasks/%7Btask-id%7D/operations/%7Boperation-id%7D/material-needs/%7Bmaterial-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "title": "Not Found",
- "status": 404,
- "traceId": "00-d9dc368e6caec4449a64e798dad1b5b2-7d82bdde82c9474a-00"
}
The company's collection of standardised preventive maintenance activities to facilitate safe, reliable and efficient operation.
Lookup single maintenance concept
concept-id required | string |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-concepts/%7Bconcept-id%7D \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "concept": "Valve-act-Efunc",
- "conceptDescription": "Valve - on/off actuated - PSD function- cryo with SCE code 28",
- "catalogProfile": "SC-Valves",
- "responsibleDiscipline": "Valves",
- "maintenanceActivities": [
- {
- "activityId": "VA1580-0001",
- "activityGroupId": "01",
- "activityGroup": "Visual Check",
- "activityTypeId": "T",
- "activityType": "Condition monitoring",
- "activityDescription": "On/off ventil - Visuell inspeksjon",
- "disciplineId": "O",
- "discipline": "Operations",
- "maxInterval": "P0Y6M0DT0H0M0S",
- "maxIntervalJustification": "ARIS R-25136",
- "recommendedInterval": "P0Y3M0DT0H0M0S",
- "recommendedIntervalDescription": "Reduced interval due to failure mode analysis",
- "initialInterval": "P0Y3M0DT0H0M0S",
- "initialIntervalDescription": ""
}
], - "conceptId": "VA1571",
- "catalogProfileId": "PM-170",
- "responsibleDisciplineId": "00000160"
}
Maintenance strategies define a set of maintenance packages which are used in the maintenance plans.
Lookup single maintenance strategy.
Maintenance strategies define a set of maintenance packages which are used in the maintenance plans. The maintenance packages determine the cycle duration for preventive maintenance and can be organised as calendar-based with e.g. 3-, 6-, 12- or 24-monthly intervals, or as hourly with e.g. 1000-, 2000- or 5000-hour interval.
strategy-id required | string Example: 1100-1 The id of the strategy. Example values: |
curl --request GET \ --url https://api-test.gateway.equinor.com/maintenance-api/maintenance-strategies/1100-1 \ --header 'ocp-apim-subscription-key: REPLACE_KEY_VALUE'
{- "maintenanceStrategyId": "1100-1",
- "maintenanceStrategy": "Statfjord A Platform (Month)",
- "maintenancePackages": [
- {
- "cycleDuration": "P2Y0M0DT0H0M0S",
- "hierarchyId": "12",
- "maintenanceStrategyId": "1100-1",
- "packageId": "26",
- "cycleId": "24",
- "cycle": " 24 Monthly-2Y (GROUP A)"
}
]
}