Endpoint funciones de la app
POST /v1/app/{name} ejecuta una función de la app. Los ID van en params, los filtros en query y los datos en body. GET /v1/app lista todas las funciones y si tu clave puede usarlas.
La referencia técnica de abajo está en inglés, exactamente como aparecen los nombres y campos en la API y en Claude.
curl -X POST https://api.smartchat.marketing/v1/app/reply_in_conversation \
-H "Authorization: Bearer sk_live_..." \
-H "Content-Type: application/json" \
-d '{"params": {"conversation_id": "..."}, "body": {"text": "Thanks, see you tomorrow."}}'
84 functions
POST/v1/app/delete_media · Delete a media file
media:deleteDeletes an image, video or file from the media library. media_id from list_media.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.media_id | string | sí | ID |
POST/v1/app/get_upload_cost · Get upload cost
media:readReturns what an upload costs in credits and time (for example for video processing).
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
query.kind | string | no | |
query.size | string | no |
POST/v1/app/get_profile_media · Get profile media
media:readReturns the profile media: logo and avatar of the business.
Sin campos de entrada.
POST/v1/app/update_profile_media · Change profile media
media:writeSets logo or avatar of the business to an image from the media library.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no | Fields as in the app, e.g. { logo_media_id } or { avatar_media_id }. |
POST/v1/app/set_whatsapp_profile_photo · Set WhatsApp profile photo
settings:writeSets the profile photo of the connected WhatsApp number from an image in the media library.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no | { media_id } |
POST/v1/app/list_ai_conversations · List SmartChat AI conversations
ai:chatLists the conversations with SmartChat AI (the chat inside the app).
Sin campos de entrada.
POST/v1/app/get_ai_conversation_messages · Read a SmartChat AI conversation
ai:chatReturns all messages of one SmartChat AI conversation.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.conversation_id | string | sí | ID |
POST/v1/app/get_last_import · Get last contact import
contacts:readReturns the status and result of the last contact import.
Sin campos de entrada.
POST/v1/app/preview_unconfirmed_contacts · Preview unconfirmed contacts
contacts:readShows how many contacts have not confirmed their WhatsApp sign-up yet and would get the confirmation again.
Sin campos de entrada.
POST/v1/app/resend_to_unconfirmed_contacts · Resend confirmation to all unconfirmed
messages:writeSends the confirmation message again to all contacts who have not confirmed yet. Sends real WhatsApp messages.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no | Same fields as the app sends (usually none). |
POST/v1/app/get_optin_queue · Get opt-in queue
contacts:readReturns confirmation messages that are waiting to be sent.
Sin campos de entrada.
POST/v1/app/send_optin_queue · Send opt-in queue
messages:writeSends the waiting confirmation messages now. Sends real WhatsApp messages.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no |
POST/v1/app/get_consent_check · Get consent proof check
contacts:readReturns the result of the consent proof check for imported contacts.
Sin campos de entrada.
POST/v1/app/start_consent_check · Start consent proof check
contacts:writeStarts or answers the consent proof check for imported contacts.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no | Same fields as the app (answer of the check). |
POST/v1/app/unsubscribe_contact · Unsubscribe a contact
contacts:writeUnsubscribes a contact: they get no more marketing messages. contact_id from search_contacts.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.contact_id | string | sí | ID |
body | object | no |
POST/v1/app/remove_contact_tag · Remove a tag from a contact
contacts:writeRemoves one tag from a contact.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.contact_id | string | sí | ID |
params.tag | string | sí | ID |
POST/v1/app/delete_contact · Delete a contact
contacts:deleteDeletes a contact completely. Cannot be undone.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.contact_id | string | sí | ID |
POST/v1/app/export_all_data · Export all account data
account:readReturns the complete data export of the account (as in Settings).
Sin campos de entrada.
POST/v1/app/mark_conversation_read · Mark conversation as read
inbox:writeMarks an inbox conversation as read.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.conversation_id | string | sí | ID |
body | object | no |
POST/v1/app/reply_in_conversation · Reply in an inbox conversation
inbox:writeSends a reply inside an inbox conversation (text, or an image/video from the media library). Sends a real WhatsApp message.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.conversation_id | string | sí | ID |
body | object | no | { text } and optional { media_id } - same fields as the app. |
POST/v1/app/save_reply_as_learned · Save reply as learned answer
ai:settingsSaves an answer from a conversation so the AI reply uses it next time.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.conversation_id | string | sí | ID |
body | object | no |
POST/v1/app/get_conversation_ai_mode · Get AI mode of a conversation
inbox:readReturns whether the AI answers in this conversation or a human took over.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.conversation_id | string | sí | ID |
POST/v1/app/set_conversation_ai_mode · Set AI mode of a conversation
ai:settingsSwitches the AI reply on or off for one conversation (take over / hand back).
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.conversation_id | string | sí | ID |
body | object | no | { enabled: true|false } - same fields as the app. |
POST/v1/app/get_ai_reply_settings · Get AI reply settings
settings:readReturns the AI reply settings: on/off, name of the AI, delays, confidence.
Sin campos de entrada.
POST/v1/app/update_ai_reply_settings · Change AI reply settings
ai:settingsSwitches the AI reply on or off and changes its name and settings.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no | Fields as in the app, e.g. { enabled, name }. |
POST/v1/app/analyze_reply_style · Analyze reply style
ai:settingsAnalyzes the answer style of the business from past messages.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no |
POST/v1/app/approve_reply_style · Approve reply style
ai:settingsApproves the analyzed answer style so the AI uses it.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no |
POST/v1/app/discard_reply_style · Discard reply style
ai:settingsDiscards the analyzed answer style.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no |
POST/v1/app/list_learned_answers · List learned answers
settings:readLists the answers the AI reply has learned.
Sin campos de entrada.
POST/v1/app/update_learned_answer · Change a learned answer
ai:settingsChanges one learned answer.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.answer_id | string | sí | ID |
body | object | no |
POST/v1/app/delete_learned_answer · Delete a learned answer
ai:settingsDeletes one learned answer.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.answer_id | string | sí | ID |
POST/v1/app/get_auto_reply_faq · Get auto-reply FAQ
settings:readReturns the FAQ and settings of the automatic reply.
Sin campos de entrada.
POST/v1/app/update_auto_reply_faq · Change auto-reply FAQ
ai:settingsChanges the FAQ and settings of the automatic reply.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no |
POST/v1/app/list_knowledge_documents · List knowledge documents
settings:readLists the documents the AI knows about the business (PDF, text).
Sin campos de entrada.
POST/v1/app/delete_knowledge_document · Delete a knowledge document
knowledge:writeDeletes a knowledge document.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.document_id | string | sí | ID |
POST/v1/app/count_newsletter_recipients · Count newsletter recipients
newsletters:readReturns how many contacts a newsletter would reach.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no |
POST/v1/app/preview_newsletter · Preview a newsletter
newsletters:readReturns exactly how the newsletter arrives on the phone.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.newsletter_id | string | sí | ID |
POST/v1/app/get_newsletter_progress · Get newsletter sending progress
newsletters:readReturns the sending state of a newsletter (sent, waiting, stopped).
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.newsletter_id | string | sí | ID |
POST/v1/app/resume_newsletter · Resume a newsletter
newsletters:scheduleContinues sending a newsletter that stopped (for example after credits ran out). Sends real WhatsApp messages.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.newsletter_id | string | sí | ID |
body | object | no |
POST/v1/app/pause_newsletter · Pause a newsletter
newsletters:scheduleStops a newsletter that is being sent right now.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.newsletter_id | string | sí | ID |
body | object | no |
POST/v1/app/delete_newsletter · Delete a newsletter
newsletters:deleteDeletes a newsletter from the list.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.newsletter_id | string | sí | ID |
POST/v1/app/get_test_number · Get test phone number
settings:readReturns the phone number that receives test newsletters.
Sin campos de entrada.
POST/v1/app/set_test_number · Set test phone number
settings:writeSets the phone number that receives test newsletters.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no | { phone } in international format. |
POST/v1/app/get_landing_page · Get landing page
landing:readReturns the landing page with its settings, address and publish state.
Sin campos de entrada.
POST/v1/app/preview_landing_page · Preview landing page HTML
landing:readReturns the rendered HTML of the landing page.
Sin campos de entrada.
POST/v1/app/unpublish_landing_page · Unpublish landing page
landing:writeTakes the landing page offline.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no |
POST/v1/app/get_website_popup · Get website popup
landing:readReturns the settings and texts of the website sign-up popup.
Sin campos de entrada.
POST/v1/app/get_popup_stats · Get popup statistics
stats:readReturns how often the website popup was seen and how many signed up.
Sin campos de entrada.
POST/v1/app/get_automation_connection · Get automation connection status
automations:readReturns whether an automation receives data (webhook, calendar).
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.automation_id | string | sí | ID |
POST/v1/app/get_automation_endpoint · Get automation endpoint
automations:readReturns the webhook address and setup of an automation.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.automation_id | string | sí | ID |
POST/v1/app/get_automation_timeline · Get automation timeline
automations:readReturns the timeline of what an automation did.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.automation_id | string | sí | ID |
POST/v1/app/check_automation_calendar · Check automation calendar
automations:writeChecks the connected calendar of an automation.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.automation_id | string | sí | ID |
body | object | no |
POST/v1/app/get_calendar_guides · Get calendar guides
automations:readReturns how to find the private calendar address in Google, Outlook and Apple.
Sin campos de entrada.
POST/v1/app/list_widgets · List website widgets
account:readLists the website widgets (popup and chat button).
Sin campos de entrada.
POST/v1/app/get_widget_snippet · Get widget embed code
account:readReturns the code to paste into the website.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.widget_id | string | sí | ID |
POST/v1/app/update_widget · Change a widget
account:writeChanges a website widget, for example the WhatsApp number or allowed domains.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.widget_id | string | sí | ID |
body | object | no |
POST/v1/app/rotate_widget_token · Renew widget token
account:writeRenews the token of a widget. The old embed code stops working.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.widget_id | string | sí | ID |
body | object | no |
POST/v1/app/get_whatsapp_link · Get WhatsApp link
account:readReturns the wa.me link of the business.
Sin campos de entrada.
POST/v1/app/get_whatsapp_qr · Get WhatsApp QR code
account:readReturns the QR code for the WhatsApp number.
Sin campos de entrada.
POST/v1/app/get_notifications · Get notification settings
account:readReturns which emails the account gets (new messages, problems, reports).
Sin campos de entrada.
POST/v1/app/update_notifications · Change notification settings
account:writeSwitches notification emails on or off.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no |
POST/v1/app/invite_team_member · Invite a team member
account:writeInvites a person to the team by email.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no | { email, role } - same fields as the app. |
POST/v1/app/change_team_role · Change a team role
account:writeChanges the role of a team member.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.member_id | string | sí | ID |
body | object | no | { role } |
POST/v1/app/remove_team_member · Remove a team member
account:writeRemoves a person from the team.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.member_id | string | sí | ID |
POST/v1/app/get_billing · Get plan and subscription
account:readReturns the current plan and subscription state.
Sin campos de entrada.
POST/v1/app/list_invoices · List invoices
account:readLists the invoices of the account.
Sin campos de entrada.
POST/v1/app/get_credits · Get credits
account:readReturns the credit balance.
Sin campos de entrada.
POST/v1/app/get_credit_history · Get credit history
account:readReturns the history of credits used and added.
Sin campos de entrada.
POST/v1/app/list_rewards · List rewards
account:readLists the bonus tasks and their state.
Sin campos de entrada.
POST/v1/app/claim_reward · Claim a reward
account:writeClaims a finished bonus task.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.reward_id | string | sí | ID |
body | object | no |
POST/v1/app/get_referral · Get referral program
account:readReturns the referral link and its results.
Sin campos de entrada.
POST/v1/app/list_domains · List domains
account:readLists the domains and subdomain of the landing page.
Sin campos de entrada.
POST/v1/app/check_subdomain · Check a subdomain
account:readChecks if a subdomain (name.smartchat.marketing) is free.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
query.name | string | no |
POST/v1/app/suggest_subdomain · Suggest subdomains
account:readSuggests free subdomains for the business.
Sin campos de entrada.
POST/v1/app/set_subdomain · Set the subdomain
account:writeSets the subdomain of the landing page. The old address stops working.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no | { name } |
POST/v1/app/connect_own_domain · Connect an own domain
account:writeConnects a domain the business already owns. Returns the DNS entries to set.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no | { connect: "example.com" } - same fields as the app. Buying a domain is not possible here. |
POST/v1/app/verify_domain · Verify a domain
account:writeChecks the DNS entries of a connected domain.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no |
POST/v1/app/set_domain_auto_renew · Switch domain auto-renew
account:writeSwitches the automatic renewal of a domain on or off.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.domain_id | string | sí | ID |
body | object | no | { auto_renew: true|false } |
POST/v1/app/delete_domain · Remove a domain
account:writeRemoves a connected domain from the account.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
params.domain_id | string | sí | ID |
POST/v1/app/list_connected_ai_apps · List connected AI apps
account:readLists the AI apps (like Claude) connected to the account.
Sin campos de entrada.
POST/v1/app/list_tutorials · List tutorials
account:readLists the tutorial videos.
Sin campos de entrada.
POST/v1/app/send_feedback · Send feedback
account:writeSends feedback, a bug report or a suggestion to the SmartChat team.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no | Same fields as the app, e.g. { type, message }. |
POST/v1/app/get_onboarding_status · Get setup status
account:readReturns the setup state of the account (what is done, what is missing).
Sin campos de entrada.
POST/v1/app/set_areas · Choose areas
account:writeChooses which areas the account uses (marketing, automations, AI reply).
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
body | object | no | { areas: [...] } - same fields as the app. |
¿Preguntas?
Escríbenos a support@smartchat.marketing