describe_addresses ( $opt )

The DescribeAddresses operation lists elastic IP addresses assigned to your account.

Access

public

Parameters

Parameter

Type

Required

Description

$opt

array

Optional

An associative array of parameters that can have the following keys:

  • PublicIp - string|array - Optional - The optional list of Elastic IP addresses to describe. Pass a string for a single value, or an indexed array for multiple values.
  • Filter - array - Optional - A list of filters used to match properties for Addresses. For a complete reference to the available filter keys for this operation, see the Amazon EC2 API reference.
    • x - array - Optional - This represents a simple array index.
      • Name - string - Optional - Specifies the name of the filter.
      • Value - string|array - Optional - Contains one or more values for the filter. Pass a string for a single value, or an indexed array for multiple values.
  • AllocationId - string|array - Optional - Pass a string for a single value, or an indexed array for multiple values.
  • curlopts - array - Optional - A set of values to pass directly into curl_setopt(), where the key is a pre-defined CURLOPT_* constant.
  • returnCurlHandle - boolean - Optional - A private toggle specifying that the cURL handle be returned rather than actually completing the request. This toggle is useful for manually managed batch requests.

Returns

Type

Description

CFResponse

A CFResponse object containing a parsed HTTP response.

Examples

Describe all IP addresses.

$ec2 = new AmazonEC2();

$response = $ec2->describe_addresses();

var_dump($response->isOK());
Result:
bool(true)

Describe a specific group of IP addresses.

$ec2 = new AmazonEC2();

$response = $ec2->describe_addresses();
$ip_addresses = array();

// Collect existing IP addresses to describe
if ($response->body->addressesSet->item)
{
	foreach ($response->body->addressesSet->item as $item)
	{
		$ip_addresses[] = (string) $item->publicIp;
	}
}

// Describe the group of IP addresses
$response = $ec2->describe_addresses(array(
	'PublicIp' => $ip_addresses
));

var_dump($response->isOK());
Result:
bool(true)

Filter IP addresses.

$ec2 = new AmazonEC2();

$response = $ec2->describe_addresses(array(
	'Filter' => array(
		array('Name' => 'public-ip')
	)
));

var_dump($response->isOK());
Result:
bool(true)

Related Methods

Source

Method defined in services/ec2.class.php | Toggle source view (33 lines) | View on GitHub

public function describe_addresses($opt = null)
{
    if (!$opt) $opt = array();
            
    // Optional list (non-map)
    if (isset($opt['PublicIp']))
    {
        $opt = array_merge($opt, CFComplexType::map(array(
            'PublicIp' => (is_array($opt['PublicIp']) ? $opt['PublicIp'] : array($opt['PublicIp']))
        )));
        unset($opt['PublicIp']);
    }
    
    // Optional list + map
    if (isset($opt['Filter']))
    {
        $opt = array_merge($opt, CFComplexType::map(array(
            'Filter' => $opt['Filter']
        )));
        unset($opt['Filter']);
    }
    
    // Optional list (non-map)
    if (isset($opt['AllocationId']))
    {
        $opt = array_merge($opt, CFComplexType::map(array(
            'AllocationId' => (is_array($opt['AllocationId']) ? $opt['AllocationId'] : array($opt['AllocationId']))
        )));
        unset($opt['AllocationId']);
    }

    return $this->authenticate('DescribeAddresses', $opt);
}

Copyright © 2010–2013 Amazon Web Services, LLC


Feedback