Build clean sharing into your product.
The Parrot API creates team-owned Parrots with authenticated server requests for creating and managing clean share links.
Stable v1 API host for team-owned platform resources.
API keys and created resources belong to the team. User IDs are kept for audit trails.
auth and scopes
API keys stay on the server.
Authenticate server requests with `Authorization: Bearer pk_live...`. Do not ship team API keys to browsers.
rest api
Endpoints built around team ownership.
Every platform resource is scoped to the API key team. User IDs are audit fields for who created, changed, or deleted a resource.
/parrots
Create a clean public Parrot link.
parrots:create
/parrots/:id
Fetch Parrot metadata and share URL by ID.
parrots:read
/parrots/:id
Soft-delete a Parrot.
parrots:delete
rest create parrot
curl https://api.parrot.wiki/v1/parrots \
-H "Authorization: Bearer $PARROT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "code",
"language": "typescript",
"title": "Stripe webhook replay",
"description": "A clean replay helper for test events.",
"content": "export async function replayWebhook(eventId: string) { return eventId; }",
"visibility": "public"
}'errors and limits
Predictable failures.
Error responses use a stable `error` object with a machine-readable code and a public message.
400
bad_request
The request body failed validation.
401
invalid_api_key
The API key or Parrot UI session token is missing, invalid, or expired.
403
insufficient_scope
The API key does not include the required scope.
404
not_found
The resource does not exist in the API key team.
429
rate_limited
The route limit was exceeded. Respect the Retry-After header.
Create a team API key and ship your first Parrot.
Use server-side API keys for platform calls and keep credentials out of the browser.