---
url: /errors/parameter_invalid.md
---
# `parameter_invalid`

Broker onboarding returns `PARAMETER_INVALID` when Authentication rejects the
provisioning data.
Both codes use HTTP status `400` and this reference page.

`parameter_invalid`

## Description

The request contains at least one parameter with an invalid value, type, or
format.

## HTTP Status

`400 Bad Request`

## `doc_url` Format

The `doc_url` value is an absolute URL and changes by environment:

`<docs-base-url>/errors/parameter_invalid`

## Typical Causes

* On `POST /v1/broker-front-bff/exchange-client/keys`, the request body is
  empty or contains invalid JSON.
* A field has an unsupported enum value (for example `method: "CASH"`).
* A field format is invalid (for example an invalid UUID or date format).
* A field value does not satisfy schema constraints.
* On `POST /v1/catalog/products`, `name` is missing or blank, `productKind` is
  unsupported, or the body contains an unsupported field such as `id` or
  `instrumentIds`.
* On `POST /v1/catalog/products`, the
  `X-Quarzo-Life-Idempotency-Key` header is missing, blank after trimming, or
  longer than 255 characters.
* On `POST /v1/support/subscribers/{subscriberId}/requests`, `subscriberId` is
  not a valid UUID.
* On `POST /v1/support/subscribers/{subscriberId}/requests`, `message` is
  missing, empty after trimming, or longer than 5000 characters.
* On `POST /v1/support/subscribers/{subscriberId}/requests`, the request body is
  malformed JSON or not `application/json`.
* On `POST /v1/support/subscribers/{subscriberId}/requests`, the
  `X-Quarzo-Life-Idempotency-Key` header is missing, blank after trimming, or
  longer than 255 characters.
* On `GET /v1/billing/commissions`, `page` is not a positive integer, `perPage`
  is outside `1`–`100`, or `type` is not `inducement` or `business-commission`.
* On `GET /v1/billing/commissions/{commissionId}/download`, `commissionId` is
  not a valid UUID.
* On `POST /v1/total-surrender/policies/{policyId}/declarations`, `policyId` is
  not a valid UUID, `reason` is not `client-request`, `regulatory`, or
  `compliance`, or `requestedAt` is not a valid ISO date (`YYYY-MM-DD`).
* On `POST /v1/total-surrender/policies/{policyId}/declarations`, the request
  body is malformed JSON or not `application/json`.
* On `POST /v1/total-surrender/policies/{policyId}/declarations`, the
  `X-Quarzo-Life-Idempotency-Key` header is missing, blank after trimming, or
  longer than 255 characters.
* On `GET /v1/total-surrender/policies/{policyId}/declarations/{declarationId}`,
  `policyId` or `declarationId` is not a valid UUID.
* On
  `POST /v1/partial-surrender/policies/{policyId}/compartments/{compartmentId}/declarations`,
  `policyId` or `compartmentId` is not a valid UUID, `amount` is missing or
  does not use the [Money](/topics/money) format, `amount.amount` is not
  greater than zero, `amount.currency` is not `EUR`, or `requestedAt` is missing or not a valid ISO date
  (`YYYY-MM-DD`).
* On
  `POST /v1/partial-surrender/policies/{policyId}/compartments/{compartmentId}/declarations`,
  the request body is malformed JSON or not `application/json`.
* On
  `POST /v1/partial-surrender/policies/{policyId}/compartments/{compartmentId}/declarations`,
  the `X-Quarzo-Life-Idempotency-Key` header is missing, blank after trimming,
  or longer than 255 characters.
* On
  `GET /v1/partial-surrender/policies/{policyId}/compartments/{compartmentId}/declarations/{declarationId}`,
  `policyId`, `compartmentId`, or `declarationId` is not a valid UUID.
* On `POST /v1/execution/parties/{executingParty}/trade-confirmations` and
  `POST /v1/execution/parties/{executingParty}/settlements`, the
  `X-Quarzo-Life-Idempotency-Key` header is missing, blank after trimming, or
  longer than 255 characters.
* On `POST /v1/broker-notifications/registrations`, the
  `X-Quarzo-Life-Idempotency-Key` header is missing, blank after trimming, or
  longer than 255 characters.
* On `POST /v1/emailing/messages` and `POST /v1/emailing/admin-notifications`,
  the `X-Quarzo-Life-Idempotency-Key` header is missing, blank after trimming,
  or longer than 255 characters.
* On `POST /v1/pay-in/mandates/{mandateId}/authorize-brokers`, the
  `X-Quarzo-Life-Idempotency-Key` header is missing, blank after trimming, or
  longer than 255 characters.
* On
  `GET /v1/death-settlement/policies/{policyId}/standard-beneficiary-designations`,
  `policyId` is not a valid UUID.
* On `GET /v1/death-settlement/policies/{policyId}/beneficiary-designation`,
  `policyId` is not a valid UUID.
* On `PUT /v1/death-settlement/policies/{policyId}/beneficiary-designation`,
  `policyId` is not a valid UUID, `kind` is missing or has the wrong type,
  required custom `text` is missing or has the wrong type, or the body contains
  an unexpected field.
* On `PUT /v1/death-settlement/policies/{policyId}/beneficiary-designation`, the
  request body is malformed JSON or not `application/json`.
* On `POST /v1/pay-out/subscribers/{subscriberId}/ibans`, `subscriberId` is not
  a valid UUID or `iban` is missing or blank.
* On `POST /v1/pay-out/subscribers/{subscriberId}/ibans`, the request body is
  malformed JSON or not `application/json`.
* On `POST /v1/pay-out/subscribers/{subscriberId}/ibans`, the
  `X-Quarzo-Life-Idempotency-Key` header is missing, blank after trimming, or
  longer than 255 characters.
* On `PATCH /v1/pay-out/subscribers/{subscriberId}/ibans/{iban}/make-default`,
  `subscriberId` is not a valid UUID or `iban` is blank.
* On `POST /v1/user-feedback`, `comment` is missing, empty after trimming, or
  longer than 2000 characters.
* On `POST /v1/user-feedback`, `path` is missing, does not start with `/`, or
  contains invalid URL path characters.
* On `POST /v1/user-feedback`, the request body is malformed JSON or not
  `application/json`.
* On `POST /v1/subscription/subscribers`, `name`, `birth`, `nationality`,
  `taxClassification`, `address`, or `email` is invalid, or the request body is
  malformed JSON or not `application/json`.
* On `POST /v1/subscription/insurees`, `name` or `birth` is invalid, or the
  request body is malformed JSON or not `application/json`.
* On `POST /v1/subscription/subscribers/{subscriberId}/subscriptions`,
  `subscriberId`, `productId`, or `insureeId` is not a valid UUID, or the
  request body is malformed JSON or not `application/json`.
* On `POST /v1/subscription/subscriptions/{subscriptionId}/documents`,
  `subscriptionId` is not a valid UUID, `kind` is invalid, the uploaded file is
  missing, empty, or not a PDF, or the multipart form data is malformed.
* On `DELETE /v1/subscription/subscriptions/{subscriptionId}/documents/{kind}`,
  `subscriptionId` is not a valid UUID or `kind` is invalid.
* On `GET /v1/subscription/subscriptions/{subscriptionId}/form`,
  `subscriptionId` is not a valid UUID.
* On `POST /v1/subscription/subscriptions/{subscriptionId}/signed-form`,
  `subscriptionId` is not a valid UUID, the uploaded file is missing, empty, or
  not a PDF, or the multipart form data is malformed.
* On `POST /v1/subscription/subscriptions/{subscriptionId}/e-signing-requests`,
  `subscriptionId` is not a valid UUID.
* On `POST /v1/subscription/subscriptions/{subscriptionId}/withdraw`,
  `subscriptionId` is not a valid UUID.
* On `POST /v1/file-storage/files`, `scope`, `purpose`, `fileName`, or
  `contentType` is missing or blank, the uploaded file is missing or empty, the
  file content type is unsupported, or the multipart form data is malformed.
* On `GET /v1/file-storage/files/download-url`, `filePath` is missing or blank.
* On investment endpoints, a path parameter such as `policyId`, `managerId`,
  `mandateId`, `compartmentId`, or `premiumRequestId` is not a valid UUID.
* On `POST /v1/investment/discretionary-managers`, `name` is missing or blank,
  or the request body is malformed JSON or not `application/json`.
* On `POST /v1/investment/discretionary-managers/{managerId}/mandates`, `name`
  is missing or blank, or the request body is malformed JSON or not
  `application/json`.
* On `GET /v1/investment/mandates`, `page` is not a positive integer, `perPage`
  is outside `1`-`100`, or `managerId` is not a valid UUID.
* On `POST /v1/investment/mandates/{mandateId}/target-allocations` and
  `POST /v1/investment/compartments/{compartmentId}/target-allocations`,
  `allocations` has the wrong shape, an `instrumentId` is not a UUID, or a
  percentage does not use `BASIS_POINT_OF_COMPARTMENT_VALUE`.
* On `POST /v1/investment/policies/{policyId}/compartments`, `managementMode` or
  `name` is missing or blank, `mandateId` is not a valid UUID, or the request
  body is malformed JSON or not `application/json`.
* On `GET /v1/investment/policies/{policyId}/compartments`, `page` is not a
  positive integer, or `perPage` is outside `1`-`100`.
* On `PATCH /v1/investment/compartments/{compartmentId}`, `name` is missing or
  blank, the body contains another field, or the body is malformed JSON or not
  `application/json`.
* On `PUT /v1/investment/compartments/{compartmentId}/delegation`, `mandateId`
  is not a valid UUID, or the request body is malformed JSON or not
  `application/json`.
* On `POST /v1/investment/compartments/{compartmentId}/switches`, `legs` has
  the wrong shape, an `instrumentId` is not a UUID, or an amount does not use
  `BASIS_POINT_OF_CURRENT_POSITION` (sell) or `BASIS_POINT_OF_SELL_PROCEED`
  (buy).
* On
  `POST /v1/investment/compartments/{compartmentId}/premium-requests/{premiumRequestId}/premium-allocations`,
  `allocation` has the wrong shape, an `instrumentId` is not a UUID, or an
  amount does not use `BASIS_POINT_OF_PREMIUM`.
* On `POST /v1/investment/transfers` (preview, stub response),
  `sourceCompartmentId` or `targetCompartmentId` is not a valid UUID, `amount`
  or `funds` has an invalid shape, the transfer details that the source
  management mode requires are missing, or the request body is malformed JSON
  or not `application/json`.

## Example

Request:

```http
POST /v1/premium-scheduling/single-premium-requests
Content-Type: application/json

{
  "policyId": "8f68c04d-42b6-4375-bec9-1dcf0ff0f385",
  "payerId": "4b7f6518-c699-4d8f-ad6d-f8ff9bf25ed8",
  "method": "CASH",
  "amount": { "amount": "100", "currency": "EUR" },
  "iban": "FR7630006000011234567890189"
}
```

## Support Example

Request:

```http
POST /v1/support/subscribers/not-a-uuid/requests
Content-Type: application/json
Authorization: Bearer <access-token>
X-Quarzo-Life-Idempotency-Key: 5f0c6d2e-8a41-4c3b-9f7e-2b1d0a9c8e76

{
  "message": "Need support."
}
```

Response:

```json
{
  "errors": [
    {
      "code": "parameter_invalid",
      "message": "Param: subscriberId - Invalid UUID ",
      "doc_url": "https://docs.example.com/errors/parameter_invalid"
    }
  ]
}
```

## Billing Example

Request:

```http
GET /v1/billing/commissions?page=0&type=bonus
Authorization: Bearer <access-token>
```

Response:

```json
{
  "errors": [
    {
      "code": "parameter_invalid",
      "message": "Param: page - Too small: expected number to be >0 ",
      "doc_url": "https://docs.example.com/errors/parameter_invalid"
    }
  ]
}
```

## Total Surrender Example

Request:

```http
POST /v1/total-surrender/policies/8f68c04d-42b6-4375-bec9-1dcf0ff0f385/declarations
Content-Type: application/json
Authorization: Bearer <access-token>
X-Quarzo-Life-Idempotency-Key: 2b1f0c4e-8d6a-4f3b-9e2a-7c5d1a0b3e4f

{
  "reason": "unknown-reason",
  "requestedAt": "2026-05-15"
}
```

Response:

```json
{
  "errors": [
    {
      "code": "parameter_invalid",
      "message": "Param: reason - Invalid option: expected one of \"client-request\"|\"regulatory\"|\"compliance\" ",
      "doc_url": "https://docs.example.com/errors/parameter_invalid"
    }
  ]
}
```

## Partial Surrender Example

Request:

```http
POST /v1/partial-surrender/policies/8f68c04d-42b6-4375-bec9-1dcf0ff0f385/compartments/4b7f6518-c699-4d8f-ad6d-f8ff9bf25ed8/declarations
Content-Type: application/json
Authorization: Bearer <access-token>
X-Quarzo-Life-Idempotency-Key: 6e3a9d2c-1b4f-4a7e-8c5d-0f2b3a1e9d7c

{
  "amount": {
    "amount": "0",
    "currency": "EUR"
  },
  "requestedAt": "2026-05-15"
}
```

Response:

```json
{
  "errors": [
    {
      "code": "parameter_invalid",
      "message": "Param: amount.amount - amount must be greater than 0 ",
      "doc_url": "https://docs.example.com/errors/parameter_invalid"
    }
  ]
}
```

## Death Settlement Example

Request:

```http
GET /v1/death-settlement/policies/not-a-uuid/beneficiary-designation
Authorization: Bearer <access-token>
```

Response:

```json
{
  "errors": [
    {
      "code": "parameter_invalid",
      "message": "Param: policyId - Invalid UUID ",
      "doc_url": "https://docs.example.com/errors/parameter_invalid"
    }
  ]
}
```

## Pay-Out Example

Request:

```http
POST /v1/pay-out/subscribers/not-a-uuid/ibans
Content-Type: application/json
Authorization: Bearer <access-token>
X-Quarzo-Life-Idempotency-Key: 5f0c6d2e-8a41-4c3b-9f7e-2b1d0a9c8e76

{
  "iban": "FR7630006000011234567890189"
}
```

Response:

```json
{
  "errors": [
    {
      "code": "parameter_invalid",
      "message": "Param: subscriberId - Invalid UUID ",
      "doc_url": "https://docs.example.com/errors/parameter_invalid"
    }
  ]
}
```

## User Feedback Example

Request:

```http
POST /v1/user-feedback
Content-Type: application/json

{
  "comment": "   ",
  "path": "dashboard"
}
```

Response:

```json
{
  "errors": [
    {
      "code": "parameter_invalid",
      "message": "Param: comment - Too small: expected string to have >=1 characters ",
      "doc_url": "https://docs.example.com/errors/parameter_invalid"
    }
  ]
}
```

## Subscription Example

Request:

```http
POST /v1/subscription/subscribers/not-a-uuid/subscriptions
Content-Type: application/json
Authorization: Bearer <access-token>

{
  "productId": "73000000-0000-4000-8000-000000000001",
  "insureeId": "72000000-0000-4000-8000-000000000001"
}
```

Response:

```json
{
  "errors": [
    {
      "code": "parameter_invalid",
      "message": "Param: subscriberId - Invalid UUID ",
      "doc_url": "https://docs.example.com/errors/parameter_invalid"
    }
  ]
}
```

## How To Fix

1. Inspect the `message` field in the API response to identify the invalid
   parameter.
2. Correct the request payload according to the endpoint schema in the API
   reference.
3. Retry the request.
