Skip to content

Commit ec2b871

Browse files
committed
feat: Add create and delete endpoints for data connectors
1 parent 34bef98 commit ec2b871

File tree

1 file changed

+322
-0
lines changed

1 file changed

+322
-0
lines changed

descriptions/0/api.intercom.io.yaml

Lines changed: 322 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10230,6 +10230,127 @@ paths:
1023010230
message: Access Token Invalid
1023110231
schema:
1023210232
"$ref": "#/components/schemas/error"
10233+
post:
10234+
summary: Create a data connector
10235+
parameters:
10236+
- name: Intercom-Version
10237+
in: header
10238+
schema:
10239+
"$ref": "#/components/schemas/intercom_version"
10240+
tags:
10241+
- Data Connectors
10242+
operationId: createDataConnector
10243+
description: |
10244+
Create a new data connector. The connector is created in `draft` state. Configure its URL, headers, data inputs, and other settings, then publish it to `live` when ready.
10245+
responses:
10246+
'201':
10247+
description: Data connector created
10248+
content:
10249+
application/json:
10250+
examples:
10251+
Data connector created:
10252+
value:
10253+
type: data_connector
10254+
id: '125'
10255+
name: Get Order Status
10256+
description: Looks up order status from an external service
10257+
state: draft
10258+
http_method: get
10259+
direct_fin_usage: true
10260+
audiences:
10261+
- leads
10262+
- visitors
10263+
execution_type: server_side
10264+
configuration_response_type: test_response_type
10265+
data_transformation_type: full_access
10266+
client_function_timeout_ms: 30000
10267+
data_inputs:
10268+
- name: order_id
10269+
type: string
10270+
description: The order ID to look up
10271+
required: true
10272+
default_value: ''
10273+
response_fields: []
10274+
object_mappings: []
10275+
token_ids: []
10276+
customer_authentication: true
10277+
bypass_authentication: false
10278+
validate_missing_attributes: true
10279+
created_by_admin_id: '128'
10280+
updated_by_admin_id: '128'
10281+
created_at: '2026-03-19T11:27:36Z'
10282+
updated_at: '2026-03-19T11:27:36Z'
10283+
execution_results_url: "/data_connectors/125/execution_results"
10284+
schema:
10285+
"$ref": "#/components/schemas/data_connector"
10286+
'422':
10287+
description: Invalid parameter
10288+
content:
10289+
application/json:
10290+
examples:
10291+
Missing name:
10292+
value:
10293+
type: error.list
10294+
request_id: b4a45e2c-7a8d-4f3e-9c1a-2d5e8f7a6b3c
10295+
errors:
10296+
- code: missing_parameter
10297+
message: Name is required
10298+
Invalid audiences:
10299+
value:
10300+
type: error.list
10301+
request_id: c5b56f3d-8b9e-5g4f-0d2b-3e6f9g8b7c4d
10302+
errors:
10303+
- code: parameter_invalid
10304+
message: "Invalid audiences. Must be a subset of: leads, users, visitors"
10305+
schema:
10306+
"$ref": "#/components/schemas/error"
10307+
'401':
10308+
description: Unauthorized
10309+
content:
10310+
application/json:
10311+
examples:
10312+
Unauthorized:
10313+
value:
10314+
type: error.list
10315+
request_id: test-uuid-replacement
10316+
errors:
10317+
- code: unauthorized
10318+
message: Access Token Invalid
10319+
schema:
10320+
"$ref": "#/components/schemas/error"
10321+
requestBody:
10322+
content:
10323+
application/json:
10324+
schema:
10325+
"$ref": "#/components/schemas/create_data_connector_request"
10326+
examples:
10327+
data_connector_created:
10328+
summary: Data connector created
10329+
value:
10330+
name: Get Order Status
10331+
description: Looks up order status from an external service
10332+
http_method: get
10333+
url: "https://api.example.com/orders/{{order_id}}/status"
10334+
direct_fin_usage: true
10335+
audiences:
10336+
- leads
10337+
- visitors
10338+
headers:
10339+
- name: Content-Type
10340+
value: application/json
10341+
data_inputs:
10342+
- name: order_id
10343+
type: string
10344+
description: The order ID to look up
10345+
required: true
10346+
default_value: ''
10347+
customer_authentication: true
10348+
bypass_authentication: false
10349+
validate_missing_attributes: true
10350+
minimal:
10351+
summary: Minimal - name only
10352+
value:
10353+
name: My Connector
1023310354
"/data_connectors/{id}":
1023410355
get:
1023510356
summary: Retrieve a data connector
@@ -10300,6 +10421,87 @@ paths:
1030010421
message: Access Token Invalid
1030110422
schema:
1030210423
"$ref": "#/components/schemas/error"
10424+
delete:
10425+
summary: Delete a data connector
10426+
parameters:
10427+
- name: Intercom-Version
10428+
in: header
10429+
schema:
10430+
"$ref": "#/components/schemas/intercom_version"
10431+
- name: id
10432+
in: path
10433+
required: true
10434+
description: The unique identifier of the data connector
10435+
example: '12345'
10436+
schema:
10437+
type: string
10438+
tags:
10439+
- Data Connectors
10440+
operationId: deleteDataConnector
10441+
description: |
10442+
Delete an existing data connector. The connector must be in `draft` state and must not be in use by any workflows or AI agents.
10443+
responses:
10444+
'200':
10445+
description: Data connector deleted
10446+
content:
10447+
application/json:
10448+
examples:
10449+
Data connector deleted:
10450+
value:
10451+
id: '125'
10452+
object: data_connector
10453+
deleted: true
10454+
schema:
10455+
"$ref": "#/components/schemas/deleted_data_connector_object"
10456+
'404':
10457+
description: Data connector not found
10458+
content:
10459+
application/json:
10460+
examples:
10461+
Data connector not found:
10462+
value:
10463+
type: error.list
10464+
request_id: b4a45e2c-7a8d-4f3e-9c1a-2d5e8f7a6b3c
10465+
errors:
10466+
- code: data_connector_not_found
10467+
message: Data connector not found
10468+
schema:
10469+
"$ref": "#/components/schemas/error"
10470+
'409':
10471+
description: Conflict
10472+
content:
10473+
application/json:
10474+
examples:
10475+
Data connector in use:
10476+
value:
10477+
type: error.list
10478+
request_id: d6c78e4f-1a2b-3c4d-5e6f-7a8b9c0d1e2f
10479+
errors:
10480+
- code: data_connector_in_use
10481+
message: Data connector is in use by other resources and cannot be deleted
10482+
Data connector not in draft:
10483+
value:
10484+
type: error.list
10485+
request_id: e7d89f5g-2b3c-4d5e-6f7g-8a9b0c1d2e3f
10486+
errors:
10487+
- code: conflict
10488+
message: Data connector must be in draft state to be deleted
10489+
schema:
10490+
"$ref": "#/components/schemas/error"
10491+
'401':
10492+
description: Unauthorized
10493+
content:
10494+
application/json:
10495+
examples:
10496+
Unauthorized:
10497+
value:
10498+
type: error.list
10499+
request_id: test-uuid-replacement
10500+
errors:
10501+
- code: unauthorized
10502+
message: Access Token Invalid
10503+
schema:
10504+
"$ref": "#/components/schemas/error"
1030310505
"/data_connectors/{data_connector_id}/execution_results":
1030410506
get:
1030510507
summary: List execution results for a data connector
@@ -21654,6 +21856,107 @@ components:
2165421856
description: A list of data attributes
2165521857
items:
2165621858
"$ref": "#/components/schemas/data_attribute"
21859+
create_data_connector_request:
21860+
title: Create Data Connector Request
21861+
type: object
21862+
description: You can create a data connector by providing the required parameters.
21863+
properties:
21864+
name:
21865+
type: string
21866+
description: The name of the data connector.
21867+
example: Get Order Status
21868+
description:
21869+
type: string
21870+
description: A description of what this data connector does.
21871+
example: Looks up order status from an external service
21872+
http_method:
21873+
type: string
21874+
description: The HTTP method used when calling the external API.
21875+
enum:
21876+
- get
21877+
- post
21878+
- put
21879+
- delete
21880+
- patch
21881+
example: get
21882+
url:
21883+
type: string
21884+
description: The URL of the external API endpoint. Supports template variables like `{{order_id}}`.
21885+
example: "https://api.example.com/orders/{{order_id}}/status"
21886+
body:
21887+
type: string
21888+
nullable: true
21889+
description: The request body template. Supports template variables.
21890+
direct_fin_usage:
21891+
type: boolean
21892+
description: Whether the connector is used directly by Fin (true) or only in workflows (false). Defaults to false.
21893+
example: false
21894+
audiences:
21895+
type: array
21896+
description: The user types this connector is available for.
21897+
items:
21898+
type: string
21899+
enum:
21900+
- leads
21901+
- users
21902+
- visitors
21903+
example:
21904+
- leads
21905+
- visitors
21906+
headers:
21907+
type: array
21908+
description: HTTP headers to include in the request.
21909+
items:
21910+
type: object
21911+
properties:
21912+
name:
21913+
type: string
21914+
description: The header name.
21915+
example: Content-Type
21916+
value:
21917+
type: string
21918+
description: The header value. Supports template variables.
21919+
example: application/json
21920+
data_inputs:
21921+
type: array
21922+
description: Input parameters accepted by the connector.
21923+
items:
21924+
type: object
21925+
properties:
21926+
name:
21927+
type: string
21928+
description: The parameter name.
21929+
example: order_id
21930+
type:
21931+
type: string
21932+
description: The parameter type.
21933+
example: string
21934+
description:
21935+
type: string
21936+
description: A description of the parameter.
21937+
example: The order ID to look up
21938+
required:
21939+
type: boolean
21940+
description: Whether the parameter is required.
21941+
example: true
21942+
default_value:
21943+
type: string
21944+
nullable: true
21945+
description: The default value for the parameter.
21946+
customer_authentication:
21947+
type: boolean
21948+
description: Whether the connector requires customer authentication before executing. Defaults to false.
21949+
example: false
21950+
bypass_authentication:
21951+
type: boolean
21952+
description: Whether authentication is bypassed entirely (public endpoint). Defaults to false.
21953+
example: false
21954+
validate_missing_attributes:
21955+
type: boolean
21956+
description: Whether to validate that all required data inputs have values before executing.
21957+
example: false
21958+
required:
21959+
- name
2165721960
data_connector:
2165821961
title: Data Connector
2165921962
type: object
@@ -21895,6 +22198,25 @@ components:
2189522198
description: An array of data connector objects.
2189622199
items:
2189722200
"$ref": "#/components/schemas/data_connector"
22201+
deleted_data_connector_object:
22202+
title: Deleted Data Connector Object
22203+
type: object
22204+
description: Response returned when a data connector is deleted.
22205+
properties:
22206+
id:
22207+
type: string
22208+
description: The unique identifier for the data connector.
22209+
example: '125'
22210+
object:
22211+
type: string
22212+
description: The type of object which was deleted.
22213+
enum:
22214+
- data_connector
22215+
example: data_connector
22216+
deleted:
22217+
type: boolean
22218+
description: Whether the data connector was deleted successfully.
22219+
example: true
2189822220
data_event:
2189922221
title: Data Event
2190022222
type: object

0 commit comments

Comments
 (0)