Request a bespoke proposal
request_a_proposalSubmit a structured proposal request to Kratons on behalf of a traveller or a travel agent: contact, destinations within Spain/Portugal/Morocco, dates, travellers, total budget, interests. Returns a reference. A human advisor replies by e-mail — there is no automatic booking, no online checkout and no price list. Send idempotencyKey to retry safely.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"contact": "<contact>",
"trip": "<trip>"
},
"name": "request_a_proposal"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| utm | No | UTM parameters of the landing link, when any | |
| trip | Yes | ||
| source | No | Where this request originated, e.g. "social" when the traveller followed a link in one of Kratons' social posts | |
| contact | Yes | ||
| requester | No | ||
| socialPostId | No | The Kratons social post the traveller came from, when the link carried it | |
| idempotencyKey | No | Send the same key to retry safely; the same reference comes back |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| missing | Yes | Recommended details this request did not carry — collect them before the advisor has to ask | |
| duplicate | Yes | true when the same request was already received in the last 24 h (same reference returned) | |
| reference | Yes | Quote it in any follow-up; get_proposal_request_status reads it | |
| receivedAt | Yes | ISO timestamp | |
| acknowledged | Yes | One sentence echoing what was received, to confirm it to the traveller | |
| whatHappensNext | Yes | ||
| contactForChanges | Yes |