Create a geoscience object
Create or update a geoscience object.
Upload a geoscience object based on the schema element. Geoscience objects can be stored hierarchically, by providing the path to the object, including the object name, in the request URL. A detailed list of the available object schemas can be found in Seequent's evo-schemas repository.
The submitted properties will be validated against the specified schema properties.
To create a new object, upload it to a unique path with the UUID field set to null.
The response will contain a reflection of the uploaded object with a newly assigned object ID.
This can be used for future requests to update the object.
If a version of the geoscience object already exists at the specified path a new version will be created. To move or rename an existing object, simply upload a new version of it (with the same UUID) to a new, unique path or file name.
Note that every upload of an object is considered a new version, even if no changes have been made.
If required, the object should be compressed, currently gzip compression is supported.
Set header Content-Encoding: gzip if the content is compressed and Accept-Encoding: gzip to receive
compressed content.
Request
Example body
{
"schema": "string",
"uuid": "string",
"additionalProp1": "string",
"additionalProp2": "number",
"additionalProp3": "boolean"
}
Responses
201
The geoscience object version has been created.
The geoscience object with the additional required schema properties.
This object is largely defined by the schemas in the geoscience-object-schemas repository. There are some default, required values listed here explicitly.
The geoscience object schema.
Unique object UUID.
{
"created_at": "2024-07-29T15:51:28.071Z",
"created_by": {
"email": "string",
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": "string"
},
"deleted_at": "2024-07-29T15:51:28.071Z",
"deleted_by": {
"email": "string",
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": "string"
},
"etag": "string",
"geojson_bounding_box": {
"coordinates": [
[
[
0
]
]
],
"type": "Polygon"
},
"geojson_bounding_box_from_workspace_crs": true,
"links": {
"data": [
{
"download_url": "string",
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": "string"
}
],
"download": "string"
},
"modified_at": "2024-07-29T15:51:28.071Z",
"modified_by": {
"email": "string",
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": "string"
},
"object": {
"schema": "string",
"uuid": "string",
"additionalProp1": "string",
"additionalProp2": "number",
"additionalProp3": "boolean"
},
"object_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"object_path": "string",
"stage": {
"name": "string",
"stage_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"version_id": "string"
}
400
/geoscienceobject/schemas/invalid-object
Invalid geoscience object. The contents of the object failed to validate with the schema referenced in its schema property. Check the request contents and try again.
/geoscienceobject/data/invalid-key
The object contains data references that are invalid. These must be SHA256 digests or UUIDs.
/geoscienceobject/objects/data-key-not-found
The object contains references to data blobs that do not exist. Upload them and try again.
/geoscienceobject/objects/data-key-not-found
Data blobs referenced in the object were not moved to their intended destination in storage.
/geoscienceobject/objects/invalid-object
The uploaded object must be of the same schema type as the existing object. Additionally, the object filename must have a .json extension.
/geoscienceobject/invalid-path
The object path contains invalid symbols.
/geoscienceobject/bad-request
Bad request. The server cannot or will not process the request due to a client error.
400HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"The Geoscience Object Is Invalid.""https://seequent.com/error-codes/geoscienceobject/schemas/invalid-object"400HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Data Key Not Valid.""https://seequent.com/error-codes/geoscienceobject/data/invalid-key"400HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Data Key Not Found.""https://seequent.com/error-codes/geoscienceobject/objects/data-key-not-found"400HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Data Key Not Moved.""https://seequent.com/error-codes/geoscienceobject/objects/data-key-not-found"400HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Object Error.""https://seequent.com/error-codes/geoscienceobject/objects/invalid-object"400HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Invalid Path.""https://seequent.com/error-codes/geoscienceobject/invalid-path"400HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Bad Request.""https://seequent.com/error-codes/geoscienceobject/bad-request"{
"detail": "string",
"json_path": "string",
"schema_path": [
null
],
"status": 400,
"title": "The Geoscience Object Is Invalid.",
"type": "https://seequent.com/error-codes/geoscienceobject/schemas/invalid-object"
}
401
/geoscienceobject/auth/missing-token
Unauthorized. The client request has not been completed as the provided credentials are invalid.
/geoscienceobject/auth/invalid-token
Forbidden. The client credentials are valid but do not permit access to this resource.
401HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Access Denied.""https://seequent.com/error-codes/geoscienceobject/auth/missing-token"401HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Access Denied.""https://seequent.com/error-codes/geoscienceobject/auth/invalid-token"{
"detail": "string",
"status": 401,
"title": "Access Denied.",
"type": "https://seequent.com/error-codes/geoscienceobject/auth/missing-token"
}
403
/geoscienceobject/auth/insufficient-role
The user lacks the required role to access this endpoint.
403HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Insufficient Role.""https://seequent.com/error-codes/geoscienceobject/auth/insufficient-role"{
"detail": "string",
"permitted_roles": [
null
],
"status": 403,
"title": "Insufficient Role.",
"type": "https://seequent.com/error-codes/geoscienceobject/auth/insufficient-role",
"your_role": "string"
}
404
/geoscienceobject/objects/not-found
An object by the requested UUID does not exist.
/geoscienceobject/schemas/not-found
Attempting to request an object schema caused an upstream error.
404HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Object Not Found.""https://seequent.com/error-codes/geoscienceobject/objects/not-found"404HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Failed To Request Geoscience Object Schema.""https://seequent.com/error-codes/geoscienceobject/schemas/not-found"{
"detail": "string",
"object_id": "string",
"status": 404,
"title": "Object Not Found.",
"type": "https://seequent.com/error-codes/geoscienceobject/objects/not-found",
"upstream_type": "string"
}
409
/geoscienceobject/objects/already-exists
An object already exists by this path/UUID.
409HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Geoscience Object Already Exists.""https://seequent.com/error-codes/geoscienceobject/objects/already-exists"{
"detail": "string",
"existing_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"object_path": "string",
"status": 409,
"title": "Geoscience Object Already Exists.",
"type": "https://seequent.com/error-codes/geoscienceobject/objects/already-exists"
}
412
/geoscienceobject/objects/modified
The object has been modified, making these changes stale.
412HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Object Modified.""https://seequent.com/error-codes/geoscienceobject/objects/modified"{
"detail": "string",
"status": 412,
"title": "Object Modified.",
"type": "https://seequent.com/error-codes/geoscienceobject/objects/modified"
}
422
/geoscienceobject/validation
The request was invalid and will not be processed due to a client error.
422HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Validation Error.""https://seequent.com/error-codes/geoscienceobject/validation"{
"detail": "string",
"status": 422,
"title": "Validation Error.",
"type": "https://seequent.com/error-codes/geoscienceobject/validation"
}
500
/geoscienceobject/api-errors
A server error has occurred.
500HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"An Error Occurred.""https://seequent.com/error-codes/geoscienceobject/api-errors"{
"detail": "string",
"status": 500,
"title": "An Error Occurred.",
"type": "https://seequent.com/error-codes/geoscienceobject/api-errors"
}
502
/geoscienceobject/bad-gateway
Bad gateway. A response required to handle the request is invalid.
502HTTP status codes and reason phrases
Status codes from the following RFCs are all observed:
* RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
* RFC 6585: Additional HTTP Status Codes
* RFC 3229: Delta encoding in HTTP
* RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
* RFC 5842: Binding Extensions to WebDAV
* RFC 7238: Permanent Redirect
* RFC 2295: Transparent Content Negotiation in HTTP
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"Bad Gateway.""https://seequent.com/error-codes/geoscienceobject/bad-gateway"{
"detail": "string",
"status": 502,
"title": "Bad Gateway.",
"type": "https://seequent.com/error-codes/geoscienceobject/bad-gateway",
"upstream_type": "string"
}