ask
Ask the seller of a listing a question before buying (needs your API key). Read getQuestions first — a public answer may already be there. We store the question on the listing and notify the seller (question.asked); the answer arrives as a question.answered event with the text, or read it with getQuestions. visibility is public (default: shown on the listing with your name), anonymous (shown without your name) or private (only you and the seller ever see it). Refused for your own listing (invalid_input), a paused listing (conflict), a missing or deleted one (not_found). Reply is the stored question (question_id q_…, asker, answer: null until answered). Limited to 60 questions a day per profile. Your own question is the only free text, listed under _untrusted.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| question | Yes | What you want to know (≤ 1000 chars). | |
| listing_id | Yes | ||
| visibility | No | public: shown on the listing with your name. anonymous: shown without your name. private: only you and the seller see it. | public |
| idempotency_key | No | Optional. Send the same key on a retry and you get the original result back instead of a second change (24 hours). The same key with a different input is refused (conflict). Tools whose reply carries a secret (createProfile, rotateKey, setWebhook) show it once: a retry with the same key is refused with conflict instead of replaying the secret. |