curl --request POST \
--url https://api.sigmamind.ai/v1/integrations \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"name": "Shopify",
"description": "Handles order lookups for the support agent"
}
'import requests
url = "https://api.sigmamind.ai/v1/integrations"
payload = {
"name": "Shopify",
"description": "Handles order lookups for the support agent"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: 'Shopify', description: 'Handles order lookups for the support agent'})
};
fetch('https://api.sigmamind.ai/v1/integrations', 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.sigmamind.ai/v1/integrations",
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' => 'Shopify',
'description' => 'Handles order lookups for the support agent'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$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.sigmamind.ai/v1/integrations"
payload := strings.NewReader("{\n \"name\": \"Shopify\",\n \"description\": \"Handles order lookups for the support agent\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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.sigmamind.ai/v1/integrations")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Shopify\",\n \"description\": \"Handles order lookups for the support agent\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sigmamind.ai/v1/integrations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Shopify\",\n \"description\": \"Handles order lookups for the support agent\"\n}"
response = http.request(request)
puts response.read_body{
"integrationId": "intg_AuUKK371Spr5",
"name": "My Shopify Store",
"description": "Handles order lookups and customer data retrieval",
"authentication": {
"authId": "auth_P3kNz7Yv1Qm9",
"integrationId": "intg_AuUKK371Spr5",
"authType": "API_KEY",
"headers": [
{
"key": "X-Request-Source",
"value": "sigmamind"
}
],
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"tools": [
{
"toolId": "tool_X9pLm2Wq8Rt3",
"integrationId": "intg_AuUKK371Spr5",
"name": "get_order_details",
"description": "Fetches order details from Shopify by order ID. Call this tool when you need to retrieve order status, line items, or shipping info.",
"method": "GET",
"url": "https://my-store.myshopify.com/admin/api/2024-01/orders/{{orderId}}.json",
"scope": "local",
"headers": {
"customer_name": "Michael",
"account_id": "ACC-001"
},
"queryParams": {
"customer_name": "Michael",
"account_id": "ACC-001"
},
"bodyParams": {
"customer_name": "Michael",
"account_id": "ACC-001"
},
"createdAt": "2024-04-20T10:00:00.000Z",
"updatedAt": "2024-04-21T08:30:00.000Z"
}
],
"createdAt": "2024-04-20T10:00:00.000Z",
"updatedAt": "2024-04-21T08:30:00.000Z"
}{
"error": "Bad Request",
"message": "Invalid request parameters",
"path": "/v1/integrations",
"status": 400,
"timestamp": "2026-05-05T10:06:45.767Z"
}{
"error": "Unauthorized",
"message": "X-API-Key is missing or invalid",
"path": "/v1/integrations",
"status": 401,
"timestamp": "2026-05-05T10:06:45.767Z"
}{
"error": "Forbidden",
"message": "Access denied for this resource",
"path": "/v1/integrations",
"status": 403,
"timestamp": "2026-05-05T10:06:45.767Z"
}{
"error": "Not Found",
"message": "The requested resource was not found",
"path": "/v1/integrations",
"status": 404,
"timestamp": "2026-05-05T10:06:45.767Z"
}{
"error": "Internal Server Error",
"message": "Unexpected server error",
"path": "/v1/integrations",
"status": 500,
"timestamp": "2026-05-05T10:06:45.767Z"
}Create Integration
Registers a new third-party integration for your account. Supply the provider type (e.g. shopify, cal_com) along with an optional friendly name and description. Returns the created integration including its integrationId, which is required for all subsequent auth and tool operations.
curl --request POST \
--url https://api.sigmamind.ai/v1/integrations \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"name": "Shopify",
"description": "Handles order lookups for the support agent"
}
'import requests
url = "https://api.sigmamind.ai/v1/integrations"
payload = {
"name": "Shopify",
"description": "Handles order lookups for the support agent"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: 'Shopify', description: 'Handles order lookups for the support agent'})
};
fetch('https://api.sigmamind.ai/v1/integrations', 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.sigmamind.ai/v1/integrations",
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' => 'Shopify',
'description' => 'Handles order lookups for the support agent'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$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.sigmamind.ai/v1/integrations"
payload := strings.NewReader("{\n \"name\": \"Shopify\",\n \"description\": \"Handles order lookups for the support agent\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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.sigmamind.ai/v1/integrations")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Shopify\",\n \"description\": \"Handles order lookups for the support agent\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sigmamind.ai/v1/integrations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Shopify\",\n \"description\": \"Handles order lookups for the support agent\"\n}"
response = http.request(request)
puts response.read_body{
"integrationId": "intg_AuUKK371Spr5",
"name": "My Shopify Store",
"description": "Handles order lookups and customer data retrieval",
"authentication": {
"authId": "auth_P3kNz7Yv1Qm9",
"integrationId": "intg_AuUKK371Spr5",
"authType": "API_KEY",
"headers": [
{
"key": "X-Request-Source",
"value": "sigmamind"
}
],
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"tools": [
{
"toolId": "tool_X9pLm2Wq8Rt3",
"integrationId": "intg_AuUKK371Spr5",
"name": "get_order_details",
"description": "Fetches order details from Shopify by order ID. Call this tool when you need to retrieve order status, line items, or shipping info.",
"method": "GET",
"url": "https://my-store.myshopify.com/admin/api/2024-01/orders/{{orderId}}.json",
"scope": "local",
"headers": {
"customer_name": "Michael",
"account_id": "ACC-001"
},
"queryParams": {
"customer_name": "Michael",
"account_id": "ACC-001"
},
"bodyParams": {
"customer_name": "Michael",
"account_id": "ACC-001"
},
"createdAt": "2024-04-20T10:00:00.000Z",
"updatedAt": "2024-04-21T08:30:00.000Z"
}
],
"createdAt": "2024-04-20T10:00:00.000Z",
"updatedAt": "2024-04-21T08:30:00.000Z"
}{
"error": "Bad Request",
"message": "Invalid request parameters",
"path": "/v1/integrations",
"status": 400,
"timestamp": "2026-05-05T10:06:45.767Z"
}{
"error": "Unauthorized",
"message": "X-API-Key is missing or invalid",
"path": "/v1/integrations",
"status": 401,
"timestamp": "2026-05-05T10:06:45.767Z"
}{
"error": "Forbidden",
"message": "Access denied for this resource",
"path": "/v1/integrations",
"status": 403,
"timestamp": "2026-05-05T10:06:45.767Z"
}{
"error": "Not Found",
"message": "The requested resource was not found",
"path": "/v1/integrations",
"status": 404,
"timestamp": "2026-05-05T10:06:45.767Z"
}{
"error": "Internal Server Error",
"message": "Unexpected server error",
"path": "/v1/integrations",
"status": 500,
"timestamp": "2026-05-05T10:06:45.767Z"
}Authorizations
Authenticate every request by passing your API key in the X-API-Key header. To get your key, go to Dashboard → API Keys and create or copy your Production API key.
Body
Response
Created
Represents a fully configured third-party integration. Includes its identity, authentication configuration, and available tools. Use this response to understand how to invoke external APIs via this integration. Authentication and headers are automatically applied when tools under this integration are executed.
Unique identifier for this integration. Pass this value as integrationId when executing tools, updating this integration, or managing its auth configuration.
"intg_AuUKK371Spr5"
Human-readable name of the integration. Helps identify the connected system (e.g., Shopify store, CRM, payment provider).
"My Shopify Store"
Optional explanation of what this integration is used for. Useful for agents to determine when this integration should be selected.
"Handles order lookups and customer data retrieval"
Show child attributes
Show child attributes
Catalog of executable operations available via this integration. Each tool represents a specific API capability (e.g., fetch order, create customer). To perform an action: inspect each tool's name and description, select the one matching the task, then invoke it using its toolId. An empty list means no tools have been configured yet.
Show child attributes
Show child attributes
Timestamp when the integration was created (in UTC). Primarily for auditing and tracking purposes.
"2024-04-20T10:00:00.000Z"
Timestamp when the integration was last updated (in UTC). Indicates the most recent configuration change.
"2024-04-21T08:30:00.000Z"