{"command":{"effect":"write","timeoutSeconds":30,"inputSchema":{"type":"object","description":"Create a new data connector. The connector is created in `draft` state. Configure its URL, headers, data inputs, and other settings, then set it to `live` when ready.\n\nOAuth tokens must have the `read_write_data_connectors` scope.\n","properties":{"headers":{"type":"object","properties":{"Intercom-Version":{"$ref":"#/definitions/intercom_version","enum":["2.17"]}},"required":[],"additionalProperties":false},"body":{"$ref":"#/definitions/create_data_connector_request","examples":[{"name":"Get Order Status","description":"Looks up order status from an external service","http_method":"get","url":"https://api.example.com/orders/{{order_id}}/status","direct_fin_usage":true,"audiences":["leads","visitors"],"headers":[{"name":"Content-Type","value":"application/json"}],"data_inputs":[{"name":"order_id","type":"string","description":"The order ID to look up","required":true,"default_value":""}],"customer_authentication":true,"bypass_authentication":false,"validate_missing_attributes":true}]}},"required":[],"additionalProperties":false,"definitions":{"intercom_version":{"description":"Intercom API version.</br>If you omit the header, the API uses the version set in your app package, and 1.0 if none is set.","type":"string","enum":["1.0","1.1","1.2","1.3","1.4","2.0","2.1","2.2","2.3","2.4","2.5","2.6","2.7","2.8","2.9","2.10","2.11","2.12","2.13","2.14","2.15","2.16","2.17"],"examples":["2.17"]},"create_data_connector_request":{"title":"Create Data Connector Request","type":"object","description":"You can create a data connector by providing the required parameters.","properties":{"name":{"type":"string","description":"The name of the data connector.","examples":["Get Order Status"]},"description":{"type":"string","description":"A description of what this data connector does.","examples":["Looks up order status from an external service"]},"internal_description":{"type":"string","description":"The internal description of the data connector. If omitted, it is an empty string."},"http_method":{"type":"string","description":"The HTTP method used when calling the external API.","enum":["get","post","put","delete","patch"],"examples":["get"]},"url":{"type":"string","description":"The URL of the external API endpoint. Supports template variables like `{{order_id}}`.","examples":["https://api.example.com/orders/{{order_id}}/status"]},"body":{"type":"string","description":"The request body template. Supports template variables."},"direct_fin_usage":{"type":"boolean","description":"Whether the connector is used directly by Fin (true) or only in workflows (false). Defaults to false.","examples":[false]},"audiences":{"type":"array","description":"The user types this connector is available for.","items":{"type":"string","enum":["leads","users","visitors"]},"examples":[["leads","visitors"]]},"headers":{"type":"array","description":"HTTP headers to include in the request. Don't put credentials such as API keys here: header values are recorded unmasked in the connector's execution logs, except `Authorization`, which is always masked. Attach an authentication token with `token_ids` instead; its value is masked in execution logs.\n","items":{"type":"object","properties":{"name":{"type":"string","description":"The header name.","examples":["Content-Type"]},"value":{"type":"string","description":"The header value. Supports template variables.","examples":["application/json"]}},"required":["name","value"]}},"data_inputs":{"type":"array","description":"Input parameters accepted by the connector.","items":{"type":"object","properties":{"name":{"type":"string","description":"The parameter name.","examples":["order_id"]},"type":{"type":"string","description":"The parameter type.","enum":["string","integer","decimal","boolean"],"examples":["string"]},"description":{"type":"string","description":"A description of the parameter.","examples":["The order ID to look up"]},"required":{"type":"boolean","description":"Whether the parameter is required.","examples":[true]},"default_value":{"type":"string","description":"The default value for the parameter. Defaults to an empty string if omitted."}},"required":["name","description","type","required"]}},"customer_authentication":{"type":"boolean","description":"Whether the connector requires customer authentication before executing. Defaults to false.","examples":[false]},"bypass_authentication":{"type":"boolean","description":"Whether authentication is bypassed entirely (public endpoint). Defaults to false.","examples":[false]},"enforce_auth":{"type":"boolean","description":"Whether authentication is enforced. On workspaces where this is supported, it takes precedence over `customer_authentication` and `bypass_authentication` when sent together, and setting it to false disables OTP."},"validate_missing_attributes":{"type":"boolean","description":"Whether to validate that all required data inputs have values before executing.","examples":[false]},"mock_response":{"type":"object","description":"A sample JSON response from the external API. Auto-generates `response_fields` and sets `configuration_response_type` to `mock_response_type`.","examples":[{"order":{"id":12345,"status":"shipped"}}]},"token_ids":{"type":"array","description":"IDs of authentication tokens to attach to this data connector.","items":{"type":"string"},"examples":[["1234","5678"]]}},"required":["name"]}}},"name":"Create a data connector","id":"intercom.createdataconnector","example":{},"maxRequests":1,"summary":false}}