Update a keyword set

Applies a partial update. Every property is optional and any property omitted retains its
stored value, but at least one must be supplied — an absent, empty or wholly unrecognized
body is rejected with 400-242.

PropertyEffect
nameReplaced when present
isCompetitorReplaced when present
keywords.addAdds values not already present, matched case-insensitively
keywords.removeRemoves matching values, matched case-insensitively
seedUrls.addAdds URLs not already present, matched byte-for-byte
seedUrls.removeRemoves matching URLs, matched byte-for-byte

Adding a value that already exists, and removing one that is not present, both succeed as
no-ops, so the same request can safely be replayed after a timeout without first reading
the set back. A keywords or seedUrls object that is present must request at least one
operation; {"keywords": {}} is rejected with 400-241. The
same value must not appear in both add and remove for one collection (400-243) —
for keywords that comparison is case-insensitive, so "Zero Trust" in one array and
"zero trust" in the other is a conflict, while for seed URLs it is byte-for-byte, so two
URLs differing only in case may legitimately appear in both.

Unrecognized properties are ignored, so a misspelled property is treated as absent. This is
safe here because PATCH never clears a collection that was not explicitly named.

There is no full-replace (PUT) or delete (DELETE) endpoint in this version. To clear a
collection, remove its current values explicitly. To delete a keyword set, use the
Demandbase One UI.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
int64
required
≥ 1

Identifier of the keyword set. Must be a positive integer; anything else is rejected with
400-236.

Body Params

Body for a partial update. Every property is optional and any property omitted retains its
stored value, but at least one must be supplied. Unrecognized properties are ignored, so a
body naming none of these properties counts as empty and is rejected with 400-242.

string
length between 1 and 255

New name. Trimmed before the length limit is applied.

boolean

New competitive flag.

keywords
object

Incremental keyword changes. add and remove may be sent together, but the same keyword
must not appear in both — that comparison is case-insensitive. At least one of the two must
be present and non-empty.

seedUrls
object

Incremental seed-URL changes. add and remove may be sent together, but the same trimmed
URL must not appear in both — that comparison is byte-for-byte, so two URLs differing only
in case are distinct values and do not conflict. At least one of the two must be present
and non-empty.

Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

429

Too many requests. Reduce concurrency and retry with exponential backoff and jitter. This
response is generated before the request reaches the Intent API, so its body does not use
the Demandbase error envelope.

Language
Credentials
Bearer
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json