Updated on 2026-09-28 GMT+08:00

Querying PTR Records of an EIP

Function

This API is used to query PTR records of an EIP.

Calling Method

For details, see Calling APIs.

Authorization Information

Each account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions.

  • If you are using role/policy-based authorization, see Permissions Policies and Supported Actions for details on the required permissions.
  • If you are using identity policy-based authorization, the following identity policy-based permissions are required.

    Action

    Access Level

    Resource Type (*: required)

    Condition Key

    Alias

    Dependencies

    dns:ptr:list

    List

    ptr *

    -

    -

    -

    -

    • g:RequestTag/<tag-key>

    • g:TagKeys

    • g:EnterpriseProjectId

URI

GET /v2/reverse/floatingips

Table 1 Query Parameters

Parameter

Mandatory

Type

Description

marker

No

String

Definition

Start resource ID of the pagination query. If the parameter is left blank, only resources on the first page are queried. You can obtain the value from the ID of the last resource in the query result on the previous page.

Constraints

N/A

Range

N/A

Default Value

N/A

limit

No

Integer

Definition

The number of records returned on each page during pagination query.

Constraints

N/A

Range

The value ranges from 0 to 500. Generally, the value is 10, 20, or 50.

Default Value

500

offset

No

Integer

Definition

The offset of pagination query. It specifies the number of rows or records to skip from the beginning of the result set before retrieving the desired data.

Constraints

If marker is not left blank, the query starts from the resource specified by marker and the offset does not take effect.

Range

0 to 2147483647

Default Value

0

enterprise_project_id

No

String

Definition

ID of the enterprise project associated with the PTR record. You can obtain the value by calling the API for querying enterprise projects.

Constraints

N/A

Range

It can contain a maximum of 36 characters.

Default Value

N/A

tags

No

String

Definition

Resource tag, including the tag key and tag value.

Format: key1,value1|key2,value2. The value is a string. Multiple tags are represented in the format of key1,value1|key2,value2. Each tag contains a key (mandatory) and a value (optional). Tags are used to manage and filter resources.

Constraints

Multiple tags are separated by vertical bars (|). The key and value of each tag are separated by a comma (,).

Range

N/A

Default Value

N/A

status

No

String

Definition

Resource status.

Constraints

N/A

Range

  • ACTIVE: Normal

  • PENDING_CREATE: Creating

  • PENDING_UPDATE: Updating

  • PENDING_DELETE: Deleting

  • PENDING_FREEZE: Freezing

  • FREEZE: Frozen

  • ILLEGAL: Frozen due to violations

  • POLICE: Frozen due to security reasons

  • ERROR: Failed

Default Value

N/A

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

Definition

User token, which is used for identity authentication. It must be carried in the request header to verify the user identity during API calls.

You can obtain it by calling the IAM API for obtaining a user token. The value of X-Subject-Token in the response header is the user token.

For details about how to obtain a user token, see Obtaining a User Token.

Constraints

N/A

Range

N/A

Default Value

N/A

Response Parameters

Status code: 200

Table 3 Response body parameters

Parameter

Type

Description

links

pageLink object

Definition

Links to the current page and the next page. If pagination is required for querying resources, a next field is required to point to the next page.

metadata

metadata object

Definition

The number of resources that meet filter conditions.

floatingips

Array of ListPtrRecordsFloatingResp objects

Definition

List of PTR records of the EIP. This field is an array. Each element contains fields like PTR record ID, domain name, description, and TTL.

Table 4 metadata

Parameter

Type

Description

total_count

Integer

Definition

Number of resources that meet the filter criteria. The number is irrelevant to limit or offset.

Range

N/A

Table 5 ListPtrRecordsFloatingResp

Parameter

Type

Description

id

String

Definition

PTR record ID.

Range

The format is {region}:{floatingip_id}.

ptrdname

String

Definition

The domain name of the PTR record.

Range

N/A

description

String

Definition

Description about the PTR record.

Range

N/A

ttl

Integer

Definition

PTR record caching duration (in seconds) on a local DNS server. The longer the duration is, the slower the update takes effect.

Range

N/A

address

String

Definition

EIP.

Range

N/A

status

String

Definition

Resource status.

Range

  • ACTIVE: Normal

  • PENDING_CREATE: Creating

  • PENDING_UPDATE: Updating

  • PENDING_DELETE: Deleting

  • PENDING_FREEZE: Freezing

  • FREEZE: Frozen

  • ILLEGAL: Frozen due to violations

  • POLICE: Frozen due to security reasons

  • ERROR: Failed

action

String

Definition

Requested operation on the resource.

Range

  • CREATE

  • UPDATE

  • DELETE

  • NONE: no operation

links

pageLink object

Definition

Links to the current page and the next page. If pagination is required for querying resources, a next field is required to point to the next page.

tags

Array of tag objects

Definition

List of resource tags. This field is an array. Each element contains a tag key and a tag value.

enterprise_project_id

String

Definition

ID of the enterprise project that the resource belongs to.

Range

It can contain a maximum of 36 characters.

Table 7 tag

Parameter

Type

Description

key

String

Definition

Tag key.

Range

  • The key can contain a maximum of 128 characters.

  • The key can contain letters, digits, spaces, and the following special characters: _.:=+-@

value

String

Definition

Tag value.

Range

  • The value can contain a maximum of 255 characters.

  • The value can contain letters, digits, spaces, and the following special characters: _.:/=+-@

Status code: 400

Table 8 Response body parameters

Parameter

Type

Description

code

String

Definition

Error code

Range

N/A

message

String

Definition

Error description

Range

N/A

Status code: 500

Table 9 Response body parameters

Parameter

Type

Description

code

String

Definition

Error code

Range

N/A

message

String

Definition

Error description

Range

N/A

Example Requests

None

Example Responses

Status code: 200

{
  "links" : {
    "self" : "https://{Endpoint}/v2/reverse/floatingips",
    "next" : "https://{Endpoint}/v2/zones?id=&limit=10&marker={region_id}:c5504932-bf23-4171-b655-b87a6bc59334"
  },
  "metadata" : {
    "total_count" : 1
  },
  "floatingips" : [ {
    "id" : "{region_id}:c5504932-bf23-4171-b655-b87a6bc59334",
    "ptrdname" : "www.example.com.",
    "description" : "Description for this PTR record",
    "address" : "10.154.52.138",
    "action" : "NONE",
    "ttl" : 300,
    "status" : "ACTIVE",
    "links" : {
      "self" : "https://{Endpoint}/v2/reverse/floatingips/{region_id}:c5504932-bf23-4171-b655-b87a6bc59334"
    },
    "tags" : [ ],
    "enterprise_project_id" : "0"
  } ]
}

SDK Sample Code

The SDK sample code is as follows.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.dns.v2.region.DnsRegion;
import com.huaweicloud.sdk.dns.v2.*;
import com.huaweicloud.sdk.dns.v2.model.*;


public class ListPtrRecordsSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");

        ICredential auth = new BasicCredentials()
                .withAk(ak)
                .withSk(sk);

        DnsClient client = DnsClient.newBuilder()
                .withCredential(auth)
                .withRegion(DnsRegion.valueOf("<YOUR REGION>"))
                .build();
        ListPtrRecordsRequest request = new ListPtrRecordsRequest();
        try {
            ListPtrRecordsResponse response = client.listPtrRecords(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkdns.v2.region.dns_region import DnsRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkdns.v2 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]

    credentials = BasicCredentials(ak, sk)

    client = DnsClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(DnsRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListPtrRecordsRequest()
        response = client.list_ptr_records(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    dns "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dns/v2"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dns/v2/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dns/v2/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")

    auth, err := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        SafeBuild()

    if err != nil {
        fmt.Println(err)
        return
    }

    hcClient, err := dns.DnsClientBuilder().
         WithRegion(region.ValueOf("<YOUR REGION>")).
         WithCredential(auth).
         SafeBuild()


    if err != nil {
        fmt.Println(err)
        return
    }

    client := dns.NewDnsClient(hcClient)

    request := &model.ListPtrRecordsRequest{}
	response, err := client.ListPtrRecords(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

For SDK sample code of more programming languages, see the Sample Code tab in API Explorer. SDK sample code can be automatically generated.

Status Codes

Status Code

Description

200

Successful request

400

Error response

500

Error response

Error Codes

See Error Codes.