- Overview
- Program overview
- User experience flow
- New employer account setup flow
- Campaign creation and management flow
- Set up your ATS with the program
- Sign a Developer Agreement with Indeed
- Create an Indeed account and register your integration
- Identify the redirect URL where Indeed sends users
- Start your integration
- Send a demo video to Indeed
- Work with Indeed on messaging
- API integration overview
- Integration prerequisites
- Set up employer account
- Set up no sponsorship
- Get OAuth authorization from each employer
- Secondary users and OAuth authorization
- Sponsored Jobs API overview
- Base URL
- Endpoints
- OAuth scopes
- Recommended best practices
- Account management
- Campaign management
- Create campaigns
- Update a campaign
- Get a campaign's budget
- Monthly recurring campaigns
- Update a campaign's budget
- Reports
- Campaign performance
- ATS Campaign predictions
- Request body
- CampaignPredictions
- JobInfo
- CampaignInfo
- PredictionsInfo
- Response
- JobLevelPredictions
- Job details
- Prediction
- Organic job performance and prediction
- Organic job performance and prediction request
- OrganicjobPrediction field
- JobInfo field
- Organic job performance and prediction response
- OrganicMetric field
- OrganicPrediction field
- SponsoredPrediction field
Sponsored Jobs API integration guide for ATS partners
Access private endpoints including campaign predictions, and organic job performance and prediction.
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 document supplements Sponsored Jobs API reference for ATS partners and is for ATS partners integrating with the Sponsored Jobs API, referred to as API, hereafter. This document is not a comprehensive API doc.
In this document and in the public API documentation, employer and advertiser both represent the user who sponsores jobs at Indeed. Send technical questions about this API to marketplacesupport@indeed.com .
Program overview
Set up your ATS with the program.
When designing the prototype, consider the user experience flow.
User experience flow
In your ATS, provide the user with a flow for creating an employer account and another flow for creating and managing ad campaigns.
New employer account setup flow
Each of your employers interested in using Indeed must have one Indeed account and a primary account admin that authorizes your ATS system to act on behalf of that employer’s Indeed account. This step is only required once per employer. That employer can have multiple ATS users but only one Indeed account for campaign sponsorships. Employers cannot create sponsorship campaigns until this step is completed.
- The employer’s account admin enters the corporate email address used to sign in to Indeed.
- Your ATS prompts them to complete setup on Indeed.
- When their Indeed account is set up, redirect their account admin to authorize your ATS system through Indeed OAuth.
- After they authorize your ATS, enable the admin to configure which of their ATS user accounts can create sponsorship campaigns using their Indeed account. This depends on the user’s role inside the ATS.
For implementation details, see Set up employer account.
Campaign creation and management flow
Offer easy access to the Indeed advertising UX where it makes the most sense in your platform, such as the marketplace, job performance review, or an analytics page.
To create campaigns, enable authorized ATS users to create and manage Indeed sponsored job campaigns in your ATS using our API endpoints.
Users can:
- Set a campaign budget and its duration per job.
- Set hiring objectives per job and get recommendations back from Indeed.
- Accept Indeed’s Terms of Service.
- Contact Indeed when needed.
Manage campaign
Enable authorized ATS users to:
-
Review basic Indeed analytics in your ATS. These include:
- Cost, Applies, Clicks, Impressions
- Links back to the Indeed dashboard for more details
-
End campaigns or add more budget to ATS-created campaigns.
For integration details, see Sponsored Jobs API overview.
Set up your ATS with the program
Complete the setup steps to begin using the Sponsored Jobs API as an ATS partner. Email marketplacesupport@indeed.com with questions as you start to build.
| 1. | |
| 2. | |
| 3. | Identify the redirect URL within your ATS where Indeed sends your users. |
| 4. | |
| 5. | |
| 6. |
Sign a Developer Agreement with Indeed
Ensure your company has a Developer Agreement in place with Indeed, which includes Sponsored Jobs Integration APIs and Referral Partnership language.
If not, send an email to marketplacesupport@indeed.com requesting this.
Create an Indeed account and register your integration
Create an Indeed account by using your ATS company email address. Use this account exclusively for OAuth authorizations and to register your ATS integration. Use this email address and account going forward for managing your clients’ employer accounts at Indeed.
You must also email Indeed at marketplacesupport@indeed.com to get a unique ATS identifier necessary to set up the employer account.
When you become an Indeed partner, Indeed sets up an app for your integration. Sign in to Partner Console to view your app and OAuth credentials (client ID, secret, and authorization code for 3-legged OAuth). Exchange credentials for an access token to authenticate API calls.
Identify the redirect URL where Indeed sends users
Identify the ATS redirect URL where Indeed redirects users to the ATS after they set up their employer account.
Start your integration
Now, you can start your integration. See the API integration overview.
To test your integration, create a separate Indeed account to use as a client account to test the API. Use a different email address than the one you used to create an Indeed account and register your integration.
- Test the various functions of the UX using this test account using budgets of $50.
- Indeed covers up to $200 of sponsored jobs clicks on your company’s real jobs to ensure the functionality of the integration is set up properly. Indeed only offers this refund one time on this single account.
- Respond to the email from Indeed with the email address you use for testing so Indeed can confirm success.
As you build your integration, follow the brand and logo guidelines.
Send a demo video to Indeed
Send a demo of your integration to marketplacesupport@indeed.com .
Email Subject: New ATS-SJI API Approval Request
Email Body:
ATS Name:
Product Contact Details:
BD/Marketing Contact Details:
Redirect URL (Step 4 above):
Video of UX:Indeed responds within 48 hours with either an approval or change request.
Work with Indeed on messaging
Work with Indeed on messaging to help clients get started. Be prepared to announce the new features to your clients. Email our support team at marketplacesupport@indeed.com to discuss open questions.
API integration overview
Before calling the Sponsored Jobs API for an employer, ensure the employer has an Indeed account and the employer grants your system OAuth authorization to call the API on their behalf.
To complete these steps, complete the prerequisites.
Integration prerequisites
Before you start calling with the Sponsored Jobs API, complete these integration steps:
Set up employer account
Complete these steps for each new employer account to ensure that the employer has an account set up for sponsoring at Indeed.
Step 1. Show a dialog, or equivalent, that requires an admin user with the necessary access and information to set up sponsoring at Indeed and complete the setup process. This dialog prompts the user for a corporate email address.
Step 2. Send the user to the Indeed account setup endpoint. This endpoint takes the user through the account readiness checks and prompts for any required Indeed account setup steps.
The Indeed account setup endpoint is:
https://ats-management.indeed.com/accountsetupMake an HTTP GET request to this endpoint with these parameters:
| Field | Required | Description |
|---|---|---|
| required | URL-encoded email address to use at Indeed for sponsoring. |
| required | Unique ID that Indeed provides to each ATS partner. Identifies the employer accounts that the ATS partner refers to Indeed. |
| optional | String that is returned to the ATS as-is. Can be used as a key to identify the request. Must be between 1 to 100 alphanumeric characters in length. |
| optional | Value is either:
|
You can reuse the Indeed account setup endpoint as needed to redirect the admin user and confirm that the employer is set up properly for sponsorship on Indeed. The process is lightweight, and if all checks pass, the call returns immediately without any further UX interaction with the user.
The account readiness checks performed at this endpoint include:
- The Indeed account with the given corporate email address is set up to use Indeed
- The user is signed in to Indeed
- The employer account is set up for sponsoring
- The billing information is set up for sponsoring
- The user has full access to the employer account
If any of these checks fail, the user is redirected to an appropriate setup page at Indeed. Then, the checks are performed again to ensure that setup is complete.
If the user is a secondary user, at least one of the employer accounts they can access must pass the checks. See Secondary users and OAuth authorization.
Step 3. After you complete setup steps, Indeed redirects the user to your ATS using the redirect URL you provide. You must create a redirect URL on the ATS side to which Indeed redirects users to after the Indeed setup process is complete.
Endpoint must support these parameters
| Field | Description |
|---|---|
state | If you pass this field in the request, the API returns your provided value. |
result | Value is:
|
Step 4. Ask the user to grant you OAuth authorization
After a successful return, you can redirect the user to the OAuth authorization flow.

In addition to the initial set up for the user to sponsor at Indeed, use this flow to update billing information at any point in time.
If the user’s billing information is no longer set up properly, prompt them to update their billing information through the account management flow.
Set up no sponsorship
If the employer has not set up their Indeed account and wants to view the Indeed-provided performance before sponsoring any jobs, specify the optional type=login parameter in the request URL. This parameter triggers the employer Indeed account creation and skips the rest of the checks.
Also, use the type=login parameter to access the organic job performance and prediction endpoint if the employer has not yet sponsored any jobs. After completing their Indeed account set up, redirect the user to the OAuth authorization endpoint.
Get OAuth authorization from each employer
This authorization is required for each new employer account, and associated secondary users. The Sponsored Jobs API uses the standard OAuth 2.0 Authorization code grant. In this flow, end users grant you access to their account and campaign data at Indeed. You call the API using the OAuth access token you obtain from the end user.
Follow the authorization code grant type (3-legged OAuth) to set up your Indeed account for OAuth and get authorization to call the API on behalf of your clients.
In the authorization code request, select the correct scope for the endpoint you are calling. See OAuth scopes for details.
In addition to these Sponsored Jobs Campaigns API scopes, get an access token that represents an employer. See Get access token that represents employer.
The access and refresh tokens you receive, which are unique for each employer account at Indeed, are required to make calls to the API. Ensure you store them securely. If these tokens are lost, your client must grant you OAuth access again.
Secondary users and OAuth authorization
The primary user is the admin user who sets up employer account. This user has full access to all resources associated with the employer account at Indeed. Primary users can provide access to other people on their employer account. These additional users are called secondary users. Primary users can add and view secondary users and their permissions by visiting their Indeed Account page.
Indeed recommends that you add each user who manages campaigns for an employer as a secondary user. Then, get OAuth authorization for each secondary user. See Get OAuth authorization from each employer.
To list of employer accounts the user can access, you can get user information.
For secondary users, the behavior of the Indeed account setup endpoint is:
- If the user has full access (admin permissions) to at least one employer account with valid billing information, the account setup endpoint returns them to your ATS with the
OKresult. - If the user does not have full access to any employer account, or none of those employers have valid billing information, the endpoint shows an error page about not having suitable employer accounts. The page has a link that returns the user to your ATS with the
BILLING_SETUP_CANCELEDerror.
After the user selects one of the employer accounts returned from the v2/api/userinfo endpoint, use the account management endpoint to verify that the account has valid billing information.
Sponsored Jobs API overview
These technical specifications supplement the Sponsored Jobs API reference for ATS partners. They describe the endpoints you can use for your integration. Some of the endpoints are private and exclusive to ATS partners. Others are public endpoints.
Base URL
ATS partners can access the API at this base URL.
apis.indeed.com/ads |
Endpoints
Public endpoints
The following endpoints are detailed in our Sponsored Jobs API reference for ATS partners.
Wherever endpoints define two different ways to use the API, one as an ad agency and the other as the direct employer, use the direct employers method.
Private endpoints
These endpoints are restricted to ATS partners who are set up for this program.
OAuth scopes
In your OAuth authorization code request, pass the scopes that correspond to the API endpoints you are calling. Then, the end user chooses whether to grant you none, some, or all scopes that you requested. Use the following table to determine which scope to request for each API endpoint.
Campaign predictions
| API endpoint | OAuth scope | Access token type |
|---|---|---|
POST /v1/campaignpredictions | employer_access | With |
Organic job predictions
| API endpoint | OAuth scope | Access token type |
|---|---|---|
POST /v1/organicjobpredictions | employer_access | Any |
Handle authorization errors
Make sure you handle any errors that occur when the user does not have access to the requested scopes or does not authorize your application. To determine which scopes have been granted, view the scope response field in the request an access token response.
The error codes are:
| Error code | Description |
|---|---|
403 INSUFFICIENT_SCOPE | The access token is valid but has not been granted the necessary scope. |
401 INVALID_TOKEN | The access token is missing, invalid, or expired. |
For suggestions on how to handle these errors, see Recommended best practices. You can offer the user the option to complete the OAuth Authorization code grant again to authorize your app with more scopes. However, some users might have restricted permissions and cannot authorize all the scopes you request.
If your app has not been granted all requested scopes, enable it to operate with a limited feature set.
Recommended best practices
The API follows an eventual consistency model. That is, when you create a campaign through the POST /v1/campaigns endpoint, you might not get the new campaign from the GET /v1/campaigns/{campaignId} endpoint for a brief time.
Ensure you have a retry mechanism in place if you try to get a resource immediately after creation or modification.
In addition, ensure that you continuously monitor for 4XX-level error responses from the API to determine whether there are API usage issues.
5XX-level error responses from the API are typically temporary internal service issues and could be retried after some delay. If you are unsure of how to resolve the issue or if the errors persist, because the request path was not prefixed with /ads, the response indicates that the request could not be routed to the Sponsored Jobs API.
For example, instead of https://apis.indeed.com/v1/account, use https://apis.indeed.com**/ads**/v1/account. reach out to marketplacesupport@indeed.com for help with diagnosis. You might encounter 401 INVALID_TOKEN and 403 INSUFFICIENT_SCOPE errors when using OAuth scopes.
Account management
GET | /v1/account | Sponsored Jobs API reference for ATS partners |
|---|
Use this endpoint to get basic information about the employer.
The following responses indicate that the employer must complete the Set up employer account:
-
If the endpoint returns
400 NOT_EMPLOYER_ACCOUNT, this indicates that the user does not have an Indeed employer account. -
To include the account billing status in the response, pass the following in the
fieldsparameter:fields=id,email,contact,company,jobSourceList,billingActive.If the returned value of the
billingActivefield isfalse, the user has not completed the necessary account set up at Indeed to start sponsoring.
Campaign management
An employer's campaign corresponds to what an employer can manage in the Indeed Analytics dashboard. All job campaigns at Indeed have unique IDs, for example: 784e4acec9x100z2.
Use the following endpoints to:
Create campaigns
POST | /v1/campaigns | Sponsored Jobs API reference for ATS partners |
|---|
Use this endpoint to create a campaign. This endpoint returns the ID of the new campaign. Store this campaign ID and use it to make changes to the campaign or to get reports about it.
When you create a campaign, set the budget and the duration that the employer chose.
The budget must be in the same currency as the default currency of the employer.
- The minimum budget and duration required are $50 and seven days.
- For each job, use its unique reference number that is set in the XML feed.
- All dates have the format
YYYY-MM-DDand are specified in the US Central time zone.
To create a campaign, set these parameters
| Field | Description |
|---|---|
jobsToInclude | Always set to |
jobsQuery | Use Example:
|
jobsSourceName | Source or company for this job. Must exactly match the Example:
|
If the employer chooses a monthly campaign
Monthly recurring campaigns follow the calendar month.
| Field | Description |
|---|---|
budgetMonthlyLimit | The budget amount. |
budgetFirstMonthBehavior | Set to |
If the employer chooses a fixed duration campaign
| Field | Description |
|---|---|
budgetOnetimeLimit | Budget amount. |
startDate | Campaign start date. Defaults to today. In the format YYYY-MM-DD and is specified in the US Central time zone. |
| Set
|
Update a campaign
PATCH | /v1/campaigns/{campaignId} | Sponsored Jobs API reference for ATS partners |
|---|
Use this endpoint to make changes to the campaign status.
Employers can set campaigns to one of the following statuses:
| Status | Description |
|---|---|
ACTIVE | Active campaigns can start sponsoring jobs. |
PAUSED | Paused campaigns do not sponsor jobs until the employer makes them active. |
DELETED | These campaigns have been deleted by the employer. |
The statuses are only for the campaign and are independent of an employer’s billing status or remaining budget.
The campaign status can be active, but you might need to perform these checks to verify their billing status or remaining budget:
| Campaign status | Additional check | Description |
|---|---|---|
Active | Use the account management endpoint to check their billing status and confirm billing is active. | If billing is not active, the campaign cannot start spending. Alert the user with the message: “You must first add billing details to your Indeed account to fund your campaigns." Then to complete the set up, redirect the user to set up employer account. |
Active | Use the get a campaign's budget and campaign performance endpoints to determine the remaining budget for the campaign. | If the remaining budget is zero, the campaign cannot continue to sponsor the job. Ask the user whether to update the budget amount for the campaign. Use the update a campaign's budget endpoint to set the new total budget, which is the original amount plus any additional amount. |
Get a campaign's budget
GET | /v1/campaigns/{campaignId}/budget | Sponsored Jobs API reference for ATS partners |
|---|
Use this endpoint to get a campaign’s budget.
The fields returned vary depending upon whether the campaign has a single lifetime budget or is a monthly recurring campaign.
Monthly recurring campaigns
These campaigns follow the calendar month. The response includes the budgetMonthlyLimit field that contains the monthly budget amount.
Fixed time duration campaigns
| Field | Description |
|---|---|
budgetOnetimeLimit | Budget amount. |
startDate | Campaign start date, in YYYY-MM-DD format, and in the US Central time zone. Defaults to today. |
| Set
|
Update a campaign's budget
PATCH | /v1/campaigns/{campaignId}/budget | Sponsored Jobs API reference for ATS partners |
|---|
Use this endpoint to make changes to the campaign’s budget and duration.
Reports
Use the reporting endpoints to pull campaign performance reports from Indeed and make them available to employers.
Campaign performance
GET | /v1/campaigns/{campaignId}/stats | Sponsored Jobs API reference for ATS partners |
|---|
Use this endpoint to get a campaign performance report for a given date range.
ATS Partners can use this report to present aggregated Clicks, Impressions, Conversions, and Cost information to employers.
The date range cannot exceed 366 days.
| Parameter | Description |
|---|---|
startDate | Report start date, inclusive, in YYYY-MM-DD format in the US Central time zone. |
endDate | Report end date, exclusive, in YYYY-MM-DD format in the US Central time zone. |
merge | Value is:
|
Get a campaign’s budget and combine the information with the campaign performance report to display the current budget for a job and the cost incurred to date.
To do this pass the campaign creation date in the startDate parameter of this endpoint.
Also pass, merge=true to aggregate the data.
This helps you find what was spent for a campaign from the campaign start date.
The campaign performance data that is returned includes:
- Impressions
- Clicks
- Conversions (Applies)
- Cost
- Currency Code (
USD,GBP, and so on)
ATS Campaign predictions
POST | /v1/campaignpredictions |
|---|
This endpoint:
- Estimates the expected job performance in terms of the number of total job applies for a budget.
- Recommends a budget to sponsor a job based on the desired performance.
For a specific job and its properties, these predictions are based on the past performance of similar jobs at Indeed. It can predict performance of campaign with multiple jobs as well
Predictions are currently available for US (English) jobs only and estimate performance for budgets lower than USD $100 per day. All budget amounts are specified in US dollars (USD).
Predictions are based on the job properties and the type and duration of the campaign.
After the employer accepts the recommended budget, create campaigns with the same parameters.
| Parameter | Description |
|---|---|
mode | Job mode value. Set to |
Request body
| Field | Required | Description | Type |
|---|---|---|---|
body | required | Job, campaign, and prediction information. | CampaignPredictions |
CampaignPredictions
| Field | Required | Description | Type |
|---|---|---|---|
jobInfo | required | Describes a job and its properties. | JobInfo |
campaignInfo | required | Describes the desired campaign type. | CampaignInfo |
predictionsInfo | required | Specifies the desired number of applies or desired budgets for predictions. | PredictionsInfo |
JobInfo
| Field | Required | Description | Type |
|---|---|---|---|
| required | City where the job is located. Example:
| String |
jobsQuery | required | Use Example:
| String |
| required | Source or company for this job. Must exactly match the Example:
| String |
| required | Job title. Example:
| String |
CampaignInfo
| Field | Required | Description | Type |
|---|---|---|---|
| required | Either Example:
| String |
| conditional | Campaign start date, in Example:
| String |
| conditional | Campaign end date, in Example:
| String |
PredictionsInfo
| Field | Required | Description | Type |
|---|---|---|---|
| required | Either Example:
| String |
| conditional | Budget for which to get an estimated performance. Performance is estimated in number of applies. Pass only one number in the array. Required if Example:
| Double array |
| conditional | Desired number of total applies (organic and sponsored) across jobs for which you want a recommended budget. Pass only one number in the array. Required if Example:
| Integer array |
| conditional | Desired number of applies (organic and sponsored) per job for which you want a recommended budget. Pass only one number in the array. Required if Example:
| Integer array |
Response
| Name | Description | Type |
|---|---|---|
currencyCode | Currency code for the budget amounts. Example:
| String |
| The estimated performance or recommended budget overall for all the jobs. | Prediction array |
| Estimated performance or recommended budget for each jobs. | JobLevelPredictions array |
JobLevelPredictions
| Name | Description | Type |
|---|---|---|
job | Job Details | Job Details |
predictions | Estimated performance or recommended budget for a job. | Prediction array |
Job details
| Name | Description | Type |
|---|---|---|
jobKey | Job key. | String |
refNum | Job reference number. | String |
title | Job title. | String |
location | Job location. | String |
Prediction
| Name | Description | Type |
|---|---|---|
budget | For BUDGET_BASED requests, this is the budget that the estimated number of applies is based on. For APPLY_BASED requests, this is the recommended budget to achieve the desired number of total applies. | Double |
organicApplies | For BUDGET_BASED requests, the estimated number of organic applies for the job without sponsoring. Use totalApplies and organicApplies to calculate the estimated number of applies that result from sponsoring the job. | Integer |
totalApplies | For BUDGET_BASED requests, the estimated number of total applies for an organic and sponsored job for a budget value. For APPLY_BASED requests, this is the number of total applies that the recommended budget is based on. | Integer |
estimatedLowerApplies | For BUDGET_BASED requests, the estimated lower range of applies for an organic and sponsored job for a budget value. For APPLY_BASED requests, the response does not include this field. | Integer |
estimatedHigherApplies | For BUDGET_BASED requests, the estimated higher range of applies for an organic and sponsored job for a budget value. For APPLY_BASED requests, the response does not include this field. | Integer |
Example JSON request for prediction
{ "jobInfo": { "jobsLocation": "Austin, TX", "jobsQuery": "refnum:12345", "jobsSourceName": "Bob’s Recruiting", "jobsTitle": "Software Engineer" }, "campaignInfo": { "campaignType": "ONETIME", "startDate": "2021-08-10", "endDate": "2021-08-11" }, "predictionsInfo": { "predictionType": "BUDGET_BASED", "budgets": [75.50] }}Example JSON response for prediction
{ "currencyCode": "USD", "predictions": [{ "predictionType": "BUDGET_BASED", "budget": 151, "organicApplies": 3, "totalApplies": 7, "estimatedLowerApplies": 3, "estimatedHigherApplies": 10 }], "jobLevelPredictions": [{ "job": { "jobKey": "80fdf7e9de72243f", "refNum": "12800649-92-99", "title\"": "Firmware Engineer", "location": "Irvine" }, "predictions": [{ "predictionType": "BUDGET_BASED", "budget\"": 75.5, "organicApplies": 2, "totalApplies": 4, "estimatedLowerApplies": 2, "estimatedHigherApplies": 5 }] }, { "job": { "jobKey": "79db86f75cbbde08", "refNum": "12800649-93-100", "title\"": "Principal Software Engineer", "location": "Irvine" }, "predictions": [{ "predictionType": "BUDGET_BASED", "budget": 75.5, "organicApplies": 1, "totalApplies": 3, "estimatedLowerApplies": 1, "estimatedHigherApplies": 5 }] } ]}Organic job performance and prediction
POST | /v1/organicjobpredictions |
|---|
This endpoint provides:
- The organic traffic statistics of a single job for the past 30 days
- The estimated organic traffic statistics for the next 30 days
- The estimated improvement in traffic if the job is sponsored
The performance is expressed in terms of clicks.
All budget amounts are specified in USD.
To use this endpoint, the employer’s admin user must have an account at Indeed by following the steps in Set up employer account. However, if you do not have billing information set up for sponsoring, you can pass the type=login parameter in the URL to simplify the setup flow.
Organic job performance and prediction request
| Name | Required | Description | Type |
|---|---|---|---|
body | required | Job-related information. | OrganicJobPrediction |
OrganicjobPrediction field
| Name | Required | Description | Type |
|---|---|---|---|
jobInfo | required | Job description, and its properties. | JobInfo |
JobInfo field
| Name | Required | Description | Type |
|---|---|---|---|
jobsQuery | required | The unique reference number that identifies the job, in "refnum:xxxxx” format. Should match the Example:
| String |
jobsSourceName | required | The source or company for this job, in "refnum:xxxxx” format. Should exactly match the Example:
| String |
Organic job performance and prediction response
The response might differ depending on whether the job received traffic or whether sponsoring the job is recommended.
- If the job hasn’t received any traffic in the past 30 days, the value of the
clicksfield within themetricobject is0. - If the job hasn’t existed for 30 days, traffic statistics are returned for the number of days the job existed (but the value of the
daysresponse field is still30). - If the recommendation is not available, the
recommendationfield is not returned.
| Name | Required | Description | Type |
|---|---|---|---|
metric | required | The organic traffic statistics of the given job for the past 30 days. | OrganicMetric |
prediction | required | The estimated organic traffic statistics of the given job for the next 30 days. | OrganicPrediction |
recommendation | optional | If available, the estimated sponsored performance of the given job with a recommended budget. | SponsoredPrediction |
OrganicMetric field
| Name | Description | Type |
|---|---|---|
clicks | Number of clicks the job received in the last n number of days. | Integer |
days | Number of days. Default is 30 days. | Integer |
OrganicPrediction field
| Name | Description | Type |
|---|---|---|
clicks | For the next n number of days, the estimated clicks for the job. | Integer |
days | Number of days. Default is 30 days. | Integer |
SponsoredPrediction field
| Name | Description | Type |
|---|---|---|
clicks | For the next n number of days, the estimated clicks for the job. | Integer |
days | Number of days. Default is 30 days. | Integer |
budget | Recommended budget for sponsoring. | Double |
Example JSON request
{ "jobInfo": { "jobsQuery": "refnum:12345", "jobsSourceName": "Bob’s Recruiting" }}Example JSON response
{ "metric": { "clicks": 30, "days": 30 }, "prediction": { "clicks": 40, "days": 30 }, "recommendation": { "budget": 250.0, "clicks": 70, "days": 30 }}