Hetzner Cloud API
  1. Primary IPs
Hetzner Cloud API
  • Actions
    • Get all Actions
      GET
    • Get an Action
      GET
  • Certificates
    • Get all Certificates
      GET
    • Create a Certificate
      POST
    • Delete a Certificate
      DELETE
    • Get a Certificate
      GET
    • Update a Certificate
      PUT
  • Certificate Actions
    • Get all Actions for a Certificate
      GET
    • Retry Issuance or Renewal
      POST
    • Get an Action for a Certificate
      GET
  • Datacenters
    • Get all Datacenters
      GET
    • Get a Datacenter
      GET
  • Firewalls
    • Get all Firewalls
      GET
    • Create a Firewall
      POST
    • Delete a Firewall
      DELETE
    • Get a Firewall
      GET
    • Update a Firewall
      PUT
  • Firewall Actions
    • Get all Actions for a Firewall
      GET
    • Apply to Resources
      POST
    • Remove from Resources
      POST
    • Set Rules
      POST
    • Get an Action for a Firewall
      GET
  • Floating IPs
    • Get all Floating IPs
    • Create a Floating IP
    • Delete a Floating IP
    • Get a Floating IP
    • Update a Floating IP
  • Floating IP Actions
    • Get all Actions for a Floating IP
    • Assign a Floating IP to a Server
    • Change reverse DNS entry for a Floating IP
    • Change Floating IP Protection
    • Unassign a Floating IP
    • Get an Action for a Floating IP
  • Images
    • Get all Images
    • Delete an Image
    • Get an Image
    • Update an Image
  • Image Actions
    • Get all Actions for an Image
    • Change Image Protection
    • Get an Action for an Image
  • ISOs
    • Get all ISOs
    • Get an ISO
  • Load Balancer Types
    • Get all Load Balancer Types
    • Get a Load Balancer Type
  • Load Balancers
    • Get all Load Balancers
    • Create a Load Balancer
    • Delete a Load Balancer
    • Get a Load Balancer
    • Update a Load Balancer
    • Get Metrics for a LoadBalancer
  • Load Balancer Actions
    • Get all Actions for a Load Balancer
    • Add Service
    • Add Target
    • Attach a Load Balancer to a Network
    • Change Algorithm
    • Change reverse DNS entry for this Load Balancer
    • Change Load Balancer Protection
    • Change the Type of a Load Balancer
    • Delete Service
    • Detach a Load Balancer from a Network
    • Disable the public interface of a Load Balancer
    • Enable the public interface of a Load Balancer
    • Remove Target
    • Update Service
    • Get an Action for a Load Balancer
  • Locations
    • Get all Locations
    • Get a Location
  • Networks
    • Get all Networks
    • Create a Network
    • Delete a Network
    • Get a Network
    • Update a Network
  • Network Actions
    • Get all Actions for a Network
    • Add a route to a Network
    • Add a subnet to a Network
    • Change IP range of a Network
    • Change Network Protection
    • Delete a route from a Network
    • Delete a subnet from a Network
    • Get an Action for a Network
  • Placement Groups
    • Get all PlacementGroups
    • Create a PlacementGroup
    • Delete a PlacementGroup
    • Get a PlacementGroup
    • Update a PlacementGroup
  • Pricing
    • Get all prices
  • Server Types
    • Get all Server Types
    • Get a Server Type
  • Servers
    • Get all Servers
    • Create a Server
    • Delete a Server
    • Get a Server
    • Update a Server
    • Get Metrics for a Server
  • Server Actions
    • Get all Actions for a Server
    • Add a Server to a Placement Group
    • Attach an ISO to a Server
    • Attach a Server to a Network
    • Change alias IPs of a Network
    • Change reverse DNS entry for this Server
    • Change Server Protection
    • Change the Type of a Server
    • Create Image from a Server
    • Detach a Server from a Network
    • Detach an ISO from a Server
    • Disable Backups for a Server
    • Disable Rescue Mode for a Server
    • Enable and Configure Backups for a Server
    • Enable Rescue Mode for a Server
    • Power off a Server
    • Power on a Server
    • Soft-reboot a Server
    • Rebuild a Server from an Image
    • Remove from Placement Group
    • Request Console for a Server
    • Reset a Server
    • Reset root Password of a Server
    • Shutdown a Server
    • Get an Action for a Server
  • SSH Keys
    • Get all SSH keys
    • Create an SSH key
    • Delete an SSH key
    • Get a SSH key
    • Update an SSH key
  • Volumes
    • Get all Volumes
    • Create a Volume
    • Delete a Volume
    • Get a Volume
    • Update a Volume
  • Volume Actions
    • Get all Actions for a Volume
    • Attach Volume to a Server
    • Change Volume Protection
    • Detach Volume
    • Resize Volume
    • Get an Action for a Volume
  • Primary IPs
    • Get all Primary IPs
      GET
    • Create a Primary IP
      POST
    • Delete a Primary IP
      DELETE
    • Get a Primary IP
      GET
    • Update a Primary IP
      PUT
  • Primary IP Actions
    • Assign a Primary IP to a resource
    • Change reverse DNS entry for a Primary IP
    • Change Primary IP Protection
    • Unassign a Primary IP from a resource
  1. Primary IPs

Create a Primary IP

POST
/primary_ips
Creates a new Primary IP, optionally assigned to a Server.
If you want to create a Primary IP that is not assigned to a Server, you need to provide the datacenter key instead of assignee_id. This can be either the ID or the name of the Datacenter this Primary IP shall be created in.
Note that a Primary IP can only be assigned to a Server in the same Datacenter later on.

Call specific error codes#

CodeDescription
server_not_stoppedThe specified server is running, but needs to be powered off
server_has_ipv4The server already has an ipv4 address
server_has_ipv6The server already has an ipv6 address

Request

Body Params application/json

Examples

Responses

🟢201The `primary_ip` key contains the Primary IP that was just created
application/json
Body

Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://api.hetzner.cloud/v1/primary_ips' \
--header 'Content-Type: application/json' \
--data-raw '{
    "assignee_id": 17,
    "assignee_type": "server",
    "auto_delete": false,
    "datacenter": "fsn1-dc8",
    "labels": {
        "labelkey": "value"
    },
    "name": "my-ip",
    "type": "ipv4"
}'
Response Response Example
{
    "action": {
        "command": "create_primary_ip",
        "error": {
            "code": "action_failed",
            "message": "Action failed"
        },
        "finished": null,
        "id": 13,
        "progress": 0,
        "resources": [
            {
                "id": 17,
                "type": "server"
            }
        ],
        "started": "2016-01-30T23:50:00.000Z",
        "status": "running"
    },
    "primary_ip": {
        "assignee_id": 17,
        "assignee_type": "server",
        "auto_delete": true,
        "blocked": false,
        "created": "2016-01-30T23:50:00.000Z",
        "datacenter": {
            "description": "Falkenstein DC Park 8",
            "id": 42,
            "location": {
                "city": "Falkenstein",
                "country": "DE",
                "description": "Falkenstein DC Park 1",
                "id": 1,
                "latitude": 50.47612,
                "longitude": 12.370071,
                "name": "fsn1",
                "network_zone": "eu-central"
            },
            "name": "fsn1-dc8",
            "server_types": {
                "available": [
                    1,
                    2,
                    3
                ],
                "available_for_migration": [
                    1,
                    2,
                    3
                ],
                "supported": [
                    1,
                    2,
                    3
                ]
            }
        },
        "dns_ptr": [
            {
                "dns_ptr": "server.example.com",
                "ip": "2001:db8::1"
            }
        ],
        "id": 42,
        "ip": "131.232.99.1",
        "labels": {
            "labelkey": "value"
        },
        "name": "my-ip",
        "protection": {
            "delete": false
        },
        "type": "ipv4"
    }
}
Modified at 2023-08-16 03:09:20
Previous
Get all Primary IPs
Next
Delete a Primary IP
Built with