{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/runStepObject", "title": "Run steps", "type": "object", "description": "Represents a step in execution of a run.\n", "properties": { "id": { "description": "The identifier of the run step, which can be referenced in API endpoints.", "type": "string" }, "object": { "description": "The object type, which is always `assistant.run.step``.", "type": "string", "enum": [ "assistant.run.step" ], "x-ms-enum": { "name": "RunStepObjectType", "modelAsString": true, "values": [ { "value": "assistant.run.step", "description": "The object type, which is always `assistant.run.step`" } ] } }, "created_at": { "description": "The Unix timestamp (in seconds) for when the run step was created.", "type": "integer" }, "assistant_id": { "description": "The ID of the [assistant](/docs/api-reference/assistants) associated with the run step.", "type": "string" }, "thread_id": { "description": "The ID of the [thread](/docs/api-reference/threads) that was run.", "type": "string" }, "run_id": { "description": "The ID of the [run](/docs/api-reference/runs) that this run step is a part of.", "type": "string" }, "type": { "description": "The type of run step, which can be either `message_creation` or `tool_calls`.", "type": "string", "enum": [ "message_creation", "tool_calls" ], "x-ms-enum": { "name": "RunStepObjectType", "modelAsString": true, "values": [ { "value": "message_creation", "description": "The message_creation run step" }, { "value": "tool_calls", "description": "The tool_calls run step" } ] } }, "status": { "description": "The status of the run, which can be either `in_progress`, `cancelled`, `failed`, `completed`, or `expired`.", "type": "string", "enum": [ "in_progress", "cancelled", "failed", "completed", "expired" ], "x-ms-enum": { "name": "RunStepObjectStatus", "modelAsString": true, "values": [ { "value": "in_progress", "description": "The in_progress run status" }, { "value": "cancelled", "description": "The cancelled run status" }, { "value": "failed", "description": "The cancelled run status" }, { "value": "completed", "description": "The cancelled run status" }, { "value": "expired", "description": "The cancelled run status" } ] } }, "step_details": { "type": "object", "description": "The details of the run step.", "oneOf": [ { "$ref": "#/components/schemas/runStepDetailsMessageCreationObject" }, { "$ref": "#/components/schemas/runStepDetailsToolCallsObject" } ] }, "last_error": { "type": "object", "description": "The last error associated with this run step. Will be `null` if there are no errors.", "nullable": true, "properties": { "code": { "type": "string", "description": "One of `server_error` or `rate_limit_exceeded`.", "enum": [ "server_error", "rate_limit_exceeded" ], "x-ms-enum": { "name": "LastErrorCode", "modelAsString": true, "values": [ { "value": "server_error", "description": "The server_error" }, { "value": "rate_limit_exceeded", "description": "The rate_limit_exceeded status" } ] } }, "message": { "type": "string", "description": "A human-readable description of the error." } }, "required": [ "code", "message" ] }, "expired_at": { "description": "The Unix timestamp (in seconds) for when the run step expired. A step is considered expired if the parent run is expired.", "type": "integer", "nullable": true }, "cancelled_at": { "description": "The Unix timestamp (in seconds) for when the run step was cancelled.", "type": "integer", "nullable": true }, "failed_at": { "description": "The Unix timestamp (in seconds) for when the run step failed.", "type": "integer", "nullable": true }, "completed_at": { "description": "The Unix timestamp (in seconds) for when the run step completed.", "type": "integer", "nullable": true }, "metadata": { "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n", "type": "object", "nullable": true } }, "required": [ "id", "object", "created_at", "assistant_id", "thread_id", "run_id", "type", "status", "step_details", "last_error", "expired_at", "cancelled_at", "failed_at", "completed_at", "metadata" ] }