Appbricx
Docs
FeaturesPricingStart free

Get started

OverviewWhat Appbricx isQuickstart with a coding agentQuickstart with the builderCore concepts

Guides

Data and tablesAccess and rolesBusiness rulesSign-inCustom screensRealtime and topicsWorkflows, schedules and webhooksServer functionsAI in your appPaymentsFilesMessagesIntegrationsVerifyPublishing, domains and rollbackOperating your appExport and self-hostSelf-host install

Tutorials

Build a booking app with Claude CodeMulti-user todo listClient portalSlack on new sign-upTemplates

Reference

Reference homeFrontend SDKHTTP APIMCP toolsCLIIntegrations catalogContract formatAI key resolutionRun Appbricx locally

Zendesk

Create, update, and search tickets, and add comments in Zendesk.

Customer supportAPI key13 actionsAll integrations

On this page
  1. Connect
  2. Call it from a workflow
  3. Actions (13)
  4. create-ticket
  5. find-tickets
  6. add-comment-to-ticket
  7. add-tag-to-ticket
  8. create-organization
  9. create-user
  10. custom_api_call
  11. delete-user
  12. find-organization
  13. find-user
  14. update-organization
  15. update-ticket
  16. update-user
  17. Details

Connect

Auth type: API key (secret_text). Paste the API key (or token) from the provider's settings into the connect dialog. It is encrypted at rest and only decrypted on the server when an action runs.

  • In the editor: Backend panel, Integrations tab, then Connect. This connects it for the project.
  • For every project in a workspace: Workspace settings, Integrations.
  • Owners and admins choose which integrations members may connect in the admin panel (Integrations tab), and can attach their own OAuth app there.

Call it from a workflow

Pass the action name and its input. The call resolves with { success, output, error? }; a missing connection resolves with success false and the reason. See ctx.integrations.invoke and ctx.integrations.call.

Native workflow
// .workflow.js (native ctx)
export async function run(ctx) {
  const res = await ctx.integrations.invoke("zendesk", "create-ticket", {
    "organization_id": "<organization_id>"
  });
  if (!res.success) throw new Error(res.error);
  ctx.log.info("Zendesk answered", { output: res.output });
}
defineWorkflow module
// defineWorkflow module (@app/sdk ctx)
import { defineWorkflow } from "@app/sdk";

export default defineWorkflow({
  id: "zendesk-create-ticket",
  name: "Zendesk: Create Ticket",
  description: "Calls Zendesk when a row is created.",
  trigger: { type: "entity_event", entity: "tickets", event: "created" },
  async run(ctx, event) {
    const res = await ctx.integrations.call("zendesk", {
      "action": "create-ticket",
      "organization_id": "<organization_id>"
    }) as { success: boolean; error?: string };
    if (!res.success) throw new Error(res.error);
  },
});
From an app (connector proxy)
curl -X POST "$APP_ORIGIN/__appbricx/connector-proxy/zendesk/create-ticket" \
  -H "Authorization: Bearer $APP_KEY" \
  -H "content-type: application/json" \
  -d '{"props":{"organization_id":"<organization_id>"}}'

Actions

create-ticketin catalog

Create Ticket. Create a new ticket in Zendesk.

InputTypeDescription
subjectoptionaltextThe subject of the ticket (optional - will use first comment text if not provided)
comment_bodyoptionallong textThe comment body (text). Use this for plain text comments.
comment_html_bodyoptionallong textThe comment body (HTML). Use this for HTML formatted comments. If provided, this takes precedence over Comment Body.
requester_emailoptionaltextEmail address of the ticket requester. If not provided, the authenticated user will be the requester.
requester_nameoptionaltextName of the ticket requester (used when creating a new user).
assignee_emailoptionaltextEmail address of the agent to assign the ticket to.
priorityoptionalone of "low" | "normal" | "high" | "urgent"The priority of the ticket.
typeoptionalone of "problem" | "incident" | "question" | "task"The type of ticket.
statusoptionalone of "new" | "open" | "pending" | "hold" | "solved" | "closed"The status of the ticket.
tagsoptionalarrayArray of tags to apply to the ticket.
organization_idrequiredid (picked from your account)Select the organization to work with
group_idoptionalid (picked from your account)Select the group to assign
external_idoptionaltextAn external ID for the ticket (useful for integrations).
collaborator_emailsoptionalarrayArray of email addresses to add as collaborators.
follower_emailsoptionalarrayArray of email addresses to add as followers.
due_atoptionaldate-time (ISO)The date and time when the ticket is due.
custom_fieldsoptionalobject (depends on other props)Custom ticket field values
comment_publicoptionalbooleanWhether the comment is public (visible to the requester). Defaults to true.
brand_idoptionalid (picked from your account)Select the brand to work with
forum_topic_idoptionalnumberThe ID of the forum topic associated with the ticket.

find-ticketsin catalog

Find Ticket(s). Search tickets by ID, field, or content.

InputTypeDescription
search_typerequiredone of "id" | "status" | "priority" | "type" | "tag" | "requester" | "assignee" | "content" | "custom"Choose how to search for tickets
timeFilteroptionalarrayDate Time Filter
ticket_idoptionaltextThe ID of the ticket to find
statusoptionalone of "new" | "open" | "pending" | "hold" | "solved" | "closed"Search tickets by status
priorityoptionalone of "low" | "normal" | "high" | "urgent"Search tickets by priority
ticket_typeoptionalone of "problem" | "incident" | "question" | "task"Search tickets by type
tagoptionaltextSearch tickets containing this tag
requester_emailoptionaltextSearch tickets by requester email address
assignee_emailoptionaltextSearch tickets by assignee email address
contentoptionaltextSearch in ticket subject and content
custom_queryoptionallong textCustom search query using Zendesk search syntax (e.g., "type:ticket status:open priority:high")
sort_byoptionalone of "relevance" | "created_at" | "updated_at" | "priority" | "status" | "ticket_type"How to sort the results
sort_orderoptionalone of "desc" | "asc"Sort order for results

add-comment-to-ticket

Add Comment to Ticket. Append a public/private comment to a ticket.

InputTypeDescription
ticket_idrequiredid (picked from your account)Select the ticket to work with
comment_bodyoptionallong textThe comment text content
comment_html_bodyoptionallong textHTML formatted comment (takes precedence over text)
publicoptionalbooleanMake comment visible to requester (default: true)
author_emailoptionaltextEmail of comment author (defaults to authenticated user)
uploadsoptionalarrayUpload tokens for file attachments
via_followup_source_idoptionalnumberOriginal ticket ID if this is from a follow-up

add-tag-to-ticket

Add Tag to Ticket. Apply one or more tags to a ticket.

InputTypeDescription
ticket_idrequiredid (picked from your account)Select the ticket to work with
tagsrequiredarrayTags to add to the ticket (adds to existing tags)
safe_updateoptionalbooleanPrevent tag loss from concurrent updates
updated_stampoptionaltextTicket timestamp from updated_at field for collision prevention

create-organization

Create Organization. Create a new organization record.

InputTypeDescription
namerequiredtextUnique name for the organization
detailsoptionallong textAdditional details about the organization
notesoptionallong textInternal notes about the organization
external_idoptionaltextExternal ID for integration purposes
group_idoptionalid (picked from your account)Select the group to assign
domain_namesoptionalarrayDomain names associated with the organization
tagsoptionalarrayTags to apply to the organization
organization_fieldsoptionalobject (depends on other props)Custom organization field values
shared_ticketsoptionalbooleanAllow users to see each other's tickets
shared_commentsoptionalbooleanAllow users to see each other's comments

create-user

Create User. Add a new user to the Zendesk instance.

InputTypeDescription
namerequiredtextThe name of the user
emailoptionaltextThe primary email address of the user
roleoptionalone of "end-user" | "agent" | "admin"The role of the user. Defaults to "end-user" if not specified.
custom_role_idoptionalid (picked from your account)Select the custom role for the agent
organization_idrequiredid (picked from your account)Select the organization to work with
organization_nameoptionaltextCreate and associate user with a new organization by name (alternative to Organization ID)
phoneoptionaltextThe phone number of the user
aliasoptionaltextAn alias displayed to end users
detailsoptionallong textAdditional details about the user
notesoptionallong textInternal notes about the user
external_idoptionaltextA unique external ID for the user (useful for integrations)
time_zoneoptionaltextThe time zone of the user (e.g., "America/New_York")
localeoptionaltextThe locale of the user (e.g., "en-US")
verifiedoptionalbooleanWhether the user is verified
activeoptionalbooleanWhether the user is active. Defaults to true.
sharedoptionalbooleanWhether the user is shared from a different Zendesk Support instance
shared_agentoptionalbooleanWhether the user is a shared agent from a different Zendesk Support instance
moderatoroptionalbooleanWhether the user has forum moderation capabilities
suspendedoptionalbooleanWhether the user is suspended
restricted_agentoptionalbooleanWhether the agent has restrictions on what tickets they can access

custom_api_call

Custom API Call. Make a custom API call to a specific endpoint

InputTypeDescription
urlrequiredobject (depends on other props)url
methodrequiredone of "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | "HEAD"Method
headersrequiredobjectAuthorization headers are injected automatically from your connection.
queryParamsrequiredobjectQuery Parameters
body_typeoptionalone of "none" | "json" | "form_data" | "raw"Body Type
bodyoptionalobject (depends on other props)Body
response_is_binaryoptionalbooleanEnable for files like PDFs, images, etc.
failsafeoptionalbooleanNo Error on Failure
timeoutoptionalnumberTimeout (in seconds)
followRedirectsoptionalbooleanFollow redirects

delete-user

Delete User. Remove a user and associated records from the account.

InputTypeDescription
user_idrequiredid (picked from your account)Select the user to work with
confirmationrequiredbooleanI understand that deleted users are not recoverable and this action cannot be undone.

find-organization

Find Organization(s). Search organizations by name, domain, external ID, or other criteria.

InputTypeDescription
search_typerequiredone of "name" | "domain" | "external_id" | "tag" | "details" | "custom"Choose how to search for organizations
nameoptionaltextThe name of the organization to search for
domainoptionaltextSearch organizations by domain name
external_idoptionaltextSearch organizations by external ID
tagoptionaltextSearch organizations containing this tag
detailsoptionaltextSearch in organization details/notes
custom_queryoptionallong textCustom search query using Zendesk search syntax (e.g., "type:organization domain:example.com")
sort_byoptionalone of "relevance" | "created_at" | "updated_at"How to sort the results
sort_orderoptionalone of "desc" | "asc"Sort order for results

find-user

Find User(s). Search users by email, name, role, or other criteria.

InputTypeDescription
search_typerequiredone of "email" | "name" | "role" | "organization" | "tag" | "external_id" | "custom"Choose how to search for users
emailoptionaltextThe email address of the user to search for
nameoptionaltextThe name of the user to search for
roleoptionalone of "end-user" | "agent" | "admin"Search users by role
organizationoptionaltextSearch users by organization name
tagoptionaltextSearch users containing this tag
external_idoptionaltextSearch users by external ID
custom_queryoptionallong textCustom search query using Zendesk search syntax (e.g., "type:user role:agent")
sort_byoptionalone of "relevance" | "created_at" | "updated_at"How to sort the results
sort_orderoptionalone of "desc" | "asc"Sort order for results

update-organization

Update Organization. Update existing organization fields.

InputTypeDescription
organization_idrequiredid (picked from your account)Select the organization to work with
nameoptionaltextNew name for the organization (must be unique)
detailsoptionallong textAdditional details about the organization
notesoptionallong textInternal notes about the organization
external_idoptionaltextExternal ID for integration purposes
group_idoptionalid (picked from your account)Select the group to assign
domain_namesoptionalarrayDomain names for the organization (replaces all existing)
tagsoptionalarrayTags for the organization (replaces all existing)
organization_fieldsoptionalobject (depends on other props)Custom organization field values
shared_ticketsoptionalbooleanAllow users to see each other's tickets
shared_commentsoptionalbooleanAllow users to see each other's comments

update-ticket

Update Ticket. Modify ticket fields or status via API call.

InputTypeDescription
ticket_idrequiredid (picked from your account)Select the ticket to work with
subjectoptionaltextUpdate the subject of the ticket
comment_bodyoptionallong textAdd a comment to the ticket (plain text)
comment_html_bodyoptionallong textAdd a comment to the ticket (HTML). If provided, this takes precedence over Comment Body.
comment_publicoptionalbooleanWhether the comment is public (visible to the requester). Defaults to true.
assignee_emailoptionaltextEmail address of the agent to assign the ticket to
priorityoptionalone of "low" | "normal" | "high" | "urgent"Update the priority of the ticket
typeoptionalone of "problem" | "incident" | "question" | "task"Update the type of ticket
statusoptionalone of "new" | "open" | "pending" | "hold" | "solved" | "closed"Update the status of the ticket
tagsoptionalarrayReplace all tags with this array. Use "Add Tag to Ticket" action to add tags without replacing existing ones.
organization_idrequiredid (picked from your account)Select the organization to work with
group_idoptionalid (picked from your account)Select the group to assign
external_idoptionaltextUpdate the external ID for the ticket
due_atoptionaldate-time (ISO)Update the date and time when the ticket is due
custom_fieldsoptionalobject (depends on other props)Update custom ticket field values
custom_status_idoptionalnumberSet a custom status ID for the ticket
forum_topic_idoptionalnumberUpdate the forum topic associated with the ticket
collaborator_emailsoptionalarrayReplace collaborators with this array of email addresses
follower_emailsoptionalarrayReplace followers with this array of email addresses
requester_emailoptionaltextUpdate the requester of the ticket

update-user

Update User. Update existing user fields.

InputTypeDescription
user_idrequiredtextThe ID of the user to update.
nameoptionaltextNew name for the user.
emailoptionaltextNew email address for the user.
phoneoptionaltextNew phone number for the user.
tagsoptionalarrayTags for the user. This replaces all existing tags.
user_fieldsoptionalobject (depends on other props)Custom user field values.

Details

Id
zendesk
Category
Customer support
Tags
helpdesk, tickets, support, customer-service
Package
@activepieces/piece-zendesk@0.2.6
Tier
Built in

On this page

  1. Connect
  2. Call it from a workflow
  3. Actions (13)
  4. create-ticket
  5. find-tickets
  6. add-comment-to-ticket
  7. add-tag-to-ticket
  8. create-organization
  9. create-user
  10. custom_api_call
  11. delete-user
  12. find-organization
  13. find-user
  14. update-organization
  15. update-ticket
  16. update-user
  17. Details
Appbricx

The backend, runtime and hosting for apps your coding agent builds. On our cloud, in yours, or on your own servers.

Features

Coding agents and MCPVerify testingBuilder consolePostgres databaseData APIRealtimeRow-level securitySign-in and authPaymentsWorkflows and jobsAI in your appIntegrationsBackups and rollbackHosting and domainsSelf-host and exportAll features

Product

ShowcasePricingFor coding agentsTemplatesPrivate cloudBring your own AI keyFAQ

Compare

Appbricx vs SupabaseLovable alternativeBolt alternativeFor freelancersFor agencies

Resources

DocumentationReferenceBlogSupportContact

© 2026 Appbricx. All rights reserved.

TermsPrivacyCookiesAcceptable Use