Create Appointment
freshworks_crm.create_appointment
ActionCRM & salesconnection required
Calls the Freshworks CRM API with the connection's credentials.
Book an appointment. Freshworks requires a title and a start and end timestamp, and can attach it to a contact, sales account or deal.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- API key
- Providers
- Freshworks CRM
- Secret shape
- the API key, or {"api_key": "…"}
- Config it needs
- bundle_alias, domain, base_url
- Resolved by
- config.connection_id, else node.connection_id
Configuration
11 fields, 3 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
title The appointment title. | string | Yes | — | — | — |
from_date When the appointment starts, as a timestamp Freshworks accepts, or a date for an all-day appointment. | string | Yes | — | — | — |
end_date When the appointment ends, as a timestamp Freshworks accepts, or a date for an all-day appointment. | string | Yes | — | — | — |
description What the appointment is about. | string | No | — | — | — |
time_zone The time zone the appointment is scheduled in, as Freshworks names it. | string | No | — | — | — |
location Where the appointment takes place. | string | No | — | — | — |
targetable_type Which kind of record the appointment is created against. | string | No | — | one of "Contact", "SalesAccount", "Deal" | — |
targetable_id The Freshworks id of the record the appointment is created against. | string | Conditional | — | only with targetable_type | — |
attendees Who is attending, each {"attendee_type": …, "attendee_id": …}. Freshworks uses "FdMultitenant::User" for a CRM user and "Contact" for a contact. | array | No | — | array of object | — |
is_allday True for an all-day appointment, which makes the two dates plain dates. | boolean | No | false | — | — |
fields Any other Freshworks field names and values to send, merged over the fields named above. Use it for custom fields (the 'custom_field' object) and for anything this node does not name. | object | No | — | — | — |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"is_allday": false
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
appointment The appointment record, in the 'appointment' envelope Freshworks returns. | object | — |
appointment.id The Freshworks id of the appointment. | number | — |
appointment.from_date The start Freshworks stored, in UTC. | string | — |
appointment.end_date The end Freshworks stored, in UTC. | string | — |
{
"appointment": {
"end_date": "",
"from_date": "",
"id": 0
}
}See Create Appointment run in a workflow.
In a technical demo we add the Freshworks CRM connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.