# UpHunt > UpHunt is an auto-apply platform for Upwork agencies. We provide a dedicated "business developer" — an Upwork account UpHunt manages — that you invite into your Upwork agency (requires Upwork's Agency Plus feature). Every proposal goes out from that business developer, on behalf of your agency and any freelancer in it. A REST API lets you submit proposals, poll status, and receive webhooks from any stack. **Upwork TOS compliance.** Because UpHunt's automation runs on our own business developer account (not on your agency-owner account or any personal Upwork account), and because Upwork's Agency Plus feature explicitly allows agency members to submit proposals on behalf of the agency, using UpHunt keeps you fully within Upwork's Terms of Service. You never share your Upwork password with us and we never log into your accounts. **Submit on behalf of any freelancer in your agency.** Thanks to Agency Plus, UpHunt can send proposals under any member of your agency — not just the business developer. For each `/apply` call (or each auto-apply feed in the dashboard) you pick which freelancer represents the proposal by passing their `profileId`. List your agency's freelancers via `GET /api/auto-apply/external/freelancers`. UpHunt focuses on Upwork (primary) and LinkedIn job applications. The public API uses simple `x-api-key` authentication, accepts Upwork ciphertexts/URLs directly (no feed setup required), and deducts one credit per successful application. ## Getting started - [Auto-apply setup](https://uphunt.io/docs/auto-apply-setup): Create an UpHunt account, meet the business developer UpHunt assigns you, invite them into your Upwork agency, generate an API key, send your first proposal. - [How auto-apply works](https://uphunt.io/docs/how-auto-apply-works): End-to-end pipeline from API call to terminal state, including the Agency Plus model. - [Quickstart](https://uphunt.io/docs/quickstart): One-shot cURL example to submit a proposal. - [Authentication](https://uphunt.io/docs/authentication): Generating and rotating API keys. ## API - [OpenAPI specification](https://uphunt.io/openapi.json): Machine-readable OpenAPI 3.1 spec for all public endpoints. - [API reference](https://uphunt.io/docs): Human-readable endpoint docs with cURL, Node.js, and Python examples. - [ChatGPT plugin manifest](https://uphunt.io/.well-known/ai-plugin.json): Legacy plugin manifest pointing to the OpenAPI spec. ## Endpoints - [POST /api/auto-apply-v2/apply](https://uphunt.io/docs/endpoints/apply): Queue a proposal submission for any Upwork job. - [GET /api/auto-apply-v2/status](https://uphunt.io/docs/endpoints/status): Poll application state by queueId or jobId. - [GET /api/auto-apply-v2/applied-jobs](https://uphunt.io/docs/endpoints/applied-jobs): Paginated list of applied jobs. - [POST /api/auto-apply-v2/generate-proposal](https://uphunt.io/docs/endpoints/generate-proposal): Generate an AI cover letter for a job. - [GET /api/auto-apply/external/freelancers](https://uphunt.io/docs/endpoints/freelancers): List agency freelancers and their profiles. ## Webhooks - [Webhook integration](https://uphunt.io/docs/webhooks): Receive Upwork or LinkedIn job payloads when feeds match, then call the apply endpoint with the `ciphertext` field. ## Errors - [Error reference](https://uphunt.io/docs/errors): Status codes, meanings, and remediation. ## Optional - [Full LLM-readable docs dump](https://uphunt.io/llms-full.txt): The complete API reference and setup model inlined as a single plain-text document. - [Dashboard](https://uphunt.io/dashboard): Where users generate API keys, invite their business developer, and configure feeds.