--- title: "Execute a Function" url: https://docs.catalyst.zoho.com/en/sdk/android/v2/serverless/functions/execute-function/ description: "You can execute a Catalyst function in several ways, based on the HTTP request you pass with the function." last_updated: 2025-11-19T15:07:41Z service: Serverless type: general related_links: - name: "Functions" url: /en/serverless/help/functions/introduction - name: "Implementing Functions" url: /en/serverless/help/functions/implementation - name: "Execute Function - API" url: /en/api/code-reference/serverless/functions/execute-function/#ExecuteFunction --- # Execute a Function You can execute a [Catalyst Basic I/O function](https://docs.catalyst.zoho.com/en/serverless/help/functions/introduction) in any one of the ways given below, based on the HTTP request you pass with the function. You can pass the parameters to the function to be executed as the argument to a function execution method. This method differs for each HTTP request type. The `<FUNCTION_INSTANCE>` used in all the code sections below is the instance defined in the [Function Instance page](https://docs.catalyst.zoho.com/en/sdk/android/v2/serverless/functions/create-function-instance). ### Execute a GET function You can execute a function of the HTTP GET type by passing the parameters to the `executeGet()` method as a Hash map: ```bash <FUNCTION_INSTANCE>.executeGet( params: HashMap<String, Any>, success: (String) → Unit, failure: ((ZCatalystException) → Unit)? ): ZCatalystRequest<String>? ``` **Parameters**: * `params`: The parameters to be passed to the function as a Hash map A sample code snippet is shown below: ```bash ZCatalystApp.getInstance().getFunctionInstance(2823000000097020).executeGet( //Replace this with your Function ID hashMapOf(), { println(">> GET function executed successfully - $it") }, { println(">> GET function failed to execute - $it") } ) ``` ### Execute a PUT function You can execute a function of the HTTP PUT type by passing the parameters to the `executePut()` method as a Hash map. You can pass the payload in the PUT request to this method as a Hash map argument as well: ```bash <FUNCTION_INSTANCE>.executePut( params: HashMap<String, Any>, body: HashMap<String, Any>, success: (String) → Unit, failure: ((ZCatalystException) → Unit)? ): ZCatalystRequest<String>? ``` **Parameters**: * `params`: The parameters to be passed to the function as a Hash map * `body`: The data payload to be passed as a Hash map A sample code snippet is shown below: ```bash val body = HashMap<String, Any>() body.put("ROWID", "2823000000098012") body.put("Category", "Important") //Add your keys and values to a hash map ZCatalystApp.getInstance().getFunctionInstance(2823000000097114).executePut( //Replace this with your Function ID hashMapOf(), body, { println(" >> PUT function executed successfully - $it") }, { println(" >> PUT function failed to execute - $it") } ) ``` ### Execute a POST function You can execute a function of the HTTP POST type by passing the parameters to the `executePOST()` method as a Hash map. You can pass the payload in the POST request to this method as a Hash map argument as well: ```bash <FUNCTION_INSTANCE>.executePost( params: HashMap<String, Any> , body: HashMap<String, Any> , success: (String) → Unit, failure: ((ZCatalystException) → Unit)? ): ZCatalystRequest<String>? ``` **Parameters**: * `params`: The parameters to be passed to the function as a Hash map * `body`: The data payload to be passed as a Hash map A sample code snippet is shown below: ```bash val body = HashMap<String, Any>() body.put("Title", "Data Migration Tasks") body.put("Category", "Official") //Add your keys and values to a hash map ZCatalystApp.getInstance().getFunctionInstance(2823000000097089).executePost( //Replace this with your Function ID hashMapOf(), body, { println(" >> POST function executed successfully - $it") }, { println(" >> POST function failed to execute - $it") } ) ``` ### Execute a DELETE function You can execute a function of the HTTP DELETE type by passing the parameters to the `executeDelete()` method as a Hash map. You can pass the payload in the DELETE request to this method as a Hash map argument as well: ```bash <FUNCTION_INSTANCE>.executeDelete( params: HashMap<String, Any>, success: (String) → Unit, failure: ((ZCatalystException) → Unit)? ): ZCatalystRequest<String>? ``` **Parameters**: * `params`: The parameters to be passed to the function as a Hash map A sample code snippet is shown below: ```bash val body = HashMap<String, Any>() ZCatalystApp.getInstance().getFunctionInstance(2823000000097089).executeDelete( //Replace this with your Function ID hashMapOf() { println(" >> DELETE function executed successfully - $it") }, { println(" >> DELETE function failed to execute - $it") } ) ```