1. Campaigns
Repairy Partner API
  • Welcome 👋
  • Get Started
  • HTTP Headers
  • Authorization
  • Workshops
  • Bookings
  • Quotes
  • Service Reminder
  • Data Reporting
  • Booking URL
  • Error Codes
  • Technical Support
  • Changelog
  • Webhook
  • Additional Services
  • Service Catalog
  • APIs
    • Authorization
      • Access Token
      • Refresh Token
    • Workshops
      • Availabilities
      • Service Catalog
    • Bookings
      • Booking Request with Service Catalog (beta)
      • Booking Request
      • Booking Information
      • Update Booking Information
      • Update Booking Status
    • Quotes
      • Quote Request
    • Service Reminder
      • Service Reminder Notification
      • Service Reminder Information
    • Data Reporting
      • Partner Report
    • Leads
      • Call Lead
    • Messaging
      • Send Message
      • List of Templates
    • Campaigns
      • Trigger Automation
        POST
      • Blast List
        GET
      • Trigger Blast
        POST
      • Find Blast
        GET
  • Data Structures
    • AuthResponse
    • Availability
    • CustomAvailability
    • Car
    • Customer
    • Booking
    • BookingUpdateRequest
    • BookingStatusUpdateConfig
    • Quote
    • ServiceHistory
    • ServiceReminder
    • WebhookRequest
    • ServiceCatalog
    • CallLead
  • Schemas
    • Schemas
      • WebhookRequest
      • ServiceSelection
      • ServiceCatalogItem
      • CallLead
      • Booking
      • BookingUpdateRequest
      • Customer
      • Car
      • Availability
      • CustomAvailability
      • AuthResponse
      • Quote
      • ServiceHistory
      • ServiceReminder
      • BookingStatusUpdateConfig
  1. Campaigns

Trigger Automation

Developing
Cloud Mock
https://mock.apidog.com/m1/839892-0-default
Cloud Mock
https://mock.apidog.com/m1/839892-0-default
POST
/workshops/{id}/campaigns/automations/{type}/trigger
Triggers a preset automated customer notification for a workshop.
The automation preset is selected via path parameter {type}. Message content, channels, and delivery rules are platform-managed. Free-form message content is not accepted. Request fields are limited to those documented below.
Delivery is SMS via the workshop inbox only. Email is not sent for these automations.
HTTP 200 may return "success": false when the request is accepted but delivery does not complete (for example, the customer is unsubscribed). Authentication and client errors use non-2xx responses.
Partner authentication is required. The workshop must have partner integration and inbox messaging enabled, with an inbox phone number ready for SMS. Requests from unauthorized partners or for disabled / not-ready workshops return 403.

Supported {type} values#

typePurposeRequired body
booking-confirmationCustomer booking confirmation for an active bookingbookingId
booking-updateCustomer booking update for the current booking statebookingId
booking-reminderBooking appointment reminderbookingId
review-invitationReview invitationcustomerId or phone; bookingId optional
service-reminderService reminder for a done booking (send now or schedule)bookingId; reminderAt optional
Unsupported type values return 400 with error code 000001.

Behaviour#

booking-confirmation / booking-update#

bookingId is required and must belong to the workshop.
Booking status must not be done or cancelled.
Subject and body are not accepted in the request.
Delivery is SMS via the workshop inbox only. Attempted SMS is returned in channels as { type: "sms", success, sentAt, message }, plus conversationId / messageId when available.

booking-reminder#

bookingId is required and must belong to the workshop.
Sends the booking appointment reminder for that booking via workshop inbox SMS.

review-invitation#

Either customerId or phone is required. When customerId is omitted, phone is required.
When customerId is provided, it must exist under the workshop.
When bookingId is provided, it must belong to the workshop and to the resolved customer.
A review invitation is created and SMS delivery is attempted via the workshop inbox.
When a recent invitation already exists, the response may return "success": true with withinSixMonths: true and without a new SMS send.

service-reminder#

bookingId is required. The booking must be done and eligible for a service reminder.
When reminderAt is omitted, the reminder is sent immediately.
When reminderAt is provided, the reminder is scheduled for that datetime and is not sent immediately. Invalid datetime values return 400.
When the booking is not eligible for a service reminder, the request returns 400.
When required booking-related resources are missing, the request returns 404.

Soft failures (HTTP 200, "success": false)#

Possible outcomes include unsubscribed customers, disabled notifications, unavailable delivery channel, or a reminder that was not sent. When channels is present, top-level success is false if any channel has success: false. Top-level success is true only when every channel has success: true. Clients should inspect success, channels, and optional message.

Typical call mapping#

Business eventtype
New booking confirmationbooking-confirmation
Booking details changedbooking-update
Appointment reminderbooking-reminder
Post-service review requestreview-invitation
Post-service follow-up (immediate or scheduled)service-reminder

Errors#

HTTPerrorCodeWhen
400000001Missing or invalid body fields, unsupported type, invalid reminderAt, or booking not eligible for service reminder
400060002Booking status not allowed for the requested automation
401010000Missing or invalid OAuth token
403000003Feature unavailable
403000004Partner integration, inbox messaging, or inbox phone not ready for the workshop
404030001Workshop not found
404040001Customer not found
404050001Related resource not found
404060001Booking not found for the workshop
404000001Required booking-related resource not found

Request

Path Params

Header Params

Body Params application/jsonRequired

Examples
{
  "bookingId": "64f1a2b3c4d5e6f7a8b9c0d2"
}

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
cURL
curl --location 'https://mock.apidog.com/m1/839892-0-default/workshops/abcdefg12345/campaigns/automations/booking-confirmation/trigger' \
--header 'Authorization: Bearer XXXXXXXXXXXXX' \
--header 'X-Partner-Id;' \
--header 'Content-Type: application/json' \
--data '{
  "bookingId": "64f1a2b3c4d5e6f7a8b9c0d2"
}'

Responses

🟢200Success
application/json
Bodyapplication/json

Examples
{
    "success": true,
    "type": "booking-confirmation",
    "bookingId": "64f1a2b3c4d5e6f7a8b9c0d2",
    "channels": [
        {
            "type": "sms",
            "success": true,
            "sentAt": "2026-07-23T05:00:00.000Z",
            "message": "Hi Jane, thanks for booking your vehicle, ABC123 at Workshop. View your booking & confirmation here https://example.com/b/xyz",
            "conversationId": "64f1a2b3c4d5e6f7a8b9bbbb",
            "messageId": "64f1a2b3c4d5e6f7a8b9cccc"
        }
    ]
}
🟢200Partial
🟠400Bad Request
🟠404Not Found
🟠403Forbidden
🟠401Unauthorized
Modified at 2026-07-25 14:12:14
Previous
List of Templates
Next
Blast List
Built with