Automation
Create an automation rule
POST
/
api
/
v1
/
automation
/
rules
Create an automation rule
curl --request POST \
--url https://api.linebundle.com/api/v1/automation/rules \
--header 'Content-Type: application/json' \
--data '
{
"actions": [
{}
],
"name": "<string>",
"scope": "<string>",
"conditions": {},
"description": "<string>",
"enabled": true,
"priority": 123,
"scope_id": "<string>"
}
'import requests
url = "https://api.linebundle.com/api/v1/automation/rules"
payload = {
"actions": [{}],
"name": "<string>",
"scope": "<string>",
"conditions": {},
"description": "<string>",
"enabled": True,
"priority": 123,
"scope_id": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
actions: [{}],
name: '<string>',
scope: '<string>',
conditions: {},
description: '<string>',
enabled: true,
priority: 123,
scope_id: '<string>'
})
};
fetch('https://api.linebundle.com/api/v1/automation/rules', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.linebundle.com/api/v1/automation/rules",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'actions' => [
[
]
],
'name' => '<string>',
'scope' => '<string>',
'conditions' => [
],
'description' => '<string>',
'enabled' => true,
'priority' => 123,
'scope_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.linebundle.com/api/v1/automation/rules"
payload := strings.NewReader("{\n \"actions\": [\n {}\n ],\n \"name\": \"<string>\",\n \"scope\": \"<string>\",\n \"conditions\": {},\n \"description\": \"<string>\",\n \"enabled\": true,\n \"priority\": 123,\n \"scope_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.linebundle.com/api/v1/automation/rules")
.header("Content-Type", "application/json")
.body("{\n \"actions\": [\n {}\n ],\n \"name\": \"<string>\",\n \"scope\": \"<string>\",\n \"conditions\": {},\n \"description\": \"<string>\",\n \"enabled\": true,\n \"priority\": 123,\n \"scope_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.linebundle.com/api/v1/automation/rules")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"actions\": [\n {}\n ],\n \"name\": \"<string>\",\n \"scope\": \"<string>\",\n \"conditions\": {},\n \"description\": \"<string>\",\n \"enabled\": true,\n \"priority\": 123,\n \"scope_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"actions": [
{}
],
"conditions": {},
"created_at": "2023-11-07T05:31:56Z",
"created_by_kind": "<string>",
"creator_id": "<string>",
"enabled": true,
"id": "<string>",
"name": "<string>",
"priority": 123,
"scope": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"version": 123,
"$schema": "https://api.linebundle.com/schemas/Rule.json",
"description": "<string>",
"org_id": "<string>",
"schedule": {
"cron_expression": "<string>",
"event_type": "<string>"
},
"scope_id": "<string>"
}{
"$schema": "https://api.linebundle.com/schemas/ErrorModel.json",
"detail": "Property foo is required but is missing.",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
],
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "https://example.com/errors/example"
}Body
application/json
Actions array
Show child attributes
Show child attributes
Rule name
Scope type (EVENT, SPACE, CONTACT, GLOBAL)
Condition block with 'conditions' array
Show child attributes
Show child attributes
Optional description
Whether the rule is active (default: true)
Execution priority (default: 0)
Optional schedule for time-based triggers
Show child attributes
Show child attributes
Optional scope entity ID
Response
Created
Show child attributes
Show child attributes
Show child attributes
Show child attributes
A URL to the JSON Schema for this object.
Example:
"https://api.linebundle.com/schemas/Rule.json"
Show child attributes
Show child attributes
Last modified on June 11, 2026
⌘I
Create an automation rule
curl --request POST \
--url https://api.linebundle.com/api/v1/automation/rules \
--header 'Content-Type: application/json' \
--data '
{
"actions": [
{}
],
"name": "<string>",
"scope": "<string>",
"conditions": {},
"description": "<string>",
"enabled": true,
"priority": 123,
"scope_id": "<string>"
}
'import requests
url = "https://api.linebundle.com/api/v1/automation/rules"
payload = {
"actions": [{}],
"name": "<string>",
"scope": "<string>",
"conditions": {},
"description": "<string>",
"enabled": True,
"priority": 123,
"scope_id": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
actions: [{}],
name: '<string>',
scope: '<string>',
conditions: {},
description: '<string>',
enabled: true,
priority: 123,
scope_id: '<string>'
})
};
fetch('https://api.linebundle.com/api/v1/automation/rules', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.linebundle.com/api/v1/automation/rules",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'actions' => [
[
]
],
'name' => '<string>',
'scope' => '<string>',
'conditions' => [
],
'description' => '<string>',
'enabled' => true,
'priority' => 123,
'scope_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.linebundle.com/api/v1/automation/rules"
payload := strings.NewReader("{\n \"actions\": [\n {}\n ],\n \"name\": \"<string>\",\n \"scope\": \"<string>\",\n \"conditions\": {},\n \"description\": \"<string>\",\n \"enabled\": true,\n \"priority\": 123,\n \"scope_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.linebundle.com/api/v1/automation/rules")
.header("Content-Type", "application/json")
.body("{\n \"actions\": [\n {}\n ],\n \"name\": \"<string>\",\n \"scope\": \"<string>\",\n \"conditions\": {},\n \"description\": \"<string>\",\n \"enabled\": true,\n \"priority\": 123,\n \"scope_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.linebundle.com/api/v1/automation/rules")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"actions\": [\n {}\n ],\n \"name\": \"<string>\",\n \"scope\": \"<string>\",\n \"conditions\": {},\n \"description\": \"<string>\",\n \"enabled\": true,\n \"priority\": 123,\n \"scope_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"actions": [
{}
],
"conditions": {},
"created_at": "2023-11-07T05:31:56Z",
"created_by_kind": "<string>",
"creator_id": "<string>",
"enabled": true,
"id": "<string>",
"name": "<string>",
"priority": 123,
"scope": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"version": 123,
"$schema": "https://api.linebundle.com/schemas/Rule.json",
"description": "<string>",
"org_id": "<string>",
"schedule": {
"cron_expression": "<string>",
"event_type": "<string>"
},
"scope_id": "<string>"
}{
"$schema": "https://api.linebundle.com/schemas/ErrorModel.json",
"detail": "Property foo is required but is missing.",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
],
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "https://example.com/errors/example"
}