vcfops_webhook

VCF Operations — outbound webhook instances and notification rules.

VCF Operations 9.x delivers alert/event notifications to external systems (webhooks, ITSMs, chatops, syslog) via two related concepts:

  • outbound-instances — configured destinations (a REST webhook, a syslog endpoint, etc.). Each has a pluginTypeId selecting the transport (RestPlugin for HTTPS webhooks) and a configValues payload with URL, headers, and other plugin-specific settings.

  • notifications/rules — the bindings that say “when alert X on resource Y fires, send it to outbound instance Z”.

Endpoints wrapped here:

  • GET/POST /suite-api/api/outbound-instances

  • GET/PUT/DELETE /suite-api/api/outbound-instances/{id}

  • GET/POST /suite-api/api/notifications/rules

  • GET/PUT/DELETE /suite-api/api/notifications/rules/{id}

saltext.vcf.clients.vcfops_webhook.list_(opts, page=0, page_size=1000, profile=None)[source]

List every configured outbound webhook / notification instance.

saltext.vcf.clients.vcfops_webhook.get(opts, instance_id, profile=None)[source]

Return the outbound instance whose id matches instance_id.

saltext.vcf.clients.vcfops_webhook.get_or_none(opts, instance_id, profile=None)[source]

Like get() but returns None on a 404.

saltext.vcf.clients.vcfops_webhook.create(opts, instance_spec, profile=None)[source]

Create an outbound webhook instance.

instance_spec example:

{"name": "pagerduty-prod",
 "pluginTypeId": "RestPlugin",
 "configValues": [
     {"name": "url", "value": "https://events.pagerduty.com/..."},
     {"name": "certificateThumbprint", "value": "AA:BB:..."}
 ]}
saltext.vcf.clients.vcfops_webhook.update(opts, instance_id, instance_spec, profile=None)[source]

Replace the outbound instance with id instance_id.

saltext.vcf.clients.vcfops_webhook.delete(opts, instance_id, profile=None)[source]

Delete the outbound instance with id instance_id.

saltext.vcf.clients.vcfops_webhook.list_rules(opts, page=0, page_size=1000, profile=None)[source]

List every notification rule.

saltext.vcf.clients.vcfops_webhook.get_rule(opts, rule_id, profile=None)[source]

Return the notification rule whose id matches rule_id.

saltext.vcf.clients.vcfops_webhook.get_rule_or_none(opts, rule_id, profile=None)[source]

Like get_rule() but returns None on a 404.

saltext.vcf.clients.vcfops_webhook.create_rule(opts, rule_spec, profile=None)[source]

Create a notification rule binding alerts to an outbound instance.

rule_spec example:

{"name": "prod-critical-to-pagerduty",
 "pluginId": "<outbound-instance-id>",
 "alertControlStates": ["OPEN"],
 "alertCriticalities": ["CRITICAL"]}
saltext.vcf.clients.vcfops_webhook.update_rule(opts, rule_id, rule_spec, profile=None)[source]

Replace the notification rule with id rule_id.

saltext.vcf.clients.vcfops_webhook.delete_rule(opts, rule_id, profile=None)[source]

Delete the notification rule with id rule_id.