• Buy Now
    • Rackspace Cloud
    • Email & Apps
    • Fanatical Support for AWS
    • Managed Google Cloud Platform
    • Office 365
  • Log In
    • MyRackspace Portal
    • Cloud Control Panel
    • Rackspace Webmail Login
    • Cloud Office Control Panel
  • Rackspace Logo
  • Developer Home
  • Developer Documentation
  • Blogs ▼
    • Technical Blog
    • Rackspace Blog
  • Support Documentation

Developer Docs


Let’s Build Something Powerful Together!

Submit an issue
  • Cloud Images 2.0
  • Getting started
    • Get your credentials
    • Send API requests to Rackspace Cloud Images
      • Convert cURL examples to run on Windows
    • Authenticate to the Rackspace Cloud
      • Send an authentication request
      • Review the authentication response
      • Configure environment variables
    • Concepts
      • Images
        • Standard images
        • Nonstandard images
      • Image entities
      • Image identifiers
      • Image properties
      • Image sharing
        • Sample workflow for image sharing, after image creation
      • Asynchronous tasks
        • High-level process for importing an image
        • High-level process for exporting an image
      • Statuses
        • Image statuses
        • Task statuses
        • Image member statuses
      • HTTP PATCH method
        • Restricted JSON pointers
        • Using the HTTP PATCH method
        • HTTP PATCH add operation
        • HTTP PATCH remove operation
        • HTTP PATCH replace operation
    • Use images
      • Listing images
      • Getting details for an image
      • Updating an image
      • Importing an image by using tasks
      • Exporting an image by using tasks
      • Getting details for a task
    • Share images
      • Creating an image member
      • Listing image members
      • Getting image member details
      • Updating an image member
      • Deleting an image member
  • General API information
    • Service access endpoints
    • Request and response types
      • Media Types
      • JSON Schemas
    • Paginated collections
    • Date and time format
    • Role-based access control (RBAC)
      • Assigning roles to account users
      • Roles available for Cloud Images
      • Multiproduct global roles and permissions
      • Resolving conflicts between RBAC multiproduct and product-specific roles
      • RBAC permissions cross-reference to Cloud Images API operations
  • API reference
    • Images
      • List images
        • Request
        • Response
      • Get image details
        • Request
        • Response
      • Update image
        • Request
        • Response
      • Delete image
        • Request
        • Response
    • Image sharing
      • List image members
        • Request
        • Response
      • Get image member details
        • Request
        • Response
      • Create image member
        • Request
        • Response
      • Delete image member
        • Request
        • Response
      • Update image member
        • Request
        • Response
    • Image tag
      • Add image tag
        • Request
        • Response
      • Delete image tag
        • Request
        • Response
    • Image task
      • List tasks
        • Request
        • Response
      • Get task details
        • Request
        • Response
      • Task to import image
        • Request
        • Response
      • Task to export image
        • Request
        • Response
    • JSON schemas
      • Get images schema
        • Request
        • Response
      • Get image schema
        • Request
        • Response
      • Get image members schema
        • Request
        • Response
      • Get image member schema
        • Request
        • Response
      • Get task schema
        • Request
        • Response
      • Get tasks schema
        • Request
        • Response
  • Glossary
  • Release Notes
    • API v2.0 release, September 9, 2013
      • What's new
      • Resolved issues
      • Known issues
  • Service updates
  • Additional resources
  • Disclaimer

Image sharing#

Use image sharing operations to distribute and manage images. For more information, see Image sharing.

If you are an image producer, use the create image member and delete image member to manage shared images.

If you are an image consumer, use the update image member operation to set the status for the shared image.

List image members#

GET /images/{image_id}/members

This operation returns a collection of members (users) with whom the image has been shared. The response conforms to the schema found in Get image members schema.

If a user with whom this image is shared makes this call, the member list contains only information for that user. If a user with whom this image has not been shared makes this call, the response is HTTP 404.

This table shows the possible response codes for this operation:

Response Code Name Description
200 Success Request succeeded.
400 Error A general error has occurred.
401 Unauthorized Unauthorized.
403 Forbidden Forbidden.
404 Not Found Resource not found.
405 Bad Method Bad method.
413 Over Limit The number of items returned is above the allowed limit.
500 API Fault API fault.
503 Service Unavailable The requested service is unavailable.

Request#

This table shows the URI parameters for the request:

Name Type Description
{image_id} UUID Image ID stored through the image API, typically a UUID.

This operation does not accept a request body.

Response#

This table shows the body parameters for the response:

Name Type Description
members Array The array of image members.
members.created_at String The date and time that the image member was created.
members.image_id String The UUID of the image.
members.member_id String The id of the image member.
members.schema String The schema of the image member.
members.status String The status of the image member ( pending, accepted, or rejected.
members.updated_at String The date and time that the image member was updated.
schema String The schema of the image members.

Example: List image members: JSON response

{
    "members": [
        {
            "created_at": "2013-10-07T17:58:03Z",
            "image_id": "dbc999e3-c52f-4200-bedd-3b18fe7f87fe",
            "member_id": "123456789",
            "schema": "/v2/schemas/member",
            "status": "pending",
            "updated_at": "2013-10-07T17:58:03Z"
        },
        {
            "created_at": "2013-10-07T17:58:55Z",
            "image_id": "dbc999e3-c52f-4200-bedd-3b18fe7f87fe",
            "member_id": "987654321",
            "schema": "/v2/schemas/member",
            "status": "accepted",
            "updated_at": "2013-10-08T12:08:55Z"
        }
    ],
    "schema": "/v2/schemas/members"
}

Get image member details#

GET /images/{image_id}/members/{member_id}

This operation shows details of the image member. The response conforms to the schema found in Get image members schema To get a successful response, either the image owner must make the call or the tenant_id of the user making the call must match the specified member_id. Otherwise the response is HTTP 404.

This table shows the possible response codes for this operation:

Response Code Name Description
200 Success Request succeeded.
400 Error A general error has occurred.
401 Unauthorized Unauthorized.
403 Forbidden Forbidden.
404 Not Found Resource not found.
405 Bad Method Bad method.
413 Over Limit The number of items returned is above the allowed limit.
500 API Fault API fault.
503 Service Unavailable The requested service is unavailable.

Request#

This table shows the URI parameters for the request:

Name Type Description
{image_id} UUID Image ID stored through the image API, typically a UUID.
{member_id} String Image member ID. For example, the tenant ID of the user with whom the image is being shared.

This operation does not accept a request body.

Response#

This table shows the body parameters for the response:

Name Type Description
created_at String The date and time that the image member was created.
image_id String The UUID of the image.
member_id String The id of the image member.
schema String The schema of the image member.
status String The status of the image member ( pending, accepted, or rejected.
updated_at String The date and time that the image member was updated.

Example Get image member details: JSON response

{
    "created_at": "2014-02-20T04:15:17Z",
    "image_id": "634985e5-0f2e-488e-bd7c-928d9a8ea82a",
    "member_id": "348129",
    "schema": "/v2/schemas/member",
    "status": "pending",
    "updated_at": "2014-02-20T04:15:17Z"
}

Create image member#

POST /images/{image_id}/members

This operation allows you to add users, by member_id (which is the tenant_id ) to the list of members with whom the image is shared. The member status of a newly created image member is pending. The response conforms to the schema found in Get image members schema.

If the user making the call is not the image owner, the response is HTTP 404.

This table shows the possible response codes for this operation:

Response Code Name Description
200 Success Request succeeded.
400 Error A general error has occurred.
401 Unauthorized Unauthorized.
403 Forbidden Forbidden.
405 Bad Method Bad method.
413 Over Limit The number of items returned is above the allowed limit.
415 Bad Media Type Bad media type. This may result if the wrong media type is used in the cURL request.
500 API Fault API fault.
503 Service Unavailable The requested service is unavailable.

Request#

This table shows the URI parameters for the request:

Name Type Description
{image_id} UUID Image ID stored through the image API, typically a UUID.

This table shows the body parameters for the request:

Name Type Description
member String (Required) The member ID. This is the tenant ID of the user with whom the image is to be shared.

Example: Create image member: JSON request

{
    "member": "554433"
}

Response#

This table shows the body parameters for the response:

Name Type Description
created_at String The date and time that the image member was created.
image_id String The UUID of the image.
member_id String The id of the image member.
schema String The schema of the image member.
status String The status of the image member ( pending, accepted, or rejected.
updated_at String The date and time that the image member was updated.

Example: Create image member: JSON response

{
    "created_at": "2013-09-20T19:22:19Z",
    "image_id": "a96be11e-8536-4910-92cb-de50aa19dfe6",
    "member_id": "554433",
    "schema": "/v2/schemas/member",
    "status": "pending",
    "updated_at": "2013-09-20T19:25:31Z"
}

Delete image member#

DELETE /images/{image_id}/members/{member_id}

Deletes the specified account ID/tenant ID from the member list of the specified image.

This operation deletes the image member from the image. This call, which can only be made by the image owner, removes users from the list of members who have access to a shared image.

If the {member_id} is not a member of the specified image, the response is HTTP 404

This table shows the possible response codes for this operation:

Response Code Name Description
204 Success Delete request succeeded.
400 Error A general error has occurred.
401 Unauthorized Unauthorized.
403 Forbidden Forbidden.
404 Not Found Resource not found.
405 Bad Method Bad method.
413 Over Limit The number of items returned is above the allowed limit.
500 API Fault API fault.
503 Service Unavailable The requested service is unavailable.

Request#

This table shows the URI parameters for the request:

Name Type Description
{image_id} UUID Image ID stored through the image API, typically a UUID.
{member_id} String Image member ID. For example, the tenant ID of the user with whom the image is being shared.

This operation does not accept a request body.

Response#

This operation does not return a response body.

Update image member#

PUT /images/{image_id}/members/{member_id}

Sets the specified status for the specified member of the specified image.

This operation updates the image member. The response conforms to the schema found in Get image members schema.

If the call is made by the image owner, the response is HTTP 403 (Forbidden).

If the call is made by a user who is not the owner and whose tenant ID is not the same as the {member_id} in the operation URI, the response is HTTP 404.

This table shows the possible response codes for this operation:

Response Code Name Description
200 Success Request succeeded.
400 Error A general error has occurred.
401 Unauthorized Unauthorized.
403 Forbidden Forbidden.
405 Bad Method Bad method.
413 Over Limit The number of items returned is above the allowed limit.
415 Bad Media Type Bad media type. This may result if the wrong media type is used in the cURL request.
500 API Fault API fault.
503 Service Unavailable The requested service is unavailable.

Request#

This table shows the URI parameters for the request:

Name Type Description
{image_id} UUID Image ID stored through the image API, typically a UUID.
{member_id} String Image member ID. For example, the tenant ID of the user with whom the image is being shared.

This table shows the body parameters for the request:

Name Type Description
parameters.status String (Required)

The status to which this image member should be set. Valid values are as follows:

pending At creation, the creation, the member's status is set to pending. The image is not visible in the member's image-list, but the member can still boot instances from the image.

accepted The image is visible in the member's image-list. The member can boot instances from the image.

rejected The member has decided not to see the image. The image is not visible in the member's image-list, but the member can still boot instances from the image.

Example: Update image member: JSON request

{
    "status": "accepted"
}

Response#

This table shows the body parameters for the response:

Name Type Description
parameters.created_at String The date and time that the image member was created.
parameters.image_id String The UUID of the image.
parameters.member_id String The id of the image member.
parameters.schema String The schema of the image member.
parameters.status String The status of the image member ( pending, accepted, or rejected.
parameters.updated_at String The date and time that the image member was updated.

Example: Update image member: JSON response

{
    "created_at": "2013-09-20T19:22:19Z",
    "image_id": "a96be11e-8536-4910-92cb-de50aa19dfe6",
    "member_id": "554433",
    "schema": "/v2/schemas/member",
    "status": "accepted",
    "updated_at": "2013-09-20T20:15:31Z"
}
Previous Images
Next Image tag
Docs
  • Style Guide for Technical Content
  • Cloud Backup
  • Cloud Block Storage
  • Cloud Databases
  • Cloud DNS
  • Cloud Files
  • Identity
  • Cloud Images
  • Cloud Load Balancers
  • Cloud Monitoring
  • Cloud Orchestration
  • Cloud Networks
  • Cloud Queues
  • Cloud Servers
  • Rackspace Auto Scale
  • Rackspace CDN
Sdks
  • Go
  • Java
  • .Net
  • Node
  • PHP
  • Python
  • Ruby
Partner Tools
  • Airbrake
  • Mailgun
  • ObjectRocket
  • RedisToGo
Blog
  • Technical Blog
  • Rackspace Blog
©2019 Rackspace US, Inc.
  • ©2019 Rackspace US, Inc.
  • About Rackspace
  • Investors
  • Careers
  • Privacy Statement
  • Website Terms
  • Trademarks