## List Web3 Hostnames `web3.hostnames.list(HostnameListParams**kwargs) -> SyncSinglePage[Hostname]` **get** `/zones/{zone_id}/web3/hostnames` List Web3 Hostnames ### Parameters - `zone_id: str` Specify the identifier of the hostname. ### Returns - `class Hostname: …` - `id: Optional[str]` Specify the identifier of the hostname. - `created_on: Optional[datetime]` - `description: Optional[str]` Specify an optional description of the hostname. - `dnslink: Optional[str]` Specify the DNSLink value used if the target is ipfs. - `modified_on: Optional[datetime]` - `name: Optional[str]` Specify the hostname that points to the target gateway via CNAME. - `status: Optional[Literal["active", "pending", "deleting", "error"]]` Specifies the status of the hostname's activation. - `"active"` - `"pending"` - `"deleting"` - `"error"` - `target: Optional[Literal["ethereum", "ipfs", "ipfs_universal_path"]]` Specify the target gateway of the hostname. - `"ethereum"` - `"ipfs"` - `"ipfs_universal_path"` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) page = client.web3.hostnames.list( zone_id="023e105f4ecef8ad9ca31a8372d0c353", ) page = page.result[0] print(page.id) ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "result": [ { "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "description": "This is my IPFS gateway.", "dnslink": "/ipns/onboarding.ipfs.cloudflare.com", "modified_on": "2014-01-01T05:20:00.12345Z", "name": "gateway.example.com", "status": "active", "target": "ipfs" } ], "success": true, "result_info": { "count": 1, "page": 1, "per_page": 20, "total_count": 2000 } } ```