attachment_requires_message
Booking.com does not deliver a file without message text. Nothing was sent; add a `message`.
HTTP 422The request was understood but refused as sent. Change it before retrying.
When it fires
A POST /v1/conversations/{id}/messages on a Booking.com conversation carried attachments but no message text (or only whitespace). Booking.com delivers files only as part of a text message, so a file on its own cannot be sent there.
Nothing was sent. Airbnb has no such rule: a photo-only message is fine there.
Response shape
Every Repull error follows the same envelope. The code is stable and safe to switch on.
{
"error": {
"code": "attachment_requires_message",
"message": "Booking.com does not deliver an attachment without message text. Nothing was sent.",
"fix": "Add a short `message` to go with the attachment, e.g. \"Here is the parking map.\"",
"docs_url": "https://repull.dev/docs/errors/attachment_requires_message",
"request_id": "req_01J5X7Y8Z9ABCDEF12345678",
"channel": "booking"
}
}How to fix
- Add a short `message` describing the file, for example "Here is the parking map."
- Send the request again.
Examples
curl
curl -X POST https://api.repull.dev/v1/conversations/164743/messages \
-H "Authorization: Bearer sk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"message": "Here is the parking map.", "attachments": [{"url": "https://cdn.example.com/parking-map.jpg"}]}'TypeScript
const res = await fetch('https://api.repull.dev/v1/conversations/164743/messages', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.REPULL_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
// Booking.com needs text with every file; Airbnb does not
message: 'Here is the parking map.',
attachments: [{ url: 'https://cdn.example.com/parking-map.jpg' }],
}),
})If you're an AI agent
Booking.com needs message text with every attachment. Nothing was sent. Add a short `message` describing the file and send again.
Related
- Error reference — the full table of error codes
- Using Repull from AI agents — patterns for handling errors in agent loops
- Sending attachments
Hit an error that isn't covered? Email hello@repull.dev with the request id from the response headers.
AI