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

delete_mediaget_upload_costget_profile_mediaupdate_profile_mediaset_whatsapp_profile_photolist_ai_conversationsget_ai_conversation_messagesget_last_importpreview_unconfirmed_contactsresend_to_unconfirmed_contactsget_optin_queuesend_optin_queueget_consent_checkstart_consent_checkunsubscribe_contactremove_contact_tagdelete_contactexport_all_datamark_conversation_readreply_in_conversationsave_reply_as_learnedget_conversation_ai_modeset_conversation_ai_modeget_ai_reply_settingsupdate_ai_reply_settingsanalyze_reply_styleapprove_reply_stylediscard_reply_stylelist_learned_answersupdate_learned_answerdelete_learned_answerget_auto_reply_faqupdate_auto_reply_faqlist_knowledge_documentsdelete_knowledge_documentcount_newsletter_recipientspreview_newsletterget_newsletter_progressresume_newsletterpause_newsletterdelete_newsletterget_test_numberset_test_numberget_landing_pagepreview_landing_pageunpublish_landing_pageget_website_popupget_popup_statsget_automation_connectionget_automation_endpointget_automation_timelinecheck_automation_calendarget_calendar_guideslist_widgetsget_widget_snippetupdate_widgetrotate_widget_tokenget_whatsapp_linkget_whatsapp_qrget_notificationsupdate_notificationsinvite_team_memberchange_team_roleremove_team_memberget_billinglist_invoicesget_creditsget_credit_historylist_rewardsclaim_rewardget_referrallist_domainscheck_subdomainsuggest_subdomainset_subdomainconnect_own_domainverify_domainset_domain_auto_renewdelete_domainlist_connected_ai_appslist_tutorialssend_feedbackget_onboarding_statusset_areas

POST/v1/app/delete_media · Delete a media file

Envía, somete o borraPermiso: media:delete

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

CampoTipoObligatorioDescripción
params.media_idstringsíID

POST/v1/app/get_upload_cost · Get upload cost

Solo lecturaPermiso: media:read

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

CampoTipoObligatorioDescripción
query.kindstringno
query.sizestringno

POST/v1/app/get_profile_media · Get profile media

Solo lecturaPermiso: media:read

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

Sin campos de entrada.

POST/v1/app/update_profile_media · Change profile media

Cambia datosPermiso: media:write

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

CampoTipoObligatorioDescripción
bodyobjectnoFields as in the app, e.g. { logo_media_id } or { avatar_media_id }.

POST/v1/app/set_whatsapp_profile_photo · Set WhatsApp profile photo

Cambia datosPermiso: settings:write

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

CampoTipoObligatorioDescripción
bodyobjectno{ media_id }

POST/v1/app/list_ai_conversations · List SmartChat AI conversations

Solo lecturaPermiso: ai:chat

Lists 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

Solo lecturaPermiso: ai:chat

Returns all messages of one SmartChat AI conversation.

CampoTipoObligatorioDescripción
params.conversation_idstringsíID

POST/v1/app/get_last_import · Get last contact import

Solo lecturaPermiso: contacts:read

Returns the status and result of the last contact import.

Sin campos de entrada.

POST/v1/app/preview_unconfirmed_contacts · Preview unconfirmed contacts

Solo lecturaPermiso: contacts:read

Shows 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

Envía, somete o borraPermiso: messages:write

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

CampoTipoObligatorioDescripción
bodyobjectnoSame fields as the app sends (usually none).

POST/v1/app/get_optin_queue · Get opt-in queue

Solo lecturaPermiso: contacts:read

Returns confirmation messages that are waiting to be sent.

Sin campos de entrada.

POST/v1/app/send_optin_queue · Send opt-in queue

Envía, somete o borraPermiso: messages:write

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

CampoTipoObligatorioDescripción
bodyobjectno

POST/v1/app/unsubscribe_contact · Unsubscribe a contact

Envía, somete o borraPermiso: contacts:write

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

CampoTipoObligatorioDescripción
params.contact_idstringsíID
bodyobjectno

POST/v1/app/remove_contact_tag · Remove a tag from a contact

Cambia datosPermiso: contacts:write

Removes one tag from a contact.

CampoTipoObligatorioDescripción
params.contact_idstringsíID
params.tagstringsíID

POST/v1/app/delete_contact · Delete a contact

Envía, somete o borraPermiso: contacts:delete

Deletes a contact completely. Cannot be undone.

CampoTipoObligatorioDescripción
params.contact_idstringsíID

POST/v1/app/export_all_data · Export all account data

Solo lecturaPermiso: account:read

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

Sin campos de entrada.

POST/v1/app/mark_conversation_read · Mark conversation as read

Cambia datosPermiso: inbox:write

Marks an inbox conversation as read.

CampoTipoObligatorioDescripción
params.conversation_idstringsíID
bodyobjectno

POST/v1/app/reply_in_conversation · Reply in an inbox conversation

Envía, somete o borraPermiso: inbox:write

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

CampoTipoObligatorioDescripción
params.conversation_idstringsíID
bodyobjectno{ text } and optional { media_id } - same fields as the app.

POST/v1/app/save_reply_as_learned · Save reply as learned answer

Cambia datosPermiso: ai:settings

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

CampoTipoObligatorioDescripción
params.conversation_idstringsíID
bodyobjectno

POST/v1/app/get_conversation_ai_mode · Get AI mode of a conversation

Solo lecturaPermiso: inbox:read

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

CampoTipoObligatorioDescripción
params.conversation_idstringsíID

POST/v1/app/set_conversation_ai_mode · Set AI mode of a conversation

Cambia datosPermiso: ai:settings

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

CampoTipoObligatorioDescripción
params.conversation_idstringsíID
bodyobjectno{ enabled: true|false } - same fields as the app.

POST/v1/app/get_ai_reply_settings · Get AI reply settings

Solo lecturaPermiso: settings:read

Returns 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

Cambia datosPermiso: ai:settings

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

CampoTipoObligatorioDescripción
bodyobjectnoFields as in the app, e.g. { enabled, name }.

POST/v1/app/analyze_reply_style · Analyze reply style

Cambia datosPermiso: ai:settings

Analyzes the answer style of the business from past messages.

CampoTipoObligatorioDescripción
bodyobjectno

POST/v1/app/approve_reply_style · Approve reply style

Cambia datosPermiso: ai:settings

Approves the analyzed answer style so the AI uses it.

CampoTipoObligatorioDescripción
bodyobjectno

POST/v1/app/discard_reply_style · Discard reply style

Cambia datosPermiso: ai:settings

Discards the analyzed answer style.

CampoTipoObligatorioDescripción
bodyobjectno

POST/v1/app/list_learned_answers · List learned answers

Solo lecturaPermiso: settings:read

Lists the answers the AI reply has learned.

Sin campos de entrada.

POST/v1/app/update_learned_answer · Change a learned answer

Cambia datosPermiso: ai:settings

Changes one learned answer.

CampoTipoObligatorioDescripción
params.answer_idstringsíID
bodyobjectno

POST/v1/app/delete_learned_answer · Delete a learned answer

Envía, somete o borraPermiso: ai:settings

Deletes one learned answer.

CampoTipoObligatorioDescripción
params.answer_idstringsíID

POST/v1/app/get_auto_reply_faq · Get auto-reply FAQ

Solo lecturaPermiso: settings:read

Returns the FAQ and settings of the automatic reply.

Sin campos de entrada.

POST/v1/app/update_auto_reply_faq · Change auto-reply FAQ

Cambia datosPermiso: ai:settings

Changes the FAQ and settings of the automatic reply.

CampoTipoObligatorioDescripción
bodyobjectno

POST/v1/app/list_knowledge_documents · List knowledge documents

Solo lecturaPermiso: settings:read

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

Sin campos de entrada.

POST/v1/app/delete_knowledge_document · Delete a knowledge document

Envía, somete o borraPermiso: knowledge:write

Deletes a knowledge document.

CampoTipoObligatorioDescripción
params.document_idstringsíID

POST/v1/app/count_newsletter_recipients · Count newsletter recipients

Solo lecturaPermiso: newsletters:read

Returns how many contacts a newsletter would reach.

CampoTipoObligatorioDescripción
bodyobjectno

POST/v1/app/preview_newsletter · Preview a newsletter

Solo lecturaPermiso: newsletters:read

Returns exactly how the newsletter arrives on the phone.

CampoTipoObligatorioDescripción
params.newsletter_idstringsíID

POST/v1/app/get_newsletter_progress · Get newsletter sending progress

Solo lecturaPermiso: newsletters:read

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

CampoTipoObligatorioDescripción
params.newsletter_idstringsíID

POST/v1/app/resume_newsletter · Resume a newsletter

Envía, somete o borraPermiso: newsletters:schedule

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

CampoTipoObligatorioDescripción
params.newsletter_idstringsíID
bodyobjectno

POST/v1/app/pause_newsletter · Pause a newsletter

Cambia datosPermiso: newsletters:schedule

Stops a newsletter that is being sent right now.

CampoTipoObligatorioDescripción
params.newsletter_idstringsíID
bodyobjectno

POST/v1/app/delete_newsletter · Delete a newsletter

Envía, somete o borraPermiso: newsletters:delete

Deletes a newsletter from the list.

CampoTipoObligatorioDescripción
params.newsletter_idstringsíID

POST/v1/app/get_test_number · Get test phone number

Solo lecturaPermiso: settings:read

Returns the phone number that receives test newsletters.

Sin campos de entrada.

POST/v1/app/set_test_number · Set test phone number

Cambia datosPermiso: settings:write

Sets the phone number that receives test newsletters.

CampoTipoObligatorioDescripción
bodyobjectno{ phone } in international format.

POST/v1/app/get_landing_page · Get landing page

Solo lecturaPermiso: landing:read

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

Sin campos de entrada.

POST/v1/app/preview_landing_page · Preview landing page HTML

Solo lecturaPermiso: landing:read

Returns the rendered HTML of the landing page.

Sin campos de entrada.

POST/v1/app/unpublish_landing_page · Unpublish landing page

Envía, somete o borraPermiso: landing:write

Takes the landing page offline.

CampoTipoObligatorioDescripción
bodyobjectno

POST/v1/app/get_website_popup · Get website popup

Solo lecturaPermiso: landing:read

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

Sin campos de entrada.

POST/v1/app/get_popup_stats · Get popup statistics

Solo lecturaPermiso: stats:read

Returns 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

Solo lecturaPermiso: automations:read

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

CampoTipoObligatorioDescripción
params.automation_idstringsíID

POST/v1/app/get_automation_endpoint · Get automation endpoint

Solo lecturaPermiso: automations:read

Returns the webhook address and setup of an automation.

CampoTipoObligatorioDescripción
params.automation_idstringsíID

POST/v1/app/get_automation_timeline · Get automation timeline

Solo lecturaPermiso: automations:read

Returns the timeline of what an automation did.

CampoTipoObligatorioDescripción
params.automation_idstringsíID

POST/v1/app/check_automation_calendar · Check automation calendar

Cambia datosPermiso: automations:write

Checks the connected calendar of an automation.

CampoTipoObligatorioDescripción
params.automation_idstringsíID
bodyobjectno

POST/v1/app/get_calendar_guides · Get calendar guides

Solo lecturaPermiso: automations:read

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

Sin campos de entrada.

POST/v1/app/list_widgets · List website widgets

Solo lecturaPermiso: account:read

Lists the website widgets (popup and chat button).

Sin campos de entrada.

POST/v1/app/get_widget_snippet · Get widget embed code

Solo lecturaPermiso: account:read

Returns the code to paste into the website.

CampoTipoObligatorioDescripción
params.widget_idstringsíID

POST/v1/app/update_widget · Change a widget

Cambia datosPermiso: account:write

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

CampoTipoObligatorioDescripción
params.widget_idstringsíID
bodyobjectno

POST/v1/app/rotate_widget_token · Renew widget token

Envía, somete o borraPermiso: account:write

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

CampoTipoObligatorioDescripción
params.widget_idstringsíID
bodyobjectno

POST/v1/app/get_whatsapp_qr · Get WhatsApp QR code

Solo lecturaPermiso: account:read

Returns the QR code for the WhatsApp number.

Sin campos de entrada.

POST/v1/app/get_notifications · Get notification settings

Solo lecturaPermiso: account:read

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

Sin campos de entrada.

POST/v1/app/update_notifications · Change notification settings

Cambia datosPermiso: account:write

Switches notification emails on or off.

CampoTipoObligatorioDescripción
bodyobjectno

POST/v1/app/invite_team_member · Invite a team member

Cambia datosPermiso: account:write

Invites a person to the team by email.

CampoTipoObligatorioDescripción
bodyobjectno{ email, role } - same fields as the app.

POST/v1/app/change_team_role · Change a team role

Cambia datosPermiso: account:write

Changes the role of a team member.

CampoTipoObligatorioDescripción
params.member_idstringsíID
bodyobjectno{ role }

POST/v1/app/remove_team_member · Remove a team member

Envía, somete o borraPermiso: account:write

Removes a person from the team.

CampoTipoObligatorioDescripción
params.member_idstringsíID

POST/v1/app/get_billing · Get plan and subscription

Solo lecturaPermiso: account:read

Returns the current plan and subscription state.

Sin campos de entrada.

POST/v1/app/list_invoices · List invoices

Solo lecturaPermiso: account:read

Lists the invoices of the account.

Sin campos de entrada.

POST/v1/app/get_credits · Get credits

Solo lecturaPermiso: account:read

Returns the credit balance.

Sin campos de entrada.

POST/v1/app/get_credit_history · Get credit history

Solo lecturaPermiso: account:read

Returns the history of credits used and added.

Sin campos de entrada.

POST/v1/app/list_rewards · List rewards

Solo lecturaPermiso: account:read

Lists the bonus tasks and their state.

Sin campos de entrada.

POST/v1/app/claim_reward · Claim a reward

Cambia datosPermiso: account:write

Claims a finished bonus task.

CampoTipoObligatorioDescripción
params.reward_idstringsíID
bodyobjectno

POST/v1/app/get_referral · Get referral program

Solo lecturaPermiso: account:read

Returns the referral link and its results.

Sin campos de entrada.

POST/v1/app/list_domains · List domains

Solo lecturaPermiso: account:read

Lists the domains and subdomain of the landing page.

Sin campos de entrada.

POST/v1/app/check_subdomain · Check a subdomain

Solo lecturaPermiso: account:read

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

CampoTipoObligatorioDescripción
query.namestringno

POST/v1/app/suggest_subdomain · Suggest subdomains

Solo lecturaPermiso: account:read

Suggests free subdomains for the business.

Sin campos de entrada.

POST/v1/app/set_subdomain · Set the subdomain

Cambia datosPermiso: account:write

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

CampoTipoObligatorioDescripción
bodyobjectno{ name }

POST/v1/app/connect_own_domain · Connect an own domain

Cambia datosPermiso: account:write

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

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

POST/v1/app/verify_domain · Verify a domain

Cambia datosPermiso: account:write

Checks the DNS entries of a connected domain.

CampoTipoObligatorioDescripción
bodyobjectno

POST/v1/app/set_domain_auto_renew · Switch domain auto-renew

Cambia datosPermiso: account:write

Switches the automatic renewal of a domain on or off.

CampoTipoObligatorioDescripción
params.domain_idstringsíID
bodyobjectno{ auto_renew: true|false }

POST/v1/app/delete_domain · Remove a domain

Envía, somete o borraPermiso: account:write

Removes a connected domain from the account.

CampoTipoObligatorioDescripción
params.domain_idstringsíID

POST/v1/app/list_connected_ai_apps · List connected AI apps

Solo lecturaPermiso: account:read

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

Sin campos de entrada.

POST/v1/app/list_tutorials · List tutorials

Solo lecturaPermiso: account:read

Lists the tutorial videos.

Sin campos de entrada.

POST/v1/app/send_feedback · Send feedback

Cambia datosPermiso: account:write

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

CampoTipoObligatorioDescripción
bodyobjectnoSame fields as the app, e.g. { type, message }.

POST/v1/app/get_onboarding_status · Get setup status

Solo lecturaPermiso: account:read

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

Sin campos de entrada.

POST/v1/app/set_areas · Choose areas

Cambia datosPermiso: account:write

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

CampoTipoObligatorioDescripción
bodyobjectno{ areas: [...] } - same fields as the app.

¿Preguntas?

Escríbenos a support@smartchat.marketing