v1

latestOpenAPI 3.0.02026-08-062441107.9 KB
ComputationSpecs

Create a computation specification

Create a computation specification. The create request must contain all the input and output data-type IDs which are used to define the computation specification. These data-types must have previously been created. As an example, a computation specification could be defined as a specification for a compute which takes two pieces of input data and calculates a single piece of output data. The specification for this compute would take two input data-types and output a single output data-type. The order of the input and output data-type IDs provided in the creation of the computation specification is maintained in the created computation specification and may only be changed through performing PATCH operations on the computation specification.

post/computation-specs

Headers

slb-data-partition-idstring required

Data partition id.

Request body

idstring

The optional id of the specification. The id should be of the form '{authority}:{spec-type}:{id}', where '{authority}' is the owning authority of the specification, '{spec-type}' is one of 'data-types', 'computation-specs' or 'workflow-specs'.

namestring required

The name of the specification.

descriptionstring required

The description of the specification.

inputDataTypeIdsstring[] required

The input data-type IDs for the computation specification. These data-types must have already been previously created. The order of the input data-type IDs is maintained in the created computation specification. Note that specific versions of a data-type can be specified by using the format 'id:version'.

outputDataTypeIdsstring[] required

The output data-type IDs for the computation specification. These data-types must have already been previously created. The order of the output data-type IDs is maintained in the created computation specification. Note that specific versions of a data-type can be specified by using the format 'id:version'.

Example request

{
  "id": "slb:computation-specs:custom-computation-spec",
  "name": "custom-computation-spec",
  "description": "Description",
  "inputDataTypeIds": [
    "decline-curves",
    "drilling-constraints",
    "facility-constraints"
  ],
  "outputDataTypeIds": [
    "production-forecast"
  ],
  "annotations": [
    {
      "address": {
        "type": "DataTypeInput",
        "computationIndex": 0,
        "dataTypeIndex": 0
      },
      "key": "name",
      "value": "Decline Curves",
      "createdBy": "user@slb.com"
    },
    {
      "address": {
        "type": "DataTypeInput",
        "computationIndex": 0,
        "dataTypeIndex": 1
      },
      "key": "name",
      "value": "Drilling Constraints",
      "createdBy": "user@slb.com"
    },
    {
      "address": {
        "type": "DataTypeInput",
        "computationIndex": 0,
        "dataTypeIndex": 2
      },
      "key": "name",
      "value": "Facility Constraints",
      "createdBy": "user@slb.com"
    },
    {
      "address": {
        "type": "DataTypeOutput",
        "computationIndex": 0,
        "dataTypeIndex": 0
      },
      "key": "name",
      "value": "Production Forecast",
      "createdBy": "user@slb.com"
    }
  ]
}

Response

Computation specification created successfully.

idstring required

The ID of the specification.

namestring required

The name of the specification.

versioninteger required

The version of the specification definition.

latestboolean required

Whether this is the latest version of the given specification.

archivedboolean required

Whether this specification has been marked as archived.

descriptionstring required

The description of the specification.

createdBystring required

The ID of the user who created the specification.

createdAtstring date-time required

The date the specification was created.

Example response

{
  "id": "01DV2RPKYS5NYBAR6TNMJ8TNT8",
  "name": "custom-computation-spec",
  "version": 1,
  "latest": true,
  "archived": false,
  "description": "Description",
  "createdBy": "user@slb.com",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "inputDataTypeIds": [
    {
      "id": "decline-curves",
      "version": 1
    },
    {
      "id": "drilling-constraints",
      "version": 1
    },
    {
      "id": "facility-constraints",
      "version": 1
    }
  ],
  "outputDataTypeIds": [
    {
      "id": "production-forecast",
      "version": 1
    }
  ],
  "annotations": [
    {
      "address": {
        "type": "DataTypeInput",
        "computationIndex": 0,
        "dataTypeIndex": 0
      },
      "key": "name",
      "value": "Decline Curves",
      "createdBy": "user@slb.com"
    },
    {
      "address": {
        "type": "DataTypeInput",
        "computationIndex": 0,
        "dataTypeIndex": 1
      },
      "key": "name",
      "value": "Drilling Constraints",
      "createdBy": "user@slb.com"
    },
    {
      "address": {
        "type": "DataTypeInput",
        "computationIndex": 0,
        "dataTypeIndex": 2
      },
      "key": "name",
      "value": "Facility Constraints",
      "createdBy": "user@slb.com"
    },
    {
      "address": {
        "type": "DataTypeOutput",
        "computationIndex": 0,
        "dataTypeIndex": 0
      },
      "key": "name",
      "value": "Production Forecast",
      "createdBy": "user@slb.com"
    }
  ]
}