Glue / Client / get_user_defined_functions

get_user_defined_functions

Glue.Client.get_user_defined_functions(**kwargs)

Retrieves multiple function definitions from the Data Catalog.

See also: AWS API Documentation

Request Syntax

response = client.get_user_defined_functions(
    CatalogId='string',
    DatabaseName='string',
    Pattern='string',
    FunctionType='REGULAR_FUNCTION'|'AGGREGATE_FUNCTION'|'STORED_PROCEDURE',
    NextToken='string',
    MaxResults=123
)
Parameters:
  • CatalogId (string) – The ID of the Data Catalog where the functions to be retrieved are located. If none is provided, the Amazon Web Services account ID is used by default.

  • DatabaseName (string) – The name of the catalog database where the functions are located. If none is provided, functions from all the databases across the catalog will be returned.

  • Pattern (string) –

    [REQUIRED]

    An optional function-name pattern string that filters the function definitions returned.

  • FunctionType (string) –

    An optional function-type pattern string that filters the function definitions returned from Amazon Redshift Federated Permissions Catalog.

    Specify a value of REGULAR_FUNCTION or STORED_PROCEDURE. The STORED_PROCEDURE function type is only compatible with Amazon Redshift Federated Permissions Catalog.

  • NextToken (string) – A continuation token, if this is a continuation call.

  • MaxResults (integer) – The maximum number of functions to return in one response.

Return type:

dict

Returns:

Response Syntax

{
    'UserDefinedFunctions': [
        {
            'FunctionName': 'string',
            'DatabaseName': 'string',
            'ClassName': 'string',
            'OwnerName': 'string',
            'FunctionType': 'REGULAR_FUNCTION'|'AGGREGATE_FUNCTION'|'STORED_PROCEDURE',
            'OwnerType': 'USER'|'ROLE'|'GROUP',
            'CreateTime': datetime(2015, 1, 1),
            'ResourceUris': [
                {
                    'ResourceType': 'JAR'|'FILE'|'ARCHIVE',
                    'Uri': 'string',
                    'LastModified': datetime(2015, 1, 1)
                },
            ],
            'ArtifactLocation': 'string',
            'GovernanceMode': 'IAM_ONLY'|'LAKE_FORMATION',
            'CatalogId': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) –

    • UserDefinedFunctions (list) –

      A list of requested function definitions.

      • (dict) –

        Represents the equivalent of a Hive user-defined function ( UDF) definition.

        • FunctionName (string) –

          The name of the function.

        • DatabaseName (string) –

          The name of the catalog database that contains the function.

        • ClassName (string) –

          The Java class that contains the function code.

        • OwnerName (string) –

          The owner of the function.

        • FunctionType (string) –

          The type of the function.

        • OwnerType (string) –

          The owner type.

        • CreateTime (datetime) –

          The time at which the function was created.

        • ResourceUris (list) –

          The resource URIs for the function.

          • (dict) –

            The URIs for function resources.

            • ResourceType (string) –

              The type of the resource.

            • Uri (string) –

              The URI for accessing the resource.

            • LastModified (datetime) –

              The time at which the resource was last modified in Amazon S3. Glue records this value when you create or update a function whose GovernanceMode is LAKE_FORMATION. Analytics engines use it to verify that the resource hasn’t changed. This is an output-only field.

        • ArtifactLocation (string) –

          The Amazon S3 location that contains the function’s artifacts. This location must be registered with Lake Formation. Glue returns this field only for functions whose GovernanceMode is LAKE_FORMATION.

        • GovernanceMode (string) –

          How access to the function is governed. IAM_ONLY means access is controlled by IAM permissions only. LAKE_FORMATION means Lake Formation permissions ( EXECUTE, DESCRIBE, ALTER, and DROP) also control who can run, describe, update, and delete the function.

        • CatalogId (string) –

          The ID of the Data Catalog in which the function resides.

    • NextToken (string) –

      A continuation token, if the list of functions returned does not include the last requested function.

Exceptions