langchain_toolHttpRequest.json•11.4 kB
{
"nodeType": "@n8n/n8n-nodes-langchain.toolHttpRequest",
"displayName": "HTTP Request Tool",
"description": "Makes an HTTP request and returns the response data",
"version": [
1,
1.1
],
"properties": [
{
"name": "authentication",
"displayName": "Authentication",
"type": "options",
"default": "none",
"description": "Select the type of authentication to use if needed, authentication would be done by n8n and your credentials will not be shared with the LLM",
"options": [
{
"name": "None",
"value": "none"
},
{
"name": "Predefined Credential Type",
"value": "predefinedCredentialType",
"description": "We've already implemented auth for many services so that you don't have to set it up manually"
},
{
"name": "Generic Credential Type",
"value": "genericCredentialType",
"description": "Fully customizable. Choose between basic, header, OAuth2, etc."
}
]
},
{
"name": "nodeCredentialType",
"displayName": "Credential Type",
"type": "credentialsSelect",
"default": "",
"required": true,
"displayOptions": {
"show": {
"authentication": [
"predefinedCredentialType"
]
}
}
},
{
"name": "googleApiWarning",
"displayName": "Make sure you have specified the scope(s) for the Service Account in the credential",
"type": "notice",
"default": "",
"displayOptions": {
"show": {
"nodeCredentialType": [
"googleApi"
]
}
}
},
{
"name": "genericAuthType",
"displayName": "Generic Auth Type",
"type": "credentialsSelect",
"default": "",
"required": true,
"displayOptions": {
"show": {
"authentication": [
"genericCredentialType"
]
}
}
},
{
"name": "optimizeResponse",
"displayName": "Optimize Response",
"type": "boolean",
"default": false,
"description": "Whether the optimize the tool response to reduce amount of data passed to the LLM that could lead to better result and reduce cost"
},
{
"name": "responseType",
"displayName": "Expected Response Type",
"type": "options",
"default": "json",
"options": [
{
"name": "JSON",
"value": "json"
},
{
"name": "HTML",
"value": "html"
},
{
"name": "Text",
"value": "text"
}
],
"displayOptions": {
"show": {
"optimizeResponse": [
true
]
}
}
},
{
"name": "dataField",
"displayName": "Field Containing Data",
"type": "string",
"default": "",
"description": "Specify the name of the field in the response containing the data",
"placeholder": "e.g. records",
"displayOptions": {
"show": {
"optimizeResponse": [
true
],
"responseType": [
"json"
]
}
}
},
{
"name": "fieldsToInclude",
"displayName": "Include Fields",
"type": "options",
"default": "all",
"description": "What fields response object should include",
"options": [
{
"name": "All",
"value": "all",
"description": "Include all fields"
},
{
"name": "Selected",
"value": "selected",
"description": "Include only fields specified below"
},
{
"name": "Except",
"value": "except",
"description": "Exclude fields specified below"
}
],
"displayOptions": {
"show": {
"optimizeResponse": [
true
],
"responseType": [
"json"
]
}
}
},
{
"name": "fields",
"displayName": "Fields",
"type": "string",
"default": "",
"description": "Comma-separated list of the field names. Supports dot notation. You can drag the selected fields from the input panel.",
"placeholder": "e.g. field1,field2",
"displayOptions": {
"show": {
"optimizeResponse": [
true
],
"responseType": [
"json"
]
}
}
},
{
"name": "cssSelector",
"displayName": "Selector (CSS)",
"type": "string",
"default": "body",
"description": "Select specific element(e.g. body) or multiple elements(e.g. div) of chosen type in the response HTML.",
"placeholder": "e.g. body",
"displayOptions": {
"show": {
"optimizeResponse": [
true
],
"responseType": [
"html"
]
}
}
},
{
"name": "onlyContent",
"displayName": "Return Only Content",
"type": "boolean",
"default": false,
"description": "Whether to return only content of html elements, stripping html tags and attributes",
"displayOptions": {
"show": {
"optimizeResponse": [
true
],
"responseType": [
"html"
]
}
}
},
{
"name": "elementsToOmit",
"displayName": "Elements To Omit",
"type": "string",
"default": "",
"description": "Comma-separated list of selectors that would be excluded when extracting content",
"placeholder": "e.g. img, .className, #ItemId",
"displayOptions": {
"show": {
"optimizeResponse": [
true
],
"responseType": [
"html"
],
"onlyContent": [
true
]
}
}
},
{
"name": "truncateResponse",
"displayName": "Truncate Response",
"type": "boolean",
"default": false,
"displayOptions": {
"show": {
"optimizeResponse": [
true
],
"responseType": [
"text",
"html"
]
}
}
},
{
"name": "maxLength",
"displayName": "Max Response Characters",
"type": "number",
"default": 1000,
"typeOptions": {
"minValue": 1
},
"displayOptions": {
"show": {
"optimizeResponse": [
true
],
"responseType": [
"text",
"html"
],
"truncateResponse": [
true
]
}
}
},
{
"name": "toolDescription",
"displayName": "Description",
"type": "string",
"default": "",
"description": "Explain to LLM what this tool does, better description would allow LLM to produce expected result",
"placeholder": "e.g. Get the current weather in the requested city",
"typeOptions": {
"rows": 3
}
},
{
"name": "method",
"displayName": "Method",
"type": "options",
"default": "GET",
"options": [
{
"name": "DELETE",
"value": "DELETE"
},
{
"name": "GET",
"value": "GET"
},
{
"name": "PATCH",
"value": "PATCH"
},
{
"name": "POST",
"value": "POST"
},
{
"name": "PUT",
"value": "PUT"
}
]
},
{
"name": "placeholderNotice",
"displayName": "Tip: You can use a {placeholder} for any part of the request to be filled by the model. Provide more context about them in the placeholders section",
"type": "notice",
"default": ""
},
{
"name": "url",
"displayName": "URL",
"type": "string",
"default": "",
"placeholder": "e.g. http://www.example.com/{path}",
"required": true
},
{
"name": "sendQuery",
"displayName": "Send Query Parameters",
"type": "boolean",
"default": false,
"description": "Whether the request has query params or not"
},
{
"name": "specifyQuery",
"displayName": "Specify Query Parameters",
"default": null,
"displayOptions": {
"show": {
"sendQuery": [
true
]
}
}
},
{
"name": "parametersQuery",
"displayName": "Query Parameters",
"default": null,
"displayOptions": {
"show": {
"sendQuery": [
true
],
"specifyQuery": [
"keypair"
]
}
}
},
{
"name": "jsonQuery",
"default": null,
"displayOptions": {
"show": {
"sendQuery": [
true
],
"specifyQuery": [
"json"
]
}
}
},
{
"name": "sendHeaders",
"displayName": "Send Headers",
"type": "boolean",
"default": false,
"description": "Whether the request has headers or not"
},
{
"name": "specifyHeaders",
"displayName": "Specify Headers",
"default": null,
"displayOptions": {
"show": {
"sendHeaders": [
true
]
}
}
},
{
"name": "parametersHeaders",
"displayName": "Header Parameters",
"default": null,
"displayOptions": {
"show": {
"sendHeaders": [
true
],
"specifyHeaders": [
"keypair"
]
}
}
},
{
"name": "jsonHeaders",
"default": null,
"displayOptions": {
"show": {
"sendHeaders": [
true
],
"specifyHeaders": [
"json"
]
}
}
},
{
"name": "sendBody",
"displayName": "Send Body",
"type": "boolean",
"default": false,
"description": "Whether the request has body or not"
},
{
"name": "specifyBody",
"displayName": "Specify Body",
"default": null,
"displayOptions": {
"show": {
"sendBody": [
true
]
}
}
},
{
"name": "parametersBody",
"displayName": "Body Parameters",
"default": null,
"displayOptions": {
"show": {
"sendBody": [
true
],
"specifyBody": [
"keypair"
]
}
}
},
{
"name": "jsonBody",
"default": null,
"displayOptions": {
"show": {
"sendBody": [
true
],
"specifyBody": [
"json"
]
}
}
}
],
"credentialsConfig": [
{
"name": "toolDescription",
"required": false
}
],
"io": {
"inputs": [],
"outputs": [
"AiTool"
],
"outputNames": [
"Tool"
],
"hints": {
"connectTo": [
"AiAgent"
]
}
},
"wiring": {
"role": "tool",
"requires": [],
"optional": [],
"consumedBy": [
"AiAgent"
],
"consumes": [],
"produces": [
"AiTool"
]
}
}