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.
| Property | Effect |
|---|---|
name | Replaced when present |
isCompetitor | Replaced when present |
keywords.add | Adds values not already present, matched case-insensitively |
keywords.remove | Removes matching values, matched case-insensitively |
seedUrls.add | Adds URLs not already present, matched byte-for-byte |
seedUrls.remove | Removes 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.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
429Too 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.