# 🧩 Fix: ERR_INVALID_PARAMS

> A parameter is missing, malformed or over a limit. The error message names it.

*Published: 2026-10-12 | Updated: 2026-10-12 | Source: https://shopsavvy.com/help/data-api-err-invalid-params*

---

## Quick fix

Read `error_detail.message` in the response: it names the parameter. The usual causes:

- More than 100 identifiers in `ids` (or in `identifiers` on `POST /v1/products/batch`). Split the request.
- A price-history window longer than 366 days, or a `start`/`end` date that is not `YYYY-MM-DD`.
- A `schedule` other than `hourly`, `daily` or `weekly`.
- A webhook without a `url` or `events`, an unknown event type, or more than 5 webhooks on the account.

## Why this happens

The API checks limits before doing any work, so an over-limit request is rejected with HTTP 400 instead of being partly served. No credits are charged.

## Other fixes

- For long histories, request successive windows of up to 366 days.
- Valid webhook events are `price_drop`, `availability_change` and `schedule_completion`.

## Related errors

- `ERR_IDENTIFIER_REQUIRED`: no identifiers in `ids`.
- `ERR_RATE_LIMIT`: more than 1,000 requests in the rolling hour.

Full reference: [Data API errors](https://shopsavvy.com/data/documentation/errors).

---