Difference between revisions of "Designate/Blueprints/Recordset Record API Redesign"
< Designate | Blueprints
(→API Details: Create / List / Patch / Put / Delete Recordset) |
(→API Details: Create / List / Patch / Put / Delete Recordset) |
||
Line 34: | Line 34: | ||
| GET || /zones/zone{id}/recordsets || Returns all the recordsets for a zone | | 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 | + | | GET || /zones/zone{id}/recordsets/recordset{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 | | POST || /zones/zone{id}/recordsets|| Creates a new recordset or adds a new record to a recordset. See below for more details |
Revision as of 19:18, 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/recordset{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 |