com.vmware.vapi package¶
Subpackages¶
- com.vmware.vapi.metadata package
- Subpackages
- Submodules
- com.vmware.vapi.metadata.authentication_client module
- com.vmware.vapi.metadata.cli_client module
- com.vmware.vapi.metadata.metamodel_client module
- com.vmware.vapi.metadata.privilege_client module
- com.vmware.vapi.std package
Submodules¶
com.vmware.vapi.metadata_client module¶
The com.vmware.vapi.metadata_client
module provides metadata classes.
These are classes that provide different facets of API information. Clients can
use these classes to:
Discover APIs available in the infrastructure.
Fetch metadata that can be used to build presentation layers like CLI, REST, etc.
Fetch authentication and authorization metadata.
-
class
com.vmware.vapi.metadata_client.
SourceCreateSpec
(description=None, type=None, filepath=None, address=None)¶ Bases:
vmware.vapi.bindings.struct.VapiStruct
The
SourceCreateSpec
class contains the registration information for a metadata source.Tip
The arguments are used to initialize data attributes with the same names.
- Parameters
description (
str
) – English language human readable description of the source.type (
SourceType
) – Type of the metadata source.filepath (
str
) – Absolute file path of the metamodel metadata file that has the metamodel information about one component element. This attribute is optional and it is only relevant when the value oftype
isSourceType.FILE
.address (
str
) –Connection information of the remote server. This should be of the format http(s)://IP:port/namespace.
The remote server should contain the classes in
com.vmware.vapi.metadata.metamodel_client
module. It could expose metamodel information of one or more components. This attribute is optional and it is only relevant when the value oftype
isSourceType.REMOTE
.
-
class
com.vmware.vapi.metadata_client.
SourceInfo
(type=None, file_name=None, remote_addr=None, msg_protocol=None)¶ Bases:
vmware.vapi.bindings.struct.VapiStruct
Metadata source info
Tip
The arguments are used to initialize data attributes with the same names.
- Parameters
type (
SourceType
) – Type of the metadata sourcefile_name (
str
) – Name of the metadata source file This attribute is optional and it is only relevant when the value oftype
isSourceType.FILE
.remote_addr (
str
) – Address of the remote metadata source This attribute is optional and it is only relevant when the value oftype
isSourceType.REMOTE
.msg_protocol (
str
) – Message protocol to be used This attribute is optional and it is only relevant when the value oftype
isSourceType.REMOTE
.
-
class
com.vmware.vapi.metadata_client.
SourceType
(string)¶ Bases:
vmware.vapi.bindings.enum.Enum
The
SourceType
class defines the types of sources for API metadata. You specify the type of source when adding a metadata source to a metadata service.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 theSourceType
instance.
-
FILE
= SourceType(string='FILE')¶ Indicates the metadata source is a JSON file.
-
REMOTE
= SourceType(string='REMOTE')¶ Indicates the metadata source is a remote server.
-
class
com.vmware.vapi.metadata_client.
StubFactory
(stub_config)¶ Bases:
vmware.vapi.bindings.stub.StubFactoryBase
Initialize StubFactoryBase
- Parameters
stub_config (
vmware.vapi.bindings.stub.StubConfiguration
) – Stub config instance
com.vmware.vapi.std_client module¶
The com.vmware.vapi.std_client
module provides standard types that can be
used in the interface specification of any class.
-
class
com.vmware.vapi.std_client.
AuthenticationScheme
¶ Bases:
vmware.vapi.bindings.struct.VapiStruct
The
AuthenticationScheme
class defines constants for authentication scheme identifiers for authentication mechanisms present in the vAPI infrastructure shipped by VMware.A third party extension can define and implements it’s own authentication mechanism and define a constant in a different IDL file.
Tip
The arguments are used to initialize data attributes with the same names.
-
NO_AUTHENTICATION
= 'com.vmware.vapi.std.security.no_authentication'¶ Indicates that the request doesn’t need any authentication.
-
OAUTH_ACCESS_TOKEN
= 'com.vmware.vapi.std.security.oauth'¶ Indicates that the security context in a request is using OAuth2 based authentication scheme.
In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:
The scheme identifier - com.vmware.vapi.std.security.oauth
Valid OAuth2 access token - This is usually acquired by OAuth2 Authorization Server after successful authentication of the end user.
Sample security context in JSON format that matches the specification: ``{
‘schemeId’: ‘com.vmware.vapi.std.security.oauth’, ‘accesstoken’: …. }`` vAPI runtime provides convenient factory methods that takes OAuth2 access token as input parameter and creates a security context that conforms to the above format.
-
SAML_BEARER_TOKEN
= 'com.vmware.vapi.std.security.saml_bearer_token'¶ Indicates that the security context in a request is using a SAML bearer token based authentication scheme.
In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:
The scheme identifier: com.vmware.vapi.std.security.saml_bearer_token
The token itself
Sample security context in JSON format that matches the specification: ``{
‘schemeId’: ‘com.vmware.vapi.std.security.saml_bearer_token’, ‘token’: ‘the token itself’ }`` vAPI runtime provide convenient factory methods that take SAML bearer token and to create the security context that conforms to the above mentioned format.
-
SAML_HOK_TOKEN
= 'com.vmware.vapi.std.security.saml_hok_token'¶ Indicates that the security context in a request is using a SAML holder-of-key token based authentication scheme.
In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:
The scheme identifier: com.vmware.vapi.std.security.saml_hok_token
Signature of the request: This includes - algorithm used for signing the request, SAML holder of key token and signature digest
Request timestamp: This includes the
created
andexpires
timestamp of the request. The timestamp should match the following format - YYYY-MM-DDThh:mm:ss.sssZ (e.g. 1878-03-03T19:20:30.451Z).
Sample security context in JSON format that matches the specification: ``{
‘schemeId’: ‘com.vmware.vapi.std.security.saml_hok_token’, ‘signature’: { ‘alg’: ‘RS256’, ‘samlToken’: …, ‘value’: …,``, ‘timestamp’: { ‘created’: ‘2012-10-26T12:24:18.941Z’, ‘expires’: ‘2012-10-26T12:44:18.941Z’, } } } vAPI runtime provide convenient factory methods that take SAML holder of key token and private key to create the security context that conforms to the above mentioned format.
-
SESSION_ID
= 'com.vmware.vapi.std.security.session_id'¶ Indicates that the security context in a request is using a session identifier based authentication scheme.
In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:
The scheme identifier - com.vmware.vapi.std.security.session_id
Valid session identifier - This is usually returned by a login method of a session manager interface for a particular vAPI service of this authentication scheme
Sample security context in JSON format that matches the specification: ``{
‘schemeId’: ‘com.vmware.vapi.std.security.session_id’, ‘sessionId’: …., }`` vAPI runtime provides convenient factory methods that take session identifier as input parameter and create a security context that conforms to the above format.
-
USER_PASSWORD
= 'com.vmware.vapi.std.security.user_pass'¶ Indicates that the security context in a request is using username/password based authentication scheme.
In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:
The scheme identifier - com.vmware.vapi.std.security.user_pass
Username
Password
Sample security context in JSON format that matches the specification: ``{
‘schemeId’: ‘com.vmware.vapi.std.security.user_pass’, ‘userName’: …., ‘password’: … }`` vAPI runtime provides convenient factory methods that take username and password as input parameters and create a security context that conforms to the above format.
-
-
class
com.vmware.vapi.std_client.
DynamicID
(type=None, id=None)¶ Bases:
vmware.vapi.bindings.struct.VapiStruct
The
DynamicID
class represents an identifier for a resource of an arbitrary type.Tip
The arguments are used to initialize data attributes with the same names.
- Parameters
type (
str
) –The type of resource being identified (for example
com.acme.Person
).Classes that contain methods for creating and deleting resources typically contain a class attribute specifying the resource type for the resources being created and deleted. The API metamodel metadata classes include a class that allows retrieving all the known resource types.
id (
str
) – The identifier for a resource whose type is specified byDynamicID.type
. When clients pass a value of this class as a parameter, the attributetype
must contain the actual resource type. When methods return a value of this class as a return value, the attributetype
will contain the actual resource type.
-
class
com.vmware.vapi.std_client.
LocalizableMessage
(id=None, default_message=None, args=None, params=None, localized=None)¶ Bases:
vmware.vapi.bindings.struct.VapiStruct
The
LocalizableMessage
class represents localizable string and message template. Classes include one or more localizable message templates in the exceptions they report so that clients can display diagnostic messages in the native language of the user. Classes can include localizable strings in the data returned from methods to allow clients to display localized status information in the native language of the user.Tip
The arguments are used to initialize data attributes with the same names.
- Parameters
id (
str
) –Unique identifier of the localizable string or message template.
This identifier is typically used to retrieve a locale-specific string or message template from a message catalog.
default_message (
str
) – The value of this localizable string or message template in theen_US
(English) locale. IfLocalizableMessage.id
refers to a message template, the default message will contain the substituted arguments. This value can be used by clients that do not need to display strings and messages in the native language of the user. It could also be used as a fallback if a client is unable to access the appropriate message catalog.args (
list
ofstr
) – Positional arguments to be substituted into the message template. This list will be empty if the message uses named arguments or has no arguments.params ((
dict
ofstr
andLocalizationParam
) orNone
) – Named arguments to be substituted into the message template. This attribute was added in vSphere API 7.0.0.0. None means that the message template requires no arguments or positional arguments are used.localized (
str
orNone
) – Localized string value as per request requirements. This attribute was added in vSphere API 7.0.0.0. when the client has not requested specific locale the implementation may not populate this field to conserve resources.
-
class
com.vmware.vapi.std_client.
LocalizationParam
(s=None, dt=None, i=None, d=None, l=None, format=None, precision=None)¶ Bases:
vmware.vapi.bindings.struct.VapiStruct
This class holds a single message parameter and formatting settings for it. The class has fields for
str
,int
,decimal.Decimal
, date time and nested messages. Only one will be used depending on the type of data sent. For date,decimal.Decimal
andint
it is possible to set additional formatting details. This class was added in vSphere API 7.0.0.0.Tip
The arguments are used to initialize data attributes with the same names.
- Parameters
s (
str
orNone
) –str
value associated with the parameter. This attribute was added in vSphere API 7.0.0.0. this attribute will be set whenstr
value is used.dt (
datetime.datetime
orNone
) – Date and time value associated with the parameter. Use theformat
attribute to specify date and time display style. This attribute was added in vSphere API 7.0.0.0. this attribute will be set when date and time value is used.i (
long
orNone
) –int
value associated with the parameter. This attribute was added in vSphere API 7.0.0.0. this attribute will be set whenint
value is used.d (
float
orNone
) – Thedecimal.Decimal
value associated with the parameter. The number of displayed fractional digits is changed viaprecision
attribute. This attribute was added in vSphere API 7.0.0.0. this attribute will be set whendecimal.Decimal
value is used.l (
NestedLocalizableMessage
orNone
) – Nested localizable value associated with the parameter. This is useful construct to convert to human readable localized form class andbool
values. It can also be used for proper handling of pluralization and gender forms in localization. RecursiveNestedLocalizableMessage
instances can be used for localizing short lists of items. This attribute was added in vSphere API 7.0.0.0. this attribute will be set when nested localization message value is used.format (
LocalizationParam.DateTimeFormat
orNone
) – Format associated with the date and time value indt
attribute. The class attributeSHORT_DATETIME
will be used as default. This attribute was added in vSphere API 7.0.0.0. this may not be set if class attributeSHORT_DATETIME
default format is appropriateprecision (
long
orNone
) – Number of fractional digits to include in formatteddecimal.Decimal
value. This attribute was added in vSphere API 7.0.0.0. this will be set when exact precision is required for renderingdecimal.Decimal
numbers.
-
class
DateTimeFormat
(string)¶ Bases:
vmware.vapi.bindings.enum.Enum
The
LocalizationParam.DateTimeFormat
class lists possible date and time formatting options. It combines the Unicode CLDR format types - full, long, medium and short with 3 different presentations - date only, time only and combined date and time presentation. This enumeration was added in vSphere API 7.0.0.0.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 theDateTimeFormat
instance.
-
FULL_DATE
= DateTimeFormat(string='FULL_DATE')¶ The date and time value will be formatted as full date, for example 2019 Jan 28, Mon. This class attribute was added in vSphere API 7.0.0.0.
-
FULL_DATE_TIME
= DateTimeFormat(string='FULL_DATE_TIME')¶ The date and time value will be formatted as full date and time, for example 2019 Jan 28, Mon 12:59:01 Z. This class attribute was added in vSphere API 7.0.0.0.
-
FULL_TIME
= DateTimeFormat(string='FULL_TIME')¶ The date and time value will be formatted as full time, for example 12:59:01 Z. This class attribute was added in vSphere API 7.0.0.0.
-
LONG_DATE
= DateTimeFormat(string='LONG_DATE')¶ The date and time value will be formatted as long date, for example 2019 Jan 28. This class attribute was added in vSphere API 7.0.0.0.
-
LONG_DATE_TIME
= DateTimeFormat(string='LONG_DATE_TIME')¶ The date and time value will be formatted as long date and time, for example 2019 Jan 28 12:59:01 Z. This class attribute was added in vSphere API 7.0.0.0.
-
LONG_TIME
= DateTimeFormat(string='LONG_TIME')¶ The date and time value will be formatted as long time, for example 12:59:01 Z. This class attribute was added in vSphere API 7.0.0.0.
-
MED_DATE
= DateTimeFormat(string='MED_DATE')¶ The date and time value will be formatted as medium date, for example 2019 Jan 28. This class attribute was added in vSphere API 7.0.0.0.
-
MED_DATE_TIME
= DateTimeFormat(string='MED_DATE_TIME')¶ The date and time value will be formatted as medium date and time, for example 2019 Jan 28 12:59:01. This class attribute was added in vSphere API 7.0.0.0.
-
MED_TIME
= DateTimeFormat(string='MED_TIME')¶ The date and time value will be formatted as medium time, for example 12:59:01. This class attribute was added in vSphere API 7.0.0.0.
-
SHORT_DATE
= DateTimeFormat(string='SHORT_DATE')¶ The date and time value will be formatted as short date, for example 2019-01-28. This class attribute was added in vSphere API 7.0.0.0.
-
SHORT_DATE_TIME
= DateTimeFormat(string='SHORT_DATE_TIME')¶ The date and time value will be formatted as short date and time, for example 2019-01-28 12:59. This class attribute was added in vSphere API 7.0.0.0.
-
SHORT_TIME
= DateTimeFormat(string='SHORT_TIME')¶ The date and time value will be formatted as short time, for example 12:59. This class attribute was added in vSphere API 7.0.0.0.
-
class
com.vmware.vapi.std_client.
NestedLocalizableMessage
(id=None, params=None)¶ Bases:
vmware.vapi.bindings.struct.VapiStruct
The
NestedLocalizableMessage
class represents a nested within a parameter localizable string or message template. This class is useful for modeling composite messages. Such messages are necessary to do correct pluralization of phrases, represent lists of several items etc. This class was added in vSphere API 7.0.0.0.Tip
The arguments are used to initialize data attributes with the same names.
- Parameters
id (
str
) –Unique identifier of the localizable string or message template.
This identifier is typically used to retrieve a locale-specific string or message template from a message catalog.. This attribute was added in vSphere API 7.0.0.0.
params ((
dict
ofstr
andLocalizationParam
) orNone
) – Named Arguments to be substituted into the message template. This attribute was added in vSphere API 7.0.0.0. services will not populate this field when there are no parameters to be substituted
-
class
com.vmware.vapi.std_client.
StubFactory
(stub_config)¶ Bases:
vmware.vapi.bindings.stub.StubFactoryBase
Initialize StubFactoryBase
- Parameters
stub_config (
vmware.vapi.bindings.stub.StubConfiguration
) – Stub config instance