|
|
(23 intermediate revisions by the same user not shown) |
Line 2: |
Line 2: |
|
| |
|
| == Timeline == | | == Timeline == |
| The Alpha release for the write API is planned for the W/C 19th of September. This will allow at least a subset of the initially panned urls to be tested, including authentication. | | The Alpha release for the write API is planned for the W/C <strike>19th of September</strike> 24th October. This will allow at least a subset of the initially panned urls to be tested, including authentication. |
|
| |
|
| == Initially supported urls == | | == Initially supported urls == |
| | Details of the methods implemented in the write API can be found on [[GOCDB/Write_API/Technical_Documentation#Supported_methods|Technical Documentation page]]. |
|
| |
|
| The following table shows the methods and URLs that we plan to implement | | == Proposed authorisation mechanism == |
| | The proposed method for authentication for the write API is initially by X509 certificate. Each site will be able to define a list of authorised robot DNs that may make changes through the write API. The same authentication mechanism will be used as for the rest of GOCDB. |
|
| |
|
| {|
| | == Github == |
| |-
| | The current working branch for this work can be found [https://github.com/GRyall/gocdb/tree/write-api here]. |
| |Method
| |
| |url
| |
| |function
| |
| |-
| |
| |POST
| |
| |<apiurl>/v5/ServiceEndPoint/<End point ID>/ExtensionProperties
| |
| |Adds the extension properties defined in the request to the SE with the given ID (fails if there are already extension properties)
| |
| |-
| |
| |PUT
| |
| |<apiurl>/v5/ServiceEndPoint/<End point ID>/ExtensionProperties
| |
| |replace the extension properties for the SE with the given ID (fails if there are already extension properties) with those in the request (?if non defined?)
| |
| |-
| |
| |DELTE
| |
| |<apiurl>/v5/ServiceEndPoint/<End point ID>/ExtensionProperties
| |
| |Removes all the extension properties for the SE with the given ID (fails if there are already extension properties) (?if non defined?)
| |
| |-
| |
| |POST
| |
| |<apiurl>/v5/ServiceEndPoint/<End point ID>/ExtensionProperties/<name>
| |
| |Adds an extension property of the named SE with the named name and value in the request (fails if property with that name is already defined)
| |
| |-
| |
| |PUT
| |
| |<apiurl>/v5/ServiceEndPoint/<End point ID>/ExtensionProperties/<name>
| |
| |Updates the extension property of the named SE with the named name and value in the request (?If property is not already defined)
| |
| |-
| |
| |DELTE
| |
| |<apiurl>/v5/ServiceEndPoint/<End point ID>/ExtensionProperties/<name>
| |
| |Removes the named extension property from the named SE
| |
| |-
| |
| |POST
| |
| |<apiurl>/v5/Service/<Service ID>/ExtensionProperties
| |
| |Adds the extension properties defined in the request to the service with the given ID (fails if there are already extension properties)
| |
| |-
| |
| |PUT
| |
| |<apiurl>/v5/Service/<Service ID>/ExtensionProperties
| |
| |Replace the extension properties for the service with the given ID (fails if there are already extension properties) with those in the request (?if non defined?)
| |
| |-
| |
| |DELTE
| |
| |<apiurl>/v5/Service/<Service ID>/ExtensionProperties
| |
| |Removes all the extension properties for the service with the given ID (fails if there are already extension properties) (?if non defined?)
| |
| |-
| |
| |POST
| |
| |<apiurl>/v5/Service/<Service ID>/ExtensionProperties/<name>
| |
| |Adds an extension property of the named service with the named name and value in the request (fails if property with that name is already defined)
| |
| |-
| |
| |PUT
| |
| |<apiurl>/v5/Service/<Service ID>/ExtensionProperties/<name>
| |
| |Updates the extension property of the named service with the named name and value in the request (?If property is not already defined)
| |
| |-
| |
| |DELTE
| |
| |<apiurl>/v5/Service/<Service ID>/ExtensionProperties/<name>
| |
| |Removes the named extension property from the named service
| |
| |-
| |
| |POST
| |
| |<apiurl>/v5/Site/<Site ID>/ExtensionProperties
| |
| |Adds the extension properties defined in the request to the Site with the given ID (fails if there are already extension properties)
| |
| |-
| |
| |PUT
| |
| |<apiurl>/v5/Site/<Site ID>/ExtensionProperties
| |
| |Replace the extension properties for the site with the given ID (fails if there are already extension properties) with those in the request (?if non defined?)
| |
| |-
| |
| |DELTE
| |
| |<apiurl>/v5/Site/<Site ID>/ExtensionProperties
| |
| |Removes all the extension properties for the site with the given ID (fails if there are already extension properties) (?if non defined?)
| |
| |-
| |
| |POST
| |
| |<apiurl>/v5/Site/<Site ID>/ExtensionProperties/<name>
| |
| |Adds an extension property of the named site with the named name and value in the request (fails if property with that name is already defined)
| |
| |-
| |
| |PUT
| |
| |<apiurl>/v5/Site/<Site ID>/ExtensionProperties/<name>
| |
| |Updates the extension property of the named site with the named name and value in the request (?If property is not already defined)
| |
| |-
| |
| |DELTE
| |
| |<apiurl>/v5/Site/<Site ID>/ExtensionProperties/<name>
| |
| |Removes the named extension property from the named site
| |
| |-
| |
| |}
| |
| | |
| | |
| | |
| | |
| {| width="200" cellspacing="1" cellpadding="1" border="1"
| |
| |-
| |
| |
| |
| |
| |
| |}
| |
| | |
| == Proposed authentication mechnisim ==
| |