Here's the 2nd part (creating the wideip). The following will create 2 wideips (to show you how to create muliple objects in one method call). Since you only specified one pool in each wideip, I only have one entry in the WideipPoolLists.
I'll post the code for creating the pools in a bit.
-Joe
Wideip 1
push @wideips, "wideip1.foo.com";
push @lb_methods, "LB_METHOD_ROUND_ROBIN";
$WideIPPool =
{
pool_name => "gtm_pool",
order => 1,
ratio => 1
};
push @WideIPPoolList1, $WideIPPool;
push @wideip_pools_AofA, [@WideIPPoolList1];
Wideip 2
push @wideips, "wideip2.foo.com";
push @lb_methods, "LB_METHOD_ROUND_ROBIN";
$WideIPPool =
{
pool_name => "gtm_pool",
order => 1,
ratio => 1
};
push @WideIPPoolList2, $WideIPPool;
push @wideip_pools_AofA, [@WideIPPoolList2];
$soapResponse = $WideIP->create(
SOAP::Data->name(wide_ips => [@wideips]),
SOAP::Data->name(lb_methods => [@lb_methods]),
SOAP::Data->name(wideip_pools => [@wideip_pools_AofA]),
SOAP::Data->name(wideip_rules => [@wideip_rules_AofA])
);