Automations

Create DM automation

Changed on

Create a Direct Message automation. The mode field selects between 4 variants: vanilla (text-only), with_image, with_product_card, spark_code (collect TikTok spark codes via form). Each mode has specific addon and config requirements — see model schema.

post/automations/dm

Request

  • Base URL
    https://api.reacherapp.com/public/v1
  • URL
    https://api.reacherapp.com/public/v1/automations/dm
  • Auth
    API key in header x-api-key and API key in header x-shop-id

Headers

Idempotency-Keystring nullable
X-Dry-Runstring nullable
X-Created-Viastring nullable

Request body

automation_namestring required
mode'vanilla' | 'with_image' | 'with_product_card' | 'spark_code'
ai_enabledboolean
end_datestring date nullable
is_evergreenboolean

When true, the automation continuously re-evaluates its creators_to_include.filters for new qualifying creators on each run. No effect when creators_to_include.crm_group_id is set (CRM groups are inherently evergreen). Maps to top-level Automations.is_evergreen column.

business_hours_timezonestring nullable

When set, the runtime restricts initial-outreach delivery to the business-hours window in this IANA timezone (e.g. America/Los_Angeles): 9am–9pm, or business_hours_start – business_hours_end when those are set. Follow-up steps keep their own timing. Null disables the restriction. Distinct from schedule.timezone.

business_hours_startstring nullable

Custom business-hours window start, 24-hour HH:MM in business_hours_timezone, inclusive. Set together with business_hours_end; omit both for 9am–9pm.

business_hours_endstring nullable

Custom business-hours window end, 24-hour HH:MM in business_hours_timezone, exclusive. Must be after the start on the same day; 00:00 means midnight.

scheduled_start_timestring nullable

Daily start time, 24-hour HH:MM, in scheduled_start_timezone (CORE-7900). Each day the automation waits until this wall-clock time before its first send, then runs until its daily limit — best effort, within about an hour, subject to TikTok rate limits. Mutually exclusive with business_hours_timezone. Initial outreach only; follow-up steps keep their own timing. Not supported on AI-enabled, CRM-group, or spark_code DM automations.

scheduled_start_timezonestring nullable

IANA timezone for scheduled_start_time (e.g. Europe/London).

Response

Successful Response

dry_runboolean
side_effectsobject nullable

Backend side-effects, e.g. {'crm_group_created': 'uuid-...'} for sample_request creates.

Changes

    • info

      added the optional property / to the response with the status

    • info

      added the new optional request property

    • info

      added the new optional request property