Bases: vmware.vapi.bindings.stub.VapiInterface
The Session class allows API clients to manage session tokens including creating, deleting and obtaining information about sessions.
The call to the Session.create() method is part of the overall authentication process for API clients. For example, the sequence of steps for establishing a session with SAML token is:
See the programming guide and samples for additional information about establishing API sessions.
Execution Context and Security Context
To use session based authentication a client should supply the session token obtained through the Session.create() method. The client should add the session token in the security context when using SDK classes. Clients using the REST API should supply the session token as a HTTP header.
Session Lifetime
A session begins with call to the Session.create() method to exchange a SAML token for a API session token. A session ends under the following circumstances:
When a session ends, the authentication logic will reject any subsequent client requests that specify that session. Any operations in progress will continue to completion.
Error Handling
The Session returns the following exceptions:
Parameters: | config (vmware.vapi.bindings.stub.StubConfiguration) – Configuration to be used for creating the stub. |
---|
Bases: vmware.vapi.bindings.struct.VapiStruct
Represents data associated with an API session.
Tip
The arguments are used to initialize data attributes with the same names.
Parameters: |
|
---|
Creates a session with the API. This is the equivalent of login. This method exchanges user credentials supplied in the security context for a session identifier that is to be used for authenticating subsequent calls. To authenticate subsequent calls clients are expected to include the session key.
Return type: | str |
---|---|
Returns: | Newly created session identifier to be used for authenticating further requests. |
Raise : | com.vmware.vapi.std.errors_client.Unauthenticated if the session creation fails due to request specific issues. Due to the security nature of the API the details of the error are not disclosed. Please check the following preconditions if using a SAML token to authenticate:
|
Raise : | com.vmware.vapi.std.errors_client.ServiceUnavailable if session creation fails due to server specific issues, for example connection to a back end component is failing. Due to the security nature of this API further details will not be disclosed in the exception. Please refer to component health information, administrative logs and product specific documentation for possible causes. |
Terminates the validity of a session token. This is the equivalent of log out.
A session identifier is expected as part of the request.
Raise : | com.vmware.vapi.std.errors_client.Unauthenticated if the session id is missing from the request or the corresponding session object cannot be found. |
---|---|
Raise : | com.vmware.vapi.std.errors_client.ServiceUnavailable if session deletion fails due to server specific issues, for example connection to a back end component is failing. Due to the security nature of this API further details will not be disclosed in the exception. Please refer to component health information, administrative logs and product specific documentation for possible causes. |
Returns information about the current session. This method expects a valid session identifier to be supplied.
A side effect of invoking this method may be a change to the session’s last accessed time to the current time if this is supported by the session implementation. Invoking any other method in the API will also update the session’s last accessed time.
This API is meant to serve the needs of various front end projects that may want to display the name of the user. Examples of this include various web based user interfaces and logging facilities.
Return type: | Session.Info |
---|---|
Returns: | Information about the session. |
Raise : | com.vmware.vapi.std.errors_client.Unauthenticated if the session id is missing from the request or the corresponding session object cannot be found. |
Raise : | com.vmware.vapi.std.errors_client.ServiceUnavailable if session retrieval fails due to server specific issues e.g. connection to back end component is failing. Due to the security nature of this API further details will not be disclosed in the error. Please refer to component health information, administrative logs and product specific documentation for possible causes. |
The Content module provides classes and classes for configuring global settings and permissions, and for managing libraries in the Content Library Service.
Bases: vmware.vapi.bindings.stub.VapiInterface
The Configuration class provides methods to configure the global settings of the Content Library Service.
The configuration settings are used by the Content Library Service to control the behavior of various operations.
Parameters: | config (vmware.vapi.bindings.stub.StubConfiguration) – Configuration to be used for creating the stub. |
---|
Retrieves the current configuration values.
Return type: | |
---|---|
Returns: | The ConfigurationModel instance representing the configuration of the Content Library Service. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Updates the configuration. The update is incremental. Any attribute in the ConfigurationModel class that is None will not be modified. Note that this update method doesn’t guarantee an atomic change of all the properties. In the case of a system crash or failure, some of the properties could be left unchanged while others may be updated.
Parameters: | model (ConfigurationModel) – The ConfigurationModel specifying the settings to update. |
---|---|
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if one of the configuration properties is not within the proper range. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Bases: vmware.vapi.bindings.struct.VapiStruct
The ConfigurationModel class defines the global settings of the Content Library Service.
Tip
The arguments are used to initialize data attributes with the same names.
Parameters: |
|
---|
Bases: vmware.vapi.bindings.stub.VapiInterface
The Library class provides methods to manage and find LibraryModel entities.
The Library class provides support for generic functionality which can be applied equally to all types of libraries. The functionality provided by this class will not affect the properties specific to the type of library. See also LocalLibrary and SubscribedLibrary.
Parameters: | config (vmware.vapi.bindings.stub.StubConfiguration) – Configuration to be used for creating the stub. |
---|
Bases: vmware.vapi.bindings.struct.VapiStruct
Specifies the properties that can be used as a filter to find libraries. When multiple attributes are specified, all properties of the library must match the specification.
Tip
The arguments are used to initialize data attributes with the same names.
Parameters: |
|
---|
Resource type for library.
Returns a list of all the visible (as determined by authorization policy) libraries matching the requested Library.FindSpec.
Parameters: | spec (Library.FindSpec) – Specification describing what properties to filter on. |
---|---|
Return type: | list of str |
Returns: | The list of identifiers of all the visible libraries matching the given spec. The return value will contain identifiers for the resource type: com.vmware.content.Library. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if no properties are specified in the spec. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Returns a given LibraryModel.
Parameters: | library_id (str) – Identifier of the library to return. The parameter must be an identifier for the resource type: com.vmware.content.Library. |
---|---|
Return type: | |
Returns: | The LibraryModel instance with the specified library_id. |
Raise : | com.vmware.vapi.std.errors_client.NotFound if the specified library does not exist. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Returns the identifiers of all libraries of any type in the Content Library.
Return type: | list of str |
---|---|
Returns: | The list of all identifiers of all libraries in the Content Library. The return value will contain identifiers for the resource type: com.vmware.content.Library. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Updates the properties of a library.
This is an incremental update to the library. Any attribute in the LibraryModel class that is None will not be modified.
This method will only update the common properties for all library types. This will not, for example, update the LibraryModel.publish_info of a local library, nor the LibraryModel.subscription_info of a subscribed library. Specific properties are updated in LocalLibrary.update() and SubscribedLibrary.update().
Parameters: |
|
---|---|
Raise : | com.vmware.vapi.std.errors_client.NotFound if the library associated with library_id does not exist. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if the update_spec is not valid. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if the LibraryModel.version of update_spec is not equal to the current version of the library. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Bases: vmware.vapi.bindings.struct.VapiStruct
The LibraryModel class represents a Content Library resource model.
A LibraryModel is a container for a set of items which represent a usable set of files. The Content Library Service allows for multiple libraries to be created with separate authorization and sharing policies.
Each LibraryModel is a container for a set of com.vmware.content.library_client.ItemModel instances. Each item is a logical object in a library, which may have multiple files.
A LibraryModel may be local or subscribed. A local library has its source of truth about items within this Content Library Service. Items may be added to or removed from the library. A local library may also be private or published. When published, the library is exposed by a network endpoint and can be used by another Content Library Service for synchronization. A private local library cannot be used for synchronization.
A subscribed library is a library which gets its source of truth from another library that may be across a network in another Content Library Service. A subscribed library may have a different name and metadata from the library to which it subscribes, but the set of library items is always the same as those in the source library. Library items cannot be manually added to a subscribed library – they can only be added by adding new items to the source library.
Tip
The arguments are used to initialize data attributes with the same names.
Parameters: |
|
---|
Bases: vmware.vapi.bindings.enum.Enum
The LibraryModel.LibraryType class defines the type of a LibraryModel.
The type of a library can be used to determine which additional services can be performed with a library.
Note
This class represents an enumerated type in the interface language definition. The class contains class attributes which represent the values in the current version of the enumerated type. Newer versions of the enumerated type may contain new values. To use new values of the enumerated type in communication with a server that supports the newer version of the API, you instantiate this class. See enumerated type description page.
Parameters: | string (str) – String value for the LibraryType instance. |
---|
The library contents are defined and stored by the local Content Library Service installation.
A local library can be retrieved and managed via the LocalLibrary.
The library synchronizes its items and content from another published library.
A subscribed library can be retrieved and managed via the SubscribedLibrary.
Bases: vmware.vapi.bindings.stub.VapiInterface
The LocalLibaray class manages local libraries.
The LocalLibrary class provides support for creating and maintaining local library instances. A local library may also use the Library class to manage general library functionality.
Parameters: | config (vmware.vapi.bindings.stub.StubConfiguration) – Configuration to be used for creating the stub. |
---|
Creates a new local library.
Parameters: |
|
---|---|
Return type: | str |
Returns: | Identifier of the newly created LibraryModel. The return value will be an identifier for the resource type: com.vmware.content.Library. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if the create_spec is not valid. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if the client_token does not conform to the UUID format. |
Raise : | com.vmware.vapi.std.errors_client.Unsupported if using multiple storage backings. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Deletes the specified local library.
Deleting a local library will remove the entry immediately and begin an asynchronous task to remove all cached content for the library. If the asynchronous task fails, file content may remain on the storage backing. This content will require manual removal.
Parameters: | library_id (str) – Identifier of the local library to delete. The parameter must be an identifier for the resource type: com.vmware.content.Library. |
---|---|
Raise : | com.vmware.vapi.std.errors_client.InvalidElementType if the library specified by library_id is not a local library. |
Raise : | com.vmware.vapi.std.errors_client.NotFound if the library specified by library_id does not exist. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Returns a given local library.
Parameters: | library_id (str) – Identifier of the local library to return. The parameter must be an identifier for the resource type: com.vmware.content.Library. |
---|---|
Return type: | |
Returns: | The LibraryModel instance associated with library_id. |
Raise : | com.vmware.vapi.std.errors_client.NotFound if the library specified by library_id does not exist. |
Raise : | com.vmware.vapi.std.errors_client.InvalidElementType if the library specified by library_id is not a local library. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Returns the identifiers of all local libraries in the Content Library.
Return type: | list of str |
---|---|
Returns: | The list of identifiers of all local libraries in the Content Library. The return value will contain identifiers for the resource type: com.vmware.content.Library. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Updates the properties of a local library.
This is an incremental update to the local library. Attributes that are None in the update specification will be left unchanged.
Parameters: |
|
---|---|
Raise : | com.vmware.vapi.std.errors_client.NotFound if the library specified by library_id does not exist. |
Raise : | com.vmware.vapi.std.errors_client.InvalidElementType if the library specified by library_id is not a local library. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if the update_spec is not valid. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if the LibraryModel.version of update_spec is not equal to the current version of the library. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Bases: vmware.vapi.bindings.stub.VapiInterface
Parameters: | config (vmware.vapi.bindings.stub.StubConfiguration) – Configuration to be used for creating the stub. |
---|
Bases: vmware.vapi.bindings.struct.VapiStruct
The SubscribedLibrary.ProbeResult class defines the subscription information probe result. This describes whether using a given subscription URL is successful or if there are access problems, such as SSL errors.
Tip
The arguments are used to initialize data attributes with the same names.
Parameters: |
|
---|
Bases: vmware.vapi.bindings.enum.Enum
The SubscribedLibrary.ProbeResult.Status class defines the error status constants for the probe result.
Note
This class represents an enumerated type in the interface language definition. The class contains class attributes which represent the values in the current version of the enumerated type. Newer versions of the enumerated type may contain new values. To use new values of the enumerated type in communication with a server that supports the newer version of the API, you instantiate this class. See enumerated type description page.
Parameters: | string (str) – String value for the Status instance. |
---|
Indicates that the provided server certificate thumbprint in com.vmware.content.library_client.SubscriptionInfo.ssl_thumbprint is invalid. In this case, the returned null should be set in com.vmware.content.library_client.SubscriptionInfo.ssl_thumbprint.
Indicates that the host in the URL could not be found.
Indicates that the connection was rejected due to invalid credentials.
Indicates that the supplied URL was not valid.
Indicates that the given resource at the URL was not found.
Indicates that the probe was successful.
Indicates that the probe timed out while attempting to connect to the URL.
Indicates an unspecified error different from the other error cases defined in SubscribedLibrary.ProbeResult.Status.
Creates a new subscribed library.
Once created, the subscribed library will be empty. If the LibraryModel.subscription_info property is set, the Content Library Service will attempt to synchronize to the remote source. This is an asynchronous operation so the content of the published library may not immediately appear.
Parameters: |
|
---|---|
Return type: | str |
Returns: | Identifier of the newly created subscribed library. The return value will be an identifier for the resource type: com.vmware.content.Library. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if the create_spec is not valid. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if the client_token does not conform to the UUID format. |
Raise : | com.vmware.vapi.std.errors_client.Unsupported if using multiple storage backings. |
Raise : | com.vmware.vapi.std.errors_client.ResourceInaccessible if subscribing to a published library which cannot be accessed. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Deletes the specified subscribed library.
Deleting a subscribed library will remove the entry immediately and begin an asynchronous task to remove all cached content for the library. If the asynchronous task fails, file content may remain on the storage backing. This content will require manual removal.
Parameters: | library_id (str) – Identifier of the subscribed library to delete. The parameter must be an identifier for the resource type: com.vmware.content.Library. |
---|---|
Raise : | com.vmware.vapi.std.errors_client.InvalidElementType if the library referenced by library_id is not a subscribed library. |
Raise : | com.vmware.vapi.std.errors_client.NotFound if the library referenced by library_id does not exist. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Evicts the cached content of an on-demand subscribed library.
This method allows the cached content of a subscribed library to be removed to free up storage capacity. This method will only work when a subscribed library is synchronized on-demand.
Parameters: | library_id (str) – Identifier of the subscribed library whose content should be evicted. The parameter must be an identifier for the resource type: com.vmware.content.Library. |
---|---|
Raise : | com.vmware.vapi.std.errors_client.NotFound if the library specified by library_id does not exist. |
Raise : | com.vmware.vapi.std.errors_client.InvalidElementType if the library specified by library_id is not a subscribed library. |
Raise : | com.vmware.vapi.std.errors_client.NotAllowedInCurrentState if the library specified by library_id does not synchronize on-demand. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Returns a given subscribed library.
Parameters: | library_id (str) – Identifier of the subscribed library to return. The parameter must be an identifier for the resource type: com.vmware.content.Library. |
---|---|
Return type: | |
Returns: | The LibraryModel instance that corresponds to library_id. |
Raise : | com.vmware.vapi.std.errors_client.NotFound if the library associated with library_id does not exist. |
Raise : | com.vmware.vapi.std.errors_client.InvalidElementType if the library associated with library_id is not a subscribed library. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Returns the identifiers of all subscribed libraries in the Content Library.
Return type: | list of str |
---|---|
Returns: | The list of identifiers of all subscribed libraries in the Content Library. The return value will contain identifiers for the resource type: com.vmware.content.Library. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Probes remote library subscription information, including URL, SSL certificate and password. The resulting SubscribedLibrary.ProbeResult class describes whether or not the subscription configuration is successful.
Parameters: | subscription_info (com.vmware.content.library_client.SubscriptionInfo) – The subscription info to be probed. |
---|---|
Return type: | |
Returns: | The subscription info probe result. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Forces the synchronization of the subscribed library.
Synchronizing a subscribed library forcefully with this method will perform the same synchronization behavior as would run periodically for the library. The com.vmware.content.library_client.SubscriptionInfo.on_demand setting is respected. Calling this method on a library that is already in the process of synchronizing will have no effect.
Parameters: | library_id (str) – Identifier of the subscribed library to synchronize. The parameter must be an identifier for the resource type: com.vmware.content.Library. |
---|---|
Raise : | com.vmware.vapi.std.errors_client.NotFound if the library specified by library_id does not exist. |
Raise : | com.vmware.vapi.std.errors_client.InvalidElementType if the library specified by library_id is not a subscribed library. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if some parameter in the subscribed library subscription info is invalid. |
Raise : | com.vmware.vapi.std.errors_client.ResourceInaccessible if the published library cannot be contacted or found. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Updates the properties of a subscribed library.
This is an incremental update to the subscribed library. Attributes that are None in the update specification will be left unchanged.
Parameters: |
|
---|---|
Raise : | com.vmware.vapi.std.errors_client.NotFound if the library specified by library_id does not exist. |
Raise : | com.vmware.vapi.std.errors_client.InvalidElementType if the library specified by library_id is not a subscribed library. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if the update_spec is not valid. |
Raise : | com.vmware.vapi.std.errors_client.InvalidArgument if the LibraryModel.version of update_spec is not equal to the current version of the library. |
Raise : | com.vmware.vapi.std.errors_client.ResourceInaccessible if the subscription info is being updated but the published library cannot be contacted or found. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
Bases: vmware.vapi.bindings.stub.VapiInterface
The Type class exposes the com.vmware.content.library_client.ItemModel types that this Content Library Service supports.
A library item has an optional type which can be specified with the com.vmware.content.library_client.ItemModel.type attribute. For items with a type that is supported by a plugin, the Content Library Service may understand the files which are part of the library item and can produce metadata for the item.
In other cases, uploads may require a process in which one upload implies subsequent uploads. For example, an Open Virtualization Format (OVF) package is composed of an OVF descriptor file and the associated virtual disk files. Uploading an OVF descriptor can enable the Content Library Service to understand that the complete OVF package requires additional disk files, and it can set up the transfers for the disks automatically by adding the file entries for the disks when the OVF descriptor is uploaded.
When a type is not supported by a plugin, or the type is not specified, the Content Library Service can handle a library item in a default way, without adding metadata to the item or guiding the upload process.
Parameters: | config (vmware.vapi.bindings.stub.StubConfiguration) – Configuration to be used for creating the stub. |
---|
Bases: vmware.vapi.bindings.struct.VapiStruct
The Type.Info class describes support for a specific type of data in an com.vmware.content.library_client.ItemModel. The Type.Info can be queried through the Type class. Type support describes plugins in the Content Library which can provide metadata on library items and help manage the transfer process by adding dependent files when a current file is added.
Tip
The arguments are used to initialize data attributes with the same names.
Parameters: |
|
---|
Returns a list of Type.Info instances which describe the type support plugins in this Content Library.
Return type: | |
---|---|
Returns: | The list of Type.Info instances which describe the type support plugins in this Content Library. |
Raise : | com.vmware.vapi.std.errors_client.Unauthorized if you do not have all of the privileges described as follows:
|
The com.vmware.vapi_client component provides API infrastructure classes and standard types that can be used in the interface specification of any class.