The GetType operation returns information about the type, for example the field definitions, the timestamp when the type was last modified, the level of nesting, the status, and details about if the type is used in other types and tables.
To read keyspace metadata using GetType, the IAM principal needs Select action permissions for the system keyspace. To configure the required permissions, see Permissions to view a UDT in the Amazon Keyspaces Developer Guide.
Parameters:
-
keyspace_name
(KeyspaceName)
–
The name of the keyspace that contains this type.
-
type_name
(TypeName)
–
The formatted name of the type. For example, if the name of the type was created without double quotes, Amazon Keyspaces saved the name in lower-case characters. If the name was created in double quotes, you must use double quotes to specify the type name.
Raises:
-
AccessDeniedException
–
You don't have sufficient access permissions to perform this action.
-
InternalServerException
–
Amazon Keyspaces was unable to fully process this request because of an internal server error.
-
ResourceNotFoundException
–
The operation tried to access a keyspace, table, or type that doesn't exist. The resource might not be specified correctly, or its status might not be ACTIVE.
-
ServiceQuotaExceededException
–
The operation exceeded the service quota for this resource. For more information on service quotas, see Quotas in the Amazon Keyspaces Developer Guide.
-
ValidationException
–
The operation failed due to an invalid or malformed request.
-
UnknownServiceError
–
The service returned an error code this client does not model.
Source code in docs_src/capo_keyspaces/_services/keyspaces.py
| def get_type(
self,
keyspace_name: "capo_keyspaces.types.keyspace_name.KeyspaceName",
type_name: "capo_keyspaces.types.type_name.TypeName",
*,
config_overrides: Optional[KeyspacesClientConfig] = None,
) -> "capo_keyspaces.types.get_type_response.GetTypeResponse":
"""<p> The <code>GetType</code> operation returns information about the type, for example the field definitions, the timestamp when the type was last modified, the level of nesting, the status, and details about if the type is used in other types and tables. </p> <p>To read keyspace metadata using <code>GetType</code>, the IAM principal needs <code>Select</code> action permissions for the system keyspace. To configure the required permissions, see <a href="https://docs.aws.amazon.com/keyspaces/latest/devguide/configure-udt-permissions.html#udt-permissions-view">Permissions to view a UDT</a> in the <i>Amazon Keyspaces Developer Guide</i>.</p>
Args:
keyspace_name: <p> The name of the keyspace that contains this type. </p>
type_name: <p>The formatted name of the type. For example, if the name of the type was created without double quotes, Amazon Keyspaces saved the name in lower-case characters. If the name was created in double quotes, you must use double quotes to specify the type name. </p>
Raises:
capo_keyspaces.errors.access_denied_exception.AccessDeniedException: <p>You don't have sufficient access permissions to perform this action. </p>
capo_keyspaces.errors.internal_server_exception.InternalServerException: <p>Amazon Keyspaces was unable to fully process this request because of an internal server error.</p>
capo_keyspaces.errors.resource_not_found_exception.ResourceNotFoundException: <p>The operation tried to access a keyspace, table, or type that doesn't exist. The resource might not be specified correctly, or its status might not be <code>ACTIVE</code>.</p>
capo_keyspaces.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>The operation exceeded the service quota for this resource. For more information on service quotas, see <a href="https://docs.aws.amazon.com/keyspaces/latest/devguide/quotas.html">Quotas</a> in the <i>Amazon Keyspaces Developer Guide</i>.</p>
capo_keyspaces.errors.validation_exception.ValidationException: <p>The operation failed due to an invalid or malformed request.</p>
capo_keyspaces.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
def _handler(
req: "OperationRequest[capo_keyspaces.types.get_type_request.GetTypeRequest]",
) -> OperationResponse[
"capo_keyspaces.types.get_type_response.GetTypeResponse"
]:
import capo_keyspaces._operations.keyspaces_service.get_type
output, http_response = (
capo_keyspaces._operations.keyspaces_service.get_type.get_type(
req.options, req.input
)
)
return OperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("GetType")
)
input_: capo_keyspaces.types.get_type_request.GetTypeRequest = {
"keyspace_name": keyspace_name,
"type_name": type_name,
}
response = execute_pipeline(
OperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
response.response.close()
return response.output
|