---
title: "Update a BYOK key"
method: POST
path: "/providers/{provider}"
---

# Update a BYOK key

`POST /providers/{provider}`

## Request

- Base URL: `https://app.fullenrich.com/api/v2`
- URL: `https://app.fullenrich.com/api/v2/providers/{provider}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/fullenrich/apis/fullenrich-api-documentation/docs/providers/:provider/post.ts> (a function with typed inputs; its response is checked against the schema)

Change one or more settings of a key. Omitted fields keep their value. A null value resets zone, data_types, verify, or enabled to its default. New credentials are checked with the provider first.

## Headers

- `Sub-Account-ID` string, uuid

## Request body

- UpdateBYOKKeyRequest: Send at least one field. Omit a field to keep its value. Set zone, data_types, verify, or enabled to null to reset its default. priority and credentials cannot be null.
  - `credentials` ProviderCredentials: Credentials for one provider. Send the complete set for the provider.
    - `api_key` string: Required for every provider except zoominfo. Your API key for the provider.
    - `client_id` string: Required for zoominfo. The client ID of your ZoomInfo Standard App.
    - `client_secret` string: Required for zoominfo. The client secret of your ZoomInfo Standard App.
    - `account_id` string: Required for forager_ai. Your Forager account ID, as a string of digits.
    - `account_email` string, email: Required for icypeas. The email address of your Icypeas account.
    - `personal_email_api_key` string: Optional for contact_out. A separate key for personal emails. When omitted, api_key is used for personal emails.
  - `priority` integer: Order of the key in its zone. A lower value runs first.
  - `zone` 'front' | 'back' | 'auto' | 'null', nullable: Where the key runs in the waterfall. null resets to front.
  - `data_types` ProviderDataType[], nullable: Data types this key supplies. An empty array is invalid. null resets to all data types the provider supports.
  - `verify` boolean, nullable: If true, FullEnrich verifies the values found with this key. null resets to true.
  - `enabled` boolean, nullable: If false, the key is not used in enrichments. null resets to true.

## Response `200`

OK. The response contains the updated key without its credentials.

- BYOKKey
  - `id` string, uuid, required: The key ID.
  - `workspace_id` string, uuid, required: The workspace that owns the key.
  - `sub_account_id` string, uuid: The sub-account that owns the key. Omitted for a workspace key.
  - `provider` 'prospeo' | 'enrow' | 'cleon1' | 'datagma' | 'aviato' | 'wiza' | 'forager_ai' | 'icypeas' | 'contact_out' | 'people_data_labs' | 'lusha' | 'apollo_io' | 'zoominfo' | 'cognism', required: Provider identifier. Case-insensitive in requests; responses use lowercase.
  - `zone` 'front' | 'back' | 'auto', required: Where the key runs in the waterfall. front: before the FullEnrich providers. back: after them. auto: at the position of the same provider in the FullEnrich waterfall.
  - `priority` integer, required: Order of the key in its zone. A lower value runs first.
  - `data_types` ProviderDataType[], required: Data types this key supplies.
  - `verify` boolean, required: Whether FullEnrich verifies the values found with this key.
  - `enabled` boolean, required: Whether the key is used in enrichments.
  - `created_at` string, date-time, required: When the key was created.
  - `updated_at` string, date-time, required: When the key was last updated.

## Other responses

- `400`: Invalid request, or new credentials rejected by the provider. Nothing is saved.
- `401`: Unauthorized
- `403`: BYOK is not enabled for the workspace
- `404`: No key for this provider in the selected scope, or the sub-account named in the header does not exist
- `429`: Too Many Requests
- `503`: The provider did not answer the credential check. Nothing is saved. Try again later.

## Changes

- **2026-11-09** `b5bec9933c01`: 1 warning
  - added the new `cognism` enum value to the `provider` response property for the response status `200`
- **2026-11-05** `9e5fe5ba0794`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/fullenrich/apis/fullenrich-api-documentation/changes/providers/:provider/post.md)

---

[API](https://skmtc.dev/fullenrich/apis/fullenrich-api-documentation.md) - [All operations](https://skmtc.dev/fullenrich/apis/fullenrich-api-documentation/llms.txt) - [OpenAPI document](https://skmtc.dev/fullenrich/apis/fullenrich-api-documentation/revisions/b5bec9933c01?raw)
