Jump to: navigation, search

Designate/Blueprints/ReverseFixedIP

< Designate‎ | Blueprints
Revision as of 19:12, 4 March 2014 by Rjrjr (talk | contribs) (API Resource - Private / Fixed IPs)

Overview

Gerrit Patch []
Launchpad Blueprint [1]

Summary

This blueprint proposes to provide an interface for a VM instance's PTR record based on the allocated Fixed IP.

This blueprint is based on the blueprint done for floating IPs:

   Designate/Blueprints/Reverse

API Resource - Private / Fixed IPs

Using the general endpoint call "/reverse" add the fixed IP resource called "fixedips".

API Details

Verb Resource Description
GET /reverse/fixedips/{IP address} Return the PTR record for the given IP address.
PATCH /reverse/fixedips/{IP address} Create or delete the PTR record for the given IP address.

Get the PTR Record (GET)

Return the PTR record for the given IP address.

There is no request message body.

Response

   {
       “fixedip”: {
           "id": "<uuid>",
           "ptrdname": "server.mydomain.com.",
           "address": "<ipv4 or ipv6 compliant address>",
           "ttl": 3600,
           "created_at": "2014-03-04T11:00:01.000000",
           "update_at": null,
           "description": null,
           "links": {
               "self": "http://endpoint/v2/reverse/fixedips/<ip address>"
           }
       }
   }

Create the PTR Record (PATCH)

Create the PTR record for the given IP address.

Request

   {
       "fixedip": {
           "ptrdname": "server.mydomain.com.",
           "ttl": 3600
       }
   }

Response

   {
       “fixedip”: {
           "id": "<uuid>",
           "ptrdname": "server.mydomain.com.",
           "address": "<ipv4 or ipv6 compliant address>",
           "ttl": 3600,
           "created_at": "2014-03-04T11:00:01.000000",
           "update_at": null,
           "description": null,
           "links": {
               "self": "http://endpoint/v2/reverse/fixedips/<ip address>"
           }
       }
   }

Delete the PTR Record (PATCH)

Delete the PTR record for the given IP address.

Request

   {
       "fixedip": {
           "ptrdname": null
       }
   }

The return body is empty.

Database Changes

There are no changes to the database schema.