public
POST /v1/public/quotes
Ask us to price a project — no account.
प्रमाणीकरण
यो इन्डपइन्ट सार्वजनिक हो। यसले कुनै पनि प्रमाण पत्र र संस्था लिँदैन — यो हाम्रो आफ्नै मार्केटिङ साइट र AI उत्तर इन्जिनहरूले पढ्ने कुरा हो।
यो इन्डपोइन्टले कुनै संस्थाको आइडी लिँदैन। तपाईंको कुञ्जीले यस अन्तर्गत पर्ने संस्थालाई पहिल्यै पहिचान गर्छ, र प्रतिक्रिया त्यसैमा सीमित हुन्छ।
प्रयास गर्नुहोस्
कोणीय कोष्ठकभित्र भएका जुनसुकै कुरालाई आफ्नो मानहरूद्वारा बदल्नुहोस्, र मुख्य स्थानहोल्डरलाई तपाईंको ड्यासबोर्डको कुञ्जीद्वारा बदल्नुहोस्।
curl -X POST https://api.zinndigital.com/v1/public/quotes \
-H "Content-Type: application/json" \
-d '{ "name": <string>, "email": <string>, "description": <string>, "project_type": <string> }'लगइन गर्नुभएको छ? तपाईंको ड्यासबोर्डमा रहेको API कन्सोलले तपाईंको वास्तविक संस्थाको आईडी र आफ्नै कुञ्जी भरिदिन्छ, र लाइभ API विरुद्ध अनुरोध चलाउँछ ताकि तपाईंले वास्तविक प्रतिक्रिया हेर्न सक्नुहोस्। यो एन्डपोइन्टलाई API कन्सोलमा खोल्नुहोस्
विवरणहरू
Anonymous — no credential, no tenant, and the only route into paid development work (development services are quote-only, owner ruling 2026-09-11). Three spam controls fire in order: a fail-closed per-IP and global budget charged before the body is parsed, a honeypot field, then Cloudflare Turnstile. The cheapest first, and the one that makes a vendor call last — so a flood cannot turn our anti-abuse check into an outbound traffic amplifier. ⛔ multipart/form-data accepts attachments (a brief, a spec, a screenshot of the error). They are magic-byte verified against an allow-list and are not servable to anybody until a malware scan returns clean. ⛔⛔ An attachment refused after the enquiry is written does not fail the request. The reply is still 201 with attachments_refused set: throwing away a description somebody spent ten minutes on because a file was the wrong type loses the customer and reads, to them, as the form being broken.
अनुरोध बडी
| नाम | प्रकार | आवश्यक | यो के हो |
|---|---|---|---|
name | string | हुन्छ | — |
email | string | हुन्छ | — |
description | string | हुन्छ | What they need doing — the thing we actually price. ⛔ Bounded here as well as in the engine: a TextField has no length, and an operator has to READ this. |
project_type | string | हुन्छ | The shape of the work, from project_types. Deliberately not the technology — a WordPress build and a bespoke application are quoted by different people on different lead times;… |
company | string | हैन | — |
phone | string | हैन | — |
country | string | हैन | ISO 3166-1 alpha-2. |
stack | string | हैन | — |
budget_band | string | हैन | A RANGE, never a figure. Somebody who has not been quoted does not have a number, and storing one invents a precision they never gave — which an operator then anchors their quote… |
timeline | string | हैन | — |
website_url | string | हैन | The site the job is about. ⛔ Optional and may be blank: a broken site is one of the commonest reasons to be here, and refusing the enquiry over a URL loses exactly the customer in… |
locale | string | हैन | The language the form was filled in. ⛔ The confirmation is sent in it — without this a platform sold in 58 languages answers every enquiry in English, and nothing looks broken. |
source_page | string | हैन | Which page the form was submitted from — how we learn what converts. |
turnstile_token | string | हैन | Cloudflare's token. ⛔ Not marked required: whether it is needed is the engine's answer (is a secret configured?), not the schema's — hard-coding required would make an… |
website_confirm | string | हैन | ⛔ Leave this empty. It is a honeypot, and it is documented rather than hidden because an SDK consumer that populated every string field would otherwise be refused with no way to… |
प्रतिक्रिया
| नाम | प्रकार | आवश्यक | यो के हो |
|---|---|---|---|
reference | string | हुन्छ | The short handle a human quotes back at us, e.g. QR-2609-K7M3PX. ⛔ Not sequential: a running number published to strangers leaks how much work we are winning, and nothing here… |
status | string | हुन्छ | — |
attachments_stored | integer | हुन्छ | — |
attachments_refused | string | हुन्छ | Copy for the visitor when a file could not be attached, or null. ⛔ The enquiry was still accepted — see the endpoint description. |
यो इन्डपोइन्टले फर्काउन सक्ने त्रुटिहरू
422 · 429