---
title: "Get one Agent Smith technique by id or slug (admin console)."
method: GET
path: "/smith/techniques/{id}"
tags: ["Dojo"]
---

# Get one Agent Smith technique by id or slug (admin console).

`GET /smith/techniques/{id}`

## Request

- Base URL: `https://api.mnemom.ai/v1`
- URL: `https://api.mnemom.ai/v1/smith/techniques/{id}`
- Auth: HTTP bearer

Returns one catalog technique's full detail — description, strategy, templates, real observed examples, known defenses, preconditions, ATLAS/OWASP tags, lineage, provenance — for the /admin/agent-smith Library Sigma card. Resolves by id OR slug. Admin-only. MNE-813.

## Path parameters

- `id` string, required

## Response `200`

The technique detail.

- object
  - `id` string, required
  - `slug` string, required
  - `name` string, required
  - `tactic` 'pretext' | 'authority-spoof' | 'injection' | 'rationalized-destruction' | 'exfiltration', required
  - `tactic_order` integer, required: Ladder-tier ordering (1..5).
  - `threat_type` string
  - `target_surface` 'read' | 'write', required: read = leak, write = destructive.
  - `status` 'experimental' | 'test' | 'stable' | 'deprecated' | 'retired' | 'rejected', required
  - `severity` 'low' | 'medium' | 'high' | 'critical'
  - `origin` 'seed' | 'evolved' | 'human-as-smith'
  - `evo_version` integer
  - `atlas_tags` string[]
  - `owasp_tags` string[]
  - `modified` string
  - `confidence` number, nullable: Wilson lower-bound confidence of the measured efficacy; null when unmeasured.
  - `efficacy` number, nullable: Raw measured range breach rate (breaches/trials); null when unmeasured.
  - `efficacy_trials` integer, nullable: Range trials behind confidence/efficacy; null when unmeasured.
  - `description` string, required
  - `strategy` string, required
  - `templates` string[]
  - `examples` object[]
    - `sessionId` string
    - `agentId` string
    - `scenario` string
    - `prompt` string, required: The real attacker prompt.
    - `agentExcerpt` string
    - `verdict` 'held' | 'caught' | 'leak' | 'contagion' | 'bent', required
    - `ts` string
  - `known_defenses` string[]
  - `preconditions` string[]
  - `references` string[]
  - `first_seen` string
  - `author` string

## Other responses

- `401`: Authentication required
- `403`: Forbidden
- `404`: Resource not found
- `429`: Rate-limit exceeded. The global per-IP limiter (100 requests/minute, applied to every `/v1/*` route) rejected this request. Back off until the window resets — `Retry-After` carries the cooldown in seconds and `X-RateLimit-Reset` the absolute reset time.
- `500`: Server error — request was well-formed but the server failed to fulfill it. Typically a downstream dependency (DB / RPC / external API) returned an unexpected error.

---

[API](https://skmtc.dev/mnemom/apis/mnemom-api.md) · [All operations](https://skmtc.dev/mnemom/apis/mnemom-api/llms.txt) · [OpenAPI document](https://skmtc.dev/mnemom/apis/mnemom-api/revisions/274b7a6ea182?raw)
