Jump to: navigation, search

Difference between revisions of "Designate/Blueprints/ReverseFixedIP"

(API Details: Get / Set / Unset)
(API Details: Get / Set / Unset)
Line 20: Line 20:
 
Using the general endpoint call "/reverse" add the fixed IP resource called "fixedips".
 
Using the general endpoint call "/reverse" add the fixed IP resource called "fixedips".
  
=== API Details: Get / Set / Unset ===
+
=== API Details: GET / POST / DELETE ===
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
Line 28: Line 28:
 
|-
 
|-
 
| POST || /reverse/fixedips/{IP address} || Create the PTR record for the given IP address.
 
| POST || /reverse/fixedips/{IP address} || Create the PTR record for the given IP address.
 +
|-
 +
| DELETE || /reverse/fixedips/{IP address} || Delete the PTR record for the given IP address.
 
|}
 
|}
  

Revision as of 19:05, 4 March 2014

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: GET / POST / DELETE

Verb Resource Description
GET /reverse/fixedips/{IP address} Return the PTR record for the given IP address.
POST /reverse/fixedips/{IP address} Create the PTR record for the given IP address.
DELETE /reverse/fixedips/{IP address} Delete the PTR record for the given IP address.

Get the PTR Record (GET)

Return the PTR record for the given instance ID.

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/<instance_id>"
           }
       }
   }

Set the PTR Record (PATCH)

Set the PTR record for the given instance ID.

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/<instance_id>"
           }
       }
   }

Unset the PTR Record (PATCH)

Unset the PTR record for the given instance ID.

Request

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

The return body is empty.

Database Changes

There are no changes to the database schema.