All MCP tools

Every tool the SmartChat MCP server offers, grouped by area. Claude sees exactly these names, descriptions and fields.

The technical reference below is in English, exactly as the names and fields appear in the API and in Claude.

161 tools · MCP server: https://mcp.smartchat.marketing

Two-step actions

Tools that send, schedule, submit or delete first return a preview and a confirm_token. Call the same tool again with confirm_token to execute. Nothing happens on the first call.

Contacts

search_contacts · Search contacts

Read only

Searches the business's contacts by name, phone number or email (partial matches, case-insensitive). Without a query it returns the most recently created contacts. Returns id, name, phone, email, tags and opt-in status.

FieldTypeRequiredDescription
querystringnoName, phone number or email, or part of it.
max length 100
limitintegernoMaximum number of results (default 25, maximum 100).
min 1 · max 100 · default 25

Calls: GET /v1/contacts

get_contact · Get contact

Read only

Returns one contact with all fields, tags and WhatsApp/email opt-in status.

FieldTypeRequiredDescription
contact_idstringyesID of the contact.
min length 1 · max length 100

Calls: GET /v1/contacts/undefined

create_contact · Create contact

Changes data

Creates a new contact. Needs a phone number or an email address; duplicates are rejected. A new contact starts without marketing consent (opt-in status 'none'), so send_message is not possible until the contact has confirmed the opt-in.

FieldTypeRequiredDescription
namestringyesFull name or company name.
min length 1 · max length 120
phonestringnoPhone number in international format, e.g. +4915112345678.
max length 40
emailstringnoEmail address.
format email · max length 254
acquisitionstring ("marketing", "service", "automation")noWhere the contact comes from. Default: marketing.

Calls: POST /v1/contacts

update_contact · Update contact

Sends, submits or deletes

Changes name, phone number or email of an existing contact. Only the fields sent are changed. Changing the phone number or email resets the opt-in for that channel.

FieldTypeRequiredDescription
contact_idstringyesID of the contact.
min length 1 · max length 100
namestringnoNew name.
min length 1 · max length 120
phonestringnoNew phone number in international format.
max length 40
emailstringnoNew email address.
format email · max length 254

Calls: PATCH /v1/contacts/undefined

add_contact_tag · Add tag to contact

Changes data

Adds a tag (label such as 'regular customer') to a contact. Adding a tag that is already there changes nothing.

FieldTypeRequiredDescription
contact_idstringyesID of the contact.
min length 1 · max length 100
tagstringyesThe tag, e.g. 'regular customer'.
min length 1 · max length 60

Calls: POST /v1/contacts/undefined/tags

list_contacts · List contacts

Read only

Lists contacts with their opt-in state and tags.

FieldTypeRequiredDescription
typestringno
searchstringno

Calls: POST /v1/tools/list_contacts

add_contact · Add contact

Changes data

Adds a contact. A new contact still has to confirm the sign-up.

FieldTypeRequiredDescription
namestringno
emailstringno
phonestringno

Calls: POST /v1/tools/add_contact

resend_optin_confirmation · Resend confirmation

Sends, submits or deletes

Sends the sign-up confirmation to a contact again. First call returns a preview and confirm_token.

FieldTypeRequiredDescription
contact_idstringyes
confirm_tokenstringno

Calls: POST /v1/tools/resend_optin_confirmation

tag_contacts · Tag contacts

Changes data

Adds tags to one or more contacts.

FieldTypeRequiredDescription
tagstringyes
contact_idsarray of anyyes
grundstringno

Calls: POST /v1/tools/tag_contacts

untag_contacts · Remove tags

Changes data

Removes tags from one or more contacts.

FieldTypeRequiredDescription
tagstringyes
contact_idsarray of anyyes

Calls: POST /v1/tools/untag_contacts

export_contacts · Export contacts

Read only

Exports the contacts as CSV text.

No input fields.

Calls: POST /v1/tools/export_contacts

get_last_import · Get last contact import

Read only

Returns the status and result of the last contact import.

No input fields.

Calls: POST /v1/app/get_last_import

preview_unconfirmed_contacts · Preview unconfirmed contacts

Read only

Shows how many contacts have not confirmed their WhatsApp sign-up yet and would get the confirmation again.

No input fields.

Calls: POST /v1/app/preview_unconfirmed_contacts

resend_to_unconfirmed_contacts · Resend confirmation to all unconfirmed

Sends, submits or deletes

Sends the confirmation message again to all contacts who have not confirmed yet. Sends real WhatsApp messages.

FieldTypeRequiredDescription
bodyobjectnoSame fields as the app sends (usually none).

Calls: POST /v1/app/resend_to_unconfirmed_contacts

get_optin_queue · Get opt-in queue

Read only

Returns confirmation messages that are waiting to be sent.

No input fields.

Calls: POST /v1/app/get_optin_queue

send_optin_queue · Send opt-in queue

Sends, submits or deletes

Sends the waiting confirmation messages now. Sends real WhatsApp messages.

FieldTypeRequiredDescription
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/send_optin_queue

unsubscribe_contact · Unsubscribe a contact

Sends, submits or deletes

Unsubscribes a contact: they get no more marketing messages. contact_id from search_contacts.

FieldTypeRequiredDescription
contact_idstringyesID (contact id).
min length 1 · max length 200
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/unsubscribe_contact

remove_contact_tag · Remove a tag from a contact

Changes data

Removes one tag from a contact.

FieldTypeRequiredDescription
contact_idstringyesID (contact id).
min length 1 · max length 200
tagstringyesID (tag).
min length 1 · max length 200

Calls: POST /v1/app/remove_contact_tag

delete_contact · Delete a contact

Sends, submits or deletes

Deletes a contact completely. Cannot be undone.

FieldTypeRequiredDescription
contact_idstringyesID (contact id).
min length 1 · max length 200

Calls: POST /v1/app/delete_contact

export_all_data · Export all account data

Read only

Returns the complete data export of the account (as in Settings).

No input fields.

Calls: POST /v1/app/export_all_data

Messages and inbox

send_message · Send WhatsApp message

Sends, submits or deletes

Sends a free-text WhatsApp message to one contact. Only works for contacts with a confirmed WhatsApp opt-in; otherwise the send is rejected with the reason. Counts against the monthly message quota. WhatsApp only delivers free text within 24 hours of the contact's last message; outside that window use send_template.

FieldTypeRequiredDescription
contact_idstringyesID of the contact.
min length 1 · max length 100
textstringyesMessage text (maximum 4000 characters).
min length 1 · max length 4000
idempotency_keystringnoOptional unique key for this action (1-255 printable ASCII characters, no spaces). Repeating the call with the same key within 24 hours returns the first result instead of sending again.
min length 1 · max length 255

Calls: POST /v1/messages

get_send_status · Get template send status

Read only

Returns the status of a template message queued with send_template: queued, sent, delivered, read, failed or skipped (with reason).

FieldTypeRequiredDescription
send_idstringyesID of the send.
min length 1 · max length 100

Calls: GET /v1/sends/undefined

list_conversations · List inbox conversations

Read only

Lists inbox conversations (WhatsApp and email), newest first, with contact and last message preview.

FieldTypeRequiredDescription
channelstring ("whatsapp", "email")noOnly this channel.
limitintegernoMaximum number of results (default 25, maximum 100).
min 1 · max 100 · default 25
offsetintegernoNumber of results to skip, for paging (default 0).
min 0 · max 100000 · default 0

Calls: GET /v1/inbox/conversations

get_conversation_messages · Get conversation messages

Read only

Returns the most recent messages of one conversation in chronological order. Use offset to page further back.

FieldTypeRequiredDescription
conversation_idstringyesID of the conversation.
min length 1 · max length 100
limitintegernoMaximum number of results (default 25, maximum 100).
min 1 · max 100 · default 25
offsetintegernoNumber of results to skip, for paging (default 0).
min 0 · max 100000 · default 0

Calls: GET /v1/inbox/conversations/undefined/messages

list_ai_conversations · List SmartChat AI conversations

Read only

Lists the conversations with SmartChat AI (the chat inside the app).

No input fields.

Calls: POST /v1/app/list_ai_conversations

get_ai_conversation_messages · Read a SmartChat AI conversation

Read only

Returns all messages of one SmartChat AI conversation.

FieldTypeRequiredDescription
conversation_idstringyesID (conversation id).
min length 1 · max length 200

Calls: POST /v1/app/get_ai_conversation_messages

mark_conversation_read · Mark conversation as read

Changes data

Marks an inbox conversation as read.

FieldTypeRequiredDescription
conversation_idstringyesID (conversation id).
min length 1 · max length 200
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/mark_conversation_read

reply_in_conversation · Reply in an inbox conversation

Sends, submits or deletes

Sends a reply inside an inbox conversation (text, or an image/video from the media library). Sends a real WhatsApp message.

FieldTypeRequiredDescription
conversation_idstringyesID (conversation id).
min length 1 · max length 200
bodyobjectno{ text } and optional { media_id } - same fields as the app.

Calls: POST /v1/app/reply_in_conversation

save_reply_as_learned · Save reply as learned answer

Changes data

Saves an answer from a conversation so the AI reply uses it next time.

FieldTypeRequiredDescription
conversation_idstringyesID (conversation id).
min length 1 · max length 200
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/save_reply_as_learned

get_conversation_ai_mode · Get AI mode of a conversation

Read only

Returns whether the AI answers in this conversation or a human took over.

FieldTypeRequiredDescription
conversation_idstringyesID (conversation id).
min length 1 · max length 200

Calls: POST /v1/app/get_conversation_ai_mode

set_conversation_ai_mode · Set AI mode of a conversation

Changes data

Switches the AI reply on or off for one conversation (take over / hand back).

FieldTypeRequiredDescription
conversation_idstringyesID (conversation id).
min length 1 · max length 200
bodyobjectno{ enabled: true|false } - same fields as the app.

Calls: POST /v1/app/set_conversation_ai_mode

list_learned_answers · List learned answers

Read only

Lists the answers the AI reply has learned.

No input fields.

Calls: POST /v1/app/list_learned_answers

update_learned_answer · Change a learned answer

Changes data

Changes one learned answer.

FieldTypeRequiredDescription
answer_idstringyesID (answer id).
min length 1 · max length 200
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/update_learned_answer

delete_learned_answer · Delete a learned answer

Sends, submits or deletes

Deletes one learned answer.

FieldTypeRequiredDescription
answer_idstringyesID (answer id).
min length 1 · max length 200

Calls: POST /v1/app/delete_learned_answer

Newsletters

list_newsletters · List newsletters

Read only

Lists newsletters with status (draft, scheduled, sending, sent) and scheduled time.

No input fields.

Calls: GET /v1/newsletters

schedule_newsletter · Schedule newsletter

Sends, submits or deletes

Schedules an existing newsletter for a future time. At that time it is sent to all opted-in recipients. Sending immediately is not available through this server.

FieldTypeRequiredDescription
newsletter_idstringyesID of the newsletter.
min length 1 · max length 100
scheduled_atstringyesSend time in ISO 8601 with time zone, e.g. 2026-10-01T10:00:00Z.
format date-time · max length 40

Calls: POST /v1/newsletters/undefined/schedule

create_newsletter · Create newsletter

Changes dataUses credits like one SmartChat AI message

Creates a WhatsApp newsletter as draft. Texts are used word for word; media_id adds an image or video from the media library.

FieldTypeRequiredDescription
subjectstringyes
contentstringyes
channelstringno
mediaobjectno
ctaobjectno
segmentobjectno

Calls: POST /v1/tools/create_newsletter

update_newsletter · Change newsletter

Changes dataUses credits like one SmartChat AI message

Changes text, image, video or button of a newsletter. Texts are used word for word.

FieldTypeRequiredDescription
newsletter_idstringyes
subjectstringno
contentstringno
mediaanyno
ctaanyno
segmentanyno

Calls: POST /v1/tools/update_newsletter

send_newsletter · Send newsletter now

Sends, submits or deletes

Sends a newsletter to all confirmed contacts. First call returns the number of recipients and a confirm_token; the second call with confirm_token sends.

FieldTypeRequiredDescription
newsletter_idstringyes
confirm_tokenstringno

Calls: POST /v1/tools/send_newsletter

test_newsletter · Send test newsletter

Sends, submits or deletes

Sends a newsletter to the test phone number only.

FieldTypeRequiredDescription
newsletter_idstringyes
tostringno

Calls: POST /v1/tools/test_newsletter

cancel_newsletter · Cancel newsletter

Sends, submits or deletes

Cancels a scheduled newsletter.

FieldTypeRequiredDescription
newsletter_idstringyes

Calls: POST /v1/tools/cancel_newsletter

get_newsletter · Get newsletter

Read only

Returns one newsletter with text, media, state and recipients.

FieldTypeRequiredDescription
newsletter_idstringyes

Calls: POST /v1/tools/get_newsletter

count_newsletter_recipients · Count newsletter recipients

Read only

Returns how many contacts a newsletter would reach.

FieldTypeRequiredDescription
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/count_newsletter_recipients

preview_newsletter · Preview a newsletter

Read only

Returns exactly how the newsletter arrives on the phone.

FieldTypeRequiredDescription
newsletter_idstringyesID (newsletter id).
min length 1 · max length 200

Calls: POST /v1/app/preview_newsletter

get_newsletter_progress · Get newsletter sending progress

Read only

Returns the sending state of a newsletter (sent, waiting, stopped).

FieldTypeRequiredDescription
newsletter_idstringyesID (newsletter id).
min length 1 · max length 200

Calls: POST /v1/app/get_newsletter_progress

resume_newsletter · Resume a newsletter

Sends, submits or deletes

Continues sending a newsletter that stopped (for example after credits ran out). Sends real WhatsApp messages.

FieldTypeRequiredDescription
newsletter_idstringyesID (newsletter id).
min length 1 · max length 200
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/resume_newsletter

pause_newsletter · Pause a newsletter

Changes data

Stops a newsletter that is being sent right now.

FieldTypeRequiredDescription
newsletter_idstringyesID (newsletter id).
min length 1 · max length 200
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/pause_newsletter

delete_newsletter · Delete a newsletter

Sends, submits or deletes

Deletes a newsletter from the list.

FieldTypeRequiredDescription
newsletter_idstringyesID (newsletter id).
min length 1 · max length 200

Calls: POST /v1/app/delete_newsletter

get_test_number · Get test phone number

Read only

Returns the phone number that receives test newsletters.

No input fields.

Calls: POST /v1/app/get_test_number

set_test_number · Set test phone number

Changes data

Sets the phone number that receives test newsletters.

FieldTypeRequiredDescription
bodyobjectno{ phone } in international format.

Calls: POST /v1/app/set_test_number

Templates

send_template · Send approved WhatsApp template

Sends, submits or deletes

Sends an approved WhatsApp message template to one contact. Works outside the 24-hour window. Only for contacts with a confirmed WhatsApp opt-in and only for templates with status 'approved' (see list_templates, field 'sendable'). Template variables are filled from the contact (name, email, phone and custom fields) and from 'variables'; list_templates shows which variables can be set ('settable_variables'). The message is queued and sent within seconds through the same checks as in the SmartChat app (opt-out list, quota). Returns a send_id for get_send_status and the final text. Counts against the monthly message quota.

FieldTypeRequiredDescription
contact_idstringyesID of the contact.
min length 1 · max length 100
template_idstringyesID of the template.
min length 1 · max length 100
variablesobjectnoValues for template variables that do not come from the contact, e.g. { "date": "12 October" }. Maximum 20, each at most 1024 characters.
idempotency_keystringnoOptional unique key for this action (1-255 printable ASCII characters, no spaces). Repeating the call with the same key within 24 hours returns the first result instead of sending again.
min length 1 · max length 255

Calls: POST /v1/messages

list_templates · List message templates

Read only

Lists the message templates with their WhatsApp (Meta) approval status, language, variables, the variables a caller can set ('settable_variables') and whether they can be sent now ('sendable').

No input fields.

Calls: GET /v1/templates

create_template · Create WhatsApp template draft

Changes dataUses credits like one SmartChat AI message

Creates a WhatsApp marketing template as a draft in SmartChat. Nothing is sent to WhatsApp yet; use submit_template to request Meta's approval. Variables are written in double curly braces, e.g. 'Hi {{name}}, your table is ready on {{date}}.' ({{name}} is the contact's first name).

FieldTypeRequiredDescription
namestringyesInternal template name.
min length 1 · max length 120
textstringyesTemplate text (WhatsApp allows at most 1024 characters).
min length 1 · max length 1024
languagestringnoLanguage of the text as a Meta language code, e.g. en, en_US, de, it, fr, es. Default: the account language.
min length 2 · max length 10

Calls: POST /v1/templates

submit_template · Submit template to WhatsApp

Changes data

Submits a template draft to WhatsApp (Meta) for approval. SmartChat checks the template against Meta's rules first and rejects it with the reason if it would fail. Approval usually takes minutes to a few hours; list_templates shows the status. Changing an approved template later requires a new approval.

FieldTypeRequiredDescription
template_idstringyesID of the template.
min length 1 · max length 100

Calls: POST /v1/templates/undefined/submit

update_template · Change template

Changes dataUses credits like one SmartChat AI message

Changes text, image or buttons of a template. Texts are used word for word.

FieldTypeRequiredDescription
template_idstringyes
namestringno
contentstringno
subjectstringno
buttonsanyno
mediaanyno
verbatimarray of stringno

Calls: POST /v1/tools/update_template

delete_template · Delete template

Sends, submits or deletes

Deletes a template.

FieldTypeRequiredDescription
template_idstringyes

Calls: POST /v1/tools/delete_template

submit_all_templates · Submit all templates

Sends, submits or deletes

Submits all open templates to WhatsApp. First call returns the list and confirm_token; the second call with confirm_token submits.

FieldTypeRequiredDescription
confirm_tokenstringno

Calls: POST /v1/tools/submit_all_templates

Follow-ups

create_followup_sequence · Create follow-up sequence

Changes dataUses credits like one SmartChat AI message

Creates a follow-up sequence (messages after sign-up).

FieldTypeRequiredDescription
namestringyes
stepsarray of objectyes
activatebooleanno
verbatimarray of stringno

Calls: POST /v1/tools/create_followup_sequence

update_followup_step · Change follow-up step

Changes dataUses credits like one SmartChat AI message

Changes text, image or timing of one follow-up message. Texts are used word for word.

FieldTypeRequiredDescription
step_idstringyes
contentstringno
subjectstringno
delay_hoursnumberno
verbatimarray of stringno

Calls: POST /v1/tools/update_followup_step

add_followup_step · Add follow-up step

Changes dataUses credits like one SmartChat AI message

Adds a message to a follow-up sequence.

FieldTypeRequiredDescription
sequence_idstringyes
channelstringno
delay_hoursnumberno
contentstringyes
buttonanyno
mediaobjectno
verbatimarray of stringno

Calls: POST /v1/tools/add_followup_step

delete_followup_step · Delete follow-up step

Sends, submits or deletes

Deletes one message from a follow-up sequence.

FieldTypeRequiredDescription
step_idstringyes

Calls: POST /v1/tools/delete_followup_step

rename_followup_sequence · Rename follow-up sequence

Changes data

Renames a follow-up sequence.

FieldTypeRequiredDescription
sequence_idstringyes
namestringyes

Calls: POST /v1/tools/rename_followup_sequence

set_followup_status · Pause or start follow-ups

Changes data

Pauses or starts a follow-up sequence.

FieldTypeRequiredDescription
sequence_idstringyes
statusstring ("active", "paused")yes

Calls: POST /v1/tools/set_followup_status

Automations

list_automations · List automations

Read only

Lists all automations with trigger type and status (active or paused).

No input fields.

Calls: GET /v1/automations

trigger_automation · Run automation

Sends, submits or deletes

Starts an automation once by hand. Depending on its steps this can send WhatsApp messages or emails to contacts.

FieldTypeRequiredDescription
automation_idstringyesID of the automation.
min length 1 · max length 100

Calls: POST /v1/automations/undefined/trigger

create_automation · Create automation

Changes dataUses credits like one SmartChat AI message

Creates an automation (trigger and actions).

FieldTypeRequiredDescription
namestringyes
trigger_typestringyes
trigger_configobjectno
actionsarray of objectyes
contact_fieldsarray of stringno
activatebooleanno

Calls: POST /v1/tools/create_automation

update_automation · Change automation

Changes dataUses credits like one SmartChat AI message

Changes an automation, or pauses and activates it.

FieldTypeRequiredDescription
automation_idstringyes
namestringno
statusstringno
actionsanyno
trigger_configanyno

Calls: POST /v1/tools/update_automation

test_automation · Test automation

Changes data

Runs an automation once with test data.

FieldTypeRequiredDescription
automation_idstringyes
sample_payloadobjectno

Calls: POST /v1/tools/test_automation

get_automation_setup · Get automation setup

Read only

Returns how an automation is connected (webhook address, fields).

FieldTypeRequiredDescription
automation_idstringyes

Calls: POST /v1/tools/get_automation_setup

connect_calendar · Connect calendar

Changes data

Connects a calendar (private iCal address) to an automation.

FieldTypeRequiredDescription
automation_idstringyes
calendar_urlstringno
providerstringno
lead_minutesnumberno

Calls: POST /v1/tools/connect_calendar

get_automation_runs · Get automation runs

Read only

Returns the latest runs of an automation.

FieldTypeRequiredDescription
automation_idstringyes
limitnumberno

Calls: POST /v1/tools/get_automation_runs

delete_automation · Delete automation

Sends, submits or deletes

Deletes an automation. First call returns a summary and confirm_token.

FieldTypeRequiredDescription
automation_idstringyes
confirm_tokenstringno

Calls: POST /v1/tools/delete_automation

create_free_automation · Create custom automation

Changes dataUses credits like one SmartChat AI message

Creates an automation from a custom rule. First call returns a preview; the second call with confirmed: true creates it.

FieldTypeRequiredDescription
namestringyes
regelobjectyes
actionsarray of objectyes
contact_fieldsarray of stringno
activatebooleanno
confirmedbooleanno

Calls: POST /v1/tools/create_free_automation

get_automation_connection · Get automation connection status

Read only

Returns whether an automation receives data (webhook, calendar).

FieldTypeRequiredDescription
automation_idstringyesID (automation id).
min length 1 · max length 200

Calls: POST /v1/app/get_automation_connection

get_automation_endpoint · Get automation endpoint

Read only

Returns the webhook address and setup of an automation.

FieldTypeRequiredDescription
automation_idstringyesID (automation id).
min length 1 · max length 200

Calls: POST /v1/app/get_automation_endpoint

get_automation_timeline · Get automation timeline

Read only

Returns the timeline of what an automation did.

FieldTypeRequiredDescription
automation_idstringyesID (automation id).
min length 1 · max length 200

Calls: POST /v1/app/get_automation_timeline

check_automation_calendar · Check automation calendar

Changes data

Checks the connected calendar of an automation.

FieldTypeRequiredDescription
automation_idstringyesID (automation id).
min length 1 · max length 200
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/check_automation_calendar

get_calendar_guides · Get calendar guides

Read only

Returns how to find the private calendar address in Google, Outlook and Apple.

No input fields.

Calls: POST /v1/app/get_calendar_guides

Landing page and popup

update_landing · Change landing page texts

Changes dataUses credits like one SmartChat AI message

Changes texts and settings of the landing page. Texts are used word for word.

FieldTypeRequiredDescription
headlinestringno
subheadlinestringno
cta_textstringno
success_messagestringno
texteobjectno
steps_titlestringno
steps_introstringno
faq_titlestringno
proof_titlestringno
problemobjectno
solutionobjectno
offerobjectno
stepsarray of objectno
faqarray of objectno
reviewsarray of objectno
colorstringno
heading_coloranyno
background_coloranyno
button_coloranyno
fontstringno
design_moodstringno
font_pairstringno
hero_imagestringno
hero_mediaobjectno
imagesarray of stringno
verbatimarray of stringnoNamen der Felder, deren Text der Nutzer WÖRTLICH vorgegeben hat (z.B. ["headline"]). Diese Texte werden exakt so gespeichert - ohne Kritiker, ohne Politur. Setze das IMMER, wenn du einen Text übernimmst, den der Nutzer selbst geschrieben hat.

Calls: POST /v1/tools/update_landing

swap_landing_image · Change landing page image

Changes data

Replaces an image on the landing page with an image or video from the media library.

FieldTypeRequiredDescription
positionanyyes
querystringno

Calls: POST /v1/tools/swap_landing_image

get_landing_blocks · Get landing page blocks

Read only

Returns all blocks of the landing page with their ids and content.

FieldTypeRequiredDescription
positionanyno

Calls: POST /v1/tools/get_landing_blocks

add_landing_block · Add landing page block

Changes dataUses credits like one SmartChat AI message

Adds a block (section) to the landing page.

FieldTypeRequiredDescription
typestringyes
dataobjectno
variantstringno
tonstringno
positionanyno
stilarray of objectno

Calls: POST /v1/tools/add_landing_block

remove_landing_block · Remove landing page block

Sends, submits or deletes

Removes a block from the landing page.

FieldTypeRequiredDescription
positionanyyes

Calls: POST /v1/tools/remove_landing_block

move_landing_block · Move landing page block

Changes data

Moves a block to another position on the landing page.

FieldTypeRequiredDescription
fromanyyes
toanyyes

Calls: POST /v1/tools/move_landing_block

set_landing_style · Change landing page style

Changes data

Changes colors, fonts and background of the landing page or of one block.

FieldTypeRequiredDescription
radiusanyno
shadowanyno
spacinganyno
widthanyno
buttonanyno
imageanyno
stilarray of objectno

Calls: POST /v1/tools/set_landing_style

update_landing_block · Change landing page block

Changes dataUses credits like one SmartChat AI message

Changes the content or design of one block. Texts are used word for word.

FieldTypeRequiredDescription
positionanyyes
karteanyno
dataobjectno
variantstringno
tonstringno
stilarray of objectno

Calls: POST /v1/tools/update_landing_block

publish_landing · Publish landing page

Sends, submits or deletes

Publishes the landing page so the changes are live.

No input fields.

Calls: POST /v1/tools/publish_landing

set_landing_tracking · Set tracking pixel

Changes data

Sets tracking pixels (Meta, Google, TikTok) on the landing page.

FieldTypeRequiredDescription
meta_pixel_idstringno
meta_capi_tokenstringno
google_idstringno
gtm_idstringno
tiktok_idstringno
tiktok_events_tokenstringno

Calls: POST /v1/tools/set_landing_tracking

find_text · Find text

Read only

Finds where a text appears: landing page, popup, templates, follow-ups and newsletters. Argument: text.

FieldTypeRequiredDescription
textstringyes

Calls: POST /v1/tools/find_text

update_website_popup · Change website popup

Changes dataUses credits like one SmartChat AI message

Changes texts, look and timing of the sign-up popup on the business website.

FieldTypeRequiredDescription
headlinestringno
textstringno
buttonstringno
thanks_headlinestringno
thanks_textstringno
imageanyno
triggersarray of string ("time", "exit", "scroll")no
delay_secondsnumberno
scroll_percentnumberno

Calls: POST /v1/tools/update_website_popup

refresh_reviews · Reload reviews

Changes dataUses credits like one SmartChat AI message

Loads the latest Google reviews for the landing page.

No input fields.

Calls: POST /v1/tools/refresh_reviews

get_landing_page · Get landing page

Read only

Returns the landing page with its settings, address and publish state.

No input fields.

Calls: POST /v1/app/get_landing_page

preview_landing_page · Preview landing page HTML

Read only

Returns the rendered HTML of the landing page.

No input fields.

Calls: POST /v1/app/preview_landing_page

unpublish_landing_page · Unpublish landing page

Sends, submits or deletes

Takes the landing page offline.

FieldTypeRequiredDescription
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/unpublish_landing_page

get_website_popup · Get website popup

Read only

Returns the settings and texts of the website sign-up popup.

No input fields.

Calls: POST /v1/app/get_website_popup

get_popup_stats · Get popup statistics

Read only

Returns how often the website popup was seen and how many signed up.

No input fields.

Calls: POST /v1/app/get_popup_stats

Media and files

list_media · List media

Read only

Lists the images and videos in the media library with id, number, type and description.

No input fields.

Calls: POST /v1/tools/list_media

save_to_library · Save to media library

Changes data

Saves an uploaded file permanently to the media library. Argument: media_id.

FieldTypeRequiredDescription
media_idstringyes

Calls: POST /v1/tools/save_to_library

delete_media · Delete a media file

Sends, submits or deletes

Deletes an image, video or file from the media library. media_id from list_media.

FieldTypeRequiredDescription
media_idstringyesID (media id).
min length 1 · max length 200

Calls: POST /v1/app/delete_media

get_upload_cost · Get upload cost

Read only

Returns what an upload costs in credits and time (for example for video processing).

FieldTypeRequiredDescription
kindstringnoOptional filter 'kind'.
sizestringnoOptional filter 'size'.

Calls: POST /v1/app/get_upload_cost

get_profile_media · Get profile media

Read only

Returns the profile media: logo and avatar of the business.

No input fields.

Calls: POST /v1/app/get_profile_media

update_profile_media · Change profile media

Changes data

Sets logo or avatar of the business to an image from the media library.

FieldTypeRequiredDescription
bodyobjectnoFields as in the app, e.g. { logo_media_id } or { avatar_media_id }.

Calls: POST /v1/app/update_profile_media

list_knowledge_documents · List knowledge documents

Read only

Lists the documents the AI knows about the business (PDF, text).

No input fields.

Calls: POST /v1/app/list_knowledge_documents

delete_knowledge_document · Delete a knowledge document

Sends, submits or deletes

Deletes a knowledge document.

FieldTypeRequiredDescription
document_idstringyesID (document id).
min length 1 · max length 200

Calls: POST /v1/app/delete_knowledge_document

upload_media · Upload image, video or file

Changes data

Uploads an image, video or PDF to the media library, from a public address or as base64. Returns the media id, which can then be used in newsletters, templates, follow-ups and the landing page.

FieldTypeRequiredDescription
urlstringnoPublic address (https) of the file. SmartChat downloads it.
data_base64stringnoThe file itself, base64 encoded (alternative to url, for small files).
filenamestringnoFile name with extension, e.g. photo.jpg. Required with data_base64.
mimestringnoOptional file type, e.g. image/jpeg.
usagestringnoOptional purpose: generic, landing, newsletter, template, logo, avatar.

Calls: POST /v1/media

upload_knowledge_document · Upload knowledge document

Changes data

Uploads a document (PDF, text, Word) the AI reply uses as knowledge about the business, from a public address or as base64.

FieldTypeRequiredDescription
urlstringnoPublic address (https) of the file. SmartChat downloads it.
data_base64stringnoThe file itself, base64 encoded (alternative to url, for small files).
filenamestringnoFile name with extension, e.g. photo.jpg. Required with data_base64.
mimestringnoOptional file type, e.g. image/jpeg.

Calls: POST /v1/knowledge/documents

SmartChat AI and knowledge

ask_smartchat_ai · Ask SmartChat AI

Sends, submits or deletes

Gives a task to SmartChat AI, the assistant inside SmartChat, and returns its answer. Use it for everything the other tools do not cover: create or change WhatsApp newsletters, follow-up sequences, automations, the landing page and the website popup, write message texts, or answer questions about the account. Write the task in plain words, exactly as the user wants it. When SmartChat AI asks for a confirmation (for example before sending or submitting), show the question to the user and call this tool again with the user's answer. If the status is 'working', call get_smartchat_ai_reply after about a minute.

FieldTypeRequiredDescription
messagestringyesThe task or question for SmartChat AI, in the user's words.
min length 1 · max length 4000

Calls: POST /v1/ai/chat

get_smartchat_ai_reply · Get SmartChat AI reply

Read only

Returns the latest answer of SmartChat AI. Use it after ask_smartchat_ai returned the status 'working'.

No input fields.

Calls: GET /v1/ai/reply

scan_website · Scan website

Changes dataUses credits like one SmartChat AI message

Scans the business website again and updates the stored data. Argument: url (optional).

FieldTypeRequiredDescription
urlstringyes

Calls: POST /v1/tools/scan_website

set_constraint · Set a content rule

Changes data

Stores a rule for all content, for example a topic that must never be mentioned.

FieldTypeRequiredDescription
valuestringyes
kindstringno

Calls: POST /v1/tools/set_constraint

search_knowledge · Search business knowledge

Read only

Searches the stored knowledge about the business (website, documents). Argument: query.

FieldTypeRequiredDescription
querystringyes
limitnumberno

Calls: POST /v1/tools/search_knowledge

refresh_brain · Rebuild business knowledge

Changes dataUses credits like one SmartChat AI message

Rebuilds the stored knowledge about the business from its website and documents.

FieldTypeRequiredDescription
forcebooleanno

Calls: POST /v1/tools/refresh_brain

get_growth_plan · Get growth plan

Read onlyUses credits like one SmartChat AI message

Returns a growth plan for the business based on its data.

No input fields.

Calls: POST /v1/tools/get_growth_plan

get_next_step · Get next step

Read only

Returns the most useful next step for the account.

No input fields.

Calls: POST /v1/tools/get_next_step

web_research · Research on the web

Read onlyUses credits like one SmartChat AI message

Researches a question on the web and returns sources. Argument: query.

FieldTypeRequiredDescription
querystringyes
languagestringno

Calls: POST /v1/tools/web_research

get_ai_reply_settings · Get AI reply settings

Read only

Returns the AI reply settings: on/off, name of the AI, delays, confidence.

No input fields.

Calls: POST /v1/app/get_ai_reply_settings

update_ai_reply_settings · Change AI reply settings

Changes data

Switches the AI reply on or off and changes its name and settings.

FieldTypeRequiredDescription
bodyobjectnoFields as in the app, e.g. { enabled, name }.

Calls: POST /v1/app/update_ai_reply_settings

analyze_reply_style · Analyze reply style

Changes data

Analyzes the answer style of the business from past messages.

FieldTypeRequiredDescription
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/analyze_reply_style

approve_reply_style · Approve reply style

Changes data

Approves the analyzed answer style so the AI uses it.

FieldTypeRequiredDescription
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/approve_reply_style

discard_reply_style · Discard reply style

Changes data

Discards the analyzed answer style.

FieldTypeRequiredDescription
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/discard_reply_style

get_auto_reply_faq · Get auto-reply FAQ

Read only

Returns the FAQ and settings of the automatic reply.

No input fields.

Calls: POST /v1/app/get_auto_reply_faq

update_auto_reply_faq · Change auto-reply FAQ

Changes data

Changes the FAQ and settings of the automatic reply.

FieldTypeRequiredDescription
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/update_auto_reply_faq

Account and settings

get_stats · Get account statistics

Read only

Returns account figures: contacts, messages sent, open conversations and remaining credits.

No input fields.

Calls: GET /v1/stats

get_business_profile · Get business profile

Read only

Returns the stored business profile: name, industry, description and website.

No input fields.

Calls: GET /v1/settings/profile

get_overview · Get account overview

Read only

Returns an overview of the account: landing page, templates, follow-ups, newsletters, automations and contacts with their IDs and states.

No input fields.

Calls: POST /v1/tools/get_overview

update_brand · Change brand

Changes data

Changes brand data: name, colors, logo, tone.

FieldTypeRequiredDescription
colorstringno
tonalitystringno

Calls: POST /v1/tools/update_brand

set_whatsapp_profile_photo · Set WhatsApp profile photo

Changes data

Sets the profile photo of the connected WhatsApp number from an image in the media library.

FieldTypeRequiredDescription
bodyobjectno{ media_id }

Calls: POST /v1/app/set_whatsapp_profile_photo

list_widgets · List website widgets

Read only

Lists the website widgets (popup and chat button).

No input fields.

Calls: POST /v1/app/list_widgets

get_widget_snippet · Get widget embed code

Read only

Returns the code to paste into the website.

FieldTypeRequiredDescription
widget_idstringyesID (widget id).
min length 1 · max length 200

Calls: POST /v1/app/get_widget_snippet

update_widget · Change a widget

Changes data

Changes a website widget, for example the WhatsApp number or allowed domains.

FieldTypeRequiredDescription
widget_idstringyesID (widget id).
min length 1 · max length 200
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/update_widget

rotate_widget_token · Renew widget token

Sends, submits or deletes

Renews the token of a widget. The old embed code stops working.

FieldTypeRequiredDescription
widget_idstringyesID (widget id).
min length 1 · max length 200
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/rotate_widget_token

get_whatsapp_qr · Get WhatsApp QR code

Read only

Returns the QR code for the WhatsApp number.

No input fields.

Calls: POST /v1/app/get_whatsapp_qr

get_notifications · Get notification settings

Read only

Returns which emails the account gets (new messages, problems, reports).

No input fields.

Calls: POST /v1/app/get_notifications

update_notifications · Change notification settings

Changes data

Switches notification emails on or off.

FieldTypeRequiredDescription
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/update_notifications

invite_team_member · Invite a team member

Changes data

Invites a person to the team by email.

FieldTypeRequiredDescription
bodyobjectno{ email, role } - same fields as the app.

Calls: POST /v1/app/invite_team_member

change_team_role · Change a team role

Changes data

Changes the role of a team member.

FieldTypeRequiredDescription
member_idstringyesID (member id).
min length 1 · max length 200
bodyobjectno{ role }

Calls: POST /v1/app/change_team_role

remove_team_member · Remove a team member

Sends, submits or deletes

Removes a person from the team.

FieldTypeRequiredDescription
member_idstringyesID (member id).
min length 1 · max length 200

Calls: POST /v1/app/remove_team_member

get_billing · Get plan and subscription

Read only

Returns the current plan and subscription state.

No input fields.

Calls: POST /v1/app/get_billing

list_invoices · List invoices

Read only

Lists the invoices of the account.

No input fields.

Calls: POST /v1/app/list_invoices

get_credits · Get credits

Read only

Returns the credit balance.

No input fields.

Calls: POST /v1/app/get_credits

get_credit_history · Get credit history

Read only

Returns the history of credits used and added.

No input fields.

Calls: POST /v1/app/get_credit_history

list_rewards · List rewards

Read only

Lists the bonus tasks and their state.

No input fields.

Calls: POST /v1/app/list_rewards

claim_reward · Claim a reward

Changes data

Claims a finished bonus task.

FieldTypeRequiredDescription
reward_idstringyesID (reward id).
min length 1 · max length 200
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/claim_reward

get_referral · Get referral program

Read only

Returns the referral link and its results.

No input fields.

Calls: POST /v1/app/get_referral

list_domains · List domains

Read only

Lists the domains and subdomain of the landing page.

No input fields.

Calls: POST /v1/app/list_domains

check_subdomain · Check a subdomain

Read only

Checks if a subdomain (name.smartchat.marketing) is free.

FieldTypeRequiredDescription
namestringnoOptional filter 'name'.

Calls: POST /v1/app/check_subdomain

suggest_subdomain · Suggest subdomains

Read only

Suggests free subdomains for the business.

No input fields.

Calls: POST /v1/app/suggest_subdomain

set_subdomain · Set the subdomain

Changes data

Sets the subdomain of the landing page. The old address stops working.

FieldTypeRequiredDescription
bodyobjectno{ name }

Calls: POST /v1/app/set_subdomain

connect_own_domain · Connect an own domain

Changes data

Connects a domain the business already owns. Returns the DNS entries to set.

FieldTypeRequiredDescription
bodyobjectno{ connect: "example.com" } - same fields as the app. Buying a domain is not possible here.

Calls: POST /v1/app/connect_own_domain

verify_domain · Verify a domain

Changes data

Checks the DNS entries of a connected domain.

FieldTypeRequiredDescription
bodyobjectnoFields to send, same as in the app.

Calls: POST /v1/app/verify_domain

set_domain_auto_renew · Switch domain auto-renew

Changes data

Switches the automatic renewal of a domain on or off.

FieldTypeRequiredDescription
domain_idstringyesID (domain id).
min length 1 · max length 200
bodyobjectno{ auto_renew: true|false }

Calls: POST /v1/app/set_domain_auto_renew

delete_domain · Remove a domain

Sends, submits or deletes

Removes a connected domain from the account.

FieldTypeRequiredDescription
domain_idstringyesID (domain id).
min length 1 · max length 200

Calls: POST /v1/app/delete_domain

list_connected_ai_apps · List connected AI apps

Read only

Lists the AI apps (like Claude) connected to the account.

No input fields.

Calls: POST /v1/app/list_connected_ai_apps

list_tutorials · List tutorials

Read only

Lists the tutorial videos.

No input fields.

Calls: POST /v1/app/list_tutorials

send_feedback · Send feedback

Changes data

Sends feedback, a bug report or a suggestion to the SmartChat team.

FieldTypeRequiredDescription
bodyobjectnoSame fields as the app, e.g. { type, message }.

Calls: POST /v1/app/send_feedback

get_onboarding_status · Get setup status

Read only

Returns the setup state of the account (what is done, what is missing).

No input fields.

Calls: POST /v1/app/get_onboarding_status

set_areas · Choose areas

Changes data

Chooses which areas the account uses (marketing, automations, AI reply).

FieldTypeRequiredDescription
bodyobjectno{ areas: [...] } - same fields as the app.

Calls: POST /v1/app/set_areas

Questions?

Email us at support@smartchat.marketing