DrillPlan offers several offset well analyses workflows within the well planning domain that requires a set of historical wells data to be available in the DrillPlan offset well database. The new DrillPlan Offset Well Data API allows the external systems and applications to ingest historical wells operational and contextual data directly into DrillPlan in a predefined schema.
DrillPlan users today use the offset well data for planning in multiple workflows, for example, risk and NPT analysis, activity planning, operating parameters analysis, to list a few. As such, a range of different datasets can be ingested by the user either based on availability of the data, or targetted workflow where the offset well data will be utilized.

The new API allows users to ingest following offset well datasets through their respective end-points:
- Well
- Activity
- Risk
- Drilling Parameters
- Drilling Fluid
- Run
- Survey
The only mandatory dataset in the above list is the Well which has a common well identifier parameter WellGuid with all other datasets. Once a Well or WellGuid is created in the database, any subsequent data ingestion is mapped as a dataset of the same Well/WellGuid.
Similarly, between datasets Run Summary and Drilling Parameters, there is a common identifier Run Id. Therefore in order to ingest drillling parameters, it is a prerequisite to first ingest well --> run summary.

The following next steps details the different end-points and their intended operation in the database using the Well dataset as an example. All other datasets will follow the same ingestion mechanism using their respective end-points.
The first end-point is used to ingest (create or update) Well data into the DrillPlan offset well database. Well data is mandatory data and needs to be created prior to any other data objects. Upon successful creation of the Well entity, the response body generates "id" which can be used as an identifier for each ingested well entity.
Example Post Request: Ingest well entities into the selected DrillPlan data partition(click to open)
curl -X POST "https://{baseurl}/public/api/offset-well-data/v1/wells"
-H "accept: text/plain"
-H "slb-partition-id: 123xyz"
-H "Content-Type: application/json-patch+json"
-H "Authorization: BearerExample Response Body (click to open)
{
"total_entity_count": 1,
"created_entity_count": 1,
"updated_entity_count": 0,
"created_entities": [
{
"activity_count": 0,
"risk_count": 0,
"casing_count": 4,
"formation_top_count": 5,
"hash_code": "MIBXGip02kmU1rict9w7Zw",
"rig_count": 1,
"section_count": 4,
"casings": [
{
"type": "surface casing",
"od": 0.473075,
"depth_from": 0,
"depth_to": 353.568,
"section_id": "0.5588_RISK_1"
},
{
"type": "intermediate casing",
"od": 0.339725,
"depth_from": 0,
"depth_to": 1541.0688,
"section_id": "0.4064_RISK_1"
},
{
"type": "production casing",
"od": 0.244475,
"depth_from": 0,
"depth_to": 2234.7936,
"section_id": "0.3048_RISK_1"
},
{
"type": "drilling liner",
"od": 0.1778,
"depth_from": 1493.52,
"depth_to": 2241.804,
"section_id": "0.2159_RISK_1"
}
],
"formation_tops": [
{
"formation_name": "Fom-A",
"top_md": 30.48,
"top_tvd": null
},
{
"formation_name": "Fom-B",
"top_md": 152.4,
"top_tvd": null
},
{
"formation_name": "Fom-C",
"top_md": 609.6,
"top_tvd": null
},
{
"formation_name": "Fom-D",
"top_md": 1219.2,
"top_tvd": null
},
{
"formation_name": "Fom-E",
"top_md": 2133.6,
"top_tvd": null
}
],
"rigs": [
{
"type": "Land",
"name": "SP-259",
"release_date": null
}
],
"sections": [
{
"type": "Surface",
"size": 0.5588,
"depth_from": 104.8512,
"depth_to": 356.3112,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.5588_RISK_1"
},
{
"type": "Surface",
"size": 0.4064,
"depth_from": 356.3112,
"depth_to": 1550.5176,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.4064_RISK_1"
},
{
"type": "Intermediate",
"size": 0.3048,
"depth_from": 1550.5176,
"depth_to": 2342.388,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.3048_RISK_1"
},
{
"type": "Production",
"size": 0.2159,
"depth_from": 2342.388,
"depth_to": 5643.9816,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.2159_RISK_1"
}
],
"physical_container_name": null,
"creation_utc_timestamp": "2024-12-09T17:52:05.5269643Z",
"last_modification_utc_timestamp": "2024-12-09T17:52:05.5269643Z",
"version": 1,
"id": "PUmzXsu9i06UuqMNxrVrg",
"along_hole_departure": null,
"area": "",
"clean_time": null,
"completion_type": "",
"country": "",
"county": "",
"data_source": "OSDU",
"elevation_ground": null,
"elevation_kb": 51.816,
"field": "",
"geodetic_system": "WGS 84",
"well_guid": "RISK_1_0",
"is_offshore": false,
"location": {
"latitude": 1.88722001,
"longitude": 58.44940186
},
"max_inc": null,
"name": "RISK_1_0",
"north_south": null,
"spud_date": null,
"state": "",
"target_formation": "",
"total_depth": null,
"total_time": null,
"uwi": "RISK_1_0",
"well_type": "",
"well_design": "",
"well_purpose": "",
"well_fluid": ""
}
],
"updated_entities": [],
"entity_violations": [],
"action_succeeded": true,
"master_error": null,
"dependent_action_errors": [],
"action_key": "F0yCTf1EHEqYoxI3dljQ"
}This end-point is used when the user wants to delete an already ingested well entity or entities by well ids. The parameter 'id' is system generated identifier upon successfull creation of the entitiy in the POST Well entity end-point.
Example Post Request: Delete well entity in the selected data partition by well id(click to open)
curl -X POST "https://{baseurl}/public/api/offset-well-data/v1/wells/delete-by-well-ids"
-H "accept: text/plain"
-H "slb-partition-id: 123xyz"
-H "Content-Type: application/json-patch+json"
-H "Authorization: Bearer
-d "[\"PUmzXsu9i06UuqMNxrVrg\"]"Example Response Body (click to open)
{
"deleted_count": 1,
"action_succeeded": true,
"master_error": null,
"dependent_action_errors": [],
"action_key": "WoCbob90KyDB7Z1RvOAg"
}This end-point is used when the user wants to delete an already ingested well entity or entities by well guids. Well Guid is a user generated identifier which is used when cretaing a Well entity.
Example Post Request: Delete well entity in the selected data partition by well guid(click to open)
curl -X POST "https://{baseurl}/public/api/offset-well-data/v1/wells/delete-by-well-guids"
-H "accept: text/plain"
-H "slb-partition-id: 123xyz"
-H "Content-Type: application/json-patch+json"
-H "Authorization: Bearer
-d "[\"RISK_1_0\",\"RISK_2_0\"]"Example Response Body (click to open)
{
"deleted_count": 1,
"action_succeeded": true,
"master_error": null,
"dependent_action_errors": [],
"action_key": "y8mK8NfysESNvCgTNkOlHg"
}This end-point is used to get/retrieve the full well entity from DrillPlan database using entity 'id' as a parameter. The parameter 'id' is system generated identifier upon successfull creation of the entitiy in the POST Well entity end-point.
Example Post Request: Get well entity using 'id' from selected data partition(click to open)
curl -X POST "https://{baseurl}/public/api/offset-well-data/v1/wells/get-by-ids?page_size=9999"
-H "accept: text/plain"
-H "slb-partition-id: 123xyz"
-H "Authorization: Bearer
-d "[\"kBlFzpd2jE2Hgs63qPiig\",\"XuPt3T3BqEKv5M04hU09dA\"]"Example Response Body (click to open)
{
"current_matches": [
{
"activity_count": 0,
"risk_count": 0,
"casing_count": 4,
"formation_top_count": 5,
"hash_code": "DCnxxL2PXEmu7q3FsavDfw",
"rig_count": 1,
"section_count": 4,
"casings": [
{
"type": "surface casing",
"od": 0.473075,
"depth_from": 0,
"depth_to": 353.568,
"section_id": "0.5588_RISK_1"
},
{
"type": "intermediate casing",
"od": 0.339725,
"depth_from": 0,
"depth_to": 1541.0688,
"section_id": "0.4064_RISK_1"
},
{
"type": "production casing",
"od": 0.244475,
"depth_from": 0,
"depth_to": 2234.7936,
"section_id": "0.3048_RISK_1"
},
{
"type": "drilling liner",
"od": 0.1778,
"depth_from": 1493.52,
"depth_to": 2241.804,
"section_id": "0.2159_RISK_1"
}
],
"formation_tops": [
{
"formation_name": "Fom-A",
"top_md": 30.48,
"top_tvd": null
},
{
"formation_name": "Fom-B",
"top_md": 152.4,
"top_tvd": null
},
{
"formation_name": "Fom-C",
"top_md": 609.6,
"top_tvd": null
},
{
"formation_name": "Fom-D",
"top_md": 1219.2,
"top_tvd": null
},
{
"formation_name": "Fom-E",
"top_md": 2133.6,
"top_tvd": null
}
],
"rigs": [
{
"type": "Land",
"name": "SP-259",
"release_date": null
}
],
"sections": [
{
"type": "Surface",
"size": 0.5588,
"depth_from": 104.8512,
"depth_to": 356.3112,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.5588_RISK_1"
},
{
"type": "Surface",
"size": 0.4064,
"depth_from": 356.3112,
"depth_to": 1550.5176,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.4064_RISK_1"
},
{
"type": "Intermediate",
"size": 0.3048,
"depth_from": 1550.5176,
"depth_to": 2342.388,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.3048_RISK_1"
},
{
"type": "Production",
"size": 0.2159,
"depth_from": 2342.388,
"depth_to": 5643.9816,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.2159_RISK_1"
}
],
"physical_container_name": "drillplan-shared-drillplan-sha_publicingestion_well_20241204193223",
"creation_utc_timestamp": "2024-12-09T19:39:41.4958006Z",
"last_modification_utc_timestamp": "2024-12-09T19:39:41.4958006Z",
"version": 1,
"id": "XuPt3T3BqEKv5M04hU09dA",
"along_hole_departure": null,
"area": "",
"clean_time": null,
"completion_type": "",
"country": "",
"county": "",
"data_source": "Syed",
"elevation_ground": null,
"elevation_kb": 51.816,
"field": "",
"geodetic_system": "WGS 84",
"well_guid": "RISK_1_0",
"is_offshore": false,
"location": {
"latitude": 1.88722001,
"longitude": 58.44940186
},
"max_inc": null,
"name": "RISK_1_0",
"north_south": null,
"spud_date": null,
"state": "",
"target_formation": "",
"total_depth": null,
"total_time": null,
"uwi": "RISK_1_0",
"well_type": "",
"well_design": "",
"well_purpose": "",
"well_fluid": ""
},
{
"activity_count": 0,
"risk_count": 0,
"casing_count": 4,
"formation_top_count": 5,
"hash_code": "Zy6Wnymi20ajoCm38lCoZA",
"rig_count": 1,
"section_count": 4,
"casings": [
{
"type": "surface casing",
"od": 0.473075,
"depth_from": 0,
"depth_to": 353.568,
"section_id": "0.5588_RISK_2"
},
{
"type": "intermediate casing",
"od": 0.339725,
"depth_from": 0,
"depth_to": 1541.0688,
"section_id": "0.4064_RISK_2"
},
{
"type": "production casing",
"od": 0.244475,
"depth_from": 0,
"depth_to": 2234.7936,
"section_id": "0.3048_RISK_2"
},
{
"type": "drilling liner",
"od": 0.1778,
"depth_from": 1493.52,
"depth_to": 2241.804,
"section_id": "0.2159_RISK_2"
}
],
"formation_tops": [
{
"formation_name": "Fom-A",
"top_md": 30.48,
"top_tvd": null
},
{
"formation_name": "Fom-B",
"top_md": 152.4,
"top_tvd": null
},
{
"formation_name": "Fom-C",
"top_md": 609.6,
"top_tvd": null
},
{
"formation_name": "Fom-D",
"top_md": 1219.2,
"top_tvd": null
},
{
"formation_name": "Fom-E",
"top_md": 2133.6,
"top_tvd": null
}
],
"rigs": [
{
"type": "Land",
"name": "SP-300",
"release_date": null
}
],
"sections": [
{
"type": "Surface",
"size": 0.5588,
"depth_from": 104.8512,
"depth_to": 356.3112,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.5588_RISK_2"
},
{
"type": "Surface",
"size": 0.4064,
"depth_from": 356.3112,
"depth_to": 1550.5176,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.4064_RISK_2"
},
{
"type": "Intermediate",
"size": 0.3048,
"depth_from": 1550.5176,
"depth_to": 2342.388,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.3048_RISK_2"
},
{
"type": "Production",
"size": 0.2159,
"depth_from": 2342.388,
"depth_to": 5643.9816,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.2159_RISK_2"
}
],
"physical_container_name": "drillplan-shared-drillplan-sha_publicingestion_well_20241204193223",
"creation_utc_timestamp": "2024-12-09T19:39:41.4958042Z",
"last_modification_utc_timestamp": "2024-12-09T19:39:41.4958042Z",
"version": 1,
"id": "kBlFzpd2jE2Hgs63qPiig",
"along_hole_departure": null,
"area": "",
"clean_time": null,
"completion_type": "",
"country": "",
"county": "",
"data_source": "OSDU",
"elevation_ground": null,
"elevation_kb": 51.816,
"field": "",
"geodetic_system": "WGS 84",
"well_guid": "RISK_2_0",
"is_offshore": false,
"location": {
"latitude": 1.88722001,
"longitude": 57.44940186
},
"max_inc": null,
"name": "RISK_2_0",
"north_south": null,
"spud_date": null,
"state": "",
"target_formation": "",
"total_depth": null,
"total_time": null,
"uwi": "RISK_2_0",
"well_type": "",
"well_design": "",
"well_purpose": "",
"well_fluid": ""
}
],
"current_match_count": 2,
"excluded_matches": [],
"total_match_count": 2,
"next_page_id": "FGluY2x1ZGVfY29udGV4dF91dWlkDXF1ZXJ5QW5kRmV0Y2gBFk9LSUlqLXhMVHNTYXZUU05RaE9lVncAAAAAABm8XhYwQ09sbjdKV1RZQ2RldnJZMFhvMnB3",
"action_succeeded": true,
"master_error": "",
"dependent_action_errors": [],
"action_key": "Ul6BI49jBUq5qGXEdbTQrw"
}This end-point is used to get/retrieve the full well entity from DrillPlan offset well database using entity 'well guid' as a parameter. Well Guid is a user generated identifier which is used when cretaing a Well entity.
Example Post Request: Get well entity using well guid from selected data partition(click to open)
curl -X POST "https://{baseurl}/public/api/offset-well-data/v1/wells/get-by-well-guids?page_size=9999"
-H "accept: text/plain"
-H "slb-partition-id: 123xyz"
-H "Authorization: Bearer
-d "[\"RISK_1_0\",\"RISK_2_0\"]"Example Response Body (click to open)
{
"current_matches": [
{
"activity_count": 0,
"risk_count": 0,
"casing_count": 4,
"formation_top_count": 5,
"hash_code": "DCnxxL2PXEmu7q3FsavDfw",
"rig_count": 1,
"section_count": 4,
"casings": [
{
"type": "surface casing",
"od": 0.473075,
"depth_from": 0,
"depth_to": 353.568,
"section_id": "0.5588_RISK_1"
},
{
"type": "intermediate casing",
"od": 0.339725,
"depth_from": 0,
"depth_to": 1541.0688,
"section_id": "0.4064_RISK_1"
},
{
"type": "production casing",
"od": 0.244475,
"depth_from": 0,
"depth_to": 2234.7936,
"section_id": "0.3048_RISK_1"
},
{
"type": "drilling liner",
"od": 0.1778,
"depth_from": 1493.52,
"depth_to": 2241.804,
"section_id": "0.2159_RISK_1"
}
],
"formation_tops": [
{
"formation_name": "Fom-A",
"top_md": 30.48,
"top_tvd": null
},
{
"formation_name": "Fom-B",
"top_md": 152.4,
"top_tvd": null
},
{
"formation_name": "Fom-C",
"top_md": 609.6,
"top_tvd": null
},
{
"formation_name": "Fom-D",
"top_md": 1219.2,
"top_tvd": null
},
{
"formation_name": "Fom-E",
"top_md": 2133.6,
"top_tvd": null
}
],
"rigs": [
{
"type": "Land",
"name": "SP-259",
"release_date": null
}
],
"sections": [
{
"type": "Surface",
"size": 0.5588,
"depth_from": 104.8512,
"depth_to": 356.3112,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.5588_RISK_1"
},
{
"type": "Surface",
"size": 0.4064,
"depth_from": 356.3112,
"depth_to": 1550.5176,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.4064_RISK_1"
},
{
"type": "Intermediate",
"size": 0.3048,
"depth_from": 1550.5176,
"depth_to": 2342.388,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.3048_RISK_1"
},
{
"type": "Production",
"size": 0.2159,
"depth_from": 2342.388,
"depth_to": 5643.9816,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.2159_RISK_1"
}
],
"physical_container_name": "drillplan-shared-drillplan-sha_publicingestion_well_20241204193223",
"creation_utc_timestamp": "2024-12-09T19:39:41.4958006Z",
"last_modification_utc_timestamp": "2024-12-09T19:39:41.4958006Z",
"version": 1,
"id": "XuPt3T3BqEKv5M04hU09dA",
"along_hole_departure": null,
"area": "",
"clean_time": null,
"completion_type": "",
"country": "",
"county": "",
"data_source": "Syed",
"elevation_ground": null,
"elevation_kb": 51.816,
"field": "",
"geodetic_system": "WGS 84",
"well_guid": "RISK_1_0",
"is_offshore": false,
"location": {
"latitude": 1.88722001,
"longitude": 58.44940186
},
"max_inc": null,
"name": "RISK_1_0",
"north_south": null,
"spud_date": null,
"state": "",
"target_formation": "",
"total_depth": null,
"total_time": null,
"uwi": "RISK_1_0",
"well_type": "",
"well_design": "",
"well_purpose": "",
"well_fluid": ""
},
{
"activity_count": 0,
"risk_count": 0,
"casing_count": 4,
"formation_top_count": 5,
"hash_code": "Zy6Wnymi20ajoCm38lCoZA",
"rig_count": 1,
"section_count": 4,
"casings": [
{
"type": "surface casing",
"od": 0.473075,
"depth_from": 0,
"depth_to": 353.568,
"section_id": "0.5588_RISK_2"
},
{
"type": "intermediate casing",
"od": 0.339725,
"depth_from": 0,
"depth_to": 1541.0688,
"section_id": "0.4064_RISK_2"
},
{
"type": "production casing",
"od": 0.244475,
"depth_from": 0,
"depth_to": 2234.7936,
"section_id": "0.3048_RISK_2"
},
{
"type": "drilling liner",
"od": 0.1778,
"depth_from": 1493.52,
"depth_to": 2241.804,
"section_id": "0.2159_RISK_2"
}
],
"formation_tops": [
{
"formation_name": "Fom-A",
"top_md": 30.48,
"top_tvd": null
},
{
"formation_name": "Fom-B",
"top_md": 152.4,
"top_tvd": null
},
{
"formation_name": "Fom-C",
"top_md": 609.6,
"top_tvd": null
},
{
"formation_name": "Fom-D",
"top_md": 1219.2,
"top_tvd": null
},
{
"formation_name": "Fom-E",
"top_md": 2133.6,
"top_tvd": null
}
],
"rigs": [
{
"type": "Land",
"name": "SP-300",
"release_date": null
}
],
"sections": [
{
"type": "Surface",
"size": 0.5588,
"depth_from": 104.8512,
"depth_to": 356.3112,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.5588_RISK_2"
},
{
"type": "Surface",
"size": 0.4064,
"depth_from": 356.3112,
"depth_to": 1550.5176,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.4064_RISK_2"
},
{
"type": "Intermediate",
"size": 0.3048,
"depth_from": 1550.5176,
"depth_to": 2342.388,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.3048_RISK_2"
},
{
"type": "Production",
"size": 0.2159,
"depth_from": 2342.388,
"depth_to": 5643.9816,
"section_summary": "",
"section_name": "",
"section_tag": "",
"section_id": "0.2159_RISK_2"
}
],
"physical_container_name": "drillplan-shared-drillplan-sha_publicingestion_well_20241204193223",
"creation_utc_timestamp": "2024-12-09T19:39:41.4958042Z",
"last_modification_utc_timestamp": "2024-12-09T19:39:41.4958042Z",
"version": 1,
"id": "kBlFzpd2jE2Hgs63qPiig",
"along_hole_departure": null,
"area": "",
"clean_time": null,
"completion_type": "",
"country": "",
"county": "",
"data_source": "OSDU",
"elevation_ground": null,
"elevation_kb": 51.816,
"field": "",
"geodetic_system": "WGS 84",
"well_guid": "RISK_2_0",
"is_offshore": false,
"location": {
"latitude": 1.88722001,
"longitude": 57.44940186
},
"max_inc": null,
"name": "RISK_2_0",
"north_south": null,
"spud_date": null,
"state": "",
"target_formation": "",
"total_depth": null,
"total_time": null,
"uwi": "RISK_2_0",
"well_type": "",
"well_design": "",
"well_purpose": "",
"well_fluid": ""
}
],
"current_match_count": 2,
"excluded_matches": [],
"total_match_count": 2,
"next_page_id": "FGluY2x1ZGVfY29udGV4dF91dWlkDXF1ZXJ5QW5kRmV0Y2gBFjZxYy1qYlJuUVZxYVEzMFZ4ZUNMUHcAAAAAAIfYDBZtUnVSRHJZT1N3T0Z4OVBPVkhnRzZR",
"action_succeeded": true,
"master_error": "",
"dependent_action_errors": [],
"action_key": "wyoTa3ZXESy1UUm3kiklQ"
}This end-point is used to get/retrieve QC rules for creating well entity. The QC rules are important to refer to ensure data is prepared correctly before ingetsing data into DrillPlan using above end-points. It includes requirements of each parameter to be valid upon successful ingestion. Separate QC rules are provided for each dataset to help user prepare accordingly. To get QC rules for each dataset, user just need to provide the SLB-Data-Partition-ID.
Example Get Request: Get QC rules for well entity(click to open)
curl -X Get "https://{baseurl}/public/api/offset-well-data/v1/wells/qc-rules"
-H "accept: text/plain"
-H "slb-partition-id: 123xyz"
-H "Authorization: BearerExample Response Body (click to open)
[
{
"rule_type": "Numerical",
"measurement_name": "StandardDepthIndex",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0,
"max_value": 15000,
"necessity_type": "Optional",
"property_name": "along_hole_departure",
"parent_node_name": null
},
{
"rule_type": "Numerical",
"measurement_name": "DayTime",
"unit_symbol": "s",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 3600,
"max_value": null,
"necessity_type": "Optional",
"property_name": "clean_time",
"parent_node_name": null
},
{
"rule_type": "Numerical",
"measurement_name": "StandardDepthIndex",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0,
"max_value": 15000,
"necessity_type": "Mandatory",
"property_name": "depth_from",
"parent_node_name": "casings"
},
{
"rule_type": "Numerical",
"measurement_name": "StandardDepthIndex",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0,
"max_value": 15000,
"necessity_type": "Mandatory",
"property_name": "depth_from",
"parent_node_name": "sections"
},
{
"rule_type": "Numerical",
"measurement_name": "StandardDepthIndex",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0,
"max_value": 15000,
"necessity_type": "Mandatory",
"property_name": "depth_to",
"parent_node_name": "casings"
},
{
"rule_type": "Numerical",
"measurement_name": "StandardDepthIndex",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0,
"max_value": 15000,
"necessity_type": "Mandatory",
"property_name": "depth_to",
"parent_node_name": "sections"
},
{
"rule_type": "Numerical",
"measurement_name": "StandardDepthIndex",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0,
"max_value": 8800,
"necessity_type": "Optional",
"property_name": "elevation_ground",
"parent_node_name": null
},
{
"rule_type": "Numerical",
"measurement_name": "StandardDepthIndex",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0,
"max_value": 8800,
"necessity_type": "Optional",
"property_name": "elevation_kb",
"parent_node_name": null
},
{
"rule_type": "Numerical",
"measurement_name": null,
"unit_symbol": null,
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": -90,
"max_value": 90,
"necessity_type": "Mandatory",
"property_name": "latitude",
"parent_node_name": "location"
},
{
"rule_type": "Numerical",
"measurement_name": null,
"unit_symbol": null,
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": -180,
"max_value": 180,
"necessity_type": "Mandatory",
"property_name": "longitude",
"parent_node_name": "location"
},
{
"rule_type": "Numerical",
"measurement_name": "Inclination",
"unit_symbol": "rad",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0,
"max_value": 3.141592653589794,
"necessity_type": "Optional",
"property_name": "max_inc",
"parent_node_name": null
},
{
"rule_type": "Numerical",
"measurement_name": "CylinderDiameter",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0.1143,
"max_value": 0.9144,
"necessity_type": "Mandatory",
"property_name": "od",
"parent_node_name": "casings"
},
{
"rule_type": "Numerical",
"measurement_name": "CylinderDiameter",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0.09525,
"max_value": 0.9144,
"necessity_type": "Mandatory",
"property_name": "size",
"parent_node_name": "sections"
},
{
"rule_type": "Numerical",
"measurement_name": "StandardDepthIndex",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0,
"max_value": 15000,
"necessity_type": "Mandatory",
"property_name": "top_md",
"parent_node_name": "formation_tops"
},
{
"rule_type": "Numerical",
"measurement_name": "StandardDepthIndex",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 0,
"max_value": 15000,
"necessity_type": "Optional",
"property_name": "top_tvd",
"parent_node_name": "formation_tops"
},
{
"rule_type": "Numerical",
"measurement_name": "StandardDepthIndex",
"unit_symbol": "m",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 1,
"max_value": null,
"necessity_type": "Optional",
"property_name": "total_depth",
"parent_node_name": null
},
{
"rule_type": "Numerical",
"measurement_name": "DayTime",
"unit_symbol": "s",
"min_value_inclusive": true,
"max_value_inclusive": true,
"min_value": 3600,
"max_value": null,
"necessity_type": "Optional",
"property_name": "total_time",
"parent_node_name": null
},
{
"rule_type": "Enumeration",
"ignore_case": true,
"enum_options": [
"Single string",
"Artificial Lift System/SRP",
"Artificial Lift System/ESP",
"Artificial Lift System/PCP",
"Artificial Lift System/ESPCP",
"Artificial Lift System/Gas lift",
"Artificial Lift System/Hydraulic pump",
"Artificial Lift System/Plunger pump",
"Intelligent completion",
"Dual string",
"Open hole completion/Barefoot",
"Open hole completion/Open hole gravel pack",
"Open hole completion/Standalone screen",
"Open hole completion/Perforated liner",
"Open hole completion/Multistage stimulation",
"Cased hole completion/Cemented/Perforated casing",
"Cased hole completion/Cemented/Perforated liner",
"Cased hole completion/Uncemented/Pre-perforated liner",
"Cased hole completion/Uncemented/Standalone screen",
"Cased hole completion/Multistage stimulation",
"Cased hole completion/Cased hole gravel pack",
"Cased hole completion/Intelligent completion",
"Other"
],
"necessity_type": "Optional",
"property_name": "completion_type",
"parent_node_name": null
},
{
"rule_type": "Enumeration",
"ignore_case": true,
"enum_options": [
"WGS 84"
],
"necessity_type": "Mandatory",
"property_name": "geodetic_system",
"parent_node_name": null
},
{
"rule_type": "Enumeration",
"ignore_case": true,
"enum_options": [
"Conductor",
"Surface casing",
"Intermediate casing",
"Drilling liner",
"Drilling liner tieback",
"Production casing",
"Production liner",
"Production liner tieback",
"Open hole"
],
"necessity_type": "Optional",
"property_name": "type",
"parent_node_name": "casings"
},
{
"rule_type": "Enumeration",
"ignore_case": true,
"enum_options": [
"Land",
"Barge",
"Platform",
"Jackup",
"Semi-submersible",
"Drillship",
"Coiled tubing"
],
"necessity_type": "Mandatory",
"property_name": "type",
"parent_node_name": "rigs"
},
{
"rule_type": "Enumeration",
"ignore_case": true,
"enum_options": [
"Conductor",
"Surface",
"Intermediate",
"Production"
],
"necessity_type": "Optional",
"property_name": "type",
"parent_node_name": "sections"
},
{
"rule_type": "Enumeration",
"ignore_case": true,
"enum_options": [
"Air",
"Condensate",
"Dry",
"Gas",
"Gas-Water",
"Non HC Gas",
"Non HC gas- CO2",
"Oil",
"Oil-Gas",
"Oil-Water",
"Steam",
"Water",
"Water - Brine",
"Water - Fresh Water",
"Other"
],
"necessity_type": "Optional",
"property_name": "well_fluid",
"parent_node_name": null
},
{
"rule_type": "Enumeration",
"ignore_case": true,
"enum_options": [
"Appraisal",
"Appraisal/Confirmation Appraisal",
"Appraisal/Exploratory Appraisal",
"Exploration",
"Exploration/Deeper-Pool Wildcat",
"Exploration/New-Field Wildcat",
"Exploration/New-Pool Wildcat",
"Exploration/Outpost Wildcat",
"Exploration/Shallower-Pool Wildcat",
"Development",
"Development/Infill Development",
"Development/Injector",
"Development/Producer",
"Fluid storage",
"Fluid storage/Gas Storage",
"General Service",
"General Service/Borehole Re-acquisition",
"General Service/Observation",
"General Service/Relief",
"General Service/Research",
"General Service/Research/Drill Test",
"General Service/Research/Stratigraphic Test",
"General Service/Waste Disposal",
"Mineral",
"Geothermal",
"Other"
],
"necessity_type": "Optional",
"property_name": "well_purpose",
"parent_node_name": null
},
{
"rule_type": "Mandatory",
"necessity_type": "Mandatory",
"property_name": "data_source",
"parent_node_name": null
},
{
"rule_type": "Mandatory",
"necessity_type": "Mandatory",
"property_name": "formation_name",
"parent_node_name": "formation_tops"
},
{
"rule_type": "Mandatory",
"necessity_type": "Mandatory",
"property_name": "is_offshore",
"parent_node_name": null
},
{
"rule_type": "Mandatory",
"necessity_type": "Mandatory",
"property_name": "location",
"parent_node_name": null
},
{
"rule_type": "Mandatory",
"necessity_type": "Mandatory",
"property_name": "name",
"parent_node_name": null
},
{
"rule_type": "Mandatory",
"necessity_type": "Mandatory",
"property_name": "name",
"parent_node_name": "rigs"
},
{
"rule_type": "Mandatory",
"necessity_type": "Mandatory",
"property_name": "section_id",
"parent_node_name": "sections"
},
{
"rule_type": "Mandatory",
"necessity_type": "Mandatory",
"property_name": "section_id",
"parent_node_name": "casings"
},
{
"rule_type": "Mandatory",
"necessity_type": "Mandatory",
"property_name": "well_guid",
"parent_node_name": null
}
]Notes:
- Each ingestion file must meet the repective QC rules for that particular data file. QC rules for each data file can be retrieved by calling the qc-rules end-point.
- Ingestion data must be in SI unit system. Please note that this does not impact in which unit system the user consumes it within DrillPlan.
- Ingestion data must be in JSON format.
- All activity and risk codes need to be mapped prior to ingestion.