Jump to: navigation, search

Designate/Blueprints/ReverseFixedIP

< Designate‎ | Blueprints
Revision as of 18:15, 4 March 2014 by Rjrjr (talk | contribs) (Set the PTR Record for a Fixed IP (Patch))

Overview

Gerrit Patch []
Launchpad Blueprint [1]

Summary

Provide a simple interface towards an entities PTR records based on allocated Fixed IPs.

API Changes

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

One Per Change

Verb Resource Description
GET /reverse/fixedips/{instance ID} Return the PTR record for the given instance ID.
PATCH /reverse/fixedips/{instance ID} Set or unset the PTR record for the given instance ID.

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": "<insert ipv4 or ipv6 compliant address here",
           "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": "<insert ipv4 or ipv6 compliant address here",
           "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": ""
       }
   }

Response

Database Changes

Description of Changes to DB schemas

eg -

Name Data Type Length Nullable Details
id VARCHAR 36 False Primary Key, Generated UUID
name VARCHAR 255 False Domain name to be blacklisted
version INTEGER - False Designate API version
created_at DATETIME - False UTC time of creation
updated_at DATETIME - True UTC time of creation
description VARCHAR 160 True UTF-8 text field