Décrivez le problème/l’erreur/la question
Quel est le message d’erreur (le cas échéant) ? Mauvaise requête - veuillez vérifier vos paramètres
Veuillez partager votre flux de travail
{
“nodes”: [
{
“parameters”: {
“method”: “POST”,
“url”: “http://host.docker.internal:8082/api/assistant/intent ”,
“sendHeaders”: true,
“headerParameters”: {
“parameters”: [
{
“name”: “Content-Type”,
“value”: “application/json”
},
{
“name”: “Accept”,
“value”: “application/json”
}
]
},
“sendBody”: true,
“contentType”: “raw”,
“body”: “={{ $json.cleanOutput }}”,
“options”: {}
},
“type”: “n8n-nodes-base.httpRequest”,
“typeVersion”: 4.4,
“position”: [
240,
-112
],
“id”: “bc555ae5-8565-4c9b-b871-4d3f4a20899b”,
“name”: “HTTP Request”
}
],
“connections”: {},
“pinData”: {},
“meta”: {
“templateCredsSetupCompleted”: true,
“instanceId”: “02f1001f8f2d972f69be23b2f2dcfdcc65885dd6f6ff6d04c911329ee6f7f3dd”
}
}
Informations sur votre configuration n8n
Version de n8n : latest / local
Base de données (par défaut : SQLite) : N/A
Paramètre n8n EXECUTIONS_PROCESS (par défaut : own, main) : default
Exécution de n8n via (Docker, npm, n8n cloud, application de bureau) : Docker
Système d’exploitation : Windows 10
Bonjour @GeoForeman
Modifiez votre champ Body comme ceci :
{
"intent": "{{ $json.cleanOutput }}"
}
(Remplacez "intent" par le nom de clé réel requis par votre API).
Salut @GeoForeman Bienvenue !
Le type de contenu raw envoie la valeur littérale de l’expression en tant que corps. Si cleanOutput n’est pas déjà du JSON valide, host.docker.internal:8082 reçoit du texte brut avec un en-tête Content-Type: application/json, et son analyseur le rejette avant que votre logique de point de terminaison s’exécute.
Enrobez la valeur avec JSON.stringify au lieu de taper des guillemets autour de l’expression, car les guillemets manuels échouent dès que cleanOutput contient un guillemet ou une nouvelle ligne :
{{ JSON.stringify({ yourKey: $json.cleanOutput }) }}
Comme il s’agit de votre propre service local, le corps de réponse réel ou le journal du serveur affichera la vraie raison de la validation au lieu du message générique de n8n.
opened 10:21PM - 11 Sep 25 UTC
closed 04:30AM - 13 Mar 26 UTC
in linear
Stale
## Describe the problem/error/question
HTTP request node configured as RAW and … application/json. The expression preview keeps showing a string instead of a JSON and an output error appears all the times.
## What is the error message (if any)?
Bad request - please check your parameters
Error on line 1: invalid JSON, near column 1: unexpected character: '"'; expected '{'
Error code
400
Full message
400 - "{\n \"error\": {\n \"code\": 400,\n \"message\": \"Error on line 1: invalid JSON, near column 1: unexpected character: '\\\"'; expected '{'\",\n \"status\": \"INVALID_ARGUMENT\"\n }\n}\n"
Request
{ "body": "{\"batch\":{\"display_name\":\"n8n-videos-batch\",\"input_config\":{\"file_name\":\"files/l2mafixz7ocf\"}}}", "headers": { "x-goog-api-key": "XXXXXXXXXXXXXX", "content-type": "application/json", "accept": "application/json,text/*;q=0.99" }, "method": "POST", "uri": "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:batchGenerateContent", "gzip": true, "rejectUnauthorized": true, "followRedirect": true, "resolveWithFullResponse": true, "followAllRedirects": true, "timeout": 300000, "json": false, "useStream": true }
## Please share your workflow/screenshots/recording
This is the RAW expression:
{{
JSON.stringify({
batch: {
display_name: "n8n-videos-batch",
input_config: {
file_name: $json.batchInputFile // e.g. "files/zmqnybl6eb2d"
}
}
})
}}
```
(Select the nodes on your canvas and use the keyboard shortcuts CMD+C/CTRL+C and CMD+V/CTRL+V to copy and paste the workflow.)
⚠️ WARNING ⚠️ If you have sensitive data in your workflow (like API keys), please remove it before sharing.
```
## Share the output returned by the last node
## Debug info
### core
- n8nVersion: 1.110.1
- platform: docker (cloud)
- nodeJsVersion: 22.19.0
- database: sqlite
- executionMode: regular
- concurrency: 5
- license: community
### storage
- success: all
- error: all
- progress: false
- manual: true
- binaryMode: filesystem
### pruning
- enabled: true
- maxAge: 168 hours
- maxCount: 2500 executions
### client
- userAgent: mozilla/5.0 (windows nt 10.0; win64; x64; rv:142.0) gecko/20100101 firefox/142.0
- isTouchDevice: false
Generated at: 2025-09-11T21:56:31.840Z}