POST

Ticket.Automation

List ticket automation rules from ticket_automation (NOT AutomationEvents). Alias: Ticket.AutomationList. Matches dashboard Ticket Settings → Ticket automation.

Permissions

  • User must be logged in with a valid bearer token.
  • The user must be from the same company domain as the request Host (call the API on that account subdomain or allowed custom domain). A token from another company returns success=0, error user_not_in_company.
  • Returned or changed records are limited by the user permissions, team access, folder access, and account settings.

Action

  • Runs the Ticket.Automation function and returns JSON.

Push Service

No push is sent because this function only reads data or returns helper information.

Automation

No automation is run for this function.

Special Instructions

  • On a company subdomain (e.g. https://{user_domain}.bull36.com) the user must match that Host — Login and protected APIs reject another company with success=0, error user_not_in_company. On a main brand host (bull36.com, biz1.co.il, mastrocrm.com, …) the company domain gate is skipped.
  • This is the ticket_automation table used by customer-tickets Settings step 7 — not AutomationEvents.* / AutomationActions.*.
  • Read-only list; no body parameters required.
  • Each item includes email_template_id (0 = default customer mail template). Response also includes additive email_templates[] for the Send email → Email template picker (same as dashboard). You can also use EmailTemplates.List.
  • Create/update with Ticket.AutomationSave (or Add/Edit/Update aliases). Toggle with Ticket.AutomationToggle. Delete with Ticket.AutomationDelete.
  • Manager permission is required for write/toggle/delete.

Required Parameters

No body parameters are required for this function.

Optional Parameters

No optional body parameters are defined for this function.

Authentication

Send the bearer token returned by Login in the request header. The user must be from the same company domain as this Host — a token from another company is rejected (user_not_in_company).

Authorization: Bearer YOUR TOKEN

Sample Request

{
    "url": "\/app\/Ticket.Automation",
    "method": "POST",
    "headers": {
        "Authorization": "Bearer YOUR TOKEN"
    },
    "body": [],
    "url_user": "https:\/\/{user}.bull36.com\/app\/Ticket.Automation",
    "url_domain": "https:\/\/{domain}\/app\/Ticket.Automation"
}

Endpoint

POST /app/Ticket.Automation
POST https://{user}.bull36.com/app/Ticket.Automation
POST https://{domain}/app/Ticket.Automation

Sample Output

{
    "success": 1,
    "count": 1,
    "items": [
        {
            "id": 3,
            "title": "Follow up",
            "after_minutes": 15,
            "action_send_email": 1,
            "email_to_customer": 1,
            "email_template_id": 42,
            "is_active": 1
        }
    ],
    "data": [],
    "email_templates": [
        {
            "id": 42,
            "name": "Support reply",
            "use_for_support": 1,
            "status": 1
        }
    ]
}

JavaScript Example

const token = 'YOUR TOKEN';
const res = await fetch('/app/Ticket.Automation', { method: 'POST', headers: { Authorization: 'Bearer ' + token }, body: new URLSearchParams() });
console.log(await res.json());

Error Example

{
    "success": "0",
    "error": "bearer_token_required",
    "message": "Authorization bearer token is required. Send header: Authorization: Bearer YOUR TOKEN"
}