# List

Launch stage: GA

`GET /api/2.1/unity-catalog/functions`

List functions within the specified parent catalog and schema.
 If the user is a metastore admin, all functions are returned in the output list.
 Otherwise, the user must have the **USE_CATALOG** privilege on the catalog and the **USE_SCHEMA** privilege on the schema, and the output list contains only functions for which either the user has the **EXECUTE** privilege or the user is the owner.
 There is no guarantee of a specific ordering of the elements in the array.

 NOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.

 PAGINATION BEHAVIOR: When using pagination (max_results >= 0), a page may contain zero results while still providing a next_page_token.
 Clients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.

API scopes: unity-catalog

## Query parameters

- `catalog_name` (string, optional)
  Name of parent catalog for functions of interest.
- `schema_name` (string, optional)
  Parent schema of functions.
- `include_browse` (boolean, optional)
  Whether to include functions in the response for which the principal can only access selective metadata for
- `max_results` (int32, optional)
  Maximum number of functions to return.
   If not set, all the functions are returned (not recommended).
   - when set to a value greater than 0, the page length is the minimum of this value and a server configured value;
   - when set to 0, the page length is set to a server configured value (recommended);
   - when set to a value less than 0, an invalid parameter error is returned;
  Constraints: `<= 1000`
- `page_token` (string, optional)
  Opaque pagination token to go to next page based on previous query.

## Returns

Returns a list of FunctionInfo objects.

## Response

```json
{
  "functions": [
    {
      "name": "string",
      "catalog_name": "string",
      "schema_name": "string",
      "input_params": {},
      "data_type": "string",
      "full_data_type": "string",
      "routine_body": "string",
      "routine_definition": "string",
      "parameter_style": "string",
      "is_deterministic": true,
      "sql_data_access": "string",
      "is_null_call": true,
      "security_type": "string",
      "specific_name": "string",
      "return_params": {},
      "external_name": "string",
      "external_language": "string",
      "sql_path": "string",
      "owner": "string",
      "comment": "string",
      "properties": "string",
      "routine_dependencies": {},
      "metastore_id": "string",
      "full_name": "string",
      "created_at": 0,
      "created_by": "string",
      "updated_at": 0,
      "updated_by": "string",
      "function_id": "string",
      "browse_only": true
    }
  ],
  "next_page_token": "string"
}
```

