IG Stories
Create Instagram Story Automation
Adds an automation that replies to story mentions/replies on Instagram. Use igStories.listStories to find eligible stories first.
POST
/
v1
/
ig-stories
Create Instagram Story Automation
curl --request POST \
--url https://app.chatbotx.io/api/v1/ig-stories \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"story": {
"value": [
"<string>"
]
},
"reply": {
"value": "<string>",
"values": [
{
"value": "<string>"
}
]
},
"includeKeywords": {
"value": [
"<string>"
]
},
"folderId": "<string>"
}
'import requests
url = "https://app.chatbotx.io/api/v1/ig-stories"
payload = {
"name": "<string>",
"story": { "value": ["<string>"] },
"reply": {
"value": "<string>",
"values": [{ "value": "<string>" }]
},
"includeKeywords": { "value": ["<string>"] },
"folderId": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
story: {value: ['<string>']},
reply: {value: '<string>', values: [{value: '<string>'}]},
includeKeywords: {value: ['<string>']},
folderId: '<string>'
})
};
fetch('https://app.chatbotx.io/api/v1/ig-stories', 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://app.chatbotx.io/api/v1/ig-stories",
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([
'name' => '<string>',
'story' => [
'value' => [
'<string>'
]
],
'reply' => [
'value' => '<string>',
'values' => [
[
'value' => '<string>'
]
]
],
'includeKeywords' => [
'value' => [
'<string>'
]
],
'folderId' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://app.chatbotx.io/api/v1/ig-stories"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"story\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"reply\": {\n \"value\": \"<string>\",\n \"values\": [\n {\n \"value\": \"<string>\"\n }\n ]\n },\n \"includeKeywords\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"folderId\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://app.chatbotx.io/api/v1/ig-stories")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"story\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"reply\": {\n \"value\": \"<string>\",\n \"values\": [\n {\n \"value\": \"<string>\"\n }\n ]\n },\n \"includeKeywords\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"folderId\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.chatbotx.io/api/v1/ig-stories")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"story\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"reply\": {\n \"value\": \"<string>\",\n \"values\": [\n {\n \"value\": \"<string>\"\n }\n ]\n },\n \"includeKeywords\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"folderId\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"name": "<string>",
"type": "instagram",
"isActive": true,
"startTime": "<string>",
"endTime": "<string>",
"repliesCount": -1,
"story": {
"type": "all",
"value": [
"<string>"
]
},
"reply": {
"type": "AIAgent",
"value": "<string>",
"values": [
{
"value": "<string>"
}
]
},
"includeKeywords": {
"type": "all",
"value": [
"<string>"
]
},
"folderId": "<string>"
}{
"defined": true,
"code": "businessError",
"status": 400,
"message": "An error occurred while processing your request",
"data": "<unknown>"
}{
"defined": true,
"code": "UNAUTHORIZED",
"status": 401,
"message": "Authentication required",
"data": "<unknown>"
}{
"defined": true,
"code": "FORBIDDEN",
"status": 403,
"message": "You do not have permission to perform this action",
"data": "<unknown>"
}{
"defined": true,
"code": "invalidRequestData",
"status": 422,
"message": "Input validation failed",
"data": {
"issues": [
{
"message": "<string>",
"path": [
"<string>"
]
}
]
}
}{
"defined": true,
"code": "tooManyRequests",
"status": 429,
"message": "Too many requests",
"data": "<unknown>"
}{
"defined": true,
"code": "INTERNAL_SERVER_ERROR",
"status": 500,
"message": "An unexpected error occurred",
"data": "<unknown>"
}Authorizations
bearerAuthdeveloperAccessTokentokenInSearchParams
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
Automation name.
Required string length:
1 - 255Instagram connection type, instagram (native login) or instagramFacebook (linked via a Facebook page).
Available options:
instagram, instagramFacebook Instagram story to watch for replies/mentions. Get it from igStories.listStories.
Show child attributes
Show child attributes
Private message reply sent to the contact.
Show child attributes
Show child attributes
Only trigger when the reply matches these keywords.
Show child attributes
Show child attributes
Folder to place the automation in, or null for root-level.
Pattern:
^\d+$Response
OK
Available options:
instagram, instagramFacebook Required range:
-2147483648 <= x <= 2147483647Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?
⌘I
Create Instagram Story Automation
curl --request POST \
--url https://app.chatbotx.io/api/v1/ig-stories \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"story": {
"value": [
"<string>"
]
},
"reply": {
"value": "<string>",
"values": [
{
"value": "<string>"
}
]
},
"includeKeywords": {
"value": [
"<string>"
]
},
"folderId": "<string>"
}
'import requests
url = "https://app.chatbotx.io/api/v1/ig-stories"
payload = {
"name": "<string>",
"story": { "value": ["<string>"] },
"reply": {
"value": "<string>",
"values": [{ "value": "<string>" }]
},
"includeKeywords": { "value": ["<string>"] },
"folderId": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
story: {value: ['<string>']},
reply: {value: '<string>', values: [{value: '<string>'}]},
includeKeywords: {value: ['<string>']},
folderId: '<string>'
})
};
fetch('https://app.chatbotx.io/api/v1/ig-stories', 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://app.chatbotx.io/api/v1/ig-stories",
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([
'name' => '<string>',
'story' => [
'value' => [
'<string>'
]
],
'reply' => [
'value' => '<string>',
'values' => [
[
'value' => '<string>'
]
]
],
'includeKeywords' => [
'value' => [
'<string>'
]
],
'folderId' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://app.chatbotx.io/api/v1/ig-stories"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"story\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"reply\": {\n \"value\": \"<string>\",\n \"values\": [\n {\n \"value\": \"<string>\"\n }\n ]\n },\n \"includeKeywords\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"folderId\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://app.chatbotx.io/api/v1/ig-stories")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"story\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"reply\": {\n \"value\": \"<string>\",\n \"values\": [\n {\n \"value\": \"<string>\"\n }\n ]\n },\n \"includeKeywords\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"folderId\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.chatbotx.io/api/v1/ig-stories")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"story\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"reply\": {\n \"value\": \"<string>\",\n \"values\": [\n {\n \"value\": \"<string>\"\n }\n ]\n },\n \"includeKeywords\": {\n \"value\": [\n \"<string>\"\n ]\n },\n \"folderId\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"name": "<string>",
"type": "instagram",
"isActive": true,
"startTime": "<string>",
"endTime": "<string>",
"repliesCount": -1,
"story": {
"type": "all",
"value": [
"<string>"
]
},
"reply": {
"type": "AIAgent",
"value": "<string>",
"values": [
{
"value": "<string>"
}
]
},
"includeKeywords": {
"type": "all",
"value": [
"<string>"
]
},
"folderId": "<string>"
}{
"defined": true,
"code": "businessError",
"status": 400,
"message": "An error occurred while processing your request",
"data": "<unknown>"
}{
"defined": true,
"code": "UNAUTHORIZED",
"status": 401,
"message": "Authentication required",
"data": "<unknown>"
}{
"defined": true,
"code": "FORBIDDEN",
"status": 403,
"message": "You do not have permission to perform this action",
"data": "<unknown>"
}{
"defined": true,
"code": "invalidRequestData",
"status": 422,
"message": "Input validation failed",
"data": {
"issues": [
{
"message": "<string>",
"path": [
"<string>"
]
}
]
}
}{
"defined": true,
"code": "tooManyRequests",
"status": 429,
"message": "Too many requests",
"data": "<unknown>"
}{
"defined": true,
"code": "INTERNAL_SERVER_ERROR",
"status": 500,
"message": "An unexpected error occurred",
"data": "<unknown>"
}