Create offer

Create an offer for an application in the Offer stage from your offer form fields.

POST https://cotlet.dev/api/v1/ashby/applications/{application_id}/offers

write Confirm

Fills the Offer Details form with the values you give, keyed by field title as set under Admin > Offers > Offer Custom Fields, and submits it. The application must be in the Offer stage. With request_approval set it also submits the approval request, which notifies the approvers; with approvals on, no letter can go out until every step is done. Needs Organization Admin, or the permissions Can See Candidate Profiles, Can Add/Edit Candidates and Can See Private Fields. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: create_offer
NameTypeDescription
application_id string required string Application ID from list_applications or get_candidate.
fields object required object Offer form values keyed by field title, for example {"Base salary": "95000"}.
opening_id string string Opening ID, required when your organization turned on Require Openings for Hires.
request_approval boolean boolean Submit the approval request after creating. Default: false.

Request

cURL
curl -X POST https://cotlet.dev/api/v1/ashby/applications/9c41b7a2-6e03-4d58-a1f9-3b8d25e07c64/offers \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"fields":{"Base salary":"95000","Start date":"2026-11-16"},"request_approval":true}'
Python
result = client.call("ashby", "create_offer", {"application_id":"9c41b7a2-6e03-4d58-a1f9-3b8d25e07c64","fields":{"Base salary":"95000","Start date":"2026-11-16"},"request_approval":True})
Node.js
const result = await cotlet.call('ashby', 'create_offer', {"application_id":"9c41b7a2-6e03-4d58-a1f9-3b8d25e07c64","fields":{"Base salary":"95000","Start date":"2026-11-16"},"request_approval":true});
CLI
cotlet call ashby create_offer --data '{"application_id":"9c41b7a2-6e03-4d58-a1f9-3b8d25e07c64","fields":{"Base salary":"95000","Start date":"2026-11-16"},"request_approval":true}'

Example response

JSON

{
  "offer_id": "6b3e90d4-1f87-4a52-8c06-d94a7e215b03",
  "application_id": "9c41b7a2-6e03-4d58-a1f9-3b8d25e07c64",
  "fields": {
    "Base salary": "95000",
    "Start date": "2026-11-16"
  },
  "approval_requested": true,
  "approvers": [
    "Hiring Manager",
    "Finance"
  ]
}

Sign in once. Your agent does the rest.

Sign up and add the apps you need. Free 7-day trial with 2,000 credits, no card needed.