Structure Cloud Processing API (alpha) v0.1
This is a Structure Cloud Processing REST API specification.
jobs
GET /api/v0.1/jobs
List Jobs
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
BearerScheme |
header | string | N/A | No | JWT Bearer token |
limit |
query | integer | 50 | No | |
offset |
query | integer | 0 | No |
Response 200 OK
Response 422 Unprocessable Entity
POST /api/v0.1/jobs
Create Job
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
BearerScheme |
header | string | N/A | No | JWT Bearer token |
Request body
Schema of the request body
{
"properties": {
"kind": {
"$ref": "#/components/schemas/JobKind"
},
"input": {
"anyOf": [
{
"type": "string"
},
{
"$ref": "#/components/schemas/JobNavicularDropInput"
}
],
"title": "Input"
}
},
"type": "object",
"required": [
"kind",
"input"
],
"title": "JobCreate",
"examples": [
{
"input": "scan_id",
"kind": "foot_measurements"
},
{
"input": {
"foot_loaded": "scan_id",
"foot_unloaded": "scan_id"
},
"kind": "navicular_drop"
}
]
}
Response 201 Created
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"title": "Id"
},
"kind": {
"$ref": "#/components/schemas/JobKind"
},
"status": {
"$ref": "#/components/schemas/JobStatus"
},
"result_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Result Id"
}
},
"type": "object",
"required": [
"id",
"kind",
"status"
],
"title": "Job"
}
Response 422 Unprocessable Entity
GET /api/v0.1/jobs/{job_id}
Get Job Info
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
BearerScheme |
header | string | N/A | No | JWT Bearer token |
job_id |
path | string | No |
Response 200 OK
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"title": "Id"
},
"kind": {
"$ref": "#/components/schemas/JobKind"
},
"status": {
"$ref": "#/components/schemas/JobStatus"
},
"result_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Result Id"
}
},
"type": "object",
"required": [
"id",
"kind",
"status"
],
"title": "Job"
}
Response 422 Unprocessable Entity
results
GET /api/v0.1/results
List Results
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
BearerScheme |
header | string | N/A | No | JWT Bearer token |
limit |
query | integer | 50 | No | |
offset |
query | integer | 0 | No |
Response 200 OK
Response 422 Unprocessable Entity
GET /api/v0.1/results/{result_id}
Get Result Info
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
BearerScheme |
header | string | N/A | No | JWT Bearer token |
result_id |
path | string | No |
Response 200 OK
Response 422 Unprocessable Entity
scans
GET /api/v0.1/scans
List Scans
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
BearerScheme |
header | string | N/A | No | JWT Bearer token |
limit |
query | integer | 50 | No | |
offset |
query | integer | 0 | No |
Response 200 OK
Response 422 Unprocessable Entity
POST /api/v0.1/scans
Upload Scan
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
BearerScheme |
header | string | N/A | No | JWT Bearer token |
Request body
{
"scan_info": {
"kind": "string",
"format": "string",
"labels": [
"string"
]
},
"scan_data": "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ="
}
Schema of the request body
{
"properties": {
"scan_info": {
"properties": {
"kind": {
"type": "string",
"const": "foot",
"title": "ScanKind"
},
"format": {
"type": "string",
"const": "ply",
"title": "ScanFormat"
},
"labels": {
"items": {
"type": "string"
},
"type": "array",
"title": "Labels",
"default": []
}
},
"type": "object",
"required": [
"kind",
"format"
],
"title": "ScanBase",
"description": "Scan information"
},
"scan_data": {
"type": "string",
"format": "binary",
"title": "Scan Data",
"description": "Scan mesh file"
}
},
"type": "object",
"required": [
"scan_info",
"scan_data"
],
"title": "Body_upload_scan_api_v0_1_scans_post"
}
Response 201 Created
{
"kind": "string",
"format": "string",
"labels": [
"string"
],
"id": "string",
"created_on": "2022-04-13T15:42:05.901Z"
}
Schema of the response body
{
"properties": {
"kind": {
"$ref": "#/components/schemas/ScanKind"
},
"format": {
"$ref": "#/components/schemas/ScanFormat"
},
"labels": {
"items": {
"type": "string"
},
"type": "array",
"title": "Labels",
"default": []
},
"id": {
"type": "string",
"title": "Id"
},
"created_on": {
"type": "string",
"format": "date-time",
"title": "Created On"
}
},
"type": "object",
"required": [
"kind",
"format",
"id",
"created_on"
],
"title": "Scan"
}
Response 422 Unprocessable Entity
GET /api/v0.1/scans/{scan_id}
Get Scan Info
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
BearerScheme |
header | string | N/A | No | JWT Bearer token |
scan_id |
path | string | No |
Response 200 OK
{
"kind": "string",
"format": "string",
"labels": [
"string"
],
"id": "string",
"created_on": "2022-04-13T15:42:05.901Z"
}
Schema of the response body
{
"properties": {
"kind": {
"$ref": "#/components/schemas/ScanKind"
},
"format": {
"$ref": "#/components/schemas/ScanFormat"
},
"labels": {
"items": {
"type": "string"
},
"type": "array",
"title": "Labels",
"default": []
},
"id": {
"type": "string",
"title": "Id"
},
"created_on": {
"type": "string",
"format": "date-time",
"title": "Created On"
}
},
"type": "object",
"required": [
"kind",
"format",
"id",
"created_on"
],
"title": "Scan"
}
Response 422 Unprocessable Entity
PATCH /api/v0.1/scans/{scan_id}
Update Scan Info
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
BearerScheme |
header | string | N/A | No | JWT Bearer token |
scan_id |
path | string | No |
Request body
Schema of the request body
{
"properties": {
"kind": {
"anyOf": [
{
"$ref": "#/components/schemas/ScanKind"
},
{
"type": "null"
}
]
},
"format": {
"anyOf": [
{
"$ref": "#/components/schemas/ScanFormat"
},
{
"type": "null"
}
]
},
"labels": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Labels"
}
},
"type": "object",
"title": "ScanUpdate"
}
Response 200 OK
{
"kind": "string",
"format": "string",
"labels": [
"string"
],
"id": "string",
"created_on": "2022-04-13T15:42:05.901Z"
}
Schema of the response body
{
"properties": {
"kind": {
"$ref": "#/components/schemas/ScanKind"
},
"format": {
"$ref": "#/components/schemas/ScanFormat"
},
"labels": {
"items": {
"type": "string"
},
"type": "array",
"title": "Labels",
"default": []
},
"id": {
"type": "string",
"title": "Id"
},
"created_on": {
"type": "string",
"format": "date-time",
"title": "Created On"
}
},
"type": "object",
"required": [
"kind",
"format",
"id",
"created_on"
],
"title": "Scan"
}
Response 422 Unprocessable Entity
GET /api/v0.1/scans/{scan_id}/data
Get Scan Data
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
BearerScheme |
header | string | N/A | No | JWT Bearer token |
scan_id |
path | string | No |
Response 200 OK
Response 422 Unprocessable Entity
user
GET /api/v0.1/users/me
Get This User
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
BearerScheme |
header | string | N/A | No | JWT Bearer token |
Response 200 OK
{
"id": "string",
"name": "string",
"email": "derp@meme.org",
"is_superuser": null,
"is_processing_enabled": true,
"is_sdk_enabled": true
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"title": "Id"
},
"name": {
"type": "string",
"maxLength": 64,
"title": "Name"
},
"email": {
"type": "string",
"maxLength": 64,
"format": "email",
"title": "Email"
},
"is_superuser": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Is Superuser"
},
"is_processing_enabled": {
"type": "boolean",
"title": "Is Processing Enabled",
"default": false
},
"is_sdk_enabled": {
"type": "boolean",
"title": "Is Sdk Enabled",
"default": false
}
},
"type": "object",
"required": [
"id",
"name",
"email"
],
"title": "UserPublic"
}
Schemas
Body_upload_scan_api_v0_1_scans_post
| Name | Type |
|---|---|
scan_data |
string(binary) |
scan_info |
Properties: kind, format, labels |
HTTPValidationError
| Name | Type |
|---|---|
detail |
Array<ValidationError> |
Job
| Name | Type |
|---|---|
id |
string |
kind |
JobKind |
result_id |
|
status |
JobStatus |
JobCreate
| Name | Type |
|---|---|
input |
|
kind |
JobKind |
JobKind
Type: string
JobNavicularDropInput
| Name | Type |
|---|---|
foot_loaded |
string |
foot_unloaded |
string |
JobStatus
Type: string
Result
| Name | Type |
|---|---|
data |
|
id |
string |
kind |
JobKind |
Scan
| Name | Type |
|---|---|
created_on |
string(date-time) |
format |
ScanFormat |
id |
string |
kind |
ScanKind |
labels |
Array<string> |
ScanFormat
Type: string
ScanKind
Type: string
ScanUpdate
| Name | Type |
|---|---|
format |
|
kind |
|
labels |
UserPublic
| Name | Type |
|---|---|
email |
string(email) |
id |
string |
is_processing_enabled |
boolean |
is_sdk_enabled |
boolean |
is_superuser |
|
name |
string |
ValidationError
| Name | Type |
|---|---|
loc |
Array<> |
msg |
string |
type |
string |
Security schemes
| Name | Type | Scheme | Description |
|---|---|---|---|
| BearerScheme | http | bearer |