---
title: "Remove up to 10,000 addresses."
method: POST
path: "/push/subscriptions/{subscription_id}/addresses/remove"
tags: ["Subscriptions"]
---

# Remove up to 10,000 addresses.

`POST /push/subscriptions/{subscription_id}/addresses/remove`

## Request

- Base URL: `https://api.blockvectra.com/v1`
- URL: `https://api.blockvectra.com/v1/push/subscriptions/{subscription_id}/addresses/remove`
- Auth: API key in header `x-api-key`

All or nothing on invalid input (400 with `data.invalid`). An address not watched counts as `unchanged`. Blocks from the effective block on no longer match the removed addresses; events already matched for earlier blocks (queued, retrying, left from before an offline period) are still delivered, an attempt already in flight may contain them, and events already delivered are not withdrawn. The result carries `change_version`.

## Request body

- AddressBatch
  - `addresses` AddressInput[], required

## Response `200`

Applied.

- RemoveResult
  - `removed` integer, required
  - `unchanged` integer, required
  - `address_count` integer, required: Addresses of the subscription after the call.
  - `change_version` integer, required

## Other responses

- `400`: Error envelope; the codes, statuses and retry rules are in root x-push-errors. 429 and 503 carry Retry-After.
- `413`: Error envelope; the codes, statuses and retry rules are in root x-push-errors. 429 and 503 carry Retry-After.
- `default`: Error envelope; the codes, statuses and retry rules are in root x-push-errors. 429 and 503 carry Retry-After.

---

[API](https://skmtc.dev/blockvectra/apis/blockvectra-push-api.md) · [All operations](https://skmtc.dev/blockvectra/apis/blockvectra-push-api/llms.txt) · [OpenAPI document](https://skmtc.dev/blockvectra/apis/blockvectra-push-api/revisions/396dd7621c54?raw)
