Skip to main content

tagger-definition-service (1.0.1)

Download OpenAPI specification:Download

Model-Prime Tagger Definition REST Service

taggers

Operations for managing taggers and versions

List taggers.

query Parameters
page_number
integer
page_size
integer
sort_by
string
Enum: "created_at" "updated_at"
show_soft_deleted
boolean
Deprecated
Default: false

Show soft-deleted taggers along with non-deleted taggers.

only_show_soft_deleted
boolean
Default: false

Show only soft-deleted taggers.

enabled
boolean

Responses

Response samples

Content type
application/json
{
  • "count": 0,
  • "items": [
    ]
}

Create a new tagger

Request Body schema: application/json
required
description
string (description)
name
required
string (name)

Responses

Request samples

Content type
application/json
{
  • "description": "description",
  • "name": "name"
}

Response samples

Content type
application/json
{
  • "created_at": "2000-01-23T04:56:07+00:00",
  • "creator_id": "creator_id",
  • "creator_type": "creator_type",
  • "description": "description",
  • "enabled": true,
  • "has_draft": true,
  • "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "latest_final_version": 6,
  • "latest_final_version_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "latest_final_version_is_tested": true,
  • "name": "name",
  • "soft_deleted_at": "2000-01-23T04:56:07+00:00",
  • "updated_at": "2000-01-23T04:56:07+00:00"
}

Delete a tagger. Taggers that have been invoked cannot be hard deleted at this time. In order to undo a soft-deletion, pass an empty string for the soft_deleted_at property using the tagger update endpoint.

path Parameters
id
required
string <uuid>
query Parameters
hard
boolean
Default: false

Responses

Read a tagger's properties.

path Parameters
id
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "created_at": "2000-01-23T04:56:07+00:00",
  • "creator_id": "creator_id",
  • "creator_type": "creator_type",
  • "description": "description",
  • "enabled": true,
  • "has_draft": true,
  • "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "latest_final_version": 6,
  • "latest_final_version_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "latest_final_version_is_tested": true,
  • "name": "name",
  • "soft_deleted_at": "2000-01-23T04:56:07+00:00",
  • "updated_at": "2000-01-23T04:56:07+00:00"
}

Update tagger properties. In order to undo a soft-deletion, pass an empty string for the soft_deleted_at property.

path Parameters
id
required
string <uuid>
Request Body schema: application/json
required
description
string (description)
enabled
boolean (enabled)
name
string (name)
soft_deleted_at
string (soft_deleted_at)

Responses

Request samples

Content type
application/json
{
  • "description": "description",
  • "enabled": true,
  • "name": "name",
  • "soft_deleted_at": "soft_deleted_at"
}

Response samples

Content type
application/json
{
  • "created_at": "2000-01-23T04:56:07+00:00",
  • "creator_id": "creator_id",
  • "creator_type": "creator_type",
  • "description": "description",
  • "enabled": true,
  • "has_draft": true,
  • "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "latest_final_version": 6,
  • "latest_final_version_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "latest_final_version_is_tested": true,
  • "name": "name",
  • "soft_deleted_at": "2000-01-23T04:56:07+00:00",
  • "updated_at": "2000-01-23T04:56:07+00:00"
}

List tagger versions for the specified tagger.

path Parameters
id
required
string <uuid>
query Parameters
page_number
integer
page_size
integer
is_tested
boolean

Responses

Response samples

Content type
application/json
{
  • "count": 0,
  • "items": [
    ]
}

Create a new draft version of the specified tagger using the provided content.

path Parameters
id
required
string <uuid>
Request Body schema: application/json
required
content
required
string (content)
is_final
boolean (is_final)

Responses

Request samples

Content type
application/json
{
  • "content": "variables:\n robot_pose_x:\n source: robot_pose\n path: [\"x\"]\n robot_pose_y:\n source: robot_pose\n path: [\"y\"]\n robot_pose_theta:\n source: robot_pose\n path: [\"theta\"]\npredicates:\n check_bounds:\n evaluate: robot_pose_x > 100 and robot_pose_y > 100\n check_direction:\n evaluate: robot_pose_theta > 0 and robot_pose_theta < 1.57\noutputs:\n check_bounds:\n field_id: 123e4567-e89b-12d3-a456-426614174000\n type: static\n value: \"out of bounds\"\n",
  • "is_final": true
}

Response samples

Content type
application/json
{
  • "content": {
    },
  • "created_at": "2000-01-23T04:56:07+00:00",
  • "creator_id": "creator_id",
  • "creator_type": "creator_type",
  • "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "is_final": true,
  • "is_tested": true,
  • "tagger_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "updated_at": "2000-01-23T04:56:07+00:00",
  • "version": 6
}

Hard delete the specified tagger's version if it's a draft, or the latest published version if it has not been invoked before.

path Parameters
id
required
string <uuid>
version_id
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "content": {
    },
  • "created_at": "2000-01-23T04:56:07+00:00",
  • "creator_id": "creator_id",
  • "creator_type": "creator_type",
  • "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "is_final": true,
  • "is_tested": true,
  • "tagger_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "updated_at": "2000-01-23T04:56:07+00:00",
  • "version": 6
}

Read the specified tagger's version information including an S3 signed URL for its YAML definition.

path Parameters
id
required
string <uuid>
version_id
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "content": {
    },
  • "created_at": "2000-01-23T04:56:07+00:00",
  • "creator_id": "creator_id",
  • "creator_type": "creator_type",
  • "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "is_final": true,
  • "is_tested": true,
  • "tagger_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "updated_at": "2000-01-23T04:56:07+00:00",
  • "version": 6
}

Update the specified tagger version's draft status or content.

path Parameters
id
required
string <uuid>
version_id
required
string <uuid>
Request Body schema: application/json
required
content
string (content)
is_final
boolean (is_final)

Responses

Request samples

Content type
application/json
{
  • "content": "variables:\n robot_pose_x:\n source: robot_pose\n path: [\"x\"]\n robot_pose_y:\n source: robot_pose\n path: [\"y\"]\n robot_pose_theta:\n source: robot_pose\n path: [\"theta\"]\npredicates:\n check_bounds:\n evaluate: robot_pose_x > 100 and robot_pose_y > 100\n check_direction:\n evaluate: robot_pose_theta > 0 and robot_pose_theta < 1.57\noutputs:\n check_bounds:\n field_id: 123e4567-e89b-12d3-a456-426614174000\n type: static\n value: \"out of bounds\"\n",
  • "is_final": true
}

Response samples

Content type
application/json
{
  • "content": {
    },
  • "created_at": "2000-01-23T04:56:07+00:00",
  • "creator_id": "creator_id",
  • "creator_type": "creator_type",
  • "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "is_final": true,
  • "is_tested": true,
  • "tagger_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "updated_at": "2000-01-23T04:56:07+00:00",
  • "version": 6
}

validation

Operations for validating tagger definitions and sub-components

Parse newline-escaped YAML string specifying Python code expressions in order to receive a list of the valid Python variables, functions, and/or modules contained.

Request Body schema: application/json
required
content
required
string (content)

Responses

Request samples

Content type
application/json
{
  • "content": "import math\ndef pow_2(x: float) -> float:\n return math.pow(x, 2)\n"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Validate newline-escaped YAML string specifying a tagger gating block with a gating condition.

Request Body schema: application/json
required
content
required
string (content)

Responses

Request samples

Content type
application/json
{
  • "content": "gating:\n condition: |-\n {\n and: [\n {field: {alias: \"Start Time\", comparing: {gte: \"2024-01-01T00:00:00Z\"}}},\n {field: {alias: \"Duration\", comparing: {gte: 6000}}},\n ]\n }\n"
}

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "tier": "string"
}

List the available pandas functions used in an output section.

Responses

Response samples

Content type
application/json
{
  • "documentation_url": "documentation_url",
  • "names": [
    ]
}

Validate newline-escaped YAML string specifying a tagger outputs block with one or more unique outputs.

Request Body schema: application/json
required
content
required
string (content)

Responses

Request samples

Content type
application/json
{
  • "content": "outputs:\n check_bounds:\n field_id: 123e4567-e89b-12d3-a456-426614174000\n type: static\n value: \"out of bounds\"\n"
}

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "tier": "string"
}

Validate newline-escaped YAML string specifying a tagger predicates block with one or more unique predicates.

Request Body schema: application/json
required
content
required
string (content)

Responses

Request samples

Content type
application/json
{
  • "content": "variables:\n robot_pose_x:\n source: robot_pose\n path: [\"x\"]\n robot_pose_y:\n source: robot_pose\n path: [\"y\"]\n robot_pose_theta:\n source: robot_pose\n path: [\"theta\"]\npredicates:\n check_bounds:\n evaluate: robot_pose_x > 100 and robot_pose_y > 100\n check_direction:\n evaluate: robot_pose_theta > 0 and robot_pose_theta < 1.57\n"
}

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "tier": "string"
}

Validate newline-escaped YAML string providing a tagger.

Request Body schema: application/json
required
content
required
string (content)

Responses

Request samples

Content type
application/json
{
  • "content": "variables:\n robot_pose_x:\n source: robot_pose\n path: [\"x\"]\n robot_pose_y:\n source: robot_pose\n path: [\"y\"]\n robot_pose_theta:\n source: robot_pose\n path: [\"theta\"]\npredicates:\n check_bounds:\n evaluate: robot_pose_x > 100 and robot_pose_y > 100\n check_direction:\n evaluate: robot_pose_theta > 0 and robot_pose_theta < 1.57\noutputs:\n check_bounds:\n field_id: 123e4567-e89b-12d3-a456-426614174000\n type: static\n value: \"out of bounds\"\n"
}

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "tier": "string"
}

Get the next available access path given a channel name and current path.

Request Body schema: application/json
required
channel_name
required
string (channel_name)
current_access_path
required
Array of strings (current_access_path)

Responses

Request samples

Content type
application/json
{
  • "channel_name": "/robot_pose",
  • "current_access_path": [
    ]
}

Response samples

Content type
application/json
[
  • {
    }
]

List the available pandas functions used in a variable's rolling section.

Responses

Response samples

Content type
application/json
{
  • "documentation_url": "documentation_url",
  • "names": [
    ]
}

Validate newline-escaped YAML string specifying a tagger variables block with one or more unique variables.

Request Body schema: application/json
required
content
required
string (content)

Responses

Request samples

Content type
application/json
{
  • "content": "variables:\n robot_pose_x:\n source: robot_pose\n path: [\"x\"]\n robot_pose_y:\n source: robot_pose\n path: [\"y\"]\n robot_pose_theta:\n source: robot_pose\n path: [\"theta\"]\n"
}

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "tier": "string"
}

invocations

Operations for managing tagger invocations

List tagger invocations. This will include not only user-invoked backfill and test invocations, but also automatically triggered normfill invocations.

query Parameters
page_number
integer
page_size
integer
sort_by
string
Enum: "created_at" "updated_at"
tagger_id
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "count": 0,
  • "items": [
    ]
}

Trigger tagger invocations each on a specific set of robologs. Limitations: backfill invocations are limited to 10 robologs each and test invocations are limited to 2 robolog each at this time. Normfill type invocations are for internal use only. Only one invocation item may be passed in at this time.

Request Body schema: application/json
required
Array
invocation_type
string (invocation_type)

The type of invocation to perform on the tagger version from ['backfill', 'test']

robolog_ids
Array of strings <uuid> (robolog_ids) [ items <uuid > ]

The IDs of robologs to invoke the tagger on.

tagger_id
string <uuid> (tagger_id)

The tagger definition to invoke.

tagger_version_id
string <uuid> (tagger_version_id)

The version of the tagger definition to invoke.

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "successes": [
    ]
}

Read an invocation's properties.

path Parameters
id
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "created_at": "2000-01-23T04:56:07+00:00",
  • "creator_id": "creator_id",
  • "creator_type": "creator_type",
  • "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "robolog_ids": [
    ],
  • "tagger_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "tagger_version_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  • "type": "backfill"
}