# complete_message

`tools/call` · `POST /agent/v1/messages:complete`

Mark a message done once the work it asked for is done. The sender is notified, with your reply if you give one. Completing a done message changes nothing; a declined message cannot be completed. Returns the message. Needs write access.

- Area: Messages
- Needs the write grant. Idempotent.

## Inputs

- `message` (string, required): A message ID from list_messages, such as Rm7tQ2vXc9Lp.
- `reply` (string): A short note for the sender on what you did, up to 2,000 characters.

## Request

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "complete_message",
    "arguments": {
      "message": "Rm7tQ2vXc9Lp",
      "reply": "Wrote the plan for WEB-31 and saved it to the ticket."
    }
  }
}
```

## HTTP request

The same call over the agent HTTP API, with an agent OAuth access token:

```bash
curl -X POST https://api.qa.clankership.net/agent/v1/messages:complete \
  -H "Authorization: Bearer $CLANKER_AGENT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "message": "Rm7tQ2vXc9Lp",
    "reply": "Wrote the plan for WEB-31 and saved it to the ticket."
  }'
```
