Get Structure Id Metamodel

Get Structure Id Metamodel

Retrieves information about the structure element corresponding to structureId. The StructureInfo contains the metamodel information about the structure element. It contains information about all the field elements and enumeration elements contained in this structure element.

Request
URI
GET
https://{api_host}/api/vapi/metadata/metamodel/structure/{structure_id}
COPY
Path Parameters
string
structure_id
Required

Identifier of the structure element. The parameter must be an identifier for the resource type: com.vmware.vapi.structure.


Authentication
This operation uses the following authentication methods.
Responses
200

The StructureInfo instance that corresponds to structureId.

Returns Metadata_Metamodel_StructureInfo of type(s) application/json
{
    "name": "string",
    "type": "string",
    "enumerations": {
        "enumerations": {
            "name": "string",
            "values": [
                {
                    "value": "string",
                    "metadata": {
                        "metadata": {
                            "elements": {
                                "elements": {
                                    "type": "string",
                                    "long_value": 0,
                                    "string_value": "string",
                                    "list_value": [
                                        "string"
                                    ],
                                    "structure_id": "string",
                                    "structure_ids": [
                                        "string"
                                    ]
                                }
                            }
                        }
                    },
                    "documentation": "string"
                }
            ],
            "metadata": {
                "metadata": {
                    "elements": {
                        "elements": {
                            "type": "string",
                            "long_value": 0,
                            "string_value": "string",
                            "list_value": [
                                "string"
                            ],
                            "structure_id": "string",
                            "structure_ids": [
                                "string"
                            ]
                        }
                    }
                }
            },
            "documentation": "string"
        }
    },
    "constants": {
        "constants": {
            "type": {
                "category": "string",
                "builtin_type": "string",
                "user_defined_type": {
                    "resource_type": "string",
                    "resource_id": "string"
                },
                "generic_instantiation": {
                    "generic_type": "string",
                    "element_type": "Metadata_Metamodel_Type Object",
                    "map_key_type": "Metadata_Metamodel_Type Object",
                    "map_value_type": "Metadata_Metamodel_Type Object"
                }
            },
            "value": {
                "category": "string",
                "primitive_value": {
                    "type": "string",
                    "boolean_value": false,
                    "double_value": "number",
                    "long_value": 0,
                    "string_value": "string"
                },
                "list_value": [
                    {
                        "type": "string",
                        "boolean_value": false,
                        "double_value": "number",
                        "long_value": 0,
                        "string_value": "string"
                    }
                ]
            },
            "documentation": "string"
        }
    },
    "fields": [
        {
            "name": "string",
            "type": "Metadata_Metamodel_Type Object",
            "metadata": {
                "metadata": "Metadata_Metamodel_ElementMap Object"
            },
            "documentation": "string"
        }
    ],
    "metadata": {
        "metadata": {
            "elements": {
                "elements": {
                    "type": "string",
                    "long_value": 0,
                    "string_value": "string",
                    "list_value": [
                        "string"
                    ],
                    "structure_id": "string",
                    "structure_ids": [
                        "string"
                    ]
                }
            }
        }
    },
    "documentation": "string"
}
string
name
Required

Dot separated name of the structure element. The segments in the name reflect the organization of the APIs. The format of each segment is lower case with underscores. Each underscore represents a word boundary. If there are acronyms in the word, the capitalization is preserved. This format makes it easy to translate the segment into a different naming convention.

type
Required

The StructureInfo.Type enumerated type defines the kind of this structure element. In the interface definition language, structure element and error element have similar characteristics. The difference is that only error elements can be used to describe the errors of an operation element.
STRUCTURE : If the type is a structure element.
ERROR : If the type is an error element.

object
enumerations
Required

Metamodel information of all the enumeration elements contained in the structure element. The key in the map is the identifier of the enumeration element and the value is the metamodel information of the enumeration element. When clients pass a value of this structure as a parameter, the key in the field map must be an identifier for the resource type: com.vmware.vapi.enumeration. When operations return a value of this structure as a result, the key in the field map will be an identifier for the resource type: com.vmware.vapi.enumeration.

object
constants
Required

Metamodel information of all the constant elements contained in the structure element. The key in the map is the name of the constant element and the value in the map is the metamodel information for the constant element.

fields
Required

Metamodel information of all the field elements. The order of the field elements in the list matches the order in which the fields are defined in the service.

object
metadata
Required

Generic metadata elements for the structure element. The key in the map is the name of the metadata element and the value is the data associated with that metadata element. The MetadataIdentifier contains possible string values for keys in the map.

string
documentation
Required

English language documentation for a structure element. It can contain HTML markup and Javadoc tags. The first sentence of the structure documentation is a complete sentence that identifies the structure by name and summarizes the purpose of the structure.


404

com.vmware.vapi.std.errors.not_found : if the structure element associated with structureId is not contained in any of the package elements or service elements.

Returns Std_Errors_Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": {
                        "id": "string",
                        "params": {
                            "params": "Std_LocalizationParam Object"
                        }
                    },
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}
messages
Required

Stack of one or more localizable messages for human error consumers. The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully. Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The ArgumentLocations, FileLocations, and TransientIndication structures are intended as possible values for this field. DynamicID may also be useful as a value for this field (although that is not its primary purpose). Some services may provide their own specific structures for use as the value of this field when reporting errors from their operations.

Some operations will not set this field when reporting errors.

error_type
Optional

Enumeration of all standard errors. Used as discriminator in protocols that have no standard means for transporting the error type, e.g. REST.
ERROR : Discriminator for the Error type.
ALREADY_EXISTS : Discriminator for the AlreadyExists type.
ALREADY_IN_DESIRED_STATE : Discriminator for the AlreadyInDesiredState type.
CANCELED : Discriminator for the Canceled type.
CONCURRENT_CHANGE : Discriminator for the ConcurrentChange type.
FEATURE_IN_USE : Discriminator for the FeatureInUse type.
INTERNAL_SERVER_ERROR : Discriminator for the InternalServerError type.
INVALID_ARGUMENT : Discriminator for the InvalidArgument type.
INVALID_ELEMENT_CONFIGURATION : Discriminator for the InvalidElementConfiguration type.
INVALID_ELEMENT_TYPE : Discriminator for the InvalidElementType type.
INVALID_REQUEST : Discriminator for the InvalidRequest type.
NOT_ALLOWED_IN_CURRENT_STATE : Discriminator for the NotAllowedInCurrentState type.
NOT_FOUND : Discriminator for the NotFound type.
OPERATION_NOT_FOUND : Discriminator for the OperationNotFound type.
RESOURCE_BUSY : Discriminator for the ResourceBusy type.
RESOURCE_IN_USE : Discriminator for the ResourceInUse type.
RESOURCE_INACCESSIBLE : Discriminator for the ResourceInaccessible type.
SERVICE_UNAVAILABLE : Discriminator for the ServiceUnavailable type.
TIMED_OUT : Discriminator for the TimedOut type.
UNABLE_TO_ALLOCATE_RESOURCE : Discriminator for the UnableToAllocateResource type.
UNAUTHENTICATED : Discriminator for the Unauthenticated type.
UNAUTHORIZED : Discriminator for the Unauthorized type.
UNEXPECTED_INPUT : Discriminator for the UnexpectedInput type.
UNSUPPORTED : Discriminator for the Unsupported type.
UNVERIFIED_PEER : Discriminator for the UnverifiedPeer type.


default

'Default' means this response is used for all HTTP codes that are not covered individually for this operation.

Returns Std_Errors_Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": {
                        "id": "string",
                        "params": {
                            "params": "Std_LocalizationParam Object"
                        }
                    },
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}
messages
Required

Stack of one or more localizable messages for human error consumers. The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully. Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The ArgumentLocations, FileLocations, and TransientIndication structures are intended as possible values for this field. DynamicID may also be useful as a value for this field (although that is not its primary purpose). Some services may provide their own specific structures for use as the value of this field when reporting errors from their operations.

Some operations will not set this field when reporting errors.

error_type
Optional

Enumeration of all standard errors. Used as discriminator in protocols that have no standard means for transporting the error type, e.g. REST.
ERROR : Discriminator for the Error type.
ALREADY_EXISTS : Discriminator for the AlreadyExists type.
ALREADY_IN_DESIRED_STATE : Discriminator for the AlreadyInDesiredState type.
CANCELED : Discriminator for the Canceled type.
CONCURRENT_CHANGE : Discriminator for the ConcurrentChange type.
FEATURE_IN_USE : Discriminator for the FeatureInUse type.
INTERNAL_SERVER_ERROR : Discriminator for the InternalServerError type.
INVALID_ARGUMENT : Discriminator for the InvalidArgument type.
INVALID_ELEMENT_CONFIGURATION : Discriminator for the InvalidElementConfiguration type.
INVALID_ELEMENT_TYPE : Discriminator for the InvalidElementType type.
INVALID_REQUEST : Discriminator for the InvalidRequest type.
NOT_ALLOWED_IN_CURRENT_STATE : Discriminator for the NotAllowedInCurrentState type.
NOT_FOUND : Discriminator for the NotFound type.
OPERATION_NOT_FOUND : Discriminator for the OperationNotFound type.
RESOURCE_BUSY : Discriminator for the ResourceBusy type.
RESOURCE_IN_USE : Discriminator for the ResourceInUse type.
RESOURCE_INACCESSIBLE : Discriminator for the ResourceInaccessible type.
SERVICE_UNAVAILABLE : Discriminator for the ServiceUnavailable type.
TIMED_OUT : Discriminator for the TimedOut type.
UNABLE_TO_ALLOCATE_RESOURCE : Discriminator for the UnableToAllocateResource type.
UNAUTHENTICATED : Discriminator for the Unauthenticated type.
UNAUTHORIZED : Discriminator for the Unauthorized type.
UNEXPECTED_INPUT : Discriminator for the UnexpectedInput type.
UNSUPPORTED : Discriminator for the Unsupported type.
UNVERIFIED_PEER : Discriminator for the UnverifiedPeer type.