Skip to main content

Block Model API

Version: 1.17.0

Get a block model's metadata

GET
/blockmodel/orgs/{org_id}/workspaces/{workspace_id}/block-models/{bm_id}

Gets the details of the block model for the given bm_id.

All workspace roles can use this endpoint.

Request

Path parameters

Example: "e3c277c2-edc6-4a7a-8380-251dd19231f2"

ID of the block model this call is scoped to. Represented as a v4 UUID.

Example: "860be2f5-fe06-4c1b-ac8b-7d34d2b6d2ef"

ID of the workspace this call is scoped to. Represented as a v4 UUID.

Example: "bf1a040c-8c58-4bc2-bec2-c5ae7de8bd84"

ID of the organization this call is scoped to. Represented as a v4 UUID.

Query parameters

An optional boolean parameter. It must be set to true when retrieving the block model for the given bm_id that has been deleted via the 'Delete a block model' endpoint. By default, or if set to false, an attempt to access a deleted block model will result in an error.

Responses

200

Successful Response

Axis-aligned bounding box of the block model.

This is the smallest box that fully contains all blocks within the block model, regardless of whether they contain data. It is defined by the minimum and maximum coordinates along each axis.

Minimum and maximum values for the x column in the file

Maximum value for the column

Minimum value for the column

Minimum and maximum values for the y column in the file

Maximum value for the column

Minimum value for the column

Minimum and maximum values for the z column in the file

Maximum value for the column

Minimum value for the column

The rotation of the block model. Defined by a list of clockwise rotations around given axes.

The combined equation for the rotation is given by:

R_1 ... R_n A = B

where A is the location in the IJK space, B is the location in coordinate space, and R_i is the rotation matrix for the ith rotation.

For example, if the first rotation is a rotation of 15 degrees clockwise around the X axis, R_1 would be [[1, 0, 0], [0, cos(15), sin(15)], [0, -sin(15), cos(15)]].

Two rotations around the same axis cannot be consecutive items within the list of rotations.

Angle of rotation in degrees

Axis of rotation

ID of the block model

Example: "EPSG:3395"

Coordinate reference system used in the block model.

This may be an EPSG code, signified by the prefix 'EPSG:', or a coordinate system definition in WKT format.

Block model creation time

User who created the block model

Example: "kim@example.test"

The primary email address of the user. Can be null if an error occurred while retrieving this information.

Example: "59b73891-5538-4e45-ae67-f8c5b00d7405"

The ID of the user

Example: "Kim Kim"

The full name of the user. Can be null if an error occurred while retrieving this information.

User-supplied description of the block model

Example: "f1230d69-c779-4736-9eb6-f82d49aafa9a"

UUID of the Geoscience Object Service object associated with the block model

Date and time of the last block model update, including metadata updates

User who last updated the block model, including metadata updates

Example: "kim@example.test"

The primary email address of the user. Can be null if an error occurred while retrieving this information.

Example: "59b73891-5538-4e45-ae67-f8c5b00d7405"

The ID of the user

Example: "Kim Kim"

The full name of the user. Can be null if an error occurred while retrieving this information.

Origin of the block model

xnumber
ynumber
znumber

The human-readable label used to identify the block model

Normalised rotation of the block model, represented as intrinsic rotations around the Z axis, then X axis, then Z axis.

Example: "e6230d69-c779-4736-9eb6-f82d49aafa06"

Organisation the block model belongs to.

Size of the block model

Block size

xnumber
ynumber
znumber

Type of sub-blocking

Number of blocks for x, y and z axis. Total must not exceed 500,000,000.

nxinteger
nyinteger
nzinteger

Type of sub-blocking

Number of parent blocks for x, y and z axis. Total must not exceed 500,000,000.

nxinteger
nyinteger
nzinteger

Number of sub-blocks per parent block per axis. Accepted values per axis are 1, 2, 4, 8, 16, 32 or 64.

nxinteger
nyinteger
nzinteger

Parent block size.

xnumber
ynumber
znumber

Type of sub-blocking

Number of parent blocks for x, y and z axis. Total must not exceed 500,000,000.

nxinteger
nyinteger
nzinteger

Number of sub-blocks per parent block per axis.

nxinteger
nyinteger
nzinteger

Parent block size.

xnumber
ynumber
znumber

Type of sub-blocking

Number of parent blocks for x, y and z axis. Total must not exceed 500,000,000.

nxinteger
nyinteger
nzinteger

Number of sub-blocks per parent block per axis.

nxinteger
nyinteger
nzinteger

Parent block size.

xnumber
ynumber
znumber

Unit ID denoting the length unit used for the block model's blocks.

Example: "860be2f5-fe06-4c1b-ac8b-7d34d2b6d2ef"

Workspace the block model belongs to.

401

Unauthorized

Example: "Invalid authentication credentials"

A human-readable explanation specific to this occurrence of the problem.

Example: 401

The HTTP status code generated by the origin server for this occurrence of the problem.

Example: "Invalid authentication credentials"

A short, human-readable summary of the problem type.

Example: "https://seequent.com/error-codes/block-model-service/auth/unauthorized"

A URI reference that is the primary identifier of the problem type.

403

Forbidden

Example: "Permission denied"

A human-readable explanation specific to this occurrence of the problem.

Example: 403

The HTTP status code generated by the origin server for this occurrence of the problem.

Example: "Permission Denied"

A short, human-readable summary of the problem type.

Example: "https://seequent.com/error-codes/block-model-service/auth/forbidden"

A URI reference that is the primary identifier of the problem type.

404

Not Found

Example: "Block model 11111111-2222-3333-4444-555555555555 not found."

A human-readable explanation specific to this occurrence of the problem.

Example: 404

The HTTP status code generated by the origin server for this occurrence of the problem.

Example: "Resource Not Found"

A short, human-readable summary of the problem type.

Example: "https://seequent.com/error-codes/block-model-service/not-found"

A URI reference that is the primary identifier of the problem type.

410

Gone

Example: "Block model 11111111-2222-3333-4444-555555555555 has been deleted."

A human-readable explanation specific to this occurrence of the problem.

Example: 410

The HTTP status code generated by the origin server for this occurrence of the problem.

Example: "Resource Gone"

A short, human-readable summary of the problem type.

Example: "https://seequent.com/error-codes/block-model-service/gone"

A URI reference that is the primary identifier of the problem type.

422

Unprocessable Entity

Example: "1 validation error for 'HTTP Request' body -> block_rotation value is not a valid list (type=type_error.list)"

A human-readable explanation specific to this occurrence of the problem.

Example: 422

The HTTP status code generated by the origin server for this occurrence of the problem.

Example: "1 validation error for Request"

A short, human-readable summary of the problem type.

Example: "https://seequent.com/error-codes/block-model-service/validation"

A URI reference that is the primary identifier of the problem type.

500

Internal Server Error

Example: "An error occurred"

A human-readable explanation specific to this occurrence of the problem.

Example: 500

The HTTP status code generated by the origin server for this occurrence of the problem.

Example: "Service Error"

A short, human-readable summary of the problem type.

Example: "https://seequent.com/error-codes/block-model-service/service"

A URI reference that is the primary identifier of the problem type.


© Seequent, The Bentley Subsurface Company