---
title: "Record the tx hashes sent for a reserved settle/refund (settle worker, service key)"
method: POST
path: "/service/mpp-settler/mpp-deposit-intents/{id}/complete"
tags: ["fulfillments"]
---

# Record the tx hashes sent for a reserved settle/refund (settle worker, service key)

`POST /service/mpp-settler/mpp-deposit-intents/{id}/complete`

## Request

- Base URL: `https://api.instruxi.dev/api/v1/enforcer`
- URL: `https://api.instruxi.dev/api/v1/enforcer/service/mpp-settler/mpp-deposit-intents/{id}/complete`
- Auth: API key in header `X-API-Key`

Service-key only (enforcer-mpp-settler). The same as POST /admin/mpp-deposit-intents/{id}/complete: stores the hashes on the (intent, kind) reservation and moves the intent (settle -> settling, refund -> refunded). Sends nothing. 409 action_already_completed when the reservation already has a tx hash; 409 no_reservation when there is none.

## Path parameters

- `id` string, required

## Request body

- InternalDeliveryHttpHandlerMPPCompleteRequest
  - `kind` 'settle' | 'refund'
  - `tx_hashes` string[]

## Response `200`

OK

- InternalDeliveryHttpHandlerMPPLeverResponse
  - `data` EnforcerV3InternalDomainMppdepositLeverResult
    - `action_id` string: ActionID is the mpp_deposit_actions row backing a real call or a reservation; Reserved is true while that row has no tx hash yet (the sender holds it but has not completed it).
    - `actor` string
    - `dry_run` boolean
    - `intent_id` string
    - `plan` EnforcerV3InternalDomainMppdepositPlan
      - `kind` string
      - `steps` EnforcerV3InternalDomainMppdepositStep[]
        - `args` object
        - `calldata` string
        - `function` string
        - `name` string
        - `to` string
    - `replayed` boolean
    - `reserved` boolean
    - `state` string
    - `tx_hashes` string[]
  - `success` boolean

## Other responses

- `400`: Bad Request
- `401`: invalid_service_key
- `404`: Not Found
- `409`: Conflict

---

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