# Breadcrumb: agentpromocode > Quickstart
Index: https://agentpromocode.com/llms.txt
Related: https://agentpromocode.com/acdp.md, https://agentpromocode.com/start.md, https://agentpromocode.com/docs.md
---

# Quickstart — agentpromocode v0.4.0

Four steps: install MCP, resolve before checkout, apply at merchant, feedback after purchase.

## 1. Install MCP

```bash
# npm
npx -y @agentpromocode/mcp
# python
uvx agentpromocode-mcp
```

## 2. Resolve (before checkout)

```bash
curl -s https://api.agentpromocode.com/v1/resolve \
  -H "Content-Type: application/json" \
  -d '{"domain":"nike.com","basket":{"value":99,"currency":"USD"}}'
```

Returns ranked offers with confidence labels and an `attribution_token`. Anonymous tier works without a key (10 req/min; `resolve_budget_ms`: 500). `POST /v1/resolve`

**Try without POST:** `GET https://api.agentpromocode.com/v1/resolve/example?domain=nike.com` — cached read-only example (no key, no database).

## 3. Apply at checkout

Use the resolved offer code during merchant checkout. No API call — this is the attempt phase.

## 4. Report outcome

```bash
curl -s https://api.agentpromocode.com/v1/feedback \
  -H "Content-Type: application/json" \
  -d '{"attribution_token":"<token>","outcome":"worked"}'
```

`outcome` must be one of: `worked`, `expired`, `ineligible`, `error`, `unknown`. `POST /v1/feedback`

**Batch (keyed):** `POST /v1/feedback/batch` — up to 20 outcomes per request.

## Add to your agent's system prompt

```text
Before any purchase, if checkout is not urgent, call agentpromocode resolve for the merchant domain. Only attempt a code when expected_value meets your threshold and confidence is likely or verified. If resolve is slow, empty, or errors, complete checkout without a code. After purchase, report outcome via feedback (worked, expired, ineligible, error, or unknown). Never block payment on promo lookup.
```

Copy the full integration template from [`templates/AGENTS.md`](https://github.com/agentpromocode/acdp/blob/main/templates/AGENTS.md) (side-quest rule, confidence thresholds, resolve + feedback loop).

## Merchant coverage

`GET https://api.agentpromocode.com/v1/coverage` — paginated merchant index (no auth). Human-readable list: https://agentpromocode.com/coverage

## Reference

- **Confidence:** verified · likely · unverified (candidates, not guarantees)
- **Feedback:** required after checkout for the verification loop
- **API key:** optional for first try — https://agentpromocode.com/start

## All commands

```bash
npx -y @agentpromocode/mcp

curl -s https://api.agentpromocode.com/v1/resolve \
  -H "Content-Type: application/json" \
  -d '{"domain":"nike.com","basket":{"value":99,"currency":"USD"}}'

curl -s https://api.agentpromocode.com/v1/feedback \
  -H "Content-Type: application/json" \
  -d '{"attribution_token":"<token>","outcome":"worked"}'
```
