# Chatfuel Public API operations

174 of 222 operations (kind: mutation). Open one for its signature, role, errors and the reference section with an example request. `Bot.x` fields are read through `bot(id:)`, `CurrentUserAccount.x` through `currentUser`.

| Operation | Kind | Role | Description |
|---|---|---|---|
| [`botUpdateTimezone`](https://chatfuel.com/docs/api/v1/operations/botUpdateTimezone) | mutation | Personal token only (Admin) | IANA timezone, for example "Europe/Madrid". |
| [`botUpdateCountryCode`](https://chatfuel.com/docs/api/v1/operations/botUpdateCountryCode) | mutation | Personal token only (Admin) | Two-letter country code. |
| [`botUpdateIndustry`](https://chatfuel.com/docs/api/v1/operations/botUpdateIndustry) | mutation | Personal token only (Admin) |  |
| [`renameBot`](https://chatfuel.com/docs/api/v1/operations/renameBot) | mutation | Personal token only |  |
| [`botUpdateRolesConfig`](https://chatfuel.com/docs/api/v1/operations/botUpdateRolesConfig) | mutation | Personal token only | What Editors and Agents may do in this bot. |
| [`botSetOpenAIModel`](https://chatfuel.com/docs/api/v1/operations/botSetOpenAIModel) | mutation | Personal token only | Only models from Bot.openAIModelOptions are accepted. |
| [`botUnsetOpenAIModel`](https://chatfuel.com/docs/api/v1/operations/botUnsetOpenAIModel) | mutation | Personal token only | Returns the bot to the default model. |
| [`botResetAPIToken`](https://chatfuel.com/docs/api/v1/operations/botResetAPIToken) | mutation | Personal token only | Resets the legacy bot API key from Settings → API. |
| [`updateUserOpenedBotDate`](https://chatfuel.com/docs/api/v1/operations/updateUserOpenedBotDate) | mutation | Personal token only | Marks the bot as recently opened for sorting by LastOpenedAt. |
| [`createWorkspaceAndBot`](https://chatfuel.com/docs/api/v1/operations/createWorkspaceAndBot) | mutation | Personal token only | Creates a new workspace with one bot in it. |
| [`workspaceCreateBot`](https://chatfuel.com/docs/api/v1/operations/workspaceCreateBot) | mutation | Personal token only | Creates a bot in an existing workspace. |
| [`deleteBot`](https://chatfuel.com/docs/api/v1/operations/deleteBot) | mutation | Personal token only | Deletes the bot and all of its virtual users. |
| [`workspaceCreate`](https://chatfuel.com/docs/api/v1/operations/workspaceCreate) | mutation | Personal token only | Creates an empty workspace with a default title. |
| [`workspaceRename`](https://chatfuel.com/docs/api/v1/operations/workspaceRename) | mutation |  |  |
| [`workspaceTransferBot`](https://chatfuel.com/docs/api/v1/operations/workspaceTransferBot) | mutation |  |  |
| [`workspaceDelete`](https://chatfuel.com/docs/api/v1/operations/workspaceDelete) | mutation |  | Only an empty workspace without an active paid subscription can be deleted. |
| [`setUserDashboardLocale`](https://chatfuel.com/docs/api/v1/operations/setUserDashboardLocale) | mutation | Personal token only | Language of the Chatfuel dashboard for your account. |
| [`createVirtualUser`](https://chatfuel.com/docs/api/v1/operations/createVirtualUser) | mutation |  | Creates a virtual user and returns its token once. Role: Editor or Agent. Errors: VirtualUserRoleNotAllowed, VirtualUserNameInvalid, VirtualUsersLimitReached. |
| [`regenerateVirtualUserToken`](https://chatfuel.com/docs/api/v1/operations/regenerateVirtualUserToken) | mutation |  | Revokes the current token of a virtual user and returns a new one. Errors: NotVirtualUser. |
| [`changeBotMemberRoleV2`](https://chatfuel.com/docs/api/v1/operations/changeBotMemberRoleV2) | mutation |  | Changes a member's role. A virtual user can only be switched between Editor and Agent. Errors: CustomRoleNotSupported, VirtualUserRoleNotAllowed. |
| [`removeMemberFromBot`](https://chatfuel.com/docs/api/v1/operations/removeMemberFromBot) | mutation |  | Removes a member. For a virtual user this deletes the account and its token. |
| [`createBotInviteV2`](https://chatfuel.com/docs/api/v1/operations/createBotInviteV2) | mutation |  | Creates an invite link for a human teammate. Errors: CustomRoleNotSupported. |
| [`botInviteDelete`](https://chatfuel.com/docs/api/v1/operations/botInviteDelete) | mutation |  |  |
| [`leaveBot`](https://chatfuel.com/docs/api/v1/operations/leaveBot) | mutation |  | Leaves a bot you are a member of. Not available to virtual users (VirtualUserNotAllowed). |
| [`contactUpdateName`](https://chatfuel.com/docs/api/v1/operations/contactUpdateName) | mutation | Editor | Errors: ContactDoesNotExist, ContactNameTooLong, ContactNameRequired. |
| [`contactAttributeUpdate`](https://chatfuel.com/docs/api/v1/operations/contactAttributeUpdate) | mutation | Editor | Creates or updates a custom attribute. System attributes can't be changed (SystemAttributeUpdateNotAllowed). |
| [`contactAttributeDelete`](https://chatfuel.com/docs/api/v1/operations/contactAttributeDelete) | mutation | Editor | Deletes a custom attribute value from the contact. |
| [`contactSetNote`](https://chatfuel.com/docs/api/v1/operations/contactSetNote) | mutation | Editor | A free-text note shown on the contact card and in bookings. Errors: ContactNoteTooLong. |
| [`contactSetAssignee`](https://chatfuel.com/docs/api/v1/operations/contactSetAssignee) | mutation | Agent | The person must have access to the bot's contacts (AssigneeHasNoAccess). |
| [`contactSetFuelyAIAssignee`](https://chatfuel.com/docs/api/v1/operations/contactSetFuelyAIAssignee) | mutation | Agent | Hands the contact to Fuely AI. |
| [`contactRemoveAssignee`](https://chatfuel.com/docs/api/v1/operations/contactRemoveAssignee) | mutation | Agent |  |
| [`contactSetSalesStage`](https://chatfuel.com/docs/api/v1/operations/contactSetSalesStage) | mutation | Agent | Moves the contact on the Leads board. |
| [`whatsappContactCreateV2`](https://chatfuel.com/docs/api/v1/operations/whatsappContactCreateV2) | mutation | Editor | Creates a WhatsApp contact by phone number for a calendar booking (source: CalendarBooking). |
| [`botAttributeCreateDefaultVal`](https://chatfuel.com/docs/api/v1/operations/botAttributeCreateDefaultVal) | mutation |  |  |
| [`botAttributeUpdateDefaultVal`](https://chatfuel.com/docs/api/v1/operations/botAttributeUpdateDefaultVal) | mutation |  |  |
| [`botAttributeDeleteDefaultVal`](https://chatfuel.com/docs/api/v1/operations/botAttributeDeleteDefaultVal) | mutation |  |  |
| [`csvContactExportStartBySegment`](https://chatfuel.com/docs/api/v1/operations/csvContactExportStartBySegment) | mutation | Agent | Export by segment; pass an empty attributes list to export all attributes. Errors: CSVContactExportAlreadyInProgress. |
| [`csvContactExportStartByIDsList`](https://chatfuel.com/docs/api/v1/operations/csvContactExportStartByIDsList) | mutation | Agent | Export a list of contacts. Errors: CSVContactExportInvalidContactIDsCount. |
| [`csvContactExportCancel`](https://chatfuel.com/docs/api/v1/operations/csvContactExportCancel) | mutation | Agent | Cancels an export; the task status changes to cancelled shortly after. |
| [`csvContactImportCreate`](https://chatfuel.com/docs/api/v1/operations/csvContactImportCreate) | mutation | Editor | 1) upload the CSV file, 2) create the import, 3) map columns, 4) start it. |
| [`csvContactImportUpdateFile`](https://chatfuel.com/docs/api/v1/operations/csvContactImportUpdateFile) | mutation |  |  |
| [`csvContactImportUpdateColumns`](https://chatfuel.com/docs/api/v1/operations/csvContactImportUpdateColumns) | mutation |  |  |
| [`csvContactImportStart`](https://chatfuel.com/docs/api/v1/operations/csvContactImportStart) | mutation |  | if the channel, for example the WhatsApp number, is not connected. Errors: ContactScopeNotConnected. |
| [`whatsAppTextMessageSend`](https://chatfuel.com/docs/api/v1/operations/whatsAppTextMessageSend) | mutation |  |  |
| [`whatsappAttachmentMessageSend`](https://chatfuel.com/docs/api/v1/operations/whatsappAttachmentMessageSend) | mutation |  |  |
| [`instagramTextMessageSend`](https://chatfuel.com/docs/api/v1/operations/instagramTextMessageSend) | mutation |  |  |
| [`instagramAttachmentMessageSend`](https://chatfuel.com/docs/api/v1/operations/instagramAttachmentMessageSend) | mutation |  |  |
| [`facebookTextMessageSend`](https://chatfuel.com/docs/api/v1/operations/facebookTextMessageSend) | mutation |  |  |
| [`facebookAttachmentMessageSend`](https://chatfuel.com/docs/api/v1/operations/facebookAttachmentMessageSend) | mutation |  |  |
| [`tiktokTextMessageSend`](https://chatfuel.com/docs/api/v1/operations/tiktokTextMessageSend) | mutation |  |  |
| [`tiktokAttachmentMessageSend`](https://chatfuel.com/docs/api/v1/operations/tiktokAttachmentMessageSend) | mutation |  |  |
| [`widgetTextMessageSend`](https://chatfuel.com/docs/api/v1/operations/widgetTextMessageSend) | mutation |  |  |
| [`widgetAttachmentMessageSend`](https://chatfuel.com/docs/api/v1/operations/widgetAttachmentMessageSend) | mutation |  |  |
| [`filledWhatsAppTemplateCreateTemporary`](https://chatfuel.com/docs/api/v1/operations/filledWhatsAppTemplateCreateTemporary) | mutation |  | 1. Create a one-time filled copy of a template. |
| [`filledWhatsAppTemplateSetHeaderTextParamValue`](https://chatfuel.com/docs/api/v1/operations/filledWhatsAppTemplateSetHeaderTextParamValue) | mutation |  | 2. Fill in variables and media. |
| [`filledWhatsAppTemplateSetBodyTextParamValue`](https://chatfuel.com/docs/api/v1/operations/filledWhatsAppTemplateSetBodyTextParamValue) | mutation |  |  |
| [`filledWhatsAppTemplateSetFooterTextParamValue`](https://chatfuel.com/docs/api/v1/operations/filledWhatsAppTemplateSetFooterTextParamValue) | mutation |  |  |
| [`filledWhatsAppTemplateSetHeaderImageFile`](https://chatfuel.com/docs/api/v1/operations/filledWhatsAppTemplateSetHeaderImageFile) | mutation |  |  |
| [`filledWhatsAppTemplateSetHeaderVideoFile`](https://chatfuel.com/docs/api/v1/operations/filledWhatsAppTemplateSetHeaderVideoFile) | mutation |  |  |
| [`filledWhatsAppTemplateSetHeaderDocumentFile`](https://chatfuel.com/docs/api/v1/operations/filledWhatsAppTemplateSetHeaderDocumentFile) | mutation |  |  |
| [`filledWhatsAppTemplateSetURLButtonParamValue`](https://chatfuel.com/docs/api/v1/operations/filledWhatsAppTemplateSetURLButtonParamValue) | mutation |  |  |
| [`filledWhatsAppTemplateSetCopyCodeButtonCodeValue`](https://chatfuel.com/docs/api/v1/operations/filledWhatsAppTemplateSetCopyCodeButtonCodeValue) | mutation |  |  |
| [`whatsAppTemplateSend`](https://chatfuel.com/docs/api/v1/operations/whatsAppTemplateSend) | mutation |  | 3. Send it to the contact. |
| [`conversationCreate`](https://chatfuel.com/docs/api/v1/operations/conversationCreate) | mutation | Agent | Returns the conversation with a contact, creating it if the contact has none yet. |
| [`conversationStart`](https://chatfuel.com/docs/api/v1/operations/conversationStart) | mutation | Agent | Opens a live chat with the contact (status open), like a teammate taking over the chat in the inbox. |
| [`conversationFinishSendToFlow`](https://chatfuel.com/docs/api/v1/operations/conversationFinishSendToFlow) | mutation | Agent | Closes the live chat and sends the contact to a flow. |
| [`conversationReadMessages`](https://chatfuel.com/docs/api/v1/operations/conversationReadMessages) | mutation | Agent | Marks messages up to the given one as read. |
| [`createFlow`](https://chatfuel.com/docs/api/v1/operations/createFlow) | mutation |  |  |
| [`updateFlowName`](https://chatfuel.com/docs/api/v1/operations/updateFlowName) | mutation |  |  |
| [`deleteFlow`](https://chatfuel.com/docs/api/v1/operations/deleteFlow) | mutation |  |  |
| [`createFlowGroup`](https://chatfuel.com/docs/api/v1/operations/createFlowGroup) | mutation |  |  |
| [`updateFlowGroupName`](https://chatfuel.com/docs/api/v1/operations/updateFlowGroupName) | mutation |  |  |
| [`deleteFlowGroup`](https://chatfuel.com/docs/api/v1/operations/deleteFlowGroup) | mutation |  |  |
| [`moveFlowToGroup`](https://chatfuel.com/docs/api/v1/operations/moveFlowToGroup) | mutation |  |  |
| [`removeFlowFromGroup`](https://chatfuel.com/docs/api/v1/operations/removeFlowFromGroup) | mutation |  |  |
| [`sortFlowGroups`](https://chatfuel.com/docs/api/v1/operations/sortFlowGroups) | mutation |  |  |
| [`sortFlowsInGroup`](https://chatfuel.com/docs/api/v1/operations/sortFlowsInGroup) | mutation |  |  |
| [`sortUngroupedFlows`](https://chatfuel.com/docs/api/v1/operations/sortUngroupedFlows) | mutation |  |  |
| [`updateBlockName`](https://chatfuel.com/docs/api/v1/operations/updateBlockName) | mutation |  |  |
| [`updateBlockPosition`](https://chatfuel.com/docs/api/v1/operations/updateBlockPosition) | mutation |  |  |
| [`updateBlockPositionBulk`](https://chatfuel.com/docs/api/v1/operations/updateBlockPositionBulk) | mutation |  |  |
| [`deleteBlock`](https://chatfuel.com/docs/api/v1/operations/deleteBlock) | mutation |  |  |
| [`blockSetStartingPoint`](https://chatfuel.com/docs/api/v1/operations/blockSetStartingPoint) | mutation |  |  |
| [`blockEnableEntryPoint`](https://chatfuel.com/docs/api/v1/operations/blockEnableEntryPoint) | mutation |  |  |
| [`blockDisableEntryPoint`](https://chatfuel.com/docs/api/v1/operations/blockDisableEntryPoint) | mutation |  |  |
| [`sortBlockElements`](https://chatfuel.com/docs/api/v1/operations/sortBlockElements) | mutation |  |  |
| [`blockElementDelete`](https://chatfuel.com/docs/api/v1/operations/blockElementDelete) | mutation |  |  |
| [`blockToBlockConnectionCreateOrUpdate`](https://chatfuel.com/docs/api/v1/operations/blockToBlockConnectionCreateOrUpdate) | mutation |  | Block → block, or a component's output handle (a button, a condition branch) → block. |
| [`blockToBlockConnectionDelete`](https://chatfuel.com/docs/api/v1/operations/blockToBlockConnectionDelete) | mutation |  |  |
| [`componentToBlockConnectionCreateOrUpdate`](https://chatfuel.com/docs/api/v1/operations/componentToBlockConnectionCreateOrUpdate) | mutation |  |  |
| [`componentToBlockConnectionDelete`](https://chatfuel.com/docs/api/v1/operations/componentToBlockConnectionDelete) | mutation |  |  |
| [`whatsAppTextCreateWithBlock`](https://chatfuel.com/docs/api/v1/operations/whatsAppTextCreateWithBlock) | mutation |  |  |
| [`whatsAppTextCreateWithBlockAndConnection`](https://chatfuel.com/docs/api/v1/operations/whatsAppTextCreateWithBlockAndConnection) | mutation |  |  |
| [`whatsAppTextCreateInBlock`](https://chatfuel.com/docs/api/v1/operations/whatsAppTextCreateInBlock) | mutation |  |  |
| [`whatsAppTextSetText`](https://chatfuel.com/docs/api/v1/operations/whatsAppTextSetText) | mutation |  |  |
| [`whatsAppTextSetWaitForReplies`](https://chatfuel.com/docs/api/v1/operations/whatsAppTextSetWaitForReplies) | mutation |  |  |
| [`whatsAppTextSetSaveContactReplyToAttribute`](https://chatfuel.com/docs/api/v1/operations/whatsAppTextSetSaveContactReplyToAttribute) | mutation |  |  |
| [`keywordRuleCreate`](https://chatfuel.com/docs/api/v1/operations/keywordRuleCreate) | mutation |  |  |
| [`keywordRuleUpdateMatchType`](https://chatfuel.com/docs/api/v1/operations/keywordRuleUpdateMatchType) | mutation |  | matchType: similarTo, contains or matches |
| [`keywordRuleUpdateKeywords`](https://chatfuel.com/docs/api/v1/operations/keywordRuleUpdateKeywords) | mutation |  |  |
| [`keywordRuleUpdateActionType`](https://chatfuel.com/docs/api/v1/operations/keywordRuleUpdateActionType) | mutation |  | actionType: switchToFlow, sendMessage or doNothing, set per platform |
| [`keywordRuleDelete`](https://chatfuel.com/docs/api/v1/operations/keywordRuleDelete) | mutation |  |  |
| [`triggerSetConditionType`](https://chatfuel.com/docs/api/v1/operations/triggerSetConditionType) | mutation |  | Triggers of triggered messages. An enabled trigger can't be changed (EnabledTriggerIsImmutable). conditionType: LastMessageFromContact or ContactAttributeChanged |
| [`triggerSetAttributeFilter`](https://chatfuel.com/docs/api/v1/operations/triggerSetAttributeFilter) | mutation |  |  |
| [`triggerDeleteAttributeFilter`](https://chatfuel.com/docs/api/v1/operations/triggerDeleteAttributeFilter) | mutation |  |  |
| [`triggerSetDelay`](https://chatfuel.com/docs/api/v1/operations/triggerSetDelay) | mutation |  |  |
| [`previewResponsesStartInFlow`](https://chatfuel.com/docs/api/v1/operations/previewResponsesStartInFlow) | mutation |  |  |
| [`previewResponsesStartForBot`](https://chatfuel.com/docs/api/v1/operations/previewResponsesStartForBot) | mutation |  |  |
| [`previewResponsesStartForFuelyAutomation`](https://chatfuel.com/docs/api/v1/operations/previewResponsesStartForFuelyAutomation) | mutation |  |  |
| [`fuelyAutomationCreate`](https://chatfuel.com/docs/api/v1/operations/fuelyAutomationCreate) | mutation | Editor | Custom automation, only for scopes that support targeting; up to 30 per scope. Errors: FuelyAutomationNameInvalid, FuelyAutomationScopeInvalid, FuelyAutomationScopeLimitReached. |
| [`fuelyAutomationSetName`](https://chatfuel.com/docs/api/v1/operations/fuelyAutomationSetName) | mutation | Editor | Custom automations only (FuelyAutomationNotRenamable, FuelyAutomationNotDeletable for base ones). |
| [`fuelyAutomationDelete`](https://chatfuel.com/docs/api/v1/operations/fuelyAutomationDelete) | mutation |  |  |
| [`fuelyAutomationSetEnabled`](https://chatfuel.com/docs/api/v1/operations/fuelyAutomationSetEnabled) | mutation | Editor | Turning Main bot off switches off all AI replies. |
| [`fuelyAutomationUpdateSetting`](https://chatfuel.com/docs/api/v1/operations/fuelyAutomationUpdateSetting) | mutation | Editor | Changes one setting; see below. |
| [`fuelyAutomationApplyTemplate`](https://chatfuel.com/docs/api/v1/operations/fuelyAutomationApplyTemplate) | mutation | Editor | Writes settings onto base automations and creates custom automations in one call. |
| [`fuelyConfigSetCompanyName`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigSetCompanyName) | mutation |  |  |
| [`fuelyConfigSetEmail`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigSetEmail) | mutation |  |  |
| [`fuelyConfigSetPhone`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigSetPhone) | mutation |  |  |
| [`fuelyConfigSetAddress`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigSetAddress) | mutation |  |  |
| [`fuelyConfigSetWebsite`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigSetWebsite) | mutation |  |  |
| [`fuelyConfigSetHowToPay`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigSetHowToPay) | mutation |  |  |
| [`fuelyConfigSetFAQs`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigSetFAQs) | mutation |  |  |
| [`fuelyConfigSetAdditionalInstructions`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigSetAdditionalInstructions) | mutation |  |  |
| [`fuelyConfigSetBusinessHoursSchedule`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigSetBusinessHoursSchedule) | mutation |  |  |
| [`fuelyConfigBookingUpdateAppointments`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigBookingUpdateAppointments) | mutation |  |  |
| [`fuelyConfigBookingUpdateConfirmation`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigBookingUpdateConfirmation) | mutation |  |  |
| [`fuelyConfigBookingUpdateNotificationChannel`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigBookingUpdateNotificationChannel) | mutation |  |  |
| [`fuelyConfigBookingUpdateLocale`](https://chatfuel.com/docs/api/v1/operations/fuelyConfigBookingUpdateLocale) | mutation |  |  |
| [`fuelyBroadcastWhatsAppOneTimeNotificationCreate`](https://chatfuel.com/docs/api/v1/operations/fuelyBroadcastWhatsAppOneTimeNotificationCreate) | mutation |  | A one-time broadcast, sent when you call whatsAppOneTimeNotificationSend. |
| [`fuelyBroadcastWhatsAppScheduledMessageCreate`](https://chatfuel.com/docs/api/v1/operations/fuelyBroadcastWhatsAppScheduledMessageCreate) | mutation |  | A broadcast scheduled for sendTime, which must be in the future (FuelyBroadcastSendTimeCanNotBeInPast). |
| [`bookingCreateV2`](https://chatfuel.com/docs/api/v1/operations/bookingCreateV2) | mutation | Editor | Errors: BookingStartTimeRequired, BookingEndTimeRequired, BookingInvalidDuration, BookingEndTimeBeforeStartTime, BookingContactPlatformNotAllowed. |
| [`bookingUpdateV2`](https://chatfuel.com/docs/api/v1/operations/bookingUpdateV2) | mutation |  |  |
| [`bookingStatusResolveV2`](https://chatfuel.com/docs/api/v1/operations/bookingStatusResolveV2) | mutation | Editor | Confirm, cancel or mark as attended or no-show. |
| [`bookingDeleteV2`](https://chatfuel.com/docs/api/v1/operations/bookingDeleteV2) | mutation |  |  |
| [`bookingInlineContactSetNote`](https://chatfuel.com/docs/api/v1/operations/bookingInlineContactSetNote) | mutation | Editor | Errors: BookingInlineContactNoteTooLong. |
| [`specialistCreate`](https://chatfuel.com/docs/api/v1/operations/specialistCreate) | mutation | Editor | , … Errors: SpecialistNameNotUnique, SpecialistFirstNameRequired, SpecialistFirstNameTooLong. |
| [`specialistUpdate`](https://chatfuel.com/docs/api/v1/operations/specialistUpdate) | mutation |  |  |
| [`specialistDelete`](https://chatfuel.com/docs/api/v1/operations/specialistDelete) | mutation |  |  |
| [`specialistCreateGoogleCalendarConnectionLink`](https://chatfuel.com/docs/api/v1/operations/specialistCreateGoogleCalendarConnectionLink) | mutation | Editor | Creates a link the calendar owner opens to connect their Google Calendar. |
| [`specialistDeleteGoogleCalendarConnectionLink`](https://chatfuel.com/docs/api/v1/operations/specialistDeleteGoogleCalendarConnectionLink) | mutation |  |  |
| [`specialistStartGoogleCalendarSync`](https://chatfuel.com/docs/api/v1/operations/specialistStartGoogleCalendarSync) | mutation | Editor | Starts a sync; follow its progress with taskUpdated. Errors: SpecialistDoesNotExist. |
| [`specialistDisconnectGoogleCalendar`](https://chatfuel.com/docs/api/v1/operations/specialistDisconnectGoogleCalendar) | mutation |  |  |
| [`goodsProductCreate`](https://chatfuel.com/docs/api/v1/operations/goodsProductCreate) | mutation | Editor | , … Errors: GoodsItemsTooMuchForBot, GoodsItemTitleRequired, GoodsItemTitleNotUnique, GoodsItemTitleTooShort, GoodsItemTitleTooLong, GoodsItemDescriptionTooLong. |
| [`goodsProductUpdate`](https://chatfuel.com/docs/api/v1/operations/goodsProductUpdate) | mutation |  |  |
| [`goodsProductDelete`](https://chatfuel.com/docs/api/v1/operations/goodsProductDelete) | mutation |  |  |
| [`goodsServiceCreate`](https://chatfuel.com/docs/api/v1/operations/goodsServiceCreate) | mutation |  |  |
| [`goodsServiceUpdate`](https://chatfuel.com/docs/api/v1/operations/goodsServiceUpdate) | mutation |  |  |
| [`goodsServiceDelete`](https://chatfuel.com/docs/api/v1/operations/goodsServiceDelete) | mutation |  |  |
| [`botConnectFacebookPage`](https://chatfuel.com/docs/api/v1/operations/botConnectFacebookPage) | mutation |  |  |
| [`botConnectInstagramAccount`](https://chatfuel.com/docs/api/v1/operations/botConnectInstagramAccount) | mutation |  |  |
| [`botConnectTikTokAccount`](https://chatfuel.com/docs/api/v1/operations/botConnectTikTokAccount) | mutation |  |  |
| [`botDisconnectContactScope`](https://chatfuel.com/docs/api/v1/operations/botDisconnectContactScope) | mutation |  |  |
| [`botPlatformConnectionLinkCreate`](https://chatfuel.com/docs/api/v1/operations/botPlatformConnectionLinkCreate) | mutation |  | Creating a new link for the same bot and platform invalidates the previous one. Redirect URLs, if set, must start with https://. |
| [`botPlatformConnectionLinkRevoke`](https://chatfuel.com/docs/api/v1/operations/botPlatformConnectionLinkRevoke) | mutation |  |  |
| [`botPlatformAccessRefreshLinkCreate`](https://chatfuel.com/docs/api/v1/operations/botPlatformAccessRefreshLinkCreate) | mutation |  |  |
| [`botPlatformAccessRefreshLinkRevoke`](https://chatfuel.com/docs/api/v1/operations/botPlatformAccessRefreshLinkRevoke) | mutation |  |  |
| [`botGenerateWhatsAppLink`](https://chatfuel.com/docs/api/v1/operations/botGenerateWhatsAppLink) | mutation | Editor | A wa.me link with a prefilled message. title: 3 to 128 characters. Errors: NoPhoneConnectedToBot, BotAlreadyHasWhatsAppLink. |
| [`whatsAppBusinessAccountPaymentMethodHealthy`](https://chatfuel.com/docs/api/v1/operations/whatsAppBusinessAccountPaymentMethodHealthy) | mutation | Agent | Whether a payment method is attached to the WhatsApp Business Account in Meta. |
| [`whatsAppPhoneSetProfileImageFile`](https://chatfuel.com/docs/api/v1/operations/whatsAppPhoneSetProfileImageFile) | mutation | Personal token only | Profile picture of the number; the new picture arrives in whatsAppBusinessPhoneNumberUpdated. |
| [`whatsAppPhoneSyncBizAppData`](https://chatfuel.com/docs/api/v1/operations/whatsAppPhoneSyncBizAppData) | mutation | Personal token only | Sync contacts and chats of a number that also runs the WhatsApp Business app. |
| [`whatsAppEntitiesStartRefetch`](https://chatfuel.com/docs/api/v1/operations/whatsAppEntitiesStartRefetch) | mutation | Personal token only | Refresh your WhatsApp accounts from Meta in the background. |
| [`instagramAccountPublishImage`](https://chatfuel.com/docs/api/v1/operations/instagramAccountPublishImage) | mutation |  | { imageURL, caption } |
| [`instagramAccountPublishCarousel`](https://chatfuel.com/docs/api/v1/operations/instagramAccountPublishCarousel) | mutation |  | 2 to 10 items |
| [`instagramAccountPublishReel`](https://chatfuel.com/docs/api/v1/operations/instagramAccountPublishReel) | mutation |  | Reels and video stories wait until Instagram finishes processing, up to 5 minutes. ({ videoURL, caption, coverURL, shareToFeed, thumbOffset }) |
| [`instagramAccountPublishStory`](https://chatfuel.com/docs/api/v1/operations/instagramAccountPublishStory) | mutation |  | { mediaType, mediaURL } |
| [`botInstagramRefetchLatestMedias`](https://chatfuel.com/docs/api/v1/operations/botInstagramRefetchLatestMedias) | mutation | Agent | Refresh the account and its latest posts from Instagram (count up to 100). |
| [`instagramAccountRefetchMetaInfo`](https://chatfuel.com/docs/api/v1/operations/instagramAccountRefetchMetaInfo) | mutation |  |  |
| [`instagramAccountRefetchLatestMedias`](https://chatfuel.com/docs/api/v1/operations/instagramAccountRefetchLatestMedias) | mutation |  |  |
| [`webWidgetSetName`](https://chatfuel.com/docs/api/v1/operations/webWidgetSetName) | mutation |  | WebWidgetNameEmpty, WebWidgetNameTooLong |
| [`webWidgetSetColor`](https://chatfuel.com/docs/api/v1/operations/webWidgetSetColor) | mutation |  |  |
| [`webWidgetSetAvatar`](https://chatfuel.com/docs/api/v1/operations/webWidgetSetAvatar) | mutation |  | upload to /upload/widget first |
| [`webWidgetSetDomains`](https://chatfuel.com/docs/api/v1/operations/webWidgetSetDomains) | mutation |  | WebWidgetDomainValidationFailed |
| [`webWidgetSetIsEnabled`](https://chatfuel.com/docs/api/v1/operations/webWidgetSetIsEnabled) | mutation |  |  |
| [`fileStartDownload`](https://chatfuel.com/docs/api/v1/operations/fileStartDownload) | mutation |  | Starts downloading a file that is stored with an external service, such as media a contact sent on a channel. |
