From 34265788bbbbb03309d838ce32690597a095c75e Mon Sep 17 00:00:00 2001 From: Ziad Sawalha Date: Fri, 20 May 2011 14:00:02 -0500 Subject: Move to v2.0 --- docs/guide/pom.xml | 2 +- docs/guide/src/docbkx/identity.wadl | 355 +++++++ docs/guide/src/docbkx/identitydevguide.xml | 1026 ++++++++++++++++++++ docs/guide/src/docbkx/idm.wadl | 355 ------- docs/guide/src/docbkx/idmdevguide.xml | 1018 ------------------- docs/guide/src/docbkx/samples/auth.xml | 2 +- docs/guide/src/docbkx/samples/auth_credentials.xml | 2 +- docs/guide/src/docbkx/samples/choices.json | 34 +- docs/guide/src/docbkx/samples/choices.xml | 12 +- docs/guide/src/docbkx/samples/ext-getuser.xml | 4 +- docs/guide/src/docbkx/samples/extension.json | 6 +- docs/guide/src/docbkx/samples/extension.xml | 2 +- docs/guide/src/docbkx/samples/extensions.json | 2 +- docs/guide/src/docbkx/samples/extensions.xml | 2 +- docs/guide/src/docbkx/samples/getuser-1.json | 2 +- docs/guide/src/docbkx/samples/getuser-1.xml | 4 +- docs/guide/src/docbkx/samples/identity_fault.json | 7 + docs/guide/src/docbkx/samples/identity_fault.xml | 6 + docs/guide/src/docbkx/samples/idm_fault.json | 7 - docs/guide/src/docbkx/samples/idm_fault.xml | 6 - docs/guide/src/docbkx/samples/item_not_found.xml | 2 +- .../src/docbkx/samples/samplerequestheader.json | 2 +- docs/guide/src/docbkx/samples/tenant.xml | 2 +- docs/guide/src/docbkx/samples/tenantlock.xml | 2 +- docs/guide/src/docbkx/samples/tenants-1.json | 2 +- docs/guide/src/docbkx/samples/tenants-1.xml | 4 +- docs/guide/src/docbkx/samples/tenants-2.json | 4 +- docs/guide/src/docbkx/samples/tenants-2.xml | 6 +- docs/guide/src/docbkx/samples/tenants-3.json | 2 +- docs/guide/src/docbkx/samples/tenants-3.xml | 4 +- docs/guide/src/docbkx/samples/tenants.xml | 2 +- docs/guide/src/docbkx/samples/updatedtenant.xml | 2 +- docs/guide/src/docbkx/samples/validatetoken.xml | 2 +- docs/guide/src/docbkx/samples/version-atom.xml | 12 +- docs/guide/src/docbkx/samples/version.json | 10 +- docs/guide/src/docbkx/samples/version.xml | 10 +- docs/guide/src/docbkx/samples/versions-atom.xml | 12 +- docs/guide/src/docbkx/samples/versions.json | 4 +- docs/guide/src/docbkx/samples/versions.xml | 4 +- docs/guide/src/docbkx/xsd/api.xsd | 4 +- docs/guide/src/docbkx/xsd/fault.xsd | 4 +- docs/guide/src/docbkx/xsd/tenant.xsd | 4 +- docs/guide/src/docbkx/xsd/token.xsd | 4 +- 43 files changed, 1494 insertions(+), 1464 deletions(-) create mode 100644 docs/guide/src/docbkx/identity.wadl create mode 100644 docs/guide/src/docbkx/identitydevguide.xml delete mode 100644 docs/guide/src/docbkx/idm.wadl delete mode 100644 docs/guide/src/docbkx/idmdevguide.xml create mode 100644 docs/guide/src/docbkx/samples/identity_fault.json create mode 100644 docs/guide/src/docbkx/samples/identity_fault.xml delete mode 100644 docs/guide/src/docbkx/samples/idm_fault.json delete mode 100644 docs/guide/src/docbkx/samples/idm_fault.xml (limited to 'docs') diff --git a/docs/guide/pom.xml b/docs/guide/pom.xml index ec944cf4..fd16d6a3 100644 --- a/docs/guide/pom.xml +++ b/docs/guide/pom.xml @@ -2,7 +2,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 - com.rackspace.idm + org.openstack.identity docs 0.0.1-SNAPSHOT jar diff --git a/docs/guide/src/docbkx/identity.wadl b/docs/guide/src/docbkx/identity.wadl new file mode 100644 index 00000000..2cad5a48 --- /dev/null +++ b/docs/guide/src/docbkx/identity.wadl @@ -0,0 +1,355 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/guide/src/docbkx/identitydevguide.xml b/docs/guide/src/docbkx/identitydevguide.xml new file mode 100644 index 00000000..a7b03264 --- /dev/null +++ b/docs/guide/src/docbkx/identitydevguide.xml @@ -0,0 +1,1026 @@ + + + + + + + + GET'> + PUT'> + POST'> + DELETE'> + + + + + + + '> + + + + This operation does not require a request body.'> + + + Verb + URI + Description + + '> + + + Verb + URI + Description + + '> +]> + + Keystone Developer Guide + + + + + + + + OpenStack + + + + 2010 + 2011 + OpenStack + + API v2.0 + Keystone - OpenStack Identity + 2011-04-23 + + + Copyright details are filled in by the template. + + + + + This document is intended for software developers interested + in developing applications which utilize the Cloud Identity + Service for authentication. This document also includes + details on how to integrate services with the Cloud Identity + Service. + + + + + Overview + + The Keystone Identity Service allows applications to obtain + tokens that can be used to access OpenStack resources. This + document is intended for software developers interested in + developing applications which utilize the Cloud Identity + Service for authentication. This document also includes + details on how to integrate services with the Cloud Identity + Service. + + + This Guide assumes the reader is familiar with RESTful web + services, HTTP/1.1, and JSON and/or XML serialization formats. + + + + Concepts + + The Keystone Identity Service has several key concepts that are + important to understand: + +
+ Token + + A token is an arbitrary bit of text that is used to access + resources. Each token has a scope which describes which + resources are accessible with it. A token may be + revoked at anytime and is valid for a finite duration. + +
+
+ Tenant + + Depending on the operator, a tenant may map to a customer, + account, organization, or project. + +
+
+ User + + Users have a login and may be assigned tokens to access + resources. + +
+
+ Role + + A role that an identity is associated with that allows it + to perform certain operations. Roles are managed by services + and operators. Tenant administrators may assign roles to users. + +
+
+ Group + + A group of users. Global groups are managed by + operators. They are used to organize and assign privileges + to a group of related users. For example, an operator may + create a "delinquent" group, which will assign limited + privileges to users who have past due bills. + +
+
+ + General API Information + The Keystone API is implemented using a RESTful web service interface. All requests to + authenticate and operate against the Keystone API are performed using SSL over HTTP (HTTPS) on TCP + port 443. +
+ Request/Response Types + The Keystone API supports both the JSON and XML data serialization formats. The request + format is specified using the Content-Type header and is required for + operations that have a request body. The response format can be specified in requests using + either the Accept header or adding an .xml or .json + extension to the request URI. Note that it is possible for a response to be serialized using + a format different from the request (see example below). If no response format is specified, + JSON is the default. If conflicting formats are specified using both an Accept + header and a query extension, the query extension takes precedence. + + + + + + + + + + + + + + + + + + + + + + + + +
Response Types
FormatAccept HeaderQuery ExtensionDefault
JSONapplication/json.jsonYes
XMLapplication/xml.xmlNo
+ + JSON Request with Headers + + + + + + + + + XML Response with Headers + + + + + + + +
+
+ Content Compression + Request and response body data my be encoded with gzip compression in order to + accelerate interactive performance of API calls and responses. This is controlled using the + Accept-Encoding header on the request from the client and indicated by the + Content-Encoding header in the server response. Unless the header is + explicitly set, encoding defaults to disabled. + + + + + + + + + + + + + + + + + + + + + +
Compression Headers
Header TypeNameValue
HTTP/1.1 RequestAccept-Encodinggzip
HTTP/1.1 ResponseContent-Encodinggzip
+
+
+ Paginated Collections + + To reduce load on the service, list operations will + return a maximum number of items at a time. The + maximum number of items returned is determined by the + IDM provider. To navigate the collection, the + parameters limit and + marker can be set in the URI + (e.g.?limit=100&marker=1234). + The marker parameter is the ID + of the last item in the previous list. Items are + sorted by update time. When an update time is not + available they are sorted by ID. The + limit parameter sets the page + size. Both parameters are optional. If the client + requests a limit beyond that + which is supported by the deployment an overLimit + (413) fault may be thrown. A + marker with an invalid ID will return an itemNotFound + (404) fault. + + + + Paginated collections never return itemNotFound + (404) faults when the + collection is empty — clients should expect + an empty collection. + + + + For convenience, collections contain atom "next" and + "previous" links. The first page in the list will not + contain a "previous" link, the last page in the list + will not contain a "next" link. The following examples + illustrate three pages in a collection of tenants. The + first page was retrieved via a &GET; to + http://identity.api.openstack.org/v2.0/1234/tenants?limit=1. + In these examples, the limit + parameter sets the page size to a single item. + Subsequent "next" and "previous" links will honor the + initial page size. Thus, a client may follow links to + traverse a paginated collection without having to + input the marker parameter. + + + Tenant Collection, First Page: XML + + + + + + Tenant Collection, First Page: JSON + + + + Tenant Collection, Second Page: XML + + + + + + Tenant Collection, Second Page: JSON + + + + Tenant Collection, Last Page: XML + + + + + + Tenant Collection, Last Page: JSON + + + + In the JSON representation, paginated collections contain + a values property that contains the + items in the collections. Links are accessed via the + links property. The approach allows + for extensibility of both the collection members and of + the paginated collection itself. It also allows + collections to be embedded in other objects as illustrated + below. Here, a subset of grups are presented within a + user. Clients must follow the "next" link to continue to + retrive additonal groups belonging to a user. + + + Paginated Groups in a User: XML + + + + + + Paginated Groups in an User: JSON + + +
+
+ Versions + + The OpenStack Identity API uses both a URI and a MIME + type versioning scheme. In the URI scheme, the first + element of the path contains the target version + identifier (e.g. https://identity.api.openstack.org/ + v2.0/…). The MIME type versioning scheme uses + HTTP content negotiation where the Accept + or Content-Type headers contains a MIME + type that identifies the version + (application/vnd.openstack.identity-v1.1+xml). A + version MIME type is always linked to a base MIME type + (application/xml or application/json). If conflicting + versions are specified using both an HTTP header and a + URI, the URI takes precedence. + + + Request with MIME type versioning + +GET /tenants HTTP/1.1 +Host: identity.api.openstack.org +Accept: application/vnd.openstack.identity-v1.1+xml +X-Auth-Token: eaaafd18-0fed-4b3a-81b4-663c99ec1cbb + + + + Request with URI versioning + +GET /v1.1/tenants HTTP/1.1 +Host: identity.api.openstack.org +Accept: application/xml +X-Auth-Token: eaaafd18-0fed-4b3a-81b4-663c99ec1cbb + + + + + The MIME type versioning approach allows for the + creating of permanent links, because the version + scheme is not specified in the URI path: + https://api.identity.openstack.org/tenants/12234. + + + + If a request is made without a version specified in + the URI or via HTTP headers, then a multiple-choices + response (300) will follow + providing links and MIME types to available versions. + + + Multiple Choices Response: XML + + + + + + Multiple Choices Response: JSON + + + + New features and functionality that do not break + API-compatibility will be introduced in the current + version of the API as extensions (see below) and the + URI and MIME types will remain unchanged. Features or + functionality changes that would necessitate a break + in API-compatibility will require a new version, which + will result in URI and MIME type version being updated + accordingly. When new API versions are released, older + versions will be marked as + DEPRECATED. Providers should work with + developers and partners to ensure there is adequate + time to migrate to the new version before deprecated + versions are discontinued. + + + Your application can programmatically determine + available API versions by performing a &GET; on the + root URL (i.e. with the version and everything to the + right of it truncated) returned from the + authentication system. Note that an Atom + representation of the versions resources is supported + when issuing a request with the Accept + header containing application/atom+xml or by adding a + .atom to the request URI. This allows standard Atom + clients to track version changes. + + + Versions List Request + +GET HTTP/1.1 +Host: identity.api.openstack.org + + + &CODES;200, 203 + &ERROR_CODES; badRequest + (400), identityFault + (500), + serviceUnavailable(503) + &NO_REQUEST; + + Versions List Response: XML + + + + + + Versions List Response: Atom + + + + + + Versions List Response: JSON + + + + You can also obtain additional information about a + specific version by performing a &GET; on the base + version URL + (e.g. https://identity.api.openstack.org/v1.1/). + Version request URLs should always end with a trailing + slash (/). If the slash is omitted, the server may + respond with a 302 + redirection request. Format extensions may be placed + after the slash + (e.g. https://identity.api.openstack.org/v1.1/.xml). Note + that this is a special case that does not hold true + for other API requests. In general, requests such as + /tenants.xml and /tenants/.xml are handled + equivalently. + + + Version Details Request + +GET HTTP/1.1 +Host: identity.api.openstack.org/v1.1/ + + + &CODES;200, 203 + &ERROR_CODES; badRequest + (400), identityFault + (500), + serviceUnavailable(503) + &NO_REQUEST; + + Version Details Response: XML + + + + + + Version Details Response: Atom + + + + + + Version Details Response: JSON + + + + The detailed version response contains pointers to + both a human-readable and a machine-processable + description of the API service. The machine-processable description is written in the Web + Application Description Language (WADL). + + + If there is a discrepancy between the two specifications, the WADL is + authoritative as it contains the most accurate and up-to-date description of the + API service. + +
+
+ Extensions + + The OpenStack IDM API is extensible. Extensions + serve two purposes: They allow the introduction of new + features in the API without requiring a version change + and they allow the introduction of vendor specific + niche functionality. Applications can programmatically + determine what extensions are available by performing + a &GET; on the /extensions URI. Note that this is a + versioned request — that is, an extension + available in one API version may not be available in + another. + + + + + Verb + URI + Description + + + + + &GET; + /extensions + Returns a list of available extensions + + + + &CODES;200, 203 + &ERROR_CODES; badRequest + (400), identityFault (500), + serviceUnavailable(503) + &NO_REQUEST; + + Each extension is identified by two unique identifiers, a + namespace and an + alias. Additionally an extension + contains documentation links in various formats. + + + Extensions Response: XML + + + + + + Extensions Response: JSON + + + + Extensions may also be queried individually by their + unique alias. This provides the simplest method of + checking if an extension is available as an unavailable + extension will issue an itemNotFound + (404) response. + + + + + Verb + URI + Description + + + + + &GET; + /extensions/alias + Return details of a single extension + + + + &CODES;200, 203 + &ERROR_CODES; itemNotFound + (404), badRequest + (400), identityFault + (500), + serviceUnavailable(503) + &NO_REQUEST; + + Extension Response: xml + + + + + + Extensions Response: JSON + + + + Extensions may define new data types, parameters, actions, + headers, states, and resources. In XML, additional + elements and attributes may be defined. These elements + must be defined in the extension's namespace. In JSON, the + alias must be used. The volumes element in the and + + is defined in the RS-META namespace. Extended + headers are always prefixed with X- followed + by the alias and a dash: (X-RS-META-HEADER1). + Parameters must be prefixed with the extension alias + followed by a colon. + + + + Applications should be prepared to ignore response + data that contains extension elements. Also, + applications should also verify that an extension is + available before submitting an extended request. + + + + Extended User Response: XML + + + + + + Extended User Response: JSON + + +
+
+ Faults + When an error occurs the system will return an HTTP error response code denoting the + type of error. The system will also return additional information about the fault in the + body of the response. + + XML Fault Response + + + + + + JSON Fault Response + + + + + The error code is returned in the body of the response for convenience. The message + section returns a human readable message. The details section is optional and may contain + useful information for tracking down an error (e.g a stack trace). + The root element of the fault (e.g. identityFault) may change depending on the type of error. + The following is an example of an itemNotFound error. + + XML Not Found Fault + + + + + + JSON Not Found Fault + + + + + The following is a list of possible fault types along with their associated error + codes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Fault Types
Fault ElementAssociated Error CodeExpected in All Requests
identityFault500, 400 ✓
serviceUnavailable503 ✓
badRequest400 ✓
unauthorized401 ✓
overLimit413 +
userDisabled403 +
forbidden403 +
itemNotFound404 +
tenantConflict409 +
+ From an XML schema perspective, all API faults are extensions of the base fault type + identityFault. When working with a system that binds XML to actual classes (such + as JAXB), one should be capable of using identityFault as a “catch-all” if + there's no interest in distinguishing between individual fault types. +
+
+ + Service Developer Operations +
+ Overview + The operations described in this chapter allow service developers to get and validate + access tokens, manage users, and manage tenants. +
+
+ Token Operations +
+ Authenticate + + &URI_REFHEAD; + + + &POST; + /token + Authenticate to generate a token. + + + + &CODES;200, 203 + &ERROR_CODES; unauthorized (401), userDisabled + (403), badRequest (400), identityFault + (500), serviceUnavailable(503) + + TenantID is optional and may be used to specify that a + token should be returned that has access for resources + that particular tenant. + + + XML Auth Request + + + + + + JSON Auth Request + + + + + + XML Auth Response + + + + + + JSON Auth Response + + + + +
+
+ Validate Token + + &LONG_URI_REFHEAD; + + + &GET; + /token/tokenId?belongsTo=tenantId + Check that a token is valid and that it belongs to a particular user + and return the permissions relevant to a particular client. + + + + &CODES;200, 203 + &ERROR_CODES; unauthorized (401), forbidden + (403), userDisabled(403), + badRequest (400), itemNotFound (404), + identityFault(500), + serviceUnavailable(503) + &NO_REQUEST; + + Valid tokens will exist in the + /token/tokenId path and invalid + tokens will not. In other words, a user should expect an + itemNotFound (404) fault for an + invalid token. + + + XML Validate Token Response + + + + + + JSON Validate Token Response + + + + +
+
+ Revoke Token + + &LONG_URI_REFHEAD; + + + &DELETE; + /token/tokenId + Revoke an existing token. + + + + &CODES;204 + &ERROR_CODES; unauthorized (401), forbidden + (403), userDisabled(403), + badRequest (400), itemNotFound (404), + identityFault(500), + serviceUnavailable(503) + &NO_REQUEST; +
+
+
+ Tenant Operations +
+ Create a Tenant + + &LONG_URI_REFHEAD; + + + &POST; + /tenants + Create a tenant + + + + &CODES;201 + &ERROR_CODES; unauthorized (401), + forbidden(403), + badRequest (400), identityFault (500), + serviceUnavailable(503) + + XML Tenant Create Request + + + + + + JSON Tenant Create Request + + + + + + XML Tenant Create Response + + + + + + JSON Tenant Create Response + + + + +
+
+ Get Tenants + + &LONG_URI_REFHEAD; + + + &GET; + /tenants + Get a list of tenants. + + + + &CODES;200, 203 + &ERROR_CODES; unauthorized (401), + forbidden(403), overLimit(413), + badRequest (400), identityFault (500), + serviceUnavailable(503) + + The operation returns a list of tenants. The list may be + filtered to return only those tenants which the caller has + access to. + + &NO_REQUEST; + + XML Tenants Response + + + + + + JSON Tenants Response + + + + +
+
+ Get a Tenant + + &LONG_URI_REFHEAD; + + + &GET; + /tenants/tenantId + Get a tenant. + + + + &CODES;200, 203 + &ERROR_CODES; unauthorized (401), + forbidden(403), itemNotFound(404), + badRequest (400), identityFault (500), + serviceUnavailable(503) + &NO_REQUEST; + + XML Tenant Response + + + + + + JSON Tenant Response + + + + +
+
+ Update a Tenant + + &LONG_URI_REFHEAD; + + + &PUT; + /tenants/tenantId + Update a tenant.. + + + + &CODES;200 + &ERROR_CODES; unauthorized (401), + forbidden(403), itemNotFound(404), + badRequest (400), identityFault (500), + serviceUnavailable(503) + + XML Tenant Update Request + + + + + + JSON Tenant Update Request + + + + + + XML Tenant Update Response + + + + + + JSON Tenant Update Response + + + + +
+
+ Delete a Tenant + + &LONG_URI_REFHEAD; + + + &DELETE; + /tenants/tenantId + Delete a Tenant. + + + + &CODES;204 + &ERROR_CODES; unauthorized (401), badRequest + (400), forbidden (403), itemNotFound + (404), identityFault (500), + serviceUnavailable(503) + &NO_REQUEST; +
+
+
+
diff --git a/docs/guide/src/docbkx/idm.wadl b/docs/guide/src/docbkx/idm.wadl deleted file mode 100644 index 39135b71..00000000 --- a/docs/guide/src/docbkx/idm.wadl +++ /dev/null @@ -1,355 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/guide/src/docbkx/idmdevguide.xml b/docs/guide/src/docbkx/idmdevguide.xml deleted file mode 100644 index 4b279cef..00000000 --- a/docs/guide/src/docbkx/idmdevguide.xml +++ /dev/null @@ -1,1018 +0,0 @@ - - - - - - - - GET'> - PUT'> - POST'> - DELETE'> - - - - - - - '> - - - - This operation does not require a request body.'> - - - Verb - URI - Description - - '> - - - Verb - URI - Description - - '> -]> - - Cloud Identity Developer Guide - - - - - - - - Rackspace Cloud - - - - 2010 - 2011 - Rackspace Hosting, Inc. - - API v1.0 - Cloud Identity - 2011-04-23 - - - Copyright details are filled in by the template. - - - - - This document is intended for software developers interested - in developing applications which utilize the Cloud Identity - Service for authentication. This document also includes - details on how to integrate services with the Cloud Identity - Service. - - - - - Overview - - The Cloud Identity Service allows applications to obtain - tokens that can be used to access OpenStack resources. This - document is intended for software developers interested in - developing applications which utilize the Cloud Identity - Service for authentication. This document also includes - details on how to integrate services with the Cloud Identity - Service. - - - This Guide assumes the reader is familiar with RESTful web - services, HTTP/1.1, and JSON and/or XML serialization formats. - - - - Concepts - - The Cloud Identity Service has several key concepts that are - important to understand: - -
- Token - - A token is an arbitrary bit of text that is used to access - resources. Each token has a scope which describes which - resources are accessible with it. A token may be - revoked at anytime and is valid for a finite duration. - -
-
- Tenant - - Depending on the operator, a tenant may map to a customer, - account, organization, or project. - -
-
- User - - Users have a login and may be assigned tokens to access - resources. - -
-
- Group - - A group of users. Global groups are managed by - operators. They are used to organize and assign privileges - to a group of related users. For example, an operator may - create a "delinquent" group, which will assign limited - privileges to users who have past due bills. - -
-
- - General API Information - The IdM API is implemented using a RESTful web service interface. All requests to - authenticate and operate against the IdM API are performed using SSL over HTTP (HTTPS) on TCP - port 443. -
- Request/Response Types - The IdM API supports both the JSON and XML data serialization formats. The request - format is specified using the Content-Type header and is required for - operations that have a request body. The response format can be specified in requests using - either the Accept header or adding an .xml or .json - extension to the request URI. Note that it is possible for a response to be serialized using - a format different from the request (see example below). If no response format is specified, - JSON is the default. If conflicting formats are specified using both an Accept - header and a query extension, the query extension takes precedence. - - - - - - - - - - - - - - - - - - - - - - - - -
Response Types
FormatAccept HeaderQuery ExtensionDefault
JSONapplication/json.jsonYes
XMLapplication/xml.xmlNo
- - JSON Request with Headers - - - - - - - - - XML Response with Headers - - - - - - - -
-
- Content Compression - Request and response body data my be encoded with gzip compression in order to - accelerate interactive performance of API calls and responses. This is controlled using the - Accept-Encoding header on the request from the client and indicated by the - Content-Encoding header in the server response. Unless the header is - explicitly set, encoding defaults to disabled. - - - - - - - - - - - - - - - - - - - - - -
Compression Headers
Header TypeNameValue
HTTP/1.1 RequestAccept-Encodinggzip
HTTP/1.1 ResponseContent-Encodinggzip
-
-
- Paginated Collections - - To reduce load on the service, list operations will - return a maximum number of items at a time. The - maximum number of items returned is determined by the - IDM provider. To navigate the collection, the - parameters limit and - marker can be set in the URI - (e.g.?limit=100&marker=1234). - The marker parameter is the ID - of the last item in the previous list. Items are - sorted by update time. When an update time is not - available they are sorted by ID. The - limit parameter sets the page - size. Both parameters are optional. If the client - requests a limit beyond that - which is supported by the deployment an overLimit - (413) fault may be thrown. A - marker with an invalid ID will return an itemNotFound - (404) fault. - - - - Paginated collections never return itemNotFound - (404) faults when the - collection is empty — clients should expect - an empty collection. - - - - For convenience, collections contain atom "next" and - "previous" links. The first page in the list will not - contain a "previous" link, the last page in the list - will not contain a "next" link. The following examples - illustrate three pages in a collection of tenants. The - first page was retrieved via a &GET; to - http://idm.api.openstack.org/v1.0/1234/tenants?limit=1. - In these examples, the limit - parameter sets the page size to a single item. - Subsequent "next" and "previous" links will honor the - initial page size. Thus, a client may follow links to - traverse a paginated collection without having to - input the marker parameter. - - - Tenant Collection, First Page: XML - - - - - - Tenant Collection, First Page: JSON - - - - Tenant Collection, Second Page: XML - - - - - - Tenant Collection, Second Page: JSON - - - - Tenant Collection, Last Page: XML - - - - - - Tenant Collection, Last Page: JSON - - - - In the JSON representation, paginated collections contain - a values property that contains the - items in the collections. Links are accessed via the - links property. The approach allows - for extensibility of both the collection members and of - the paginated collection itself. It also allows - collections to be embedded in other objects as illustrated - below. Here, a subset of grups are presented within a - user. Clients must follow the "next" link to continue to - retrive additonal groups belonging to a user. - - - Paginated Groups in a User: XML - - - - - - Paginated Groups in an User: JSON - - -
-
- Versions - - The OpenStack IDM API uses both a URI and a MIME - type versioning scheme. In the URI scheme, the first - element of the path contains the target version - identifier (e.g. https://idm.api.openstack.org/ - v1.0/…). The MIME type versioning scheme uses - HTTP content negotiation where the Accept - or Content-Type headers contains a MIME - type that identifies the version - (application/vnd.openstack.idm-v1.1+xml). A - version MIME type is always linked to a base MIME type - (application/xml or application/json). If conflicting - versions are specified using both an HTTP header and a - URI, the URI takes precedence. - - - Request with MIME type versioning - -GET /tenants HTTP/1.1 -Host: idm.api.openstack.org -Accept: application/vnd.openstack.idm-v1.1+xml -X-Auth-Token: eaaafd18-0fed-4b3a-81b4-663c99ec1cbb - - - - Request with URI versioning - -GET /v1.1/tenants HTTP/1.1 -Host: idm.api.openstack.org -Accept: application/xml -X-Auth-Token: eaaafd18-0fed-4b3a-81b4-663c99ec1cbb - - - - - The MIME type versioning approach allows for the - creating of permanent links, because the version - scheme is not specified in the URI path: - https://api.idm.openstack.org/tenants/12234. - - - - If a request is made without a version specified in - the URI or via HTTP headers, then a multiple-choices - response (300) will follow - providing links and MIME types to available versions. - - - Multiple Choices Response: XML - - - - - - Multiple Choices Response: JSON - - - - New features and functionality that do not break - API-compatibility will be introduced in the current - version of the API as extensions (see below) and the - URI and MIME types will remain unchanged. Features or - functionality changes that would necessitate a break - in API-compatibility will require a new version, which - will result in URI and MIME type version being updated - accordingly. When new API versions are released, older - versions will be marked as - DEPRECATED. Providers should work with - developers and partners to ensure there is adequate - time to migrate to the new version before deprecated - versions are discontinued. - - - Your application can programmatically determine - available API versions by performing a &GET; on the - root URL (i.e. with the version and everything to the - right of it truncated) returned from the - authentication system. Note that an Atom - representation of the versions resources is supported - when issuing a request with the Accept - header containing application/atom+xml or by adding a - .atom to the request URI. This allows standard Atom - clients to track version changes. - - - Versions List Request - -GET HTTP/1.1 -Host: idm.api.openstack.org - - - &CODES;200, 203 - &ERROR_CODES; badRequest - (400), idmFault - (500), - serviceUnavailable(503) - &NO_REQUEST; - - Versions List Response: XML - - - - - - Versions List Response: Atom - - - - - - Versions List Response: JSON - - - - You can also obtain additional information about a - specific version by performing a &GET; on the base - version URL - (e.g. https://idm.api.openstack.org/v1.1/). - Version request URLs should always end with a trailing - slash (/). If the slash is omitted, the server may - respond with a 302 - redirection request. Format extensions may be placed - after the slash - (e.g. https://idm.api.openstack.org/v1.1/.xml). Note - that this is a special case that does not hold true - for other API requests. In general, requests such as - /tenants.xml and /tenants/.xml are handled - equivalently. - - - Version Details Request - -GET HTTP/1.1 -Host: idm.api.openstack.org/v1.1/ - - - &CODES;200, 203 - &ERROR_CODES; badRequest - (400), idmFault - (500), - serviceUnavailable(503) - &NO_REQUEST; - - Version Details Response: XML - - - - - - Version Details Response: Atom - - - - - - Version Details Response: JSON - - - - The detailed version response contains pointers to - both a human-readable and a machine-processable - description of the API service. The machine-processable description is written in the Web - Application Description Language (WADL). - - - If there is a discrepancy between the two specifications, the WADL is - authoritative as it contains the most accurate and up-to-date description of the - API service. - -
-
- Extensions - - The OpenStack IDM API is extensible. Extensions - serve two purposes: They allow the introduction of new - features in the API without requiring a version change - and they allow the introduction of vendor specific - niche functionality. Applications can programmatically - determine what extensions are available by performing - a &GET; on the /extensions URI. Note that this is a - versioned request — that is, an extension - available in one API version may not be available in - another. - - - - - Verb - URI - Description - - - - - &GET; - /extensions - Returns a list of available extensions - - - - &CODES;200, 203 - &ERROR_CODES; badRequest - (400), idmFault (500), - serviceUnavailable(503) - &NO_REQUEST; - - Each extension is identified by two unique identifiers, a - namespace and an - alias. Additionally an extension - contains documentation links in various formats. - - - Extensions Response: XML - - - - - - Extensions Response: JSON - - - - Extensions may also be queried individually by their - unique alias. This provides the simplest method of - checking if an extension is available as an unavailable - extension will issue an itemNotFound - (404) response. - - - - - Verb - URI - Description - - - - - &GET; - /extensions/alias - Return details of a single extension - - - - &CODES;200, 203 - &ERROR_CODES; itemNotFound - (404), badRequest - (400), idmFault - (500), - serviceUnavailable(503) - &NO_REQUEST; - - Extension Response: xml - - - - - - Extensions Response: JSON - - - - Extensions may define new data types, parameters, actions, - headers, states, and resources. In XML, additional - elements and attributes may be defined. These elements - must be defined in the extension's namespace. In JSON, the - alias must be used. The volumes element in the and - - is defined in the RS-META namespace. Extended - headers are always prefixed with X- followed - by the alias and a dash: (X-RS-META-HEADER1). - Parameters must be prefixed with the extension alias - followed by a colon. - - - - Applications should be prepared to ignore response - data that contains extension elements. Also, - applications should also verify that an extension is - available before submitting an extended request. - - - - Extended User Response: XML - - - - - - Extended User Response: JSON - - -
-
- Faults - When an error occurs the system will return an HTTP error response code denoting the - type of error. The system will also return additional information about the fault in the - body of the response. - - XML Fault Response - - - - - - JSON Fault Response - - - - - The error code is returned in the body of the response for convenience. The message - section returns a human readable message. The details section is optional and may contain - useful information for tracking down an error (e.g a stack trace). - The root element of the fault (e.g. idmFault) may change depending on the type of error. - The following is an example of an itemNotFound error. - - XML Not Found Fault - - - - - - JSON Not Found Fault - - - - - The following is a list of possible fault types along with their associated error - codes. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Fault Types
Fault ElementAssociated Error CodeExpected in All Requests
idmFault500, 400 ✓
serviceUnavailable503 ✓
badRequest400 ✓
unauthorized401 ✓
overLimit413 -
userDisabled403 -
forbidden403 -
itemNotFound404 -
tenantConflict409 -
- From an XML schema perspective, all API faults are extensions of the base fault type - idmFault. When working with a system that binds XML to actual classes (such - as JAXB), one should be capable of using idmFault as a “catch-all” if - there's no interest in distinguishing between individual fault types. -
-
- - Service Developer Operations -
- Overview - The operations described in this chapter allow service developers to get and validate - access tokens, manage users, and manage tenants. -
-
- Token Operations -
- Authenticate - - &URI_REFHEAD; - - - &POST; - /token - Authenticate to generate a token. - - - - &CODES;200, 203 - &ERROR_CODES; unauthorized (401), userDisabled - (403), badRequest (400), idmFault - (500), serviceUnavailable(503) - - TenantID is optional and may be used to specify that a - token should be returned that has access for resources - that particular tenant. - - - XML Auth Request - - - - - - JSON Auth Request - - - - - - XML Auth Response - - - - - - JSON Auth Response - - - - -
-
- Validate Token - - &LONG_URI_REFHEAD; - - - &GET; - /token/tokenId?belongsTo=tenantId - Check that a token is valid and that it belongs to a particular user - and return the permissions relevant to a particular client. - - - - &CODES;200, 203 - &ERROR_CODES; unauthorized (401), forbidden - (403), userDisabled(403), - badRequest (400), itemNotFound (404), - idmFault(500), - serviceUnavailable(503) - &NO_REQUEST; - - Valid tokens will exist in the - /token/tokenId path and invalid - tokens will not. In other words, a user should expect an - itemNotFound (404) fault for an - invalid token. - - - XML Validate Token Response - - - - - - JSON Validate Token Response - - - - -
-
- Revoke Token - - &LONG_URI_REFHEAD; - - - &DELETE; - /token/tokenId - Revoke an existing token. - - - - &CODES;204 - &ERROR_CODES; unauthorized (401), forbidden - (403), userDisabled(403), - badRequest (400), itemNotFound (404), - idmFault(500), - serviceUnavailable(503) - &NO_REQUEST; -
-
-
- Tenant Operations -
- Create a Tenant - - &LONG_URI_REFHEAD; - - - &POST; - /tenants - Create a tenant - - - - &CODES;201 - &ERROR_CODES; unauthorized (401), - forbidden(403), - badRequest (400), idmFault (500), - serviceUnavailable(503) - - XML Tenant Create Request - - - - - - JSON Tenant Create Request - - - - - - XML Tenant Create Response - - - - - - JSON Tenant Create Response - - - - -
-
- Get Tenants - - &LONG_URI_REFHEAD; - - - &GET; - /tenants - Get a list of tenants. - - - - &CODES;200, 203 - &ERROR_CODES; unauthorized (401), - forbidden(403), overLimit(413), - badRequest (400), idmFault (500), - serviceUnavailable(503) - - The operation returns a list of tenants. The list may be - filtered to return only those tenants which the caller has - access to. - - &NO_REQUEST; - - XML Tenants Response - - - - - - JSON Tenants Response - - - - -
-
- Get a Tenant - - &LONG_URI_REFHEAD; - - - &GET; - /tenants/tenantId - Get a tenant. - - - - &CODES;200, 203 - &ERROR_CODES; unauthorized (401), - forbidden(403), itemNotFound(404), - badRequest (400), idmFault (500), - serviceUnavailable(503) - &NO_REQUEST; - - XML Tenant Response - - - - - - JSON Tenant Response - - - - -
-
- Update a Tenant - - &LONG_URI_REFHEAD; - - - &PUT; - /tenants/tenantId - Update a tenant.. - - - - &CODES;200 - &ERROR_CODES; unauthorized (401), - forbidden(403), itemNotFound(404), - badRequest (400), idmFault (500), - serviceUnavailable(503) - - XML Tenant Update Request - - - - - - JSON Tenant Update Request - - - - - - XML Tenant Update Response - - - - - - JSON Tenant Update Response - - - - -
-
- Delete a Tenant - - &LONG_URI_REFHEAD; - - - &DELETE; - /tenants/tenantId - Delete a Tenant. - - - - &CODES;204 - &ERROR_CODES; unauthorized (401), badRequest - (400), forbidden (403), itemNotFound - (404), idmFault (500), - serviceUnavailable(503) - &NO_REQUEST; -
-
-
-
diff --git a/docs/guide/src/docbkx/samples/auth.xml b/docs/guide/src/docbkx/samples/auth.xml index df8d69d0..0e114a64 100644 --- a/docs/guide/src/docbkx/samples/auth.xml +++ b/docs/guide/src/docbkx/samples/auth.xml @@ -1,5 +1,5 @@ - + diff --git a/docs/guide/src/docbkx/samples/auth_credentials.xml b/docs/guide/src/docbkx/samples/auth_credentials.xml index fbdf5633..56bd91d6 100644 --- a/docs/guide/src/docbkx/samples/auth_credentials.xml +++ b/docs/guide/src/docbkx/samples/auth_credentials.xml @@ -1,5 +1,5 @@ diff --git a/docs/guide/src/docbkx/samples/choices.json b/docs/guide/src/docbkx/samples/choices.json index 6b0b2607..b6f31fa1 100644 --- a/docs/guide/src/docbkx/samples/choices.json +++ b/docs/guide/src/docbkx/samples/choices.json @@ -7,18 +7,18 @@ "links": [ { "rel" : "self", - "href" : "http://idm.api.openstack.org/v1.0/tenants/12" + "href" : "http://identity.api.openstack.org/v2.0" } ], "media-types": { "values" : [ { "base" : "application/xml", - "type" : "application/vnd.openstack.idm-v1.0+xml" + "type" : "application/vnd.openstack.identity-v1.0+xml" }, { "base" : "application/json", - "type" : "application/vnd.openstack.idm-v1.0+json" + "type" : "application/vnd.openstack.identity-v1.0+json" } ] } @@ -29,18 +29,40 @@ "links": [ { "rel" : "self", - "href" : "http://idm.api.openstack.org/v1.1/tenants/12" + "href" : "http://identity.api.openstack.org/v1.1" } ], "media-types": { "values" : [ { "base" : "application/xml", - "type" : "application/vnd.openstack.idm-v1.1+xml" + "type" : "application/vnd.openstack.identity-v1.1+xml" }, { "base" : "application/json", - "type" : "application/vnd.openstack.idm-v1.1+json" + "type" : "application/vnd.openstack.identity-v1.1+json" + } + ] + } + }, + { + "id" : "v2.0", + "status" : "CURRENT", + "links": [ + { + "rel" : "self", + "href" : "http://identity.api.openstack.org/v2.0" + } + ], + "media-types": { + "values" : [ + { + "base" : "application/xml", + "type" : "application/vnd.openstack.identity-v2.0+xml" + }, + { + "base" : "application/json", + "type" : "application/vnd.openstack.identity-v2.0+json" } ] } diff --git a/docs/guide/src/docbkx/samples/choices.xml b/docs/guide/src/docbkx/samples/choices.xml index a9a91ece..9d1e8ffb 100644 --- a/docs/guide/src/docbkx/samples/choices.xml +++ b/docs/guide/src/docbkx/samples/choices.xml @@ -6,24 +6,24 @@ + type="application/vnd.openstack.identity-v2.0+xml"/> + type="application/vnd.openstack.identity-v2.0+json"/> + href="http://identity.api.openstack.org/v2.0"/> + type="application/vnd.openstack.identity-v1.1+xml"/> + type="application/vnd.openstack.identity-v1.1+json"/> + href="http://identity.api.openstack.org/v1.1"/> diff --git a/docs/guide/src/docbkx/samples/ext-getuser.xml b/docs/guide/src/docbkx/samples/ext-getuser.xml index 07c185b1..bf0a9c6e 100644 --- a/docs/guide/src/docbkx/samples/ext-getuser.xml +++ b/docs/guide/src/docbkx/samples/ext-getuser.xml @@ -1,12 +1,12 @@ - + xmlns="http://docs.rackspacecloud.com/identity/api/ext/meta/v2.0"> MetaValue1 MetaValue2 diff --git a/docs/guide/src/docbkx/samples/extension.json b/docs/guide/src/docbkx/samples/extension.json index 1d7e8bb3..68233e90 100644 --- a/docs/guide/src/docbkx/samples/extension.json +++ b/docs/guide/src/docbkx/samples/extension.json @@ -1,7 +1,7 @@ { "extension" : { "name" : "User Metadata Extension", - "namespace" : "http://docs.rackspacecloud.com/idm/api/ext/meta/v1.0", + "namespace" : "http://docs.rackspacecloud.com/identity/api/ext/meta/v2.0", "alias" : "RS-META", "updated" : "2011-01-12T11:22:33-06:00", "description" : "Allows associating arbritrary metadata with a user.", @@ -9,12 +9,12 @@ { "rel" : "describedby", "type" : "application/pdf", - "href" : "http://docs.rackspacecloud.com/idm/api/ext/idm-meta-20111201.pdf" + "href" : "http://docs.rackspacecloud.com/idm/api/ext/identity-meta-20111201.pdf" }, { "rel" : "describedby", "type" : "application/vnd.sun.wadl+xml", - "href" : "http://docs.rackspacecloud.com/idm/api/ext/idm-cbs.wadl" + "href" : "http://docs.rackspacecloud.com/identity/api/ext/identity-cbs.wadl" } ] } diff --git a/docs/guide/src/docbkx/samples/extension.xml b/docs/guide/src/docbkx/samples/extension.xml index 8d932f49..d0dbffe9 100644 --- a/docs/guide/src/docbkx/samples/extension.xml +++ b/docs/guide/src/docbkx/samples/extension.xml @@ -3,7 +3,7 @@ diff --git a/docs/guide/src/docbkx/samples/extensions.json b/docs/guide/src/docbkx/samples/extensions.json index 11064a90..8b594526 100644 --- a/docs/guide/src/docbkx/samples/extensions.json +++ b/docs/guide/src/docbkx/samples/extensions.json @@ -22,7 +22,7 @@ }, { "name" : "User Metadata Extension", - "namespace" : "http://docs.rackspacecloud.com/idm/api/ext/meta/v1.0", + "namespace" : "http://docs.rackspacecloud.com/identity/api/ext/meta/v2.0", "alias" : "RS-META", "updated" : "2011-01-12T11:22:33-06:00", "description" : "Allows associating arbritrary metadata with a user.", diff --git a/docs/guide/src/docbkx/samples/extensions.xml b/docs/guide/src/docbkx/samples/extensions.xml index ddd7e173..f0a9a49d 100644 --- a/docs/guide/src/docbkx/samples/extensions.xml +++ b/docs/guide/src/docbkx/samples/extensions.xml @@ -22,7 +22,7 @@ diff --git a/docs/guide/src/docbkx/samples/getuser-1.json b/docs/guide/src/docbkx/samples/getuser-1.json index 544d4600..f9afcbd8 100644 --- a/docs/guide/src/docbkx/samples/getuser-1.json +++ b/docs/guide/src/docbkx/samples/getuser-1.json @@ -17,7 +17,7 @@ "links" : [ { "rel" : "next", - "href" : "http://idm.api.openstack.org/v1.0/1234/tenants/1234/users/jqsmith/groups?marker=Super" + "href" : "http://identity.api.openstack.org/v2.0/1234/tenants/1234/users/jqsmith/groups?marker=Super" } ] }, diff --git a/docs/guide/src/docbkx/samples/getuser-1.xml b/docs/guide/src/docbkx/samples/getuser-1.xml index 2b513072..37c67ad7 100644 --- a/docs/guide/src/docbkx/samples/getuser-1.xml +++ b/docs/guide/src/docbkx/samples/getuser-1.xml @@ -1,5 +1,5 @@ - @@ -9,6 +9,6 @@ diff --git a/docs/guide/src/docbkx/samples/identity_fault.json b/docs/guide/src/docbkx/samples/identity_fault.json new file mode 100644 index 00000000..84e3908e --- /dev/null +++ b/docs/guide/src/docbkx/samples/identity_fault.json @@ -0,0 +1,7 @@ +{"idmFault": + { + "message": "Fault", + "details": "Error Details...", + "code": 500 + } +} \ No newline at end of file diff --git a/docs/guide/src/docbkx/samples/identity_fault.xml b/docs/guide/src/docbkx/samples/identity_fault.xml new file mode 100644 index 00000000..0592d948 --- /dev/null +++ b/docs/guide/src/docbkx/samples/identity_fault.xml @@ -0,0 +1,6 @@ + + + Fault +
Error Details...
+
diff --git a/docs/guide/src/docbkx/samples/idm_fault.json b/docs/guide/src/docbkx/samples/idm_fault.json deleted file mode 100644 index 84e3908e..00000000 --- a/docs/guide/src/docbkx/samples/idm_fault.json +++ /dev/null @@ -1,7 +0,0 @@ -{"idmFault": - { - "message": "Fault", - "details": "Error Details...", - "code": 500 - } -} \ No newline at end of file diff --git a/docs/guide/src/docbkx/samples/idm_fault.xml b/docs/guide/src/docbkx/samples/idm_fault.xml deleted file mode 100644 index e0f695f2..00000000 --- a/docs/guide/src/docbkx/samples/idm_fault.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - Fault -
Error Details...
-
diff --git a/docs/guide/src/docbkx/samples/item_not_found.xml b/docs/guide/src/docbkx/samples/item_not_found.xml index f967b76a..3f78b498 100644 --- a/docs/guide/src/docbkx/samples/item_not_found.xml +++ b/docs/guide/src/docbkx/samples/item_not_found.xml @@ -1,5 +1,5 @@ - Item not found.
Error Details...
diff --git a/docs/guide/src/docbkx/samples/samplerequestheader.json b/docs/guide/src/docbkx/samples/samplerequestheader.json index a4647076..7db2a40f 100644 --- a/docs/guide/src/docbkx/samples/samplerequestheader.json +++ b/docs/guide/src/docbkx/samples/samplerequestheader.json @@ -1,4 +1,4 @@ POST /v1.0/token HTTP/1.1 -Host: idm.api.rackspace.com +Host: identity.api.rackspace.com Content-Type: application/json Accept: application/xml \ No newline at end of file diff --git a/docs/guide/src/docbkx/samples/tenant.xml b/docs/guide/src/docbkx/samples/tenant.xml index ea6a63dc..83210f87 100644 --- a/docs/guide/src/docbkx/samples/tenant.xml +++ b/docs/guide/src/docbkx/samples/tenant.xml @@ -1,5 +1,5 @@ - A description... diff --git a/docs/guide/src/docbkx/samples/tenantlock.xml b/docs/guide/src/docbkx/samples/tenantlock.xml index 9d7081d4..06a68a83 100644 --- a/docs/guide/src/docbkx/samples/tenantlock.xml +++ b/docs/guide/src/docbkx/samples/tenantlock.xml @@ -1,4 +1,4 @@ - + A NEW description... diff --git a/docs/guide/src/docbkx/samples/tenants-1.json b/docs/guide/src/docbkx/samples/tenants-1.json index 6f45f1c8..eb3f1430 100644 --- a/docs/guide/src/docbkx/samples/tenants-1.json +++ b/docs/guide/src/docbkx/samples/tenants-1.json @@ -10,7 +10,7 @@ "links" : [ { "rel" : "next", - "href" : "http://idm.api.openstack.org/v1.0/1234/tenants?limit=1&marker=1234" + "href" : "http://identity.api.openstack.org/v2.0/1234/tenants?limit=1&marker=1234" } ] } diff --git a/docs/guide/src/docbkx/samples/tenants-1.xml b/docs/guide/src/docbkx/samples/tenants-1.xml index 67101816..98786864 100644 --- a/docs/guide/src/docbkx/samples/tenants-1.xml +++ b/docs/guide/src/docbkx/samples/tenants-1.xml @@ -1,10 +1,10 @@ - A description... diff --git a/docs/guide/src/docbkx/samples/tenants-2.json b/docs/guide/src/docbkx/samples/tenants-2.json index 7cb3ca6b..6d48ad23 100644 --- a/docs/guide/src/docbkx/samples/tenants-2.json +++ b/docs/guide/src/docbkx/samples/tenants-2.json @@ -10,11 +10,11 @@ "links" : [ { "rel" : "next", - "href" : "http://idm.api.openstack.org/v1.0/1234/tenants?limit=1&marker=3645" + "href" : "http://identity.api.openstack.org/v2.0/1234/tenants?limit=1&marker=3645" }, { "rel" : "previous", - "href" : "http://idm.api.openstack.org/v1.0/1234/tenants?limit=1" + "href" : "http://identity.api.openstack.org/v2.0/1234/tenants?limit=1" } ] } diff --git a/docs/guide/src/docbkx/samples/tenants-2.xml b/docs/guide/src/docbkx/samples/tenants-2.xml index 7be4f537..42cc0a18 100644 --- a/docs/guide/src/docbkx/samples/tenants-2.xml +++ b/docs/guide/src/docbkx/samples/tenants-2.xml @@ -1,13 +1,13 @@ - A description... + href="http://identity.api.openstack.org/v2.0/1234/tenants?limit=1"/> diff --git a/docs/guide/src/docbkx/samples/tenants-3.json b/docs/guide/src/docbkx/samples/tenants-3.json index febcf225..f9030f2e 100644 --- a/docs/guide/src/docbkx/samples/tenants-3.json +++ b/docs/guide/src/docbkx/samples/tenants-3.json @@ -10,7 +10,7 @@ "links" : [ { "rel" : "previous", - "href" : "http://idm.api.openstack.org/v1.0/1234/tenants?limit=1&marker=1234" + "href" : "http://identity.api.openstack.org/v2.0/1234/tenants?limit=1&marker=1234" } ] } diff --git a/docs/guide/src/docbkx/samples/tenants-3.xml b/docs/guide/src/docbkx/samples/tenants-3.xml index 5e5b49fa..89f29370 100644 --- a/docs/guide/src/docbkx/samples/tenants-3.xml +++ b/docs/guide/src/docbkx/samples/tenants-3.xml @@ -1,10 +1,10 @@ - A description... + href="http://identity.api.openstack.org/v2.0/1234/tenants?limit=1&marker=1234"/> diff --git a/docs/guide/src/docbkx/samples/tenants.xml b/docs/guide/src/docbkx/samples/tenants.xml index 9b503ce2..cda2f662 100644 --- a/docs/guide/src/docbkx/samples/tenants.xml +++ b/docs/guide/src/docbkx/samples/tenants.xml @@ -1,5 +1,5 @@ - + A description... diff --git a/docs/guide/src/docbkx/samples/updatedtenant.xml b/docs/guide/src/docbkx/samples/updatedtenant.xml index 8bcce9bf..51999a4d 100644 --- a/docs/guide/src/docbkx/samples/updatedtenant.xml +++ b/docs/guide/src/docbkx/samples/updatedtenant.xml @@ -1,5 +1,5 @@ - A NEW description... diff --git a/docs/guide/src/docbkx/samples/validatetoken.xml b/docs/guide/src/docbkx/samples/validatetoken.xml index b091c7af..e04742ae 100644 --- a/docs/guide/src/docbkx/samples/validatetoken.xml +++ b/docs/guide/src/docbkx/samples/validatetoken.xml @@ -1,5 +1,5 @@ - + diff --git a/docs/guide/src/docbkx/samples/version-atom.xml b/docs/guide/src/docbkx/samples/version-atom.xml index 8cf3dc88..13ac3b0b 100644 --- a/docs/guide/src/docbkx/samples/version-atom.xml +++ b/docs/guide/src/docbkx/samples/version-atom.xml @@ -2,18 +2,18 @@ About This Version 2011-01-21T11:33:21-06:00 - http://idm.api.openstack.org/v1.0/ + http://identity.api.openstack.org/v2.0/ Rackspacehttp://www.rackspace.com/ - + - http://idm.api.openstack.org/v1.0/ + http://identity.api.openstack.org/v2.0/ Version v1.0 2011-01-21T11:33:21-06:00 - + + href="http://docs.rackspacecloud.com/identity/api/v2.0/idm-devguide-20110125.pdf"/> + href="http://docs.rackspacecloud.com/identity/api/v2.0/application.wadl"/> Version v1.0 CURRENT (2011-01-21T11:33:21-06:00) diff --git a/docs/guide/src/docbkx/samples/version.json b/docs/guide/src/docbkx/samples/version.json index 74bae5bd..60953de0 100644 --- a/docs/guide/src/docbkx/samples/version.json +++ b/docs/guide/src/docbkx/samples/version.json @@ -6,27 +6,27 @@ "links": [ { "rel" : "self", - "href" : "http://idm.api.openstack.org/v1.0/" + "href" : "http://identity.api.openstack.org/v2.0/" }, { "rel" : "describedby", "type" : "application/pdf", - "href" : "http://docs.rackspacecloud.com/idm/api/v1.0/idm-devguide-20110125.pdf" + "href" : "http://docs.rackspacecloud.com/identity/api/v2.0/idm-devguide-20110125.pdf" }, { "rel" : "describedby", "type" : "application/vnd.sun.wadl+xml", - "href" : "http://docs.rackspacecloud.com/idm/api/v1.0/application.wadl" + "href" : "http://docs.rackspacecloud.com/identity/api/v2.0/application.wadl" } ], "media-types": [ { "base" : "application/xml", - "type" : "application/vnd.openstack.idm-v1.0+xml" + "type" : "application/vnd.openstack.identity-v2.0+xml" }, { "base" : "application/json", - "type" : "application/vnd.openstack.idm-v1.0+json" + "type" : "application/vnd.openstack.identity-v2.0+json" } ] } diff --git a/docs/guide/src/docbkx/samples/version.xml b/docs/guide/src/docbkx/samples/version.xml index 4f499322..08eac21e 100644 --- a/docs/guide/src/docbkx/samples/version.xml +++ b/docs/guide/src/docbkx/samples/version.xml @@ -5,19 +5,19 @@ + type="application/vnd.openstack.identity-v2.0+xml"/> + type="application/vnd.openstack.identity-v2.0+json"/> + href="http://identity.api.openstack.org/v2.0/"/> + href="http://docs.rackspacecloud.com/identity/api/v2.0/idm-devguide-20110125.pdf" /> + href="http://docs.rackspacecloud.com/identity/api/v2.0/application.wadl" /> diff --git a/docs/guide/src/docbkx/samples/versions-atom.xml b/docs/guide/src/docbkx/samples/versions-atom.xml index e75cf416..d9fcade7 100644 --- a/docs/guide/src/docbkx/samples/versions-atom.xml +++ b/docs/guide/src/docbkx/samples/versions-atom.xml @@ -2,21 +2,21 @@ Available API Versions 2010-12-12T18:30:02.25Z - http://idm.api.openstack.org/ + http://identity.api.openstack.org/ Rackspacehttp://www.rackspace.com/ - + - http://idm.api.openstack.org/v1.1/ + http://identity.api.openstack.org/v1.1/ Version v1.1 2010-12-12T18:30:02.25Z - + Version v1.1 CURRENT (2010-12-12T18:30:02.25Z) - http://idm.api.openstack.org/v1.0/ + http://identity.api.openstack.org/v2.0/ Version v1.0 2009-10-09T11:30:00Z - + Version v1.0 DEPRECATED (2009-10-09T11:30:00Z) diff --git a/docs/guide/src/docbkx/samples/versions.json b/docs/guide/src/docbkx/samples/versions.json index 330a26e9..e746b38a 100644 --- a/docs/guide/src/docbkx/samples/versions.json +++ b/docs/guide/src/docbkx/samples/versions.json @@ -8,7 +8,7 @@ "links": [ { "rel" : "self", - "href" : "http://idm.api.openstack.org/v1.0/" + "href" : "http://identity.api.openstack.org/v2.0/" } ] }, @@ -19,7 +19,7 @@ "links": [ { "rel" : "self", - "href" : "http://idm.api.openstack.org/v1.1/" + "href" : "http://identity.api.openstack.org/v1.1/" } ] } diff --git a/docs/guide/src/docbkx/samples/versions.xml b/docs/guide/src/docbkx/samples/versions.xml index 7c3b1535..67441838 100644 --- a/docs/guide/src/docbkx/samples/versions.xml +++ b/docs/guide/src/docbkx/samples/versions.xml @@ -6,13 +6,13 @@ + href="http://identity.api.openstack.org/v2.0/"/> + href="http://identity.api.openstack.org/v1.1/"/> diff --git a/docs/guide/src/docbkx/xsd/api.xsd b/docs/guide/src/docbkx/xsd/api.xsd index eaa11c17..cedb4026 100644 --- a/docs/guide/src/docbkx/xsd/api.xsd +++ b/docs/guide/src/docbkx/xsd/api.xsd @@ -4,9 +4,9 @@ elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns="http://www.w3.org/2001/XMLSchema" - xmlns:idm="http://docs.openstack.org/idm/api/v1.0" + xmlns:idm="http://docs.openstack.org/identity/api/v2.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" - targetNamespace="http://docs.openstack.org/idm/api/v1.0" + targetNamespace="http://docs.openstack.org/identity/api/v2.0" > diff --git a/docs/guide/src/docbkx/xsd/fault.xsd b/docs/guide/src/docbkx/xsd/fault.xsd index 8701b9f7..c37c0419 100644 --- a/docs/guide/src/docbkx/xsd/fault.xsd +++ b/docs/guide/src/docbkx/xsd/fault.xsd @@ -4,9 +4,9 @@ elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns="http://www.w3.org/2001/XMLSchema" - xmlns:idm="http://docs.openstack.org/idm/api/v1.0" + xmlns:idm="http://docs.openstack.org/identity/api/v2.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" - targetNamespace="http://docs.openstack.org/idm/api/v1.0" + targetNamespace="http://docs.openstack.org/identity/api/v2.0" > diff --git a/docs/guide/src/docbkx/xsd/tenant.xsd b/docs/guide/src/docbkx/xsd/tenant.xsd index 2e4854fb..400ded28 100644 --- a/docs/guide/src/docbkx/xsd/tenant.xsd +++ b/docs/guide/src/docbkx/xsd/tenant.xsd @@ -4,11 +4,11 @@ elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns="http://www.w3.org/2001/XMLSchema" - xmlns:idm="http://docs.openstack.org/idm/api/v1.0" + xmlns:idm="http://docs.openstack.org/identity/api/v2.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" xmlns:atom="http://www.w3.org/2005/Atom" - targetNamespace="http://docs.openstack.org/idm/api/v1.0" + targetNamespace="http://docs.openstack.org/identity/api/v2.0" > -- cgit