Delete a value rule set
Deletes the rule set (Meta's POST /{value-rule-set-id}/delete_rule_set, a custom
action edge rather than an HTTP DELETE on its side). Ad sets pointing at it are not
modified here; detach them first with valueRulesApplied: false on
PUT /v1/ads/ad-sets/{adSetId}.
API key authentication - use your Zernio API key as a Bearer token
In: header
Path Parameters
Platform value rule set id.
Query Parameters
Zernio SocialAccount id (posting or ads variant) used to resolve the Meta token.
Response Body
application/json
application/json
import Zernio from '@zernio/node';const zernio = new Zernio({ apiKey: process.env.ZERNIO_API_KEY });const { data } = await zernio.adaccounts.deleteValueRuleSet({ path: { valueRuleSetId: 'valueruleset_abc123', }, query: { accountId: 'account_abc123', },});console.log(data);{
"valueRuleSetId": "string",
"message": "string"
}{
"error": "Unauthorized"
}Replace a value rule set PUT
**THIS IS A FULL REPLACE, NOT A PATCH.** Meta's update is declarative: the body you send becomes the rule set. - `GET /v1/ads/value-rule-sets/{valueRuleSetId}` FIRST. - Keep a rule or criterion by echoing its `id`. - Create one by including the object WITHOUT an `id`. - Delete one by OMITTING it from the array. There is no warning and no undo. `name` and `rules` are both required for exactly this reason: a partial body would silently destroy every rule left out. **Rule order is semantic**: the array order you send is the evaluation order, and only the first matching rule adjusts the bid for an overlapping audience. Existing rule sets created elsewhere may contain `LOCATION_DMA` criteria. Those went inert on 2026-06-22 and are rejected here; migrate them to `LOCATION_COMSCORE_MARKET`.
List accounts it is shared with GET
Meta only (platform `metaads`); other platforms return 405.