Submit a pitch with an agent
An authorized agent can create, save, and explicitly submit a founder’s pitch using the same contract as the website. No founder login or GP access is needed.
Your answers are saved as you go and are visible to the Zero Index team, even if you don’t finish. Read our privacy notice and acknowledge the current notice version from the schema. You must declare authorization to pitch for the founder.
Contract and limits
Discover fields at the public schema endpoint. Required submission answers are name, email, company, product and customer, founders, and progress including when work began. Other answers and materials are optional. Drafts accept incomplete answers.
Requests are limited to 64 KiB. Names and company names allow 200 characters; email 254; narrative answers 5,000; URLs 2,048; and materials at most five labeled links. Shared links must use HTTP or HTTPS. Intake does not fetch your links.
The initial ceilings are 300 requests per minute per network identity, 120 per minute per capability, 20 creation attempts per hour per network identity, 30 per hour per bootstrap context, and ten active drafts per bootstrap context. Recovery requests allow three per hour per network identity; link exchanges allow 30. Respect 429 responses and Retry-After. Limits may be lowered for abuse or operational capacity.
Authority, concurrency, and retries
Keep the returned bearer capability secret. It grants access only to its own pitch and receipt, never the GP inbox or investment decisions. Credentials expire after 30 days. Retain the bootstrap secret and creation key for safe retries within 24 hours. Do not use contact details as secrets.
PATCH only changed answer keys. Omitted keys are preserved; null or an empty value clears an answer. Send the acknowledged revision in If-Match. A missing revision returns 428; a stale revision returns 412. Read the newer version, compare changes, and retry deliberately.
Creation and submission require an Idempotency-Key. Retry creation with the same bootstrap secret, key, and payload. Reusing a creation key with a different payload returns 409. Submission retries return the original receipt. Validation failures return 422 with stable field keys; successful writes return an acknowledged revision and ETag.
Synthetic example
# Use synthetic data while integrating. Never log capabilities.
BASE=https://api.zeroindex.vc/v1/public/pitch
curl "$BASE/schema/"
# Generate a random bootstrap secret and retain it with the retry key.
# A retry key alone cannot retrieve a capability.
curl -X POST "$BASE/" \
-H 'Content-Type: application/json' \
-H 'X-Pitch-Bootstrap: <random-secret-at-least-32-characters>' \
-H 'Idempotency-Key: <unique-create-key>' \
-d '{"privacy_version":"2026-10-16","authorized_to_submit":true,
"agent_name":"Synthetic client","answers":{"name":"Synthetic Founder"}}'
# Retain the id, capability and revision returned above.
curl -X PATCH "$BASE/<id>/" \
-H 'Authorization: Bearer <capability>' \
-H 'If-Match: "1"' -H 'Content-Type: application/json' \
-d '{"answers":{"email":"founder@example.test","company":"Synthetic Co",
"product":"A synthetic product for synthetic customers.",
"founders":"We built a prototype together.",
"progress":"Started this month and tested a prototype."}}'
# Use the acknowledged revision from the PATCH response.
curl -X POST "$BASE/<id>/submit/" \
-H 'Authorization: Bearer <capability>' \
-H 'If-Match: "2"' -H 'Idempotency-Key: <unique-submit-key>' \
-H 'Content-Type: application/json' -d '{"submit":true}' A successful submission returns submission: "submitted", reference, submitted_at, the revision, and your submitted answers. Submitted answers are read-only. Keep the reference for future correspondence.