---
title: "Get an agent suggestion"
method: GET
path: "/v1/agent-suggestions/{id}"
tags: ["Agent Suggestions"]
---

# Get an agent suggestion

`GET /v1/agent-suggestions/{id}`

## Request

- Base URL: `https://docs.grepr.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://docs.grepr.ai/v1/agent-suggestions/{id}`
- Auth: one of:
  - API key in header `GREPR-API-KEY`
  - OpenID Connect (`https://grepr-prod.us.auth0.com/.well-known/openid-configuration`)

Returns one agent suggestion, including the template-inputs patch, the job version it was proposed against, and the sample events it was verified with.

## Path parameters

- `id` string, required

## Response `200`

Suggestion retrieved successfully

- AgentSuggestion
  - `agentId` string
  - `appliedJobVersion` integer
  - `baseJobVersion` integer
  - `createdAt` string, date-time
  - `description` string
  - `id` string
  - `investigationId` string
  - `jobId` string
  - `organizationId` string
  - `reviewedAt` string, date-time
  - `reviewedBy` string
  - `samples` LogEvent[]
    - `attributes` object: Attributes associated with the event, a map from attribute name to attribute value, which may be a nested map or list.
    - `eventTimestamp` integer, required: Event timestamp that is in the record. Milliseconds from epoch.
    - `id` string, required: Id of the event.
    - `message` string: The log message.
    - `receivedTimestamp` integer, required: Timestamp when the event was received by Grepr. Milliseconds from epoch.
    - `severity` integer: The log severity. Higher numbers mean higher severity, following the OTel format 1-24.
    - `tags` object: Tags associated with the event, a map from tag name to set of tag values.
  - `status` 'PENDING' | 'APPLIED' | 'REJECTED'
  - `teamIds` string[]
  - `templateInputsPatch` JsonNode: A partial templateInputs object to deep-merge into the pipeline's current inputs. Objects merge recursively, and an array of named objects (like input.parsers) merges by entry name, so entries you omit are kept. Scalars and arrays of non-objects replace whole.
  - `toolCallId` string
  - `updatedAt` string, date-time

## Other responses

- `401`: Unauthorized
- `404`: Suggestion not found

---

[API](https://skmtc.dev/grepr/apis/grepr-api.md) - [All operations](https://skmtc.dev/grepr/apis/grepr-api/llms.txt) - [OpenAPI document](https://skmtc.dev/grepr/apis/grepr-api/revisions/2a5ce03a0bf0?raw)
