πŸš€ More Vendrato tools: FunnelDupe β€’ GHL Utils
⚑

List Macros in Zendesk

n8n-nodes-base.httpRequest

Retrieves all macros available to the current user. Macros are predefined actions that agents can apply to tickets.

zendesk macros automation tickets support helpdesk list
App Zendesk
Category api integration
Version 1.0.0
Author Community
Credentials HTTP Header Auth (API Token)

πŸ’‘ Use Cases

πŸ“š API Documentation

Reference documentation for this API endpoint:

πŸ”— https://developer.zendesk.com/api-reference/ticketing/business-rules/macros/#list-macros β†—

πŸ“‹ Node Configuration

{
  "nodes": [
    {
      "parameters": {
        "content": "## ⚑ List Macros in Zendesk\n\n**Usage:**\nRetrieves all macros available to the current user.\n\n**Required Input:**\nNone - retrieves all accessible macros\n\n**Optional Query Parameters:**\n- `access`: Filter by access (personal, shared, account)\n- `active`: Filter by active status (true/false)\n- `category`: Filter by category ID\n- `group_id`: Filter by group\n- `sort_by`: alphabetical, created_at, updated_at, usage_1h, usage_24h, usage_7d, usage_30d\n\n**Setup:**\n1. Configure HTTP Header Auth credentials\n2. Replace `your-subdomain` with your Zendesk subdomain\n\n**Output:**\nReturns array of macro objects with id, title, actions, and conditions.",
        "height": 238,
        "width": 389,
        "color": 4
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        96,
        332
      ],
      "typeVersion": 1,
      "id": "zendesk-list-macros-sticky",
      "name": "Sticky Note"
    },
    {
      "parameters": {
        "method": "GET",
        "url": "https://your-subdomain.zendesk.com/api/v2/macros.json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "options": {}
      },
      "id": "zendesk-list-macros-node",
      "name": "List Macros in Zendesk",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.1,
      "position": [
        368,
        400
      ],
      "credentials": {
        "httpHeaderAuth": {
          "id": "zendesk-auth",
          "name": "Zendesk API Auth"
        }
      }
    }
  ],
  "connections": {},
  "pinData": {},
  "meta": {
    "templateCredsSetupCompleted": true,
    "instanceId": "zendesk-flowkit-template"
  }
}
[
  {
    "id": "8746d367-d57e-43fc-9da4-e9a49b63379d",
    "meta": {
      "name": "API Call Node",
      "id": "api-call",
      "icon": {
        "svg": "",
        "type": "SVG"
      },
      "description": "## ⚑ List Macros in Zendesk  **Usage:**"
    },
    "label": "List Macros in Zendesk",
    "dependencies": {
      "node-fetch": "3.3.2"
    },
    "script": "import fetch from \"node-fetch\";\nexport default async function apiCall({\n    url,\n    method,\n    contentType,\n    authorization,\n    body,\n    shouldAwait,\n    queryParams,\n    customHeaders\n}: NodeInputs, {\n    logging\n}: NodeScriptOptions) : NodeOutput  {\n    const headers = {\n        \"Content-Type\": contentType,\n        ...customHeaders\n    };\n    if (authorization) headers[\"Authorization\"] = authorization;\n\n    let queryParamsString = '';\n    if (queryParams) {\n        queryParamsString = '?' + new URLSearchParams(queryParams).toString();\n    }\n\n    const fetchOptions = {\n        method,\n        headers\n    };\n\n    if (method !== 'GET') {\n        fetchOptions.body = JSON.stringify(body);\n    }\n\n    const fetchPromise = fetch(url + queryParamsString, fetchOptions);\n\n    if (!shouldAwait) {\n        return {\n            data: null\n        };\n    }\n\n    const response = await fetchPromise;\n    const data = await response.json();\n    return {\n        status: response.status,\n        data\n    };\n}",
    "inputs": {
      "properties": {
        "method": {
          "type": "string",
          "description": "The HTTP method to use for the API call",
          "enum": [
            "GET",
            "POST",
            "PUT",
            "DELETE",
            "PATCH"
          ],
          "default": "GET",
          "title": "HTTP Method",
          "buildship": {
            "options": [
              {
                "label": "GET",
                "value": "GET"
              },
              {
                "value": "POST",
                "label": "POST"
              },
              {
                "value": "PUT",
                "label": "PUT"
              },
              {
                "label": "DELETE",
                "value": "DELETE"
              },
              {
                "label": "PATCH",
                "value": "PATCH"
              }
            ],
            "index": 0,
            "sensitive": false
          }
        },
        "url": {
          "description": "The URL of the API endpoint",
          "title": "URL",
          "type": "string",
          "buildship": {
            "index": 1
          }
        },
        "authorization": {
          "description": "The authorization header for the API call, if required (e.g., Bearer or Basic token)",
          "type": "string",
          "title": "Authorization",
          "buildship": {
            "sensitive": true,
            "index": 2
          }
        },
        "queryParams": {
          "default": {},
          "description": "The query parameters for the API call",
          "type": "object",
          "title": "Query Parameters",
          "buildship": {
            "index": 3,
            "sensitive": false
          }
        },
        "body": {
          "type": "object",
          "buildship": {
            "index": 4
          },
          "description": "The body to send with the API call",
          "title": "Body"
        },
        "contentType": {
          "enum": [
            "application/json",
            "application/x-www-form-urlencoded",
            "multipart/form-data",
            "text/plain"
          ],
          "description": "The content type of the API call",
          "title": "Content Type",
          "buildship": {
            "index": 5,
            "options": [
              {
                "label": "application/json",
                "value": "application/json"
              },
              {
                "value": "application/x-www-form-urlencoded",
                "label": "application/x-www-form-urlencoded"
              },
              {
                "label": "multipart/form-data",
                "value": "multipart/form-data"
              },
              {
                "label": "text/plain",
                "value": "text/plain"
              }
            ]
          },
          "type": "string"
        },
        "shouldAwait": {
          "description": "Whether to wait for the request to complete or not",
          "title": "Await?",
          "type": "boolean",
          "buildship": {
            "sensitive": false,
            "index": 6
          }
        },
        "customHeaders": {
          "type": "object",
          "description": "Additional custom headers for the API call",
          "title": "Custom Headers",
          "buildship": {
            "index": 7,
            "sensitive": false
          }
        }
      },
      "type": "object",
      "required": [
        "url",
        "shouldAwait",
        "method"
      ]
    },
    "integrations": [],
    "name": "API Call Node",
    "output": {
      "buildship": {},
      "properties": {
        "status": {
          "buildship": {
            "index": 0
          },
          "type": "number",
          "description": "The HTTP status of the API response",
          "title": "Status"
        },
        "data": {
          "buildship": {
            "index": 1
          },
          "title": "Data",
          "type": "object",
          "description": "The data object from the API response"
        }
      },
      "type": "object"
    },
    "isCollapsed": false,
    "type": "script",
    "values": {
      "method": "GET",
      "url": "https://your-subdomain.zendesk.com/api/v2/macros.json",
      "authorization": {
        "_$expression_": "`Bearer ${(await getSecret(\"ANONYMIZED_SECRET\"))}`",
        "type": "javascript",
        "hasErrors": false
      },
      "queryParams": {},
      "body": {},
      "contentType": "application/json",
      "shouldAwait": true,
      "customHeaders": {
        "Content-Type": "application/json"
      }
    }
  }
]
{
  "subflows": [
    {
      "flow": [
        {
          "id": 410,
          "module": "http:ActionSendDataBasicAuth",
          "version": 3,
          "parameters": {
            "key": "ANONYMIZED_CREDENTIALS",
            "handleErrors": false,
            "useNewZLibDeCompress": true
          },
          "mapper": {
            "ca": "",
            "qs": [],
            "url": "https://your-subdomain.zendesk.com/api/v2/macros.json",
            "data": "",
            "gzip": true,
            "method": "get",
            "headers": [
              {
                "name": "Content-Type",
                "value": "application/json"
              },
              {
                "name": "Authorization",
                "value": "Bearer {{ANONYMIZED_TOKEN}}"
              }
            ],
            "timeout": "",
            "useMtls": false,
            "bodyType": "raw",
            "contentType": "application/json",
            "serializeUrl": false,
            "shareCookies": false,
            "parseResponse": true,
            "followRedirect": true,
            "useQuerystring": false,
            "followAllRedirects": false,
            "rejectUnauthorized": true
          },
          "metadata": {
            "designer": {
              "x": 300,
              "y": 300,
              "name": "List Macros in Zendesk"
            },
            "restore": {
              "expect": {
                "qs": {
                  "mode": "chose",
                  "items": []
                },
                "method": {
                  "mode": "chose",
                  "label": "GET"
                },
                "headers": {
                  "mode": "chose",
                  "items": [
                    null,
                    null
                  ]
                },
                "bodyType": {
                  "label": "Raw"
                },
                "contentType": {
                  "label": "JSON (application/json)"
                }
              },
              "parameters": {
                "key": {
                  "label": "ANONYMIZED_CREDENTIALS"
                }
              }
            },
            "parameters": [
              {
                "name": "key",
                "type": "keychain:basicauth",
                "label": "Credentials",
                "required": true
              },
              {
                "name": "handleErrors",
                "type": "boolean",
                "label": "Evaluate all states as errors (except for 2xx and 3xx )",
                "required": true
              },
              {
                "name": "useNewZLibDeCompress",
                "type": "hidden"
              }
            ],
            "expect": [
              {
                "name": "url",
                "type": "url",
                "label": "URL",
                "required": true
              },
              {
                "name": "serializeUrl",
                "type": "boolean",
                "label": "Serialize URL",
                "required": true
              },
              {
                "name": "method",
                "type": "select",
                "label": "Method",
                "required": true,
                "validate": {
                  "enum": [
                    "get",
                    "head",
                    "post",
                    "put",
                    "patch",
                    "delete",
                    "options"
                  ]
                }
              },
              {
                "name": "headers",
                "spec": [
                  {
                    "name": "name",
                    "type": "text",
                    "label": "Name",
                    "required": true
                  },
                  {
                    "name": "value",
                    "type": "text",
                    "label": "Value"
                  }
                ],
                "type": "array",
                "label": "Headers"
              },
              {
                "name": "qs",
                "spec": [
                  {
                    "name": "name",
                    "type": "text",
                    "label": "Name",
                    "required": true
                  },
                  {
                    "name": "value",
                    "type": "text",
                    "label": "Value"
                  }
                ],
                "type": "array",
                "label": "Query String"
              },
              {
                "name": "bodyType",
                "type": "select",
                "label": "Body type",
                "validate": {
                  "enum": [
                    "raw",
                    "x_www_form_urlencoded",
                    "multipart_form_data"
                  ]
                }
              },
              {
                "name": "parseResponse",
                "type": "boolean",
                "label": "Parse response",
                "required": true
              },
              {
                "name": "contentType",
                "type": "select",
                "label": "Content type",
                "validate": {
                  "enum": [
                    "text/plain",
                    "application/json",
                    "application/xml",
                    "text/xml",
                    "text/html",
                    "custom"
                  ]
                }
              },
              {
                "name": "data",
                "type": "buffer",
                "label": "Request content"
              }
            ]
          }
        }
      ]
    }
  ],
  "metadata": {
    "version": 1
  }
}
← Browse all nodes