> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs-beta.getzep.com/v4/sdk-reference/agent/trajectories/get/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs-beta.getzep.com/_mcp/server. # Get Agent Trajectory GET https://api.getzep.com/api/v4/agents/{agent_uuid}/trajectories/{trajectory_uuid} Reference: https://docs-beta.getzep.com/sdk-reference/agent/trajectories/get ## Authentication - `Authorization` header (required) (prefixed with ` Api-Key `) — Type "Api-Key" followed by a space and the project API key. ## Request ### Path parameters - `agent_uuid` (string, required) — Agent UUID - `trajectory_uuid` (string, required) — Trajectory UUID ## Response ### 200 OK - `abandoned_at` (string, optional) — The time the Trajectory was abandoned. - `agent_uuid` (string, optional) — The owning Agent UUID. - `attempt_family_uuid` (string, optional) — The stable retry-family identity shared with declared child attempts. - `closed_at` (string, optional) — The time the Trajectory closed. - `created_at` (string, optional) — The time the Trajectory was created. - `internal` (v4.AgentTrajectoryInternal, optional) — Server-owned fields that are not part of the top-level capture contract. - `learn_from` (boolean, optional) — Whether eligible evidence may participate in learning. - `learn_from_reason` (string, optional) — Why the Trajectory is not eligible for learning. - `metadata` (map from string to any, optional) — Developer metadata used for exact containment filters. - `objective` (string, optional) — The task-instance objective captured for this attempt. - `outcome` (enum, optional) — The caller-owned task outcome. - Allowed values: `succeeded`, `failed`, `partial`, `abandoned`, `unknown` - `parent_trajectory_uuid` (string, optional) — The parent attempt when this Trajectory is a retry. - `revision` (integer, optional) — The revision required by the next update or lifecycle command. - `source` (v4.AgentTrajectorySource, optional) — The source record for an imported Trajectory. - `status` (enum, optional) — The current lifecycle state. - Allowed values: `open`, `closing`, `closed`, `abandoned`, `deleted` - `task_family` (string, optional) — The optional opaque task-family classification slug. - `trajectory_id` (string, optional) — The optional customer-assigned identifier, unique within the Agent. - `updated_at` (string, optional) — The time the Trajectory was last updated. - `uuid` (string, optional) — The stable Trajectory UUID. - `verification` (enum, optional) — The strength of the accepted outcome verification. - Allowed values: `none`, `agent`, `tool`, `customer`, `external` ## Errors ### 400 Bad Request Error Bad Request - `error` (v4.ErrorBody, optional) ### 401 Unauthorized Error Unauthorized - `error` (v4.ErrorBody, optional) ### 403 Forbidden Error Forbidden - `error` (v4.ErrorBody, optional) ### 404 Not Found Error Not Found - `error` (v4.ErrorBody, optional) ## Types ### v4.AgentTrajectoryInternal - `assertion_uuid` (string, optional) - `closing_sequence` (integer, optional) - `current_summary_version` (integer, optional) - `last_task_uuid` (string, optional) - `next_sequence` (integer, optional) - `processing_state` (enum, optional) - Allowed values: `idle`, `pending`, `processing`, `failed` ### v4.AgentTrajectorySource - `connection_uuid` (string, optional) - `import_uuid` (string, optional) - `imported_at` (string, optional) - `kind` (enum, optional) - Allowed values: `trace_import` - `provider` (string, optional) - `provider_project_id` (string, optional) - `run_uuid` (string, optional) - `scores` (map from string to any, optional) - `source_changed` (boolean, optional) — SourceChanged reports whether the provider trace changed after import. - `source_revision` (string, optional) - `source_url` (string, optional) - `trace_ended_at` (string, optional) - `trace_id` (string, optional) - `trace_started_at` (string, optional) ### v4.ErrorBody - `code` (string, optional) - `details` (map from string to any, optional) - `message` (string, optional) - `param` (string, optional) - `request_id` (string, optional) ## Examples **Response** ```json { "abandoned_at": "string", "agent_uuid": "string", "attempt_family_uuid": "string", "closed_at": "string", "created_at": "string", "internal": { "assertion_uuid": "string", "closing_sequence": 1, "current_summary_version": 1, "last_task_uuid": "string", "next_sequence": 1, "processing_state": "idle" }, "learn_from": true, "learn_from_reason": "string", "metadata": {}, "objective": "string", "outcome": "succeeded", "parent_trajectory_uuid": "string", "revision": 1, "source": { "connection_uuid": "string", "import_uuid": "string", "imported_at": "string", "kind": "trace_import", "provider": "string", "provider_project_id": "string", "run_uuid": "string", "scores": {}, "source_changed": false, "source_revision": "string", "source_url": "string", "trace_ended_at": "string", "trace_id": "string", "trace_started_at": "string" }, "status": "open", "task_family": "string", "trajectory_id": "string", "updated_at": "string", "uuid": "string", "verification": "none" } ```