---
title: "Update keywords"
method: PATCH
path: "/ad_accounts/{ad_account_id}/keywords"
tags: ["keywords"]
---

# Update keywords

`PATCH /ad_accounts/{ad_account_id}/keywords`

Update one or more keywords' bid and archived fields. Archiving
  a keyword effectively deletes it - keywords no longer receive metrics and
  are no longer visible within the parent entity's keywords list.

## Path parameters

- `ad_account_id` string, required

## Request body

- KeywordsUpdate — Resource create or update operation model.
  - `keywords` KeywordUpdateItem[] — Keywords
    - `archived` boolean
    - `bid` integer, nullable — **Note:** bid field has been deprecated. Input will not be set and field will return null. Keyword custom bid in microcurrency - null if inherited from parent ad group.
    - `id` string, required — Keyword ID .

## Response `200`

The request has succeeded.

- Keywords
  - `errors` KeywordError[], required — Keyword error
    - `data` Keyword
      - `archived` boolean
      - `bid` integer, nullable — **Note:** bid field has been deprecated. Input will not be set and field will return null. Keyword custom bid in microcurrency - null if inherited from parent ad group.
      - `id` string, required — Keyword ID .
      - `match_type` 'BROAD' | 'PHRASE' | 'EXACT' | 'EXACT_NEGATIVE' | 'PHRASE_NEGATIVE', required — Keyword match type
      - `parent_id` string, required — Keyword parent entity ID (advertiser, campaign, ad group).
      - `parent_type` string — Parent entity type (advertiser, campaign, ad group).
      - `type` string — Always keyword
      - `value` string, required — Keyword value (120 chars max).
    - `error_messages` string[]
  - `keywords` Keyword[], required — Keywords
    - `archived` boolean
    - `bid` integer, nullable — **Note:** bid field has been deprecated. Input will not be set and field will return null. Keyword custom bid in microcurrency - null if inherited from parent ad group.
    - `id` string, required — Keyword ID .
    - `match_type` 'BROAD' | 'PHRASE' | 'EXACT' | 'EXACT_NEGATIVE' | 'PHRASE_NEGATIVE', required — Keyword match type
    - `parent_id` string, required — Keyword parent entity ID (advertiser, campaign, ad group).
    - `parent_type` string — Parent entity type (advertiser, campaign, ad group).
    - `type` string — Always keyword
    - `value` string, required — Keyword value (120 chars max).

## Other responses

- `400` — The request could not be understood by the server due to unexpected data.
- `401` — Authentication is required and has either failed or not been provided.
- `403` — The request was valid, but the server is refusing action. The user might not have the necessary permissions for a resource.
- `404` — The requested resource could not be found on this server.
- `429` — The user has sent too many requests in a given amount of time and is being rate limited.
- `default` — An unexpected error response.

---

[API](https://skmtc.net/pinterest/apis/pinterest-rest-api.md) · [All operations](https://skmtc.net/pinterest/apis/pinterest-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/pinterest/pinterest-rest-api/revisions/b698c180678a/schema)
