Difference between revisions of "Designate/Blueprints/Recordset Record API Redesign"
< Designate | Blueprints
(→Overview) |
(→API Details: Create / List / Patch / Put / Delete Recordset) |
||
Line 36: | Line 36: | ||
| GET || /zones/zone{id}/recordsets/{id} || Returns a specific recordset for a zone | | GET || /zones/zone{id}/recordsets/{id} || Returns a specific recordset for a zone | ||
|- | |- | ||
− | | POST || /zones/zone{id}/recordsets|| Creates a new recordset or adds a new record to a recordset | + | | POST || /zones/zone{id}/recordsets|| Creates a new recordset or adds a new record to a recordset. See below for more details |
|- | |- | ||
− | | PUT || / | + | | PUT || /zones/zone{id}/recordsets/recordset{id} || Replaces all records in a recordset |
|- | |- | ||
− | | DELETE || / | + | | PATCH || /zones/zone{id}/recordsets/recordset{id} || Adds the records to a recordset |
+ | |- | ||
+ | | DELETE || /zones/zone{id}/recordsets/recordset{id} || Delete the recordset and all records associated with it. No message body is expected in the request | ||
|} | |} |
Revision as of 19:17, 29 April 2014
Contents
1 Overview
Contents
Overview
Gerrit Patch | [] |
---|---|
Launchpad Blueprint | [1] |
This blueprint proposes to eliminate the Records resource and on keep the RecordSets resource.
The API for recordsets and records is too complicated. Currently, a user is forced to create a recordset before creating a record. This leads to a confusing user experience.Users will create, update and delete recordsets. When the user creates a recordset the code will determine if it should be a new recordset or a record under an existing recordset. However, the record will no longer be accessible as a separate resource; only as part of the recordset.
API Resource
Current API
/zones/zone{id}/recordsets/recordset{id}/records/record{id}
New API
/zones/zone{id}/recordsets/recordset{id}
API Details: Create / List / Patch / Put / Delete Recordset
Verb | Resource | Description |
---|---|---|
GET | /zones/zone{id}/recordsets | Returns all the recordsets for a zone |
GET | /zones/zone{id}/recordsets/{id} | Returns a specific recordset for a zone |
POST | /zones/zone{id}/recordsets | Creates a new recordset or adds a new record to a recordset. See below for more details |
PUT | /zones/zone{id}/recordsets/recordset{id} | Replaces all records in a recordset |
PATCH | /zones/zone{id}/recordsets/recordset{id} | Adds the records to a recordset |
DELETE | /zones/zone{id}/recordsets/recordset{id} | Delete the recordset and all records associated with it. No message body is expected in the request |