- Overview
- Summary of changes
- Credit balance visibility (new)
- Bonus-credit campaign identification (updated endpoints)
- Per-job budget visibility (updated)
- Job selection updates
- Integration workflow
- 1. Prerequisites
- 2. Campaign creation process
- 3. Monitor your credit balance
- 4. Identify your bonus-credit campaigns
- 5. Update job selection
- 6. View budget allocation
Sponsored Jobs API integration guide for bonus-credit campaigns
Sponsor jobs in special campaigns with bonus credits from an Indeed Annual Deal Agreement.
Unless you have a written agreement with Indeed regarding your use of Indeed's APIs, by using this API or its documentation, you agree to apply the Indeed API Terms and the Additional API Terms and Guidelines to your use of Indeed's APIs.
Overview
This guide covers API support for using bonus sponsored job credits under an Indeed Annual Deal. Use bonus sponsored job credits to sponsor jobs in designated special campaigns. When credits are allocated to your advertiser account, Indeed creates the corresponding campaigns automatically.
As of 2026-01-19, use the Sponsored Jobs API to view your bonus-credit balance, identify bonus-credit campaigns, monitor per-job budgets, and update job selection queries.
Summary of changes
| Endpoint | Change type | Change description |
|---|---|---|
Get credit allocation and balance | New | Gets an advertiser's total and remaining bonus sponsored job credits. See: |
List employer campaigns and statuses | Enhanced | New
See bonus-credit campaign identification (updated endpoints). |
Get general campaign information | Enhanced | Auto-includes fields:
|
Get campaign budget and duration | Enhanced | For bonus-credit campaigns, auto-includes field:
|
Update general campaign information | Enhanced | For bonus-credit campaigns, added job selection criteria. |
Credit balance visibility (new)
| Endpoint | Get credit allocation and balance |
|---|---|
| Description | Gets an advertiser's total and remaining bonus sponsored job credits. Credit balance is returned in real time. |
| Authentication | |
| Response |
|
| Use cases |
|
Bonus-credit campaign identification (updated endpoints)
Enhanced campaign list
| Endpoint | List employer campaigns and statuses |
|---|---|
| Description | The campaign list endpoint already supports a Additional
|
| Authentication | |
| Request | The
|
| Response |
|
Single campaign details
| Endpoint | Get general campaign information |
|---|---|
| Description | Unlike the enhanced campaign list endpoint, the response from the single campaign details endpoint always includes both the |
| Authentication | |
| Request | The
|
| Response |
For null values and empty strings, the JSON response includes both:
|
Integration recommendations
-
For list employer campaigns and statuses queries:
- To filter or display bonus-credit campaigns, always include
FundingSourcein yourfieldsparameter. - To identify bonus-credit premium campaigns, include
SponsorshipPlan. - For complete classification, include both values.
- To filter or display bonus-credit campaigns, always include
-
For get general campaign information, both fields are always present. No special handling is needed.
- To identify regular campaigns, check for empty string (
"") inFundingSource. - To identify standard-tier campaigns, check for empty string (
"") inSponsorshipPlan.
- To identify regular campaigns, check for empty string (
-
Use cases:
- Filter and display bonus-credit campaigns separately.
- Identify bonus-credit premium tier campaigns.
Per-job budget visibility (updated)
-
Updated endpoints:
GET /v1/campaigns(opt-in through thefieldsquery parameter)GET /v1/campaigns/{campaignId}/budget(automatic)
Bonus-credit campaigns use a daily budget model where Indeed recommends a daily budget for each job. Traditional campaigns use a total budget for the month or campaign duration.
-
Current state: Campaign endpoints return
BudgetOnetimeLimit(total lifetime budget) orBudgetMonthlyLimit(monthly budget). Only the applicable field appears based on campaign type. -
New:
DailyAvgBudgetPerJobfield shows the average daily budget per job in bonus-credit campaigns.Indeed's optimization system automatically manages per-job budgets based on your job selection. This value is read-only.
| Endpoint | List employer campaigns and statuses
|
|---|---|
| Description | This endpoint already supports a New: When the field appears:
When the field is hidden:
Key behavior:
|
| Authentication | |
| Request | The
|
| Response |
For null values and empty strings, the JSON response includes both:
|
Job selection updates
| Endpoint | Update general campaign information |
|---|---|
| Description | Update job selection for bonus-credit campaigns. Allowed updates for bonus-credit campaigns:
|
| Restrictions | Indeed manages other campaign settings ( |
| Use cases | Add or remove jobs from bonus-credit campaigns. |
Integration workflow
1. Prerequisites
Before integrating, verify that you have:
- Active Annual Agreement with Indeed
- OAuth 2.0 credentials configured with employer scope
- US-based advertiser account (initial release is US-only)
- Credits allocated to your advertiser account (handled by your Indeed Customer Service team)
2. Campaign creation process
When Indeed initially allocates bonus credits to your account, we automatically create bonus-credit campaigns on your behalf.
- Indeed creates the bonus-credit campaign in your account.
- Campaign becomes immediately visible through the API.
3. Monitor your credit balance
Call
GET /v1/advertisers/{yourAdvertiserId}/creditswith the OAuthBearertoken:Before sponsoring jobs in a bonus-credit campaigns.
When credits are allocated.
Weekly or as needed for spend tracking.
Best practice: Cache the balance and avoid excessive polling (calls count toward rate limits).
4. Identify your bonus-credit campaigns
Option A: List all campaigns with funding source:
To identify which campaigns are bonus-credit funded, call
GET /v1/campaigns.Include
FundingSourcein thefieldsparameter.To identify bonus-credit campaigns versus regular budget campaigns, check whether
FundingSourceequals"Bonus Sponsored Job Credits".
Option B: Get details for specific campaign:
Call
GET /v1/campaigns/{campaignId}.This call automatically includes the
FundingSourcefield in the response.
5. Update job selection
Call
PATCH /v1/campaigns/{creditCampaignId}with a JSON body that contains job selection criteria.You can update these fields:
jobsToInclude. Selection mode (ALLorQUERY).jobsQuery. Search keywords.
You cannot update these fields:
- Campaign name, status, objective, budget (automatically managed),
jobsTitle,jobsCompany,jobsLocation,jobsLocationRadius.
Error handling: Updating restricted fields returns the error:
"Only Jobs Query Criteria field update is allowed for campaigns using Bonus Sponsored Job Credits."
6. View budget allocation
Call
GET /v1/campaigns. For a specific campaign, callGET /v1/campaigns/{campaignId}/budget.With either call, set the
fieldsparameter to includeDailyAvgBudgetPerJobandFundingSource.The call returns:
The total campaign budget allocation.
Average daily budget per job (for bonus-credit campaigns).