This wiki is locked. Future workgroup activity and specification development must take place at our new wiki. For more information, see this blog post about the new governance model and this post about changes to the website.
TWiki> Main Web>CmRestApi? >CmRestApiFuture (revision 1)

Change Management REST API Specification (Future Concepts)

(Concepts to consider to future specification work)

SPECIFICATION NOTES: This document is intented to capture REST API concepts that will not be part of the initial core services. The intent is to keep the specifications as simple as possible, expanding on the needs as user stories support it.

Introduction

Change Management resources define the change requests, activities and tasks of the software delivery lifecycle. They represent individual change requests, activities and tasks, along with their relationships to other shared resource types such as project, category, release and plan. The intent of this specification is to define the set of HTTP-based RESTful interfaces in terms of HTTP methods: GET, POST, PUT and DELETE, HTTP response codes, mime type handling and resource formats.

Overview of Resource URIs and Methods

URI GET POST PUT DELETE Description
/requests Y N N N A (queryable) collection of requests
/requests/{identifier} Y Y Y Y An identifiable request, by a system defined unique identifier

Working with Collections

Needs specification

Elaborate on these sub-topics:

  • search and query parameters
  • format requested: XML, HTML, JSON
  • feeds

Getting a Resource

Needs specification

Elaborate on these sub-topics:

  • Formats supported: XML, HTML, JSON, etc
  • Requesting formats: Accept header, parameter
  • Inline content vs. references

Creating New Resources

Needs specification

Elaborate on these sub-topics:

  • Resource definition discovery: what elements are needed to be supplied?
  • Error handling: constraints aren't satisfied, missing depedent fields, etc?

Updating Resources

Needs specification

Elaborate on these sub-topices:

  • Typical CM tools support actions on resources, how do these surface?
  • Communicating the workflow model of resources: accept task, resolve, close, duplicate, promote to next state, etc
  • Requesting forms directly: no-frames, HTML
  • Error handling: responses that can be consumable by tools (and humans)

Deleting Resources

Typically this is thought of as marking a resource as being inactive or deleted.

Needs specification

Resource Formats

See OSLC CM resource definition specification? .

References

-- SteveSpeicher - 02 Dec 2008

Edit | Attach | Print version | History: r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r1 - 02 Dec 2008 - 19:18:40 - SteveSpeicher
 
This site is powered by the TWiki collaboration platform Copyright � by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Contributions are governed by our Terms of Use
Ideas, requests, problems regarding this site? Send feedback