Skip to main content
DELETE
/
automation
/
actions
/
2026-03
/
{appId}
/
{definitionId}
/
functions
/
{functionType}
/
{functionId}
Archive a function for a definition
curl --request DELETE \
  --url https://api.hubapi.com/automation/actions/2026-03/{appId}/{definitionId}/functions/{functionType}/{functionId} \
  --header 'Authorization: Bearer <token>'
import requests

url = "https://api.hubapi.com/automation/actions/2026-03/{appId}/{definitionId}/functions/{functionType}/{functionId}"

headers = {"Authorization": "Bearer <token>"}

response = requests.delete(url, headers=headers)

print(response.text)
const options = {method: 'DELETE', headers: {Authorization: 'Bearer <token>'}};

fetch('https://api.hubapi.com/automation/actions/2026-03/{appId}/{definitionId}/functions/{functionType}/{functionId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://api.hubapi.com/automation/actions/2026-03/{appId}/{definitionId}/functions/{functionType}/{functionId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"net/http"
"io"
)

func main() {

url := "https://api.hubapi.com/automation/actions/2026-03/{appId}/{definitionId}/functions/{functionType}/{functionId}"

req, _ := http.NewRequest("DELETE", url, nil)

req.Header.Add("Authorization", "Bearer <token>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.delete("https://api.hubapi.com/automation/actions/2026-03/{appId}/{definitionId}/functions/{functionType}/{functionId}")
.header("Authorization", "Bearer <token>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.hubapi.com/automation/actions/2026-03/{appId}/{definitionId}/functions/{functionType}/{functionId}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
This response has no body data.
{
"message": "Invalid input (details will vary based on the error)",
"correlationId": "aeb5f871-7f07-4993-9211-075dc63e7cbf",
"category": "VALIDATION_ERROR",
"links": {
"knowledge-base": "https://www.hubspot.com/products/service/knowledge-base"
}
}

Supported products

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Path Parameters

appId
integer<int32>
required

The ID of the application associated with the custom workflow action.

definitionId
string
required

The ID of the custom workflow action definition.

functionId
string
required

The ID of the specific function within the workflow action definition.

functionType
enum<string>
required

The type of function, accepted values are: POST_ACTION_EXECUTION, POST_FETCH_OPTIONS, PRE_ACTION_EXECUTION, PRE_FETCH_OPTIONS.

Available options:
POST_ACTION_EXECUTION,
POST_FETCH_OPTIONS,
PRE_ACTION_EXECUTION,
PRE_FETCH_OPTIONS

Response

Last modified on March 31, 2026