id: f5_bigip name: F5 BIG-IP version: 1.0.0 description: "F5 BIG-IP (iControl REST) — application-delivery visibility and containment: list virtual servers and pools, read pool members, disable a pool member, and add an IP to an internal data-group (block list). HTTP Basic authentication; stdlib-only, no extra Python dependencies." changelog: "1.0.0 — Initial release: list virtual servers/pools, get pool members, disable pool member, add data-group record." category: network # Per-instance configuration. HTTP Basic auth against the iControl REST API. config_schema: properties: base_url: type: string description: "BIG-IP management URL (e.g. https://bigip.example.com)" username: type: string description: "Admin username" password: type: string description: "Admin password" x-soar-sensitive: true insecure: type: boolean description: "Trust any TLS certificate (not secure)" default: false required: - base_url - username - password commands: - id: list_virtual_servers name: f5-list-virtual-servers description: "List virtual servers." risk: read inputs_schema: properties: {} required: [] outputs_schema: { properties: {} } - id: list_pools name: f5-list-pools description: "List load-balancing pools." risk: read inputs_schema: properties: {} required: [] outputs_schema: { properties: {} } - id: get_pool_members name: f5-get-pool-members description: "List a pool's members." risk: read inputs_schema: properties: pool_name: { type: string, description: "Pool name (partition path, e.g. ~Common~web_pool)" } required: [pool_name] outputs_schema: { properties: {} } - id: disable_pool_member name: f5-disable-pool-member description: "Disable a pool member (drains it — containment)." inputs_schema: properties: pool_name: { type: string, description: "Pool name (partition path)" } member_name: { type: string, description: "Member name (e.g. ~Common~10.0.0.5:80)" } required: [pool_name, member_name] outputs_schema: { properties: {} } - id: add_datagroup_record name: f5-add-datagroup-record description: "Add a record (e.g. an IP) to an internal data-group used by a block iRule." inputs_schema: properties: datagroup_name: { type: string, description: "Internal data-group name (partition path)" } record_name: { type: string, description: "Record key (e.g. an IP or CIDR)" } record_data: { type: string, description: "Optional record value" } required: [datagroup_name, record_name] outputs_schema: { properties: {} } - id: test_connection name: f5-test-connection description: "Verify connectivity and credentials (used by the Test button)." risk: read inputs_schema: properties: {} required: [] outputs_schema: { properties: {} }