Get general campaign information
GET/v1/campaigns/:campaignId
Gets the basic properties of a sponsored jobs campaign.
Request the employer.advertising.campaign.read OAuth scope to get an access token that represents an employer. See Get access token that represents employer.
| OAuth scope | Access token type |
|---|---|
employer.advertising.campaign.read | Access token that represents an employer. |
Request
Path Parameters
Campaign ID of the campaign to get.
Responses
- 200
- 401
- 403
- 404
- 500
Returns general campaign information.
- application/json
- Schema
- Example (from schema)
- Active campaign
- Paused campaign
Schema
Array [
]
Array [
up: The related resource is a collection that contains the requested resource, or an entity that the requested resource is attached to.next: The next page of entries in a paginated result.prev: The previous page of entries in a paginated result.]
BALANCE: Get the most total applications for your budget, while balancing across jobs.MAXIMUM: Get the most total applications for your budget, without balancing clicks across.QUICK: Five day campaign with higher budget for faster results. Sponsored Jobs API does not currently support creating or modifying campaigns with this objective. However, the Sponsored Jobs API does allow for retrieving campaign reports for campaigns with this objective type (these campaigns would have been created using Indeed for Employers).TARGET_APPLICATIONS: Aim to reach the number of applications specified bytarget. When the target number of applications is hit, spend on these jobs is significantly reduced and allocated elsewhere.TARGET_COST_PER_APPLICATION: Aim to keep the cost per application below the number specified bytarget.SCHEDULED_INTERVIEWS: Send screened candidates straight to interview. Aim to reach the number of interviews specified bytarget. This objective requires an active Indeed Hiring Platform subscription, and should only be used when the customer is prepared to create hiring events for the included jobs.- BALANCE
- MAXIMUM
- QUICK
- TARGET_APPLICATIONS
- TARGET_COST_PER_APPLICATION
- SCHEDULED_INTERVIEWS
Array [
BEFORE_START_DATE: The current date in US Central Time is before the campaign start date.AFTER_END_DATE: The current date in US Central Time is on or after the campaign end date.ACCOUNT_MONTHLY_BUDGET_HIT: The employer account has already spent its budget this month.MONTHLY_BUDGET_HIT: The campaign has already spent its budget this month.ONETIME_BUDGET_HIT: The campaign has already spent its budget.JOB_SOURCE_NOT_VERIFIED: The job source hasn't been verified by Indeed yet.BILLING_PENDING: The employer account doesn't have valid billing information.USER_PAUSED_CAMPAIGN: Campaign has been paused, as requested.USER_DELETED_CAMPAIGN: The campaign has been deleted as requested.TARGET_APPLICATIONS_HIT: The campaign has already received the requested number of applications.OTHER: Unknown reason.]
- Bonus Sponsored Job Credits: Funded with Annual Deals bonus credits.
- Budget: Funded with regular budget.
- PREMIUM: Campaign uses the premium plan.
- STANDARD: Campaign uses the standard plan.
""(empty string): Normal campaign.
meta
object
Response-related metadata.
HTTP status code of the response.
errors
object[]
Any errors that prevented successful processing of the request. If there were no errors, the value is null.
Name of the error.
Human-readable description of the problem.
Base URL of the Sponsored Jobs API.
For endpoints that return paginated results, the effective maximum number of entries returned on one page. The value may be smaller than the maximum you requested with the perPage parameter. If the endpoint returns a single result or doesn't paginate, the value is null.
links
object[]
Resources related to the requested resource.
The relationship between the requested resource and the related resource. These values are commonly used:
However, the value may also be an arbitrary string describing the relationship, such as Campaign Info.
Endpoint URL of the related resource. Can contain query string parameters. To get the complete URL, append the href to rootLocation.
data
object
Possible values: non-empty and <= 250 characters
Campaign name. Use to identify the campaign later. The name must be unique within your employer account.
Campaign ID. Automatically generated when the campaign is created.
Possible values: [SOURCE, HOSTED]
Type of job sponsored by the campaign. Either SOURCE (jobs gathered from the web, or sent to Indeed using an XML feed) or HOSTED (jobs posted using the Post a Job page).
Possible values: [ACTIVE, DELETED, PAUSED]
Default value: ACTIVE
Campaign status. PAUSED creates a campaign that does not start sponsoring jobs until you manually enable it, or temporarily stops a campaign from sponsoring jobs.
ISO 4217 currency code of the currency for the campaign's budget.
Possible values: <= 255 characters
Click-tracking token appended to the job URL on sponsored clicks. Allows you to identify that the click is from Indeed, and identify the campaign that sponsored the click.
Objective
object
Specifies the hiring goals that the campaign is intended to achieve, and makes the campaign into an objective-based campaign. The value is a JSON object with an objectiveType field specifying the campaign objective, and for some objective types, a target field identifying the specific goal metric.
For example, if the goal of the campaign is to supply 10 apps, set the objective to:
{ "objectiveType": "TARGET_APPLICATIONS", "target": 10}You can add an objective to a campaign that doesn't have one, and change the target value of an objective. However, you cannot remove an objective or change its objectiveType.
objectiveType
string
Possible values: [BALANCE, MAXIMUM, QUICK, TARGET_APPLICATIONS, TARGET_COST_PER_APPLICATION, SCHEDULED_INTERVIEWS]
The campaign objective. The available values are:
Campaigns created outside your app can use latest objective types. See Ensure compatibility with API changes that your app does not support yet. To handle unexpected objectiveType values, ensure your app has fallback logic.
any
any
any
Number of apps that the campaign seeks to reach.
Cost per app that the campaign should stay below, in the employer account's currency. Sponsored Jobs API parses, stores and returns the value as an exact decimal fraction, not a floating point number.
Number of interviews that the campaign should reach.
NonSpendingReasons
object[]
List of reasons that are currently preventing the campaign from sponsoring jobs.
Possible values: [BEFORE_START_DATE, AFTER_END_DATE, ACCOUNT_MONTHLY_BUDGET_HIT, MONTHLY_BUDGET_HIT, ONETIME_BUDGET_HIT, JOB_SOURCE_NOT_VERIFIED, BILLING_PENDING, USER_PAUSED_CAMPAIGN, USER_DELETED_CAMPAIGN, TARGET_APPLICATIONS_HIT, OTHER]
Identifier for the problem. Value is:
Human-readable description of the problem.
Possible values: [TMN]
List of channels on which the campaign is spending. Excludes default channels.
Funding source for the campaign:
Possible values: [Bonus Sponsored Job Credits, Budget].
Sponsorship plan for the Annual Deals bonus credits-funded campaign.
Possible values: [PREMIUM, STANDARD, `` (empty string)]
{ "meta": { "status": 200, "errors": [ { "type": "RESOURCE_NOT_FOUND", "description": "Couldn't locate the requested resource" } ], "rootLocation": "https://apis.indeed.com/ads", "perPage": 25, "links": [ { "rel": "next", "href": "/v1/campaigns/3141592653589793" } ] }, "data": { "Name": "Entry Level Jobs - Priority 1", "Id": "ee4d641cab17b22c", "Type": "SOURCE", "Status": "ACTIVE", "CurrencyCode": "USD", "TrackingToken": "&source=indeed", "Objective": { "objectiveType": "BALANCE" }, "NonSpendingReasons": [ { "type": "BEFORE_START_DATE", "description": "The current date in US Central Time is before the campaign start date" } ], "SpendingChannels": [ "TMN" ], "FundingSource": "Bonus Sponsored Job Credits", "SponsorshipPlan": "PREMIUM" }}{ "meta": { "status": 200, "errors": null, "rootLocation": "https://apis.indeed.com/ads", "perPage": null, "links": [ { "rel": "up", "href": "/v1/campaigns" }, { "rel": "Traffic Statistics", "href": "/v1/campaigns/ee4d641cab17b22c/stats" } ] }, "data": { "Name": "Entry Level Jobs - Priority 1", "Id": "ee4d641cab17b22c", "Type": "SOURCE", "Status": "ACTIVE", "CurrencyCode": "USD", "TrackingToken": "&source=indeed", "Objective": { "objectiveType": "TARGET_APPLICATIONS", "target": 10 }, "NonSpendingReasons": [], "SpendingChannels": [ "TMN" ], "FundingSource": "", "SponsorshipPlan": "" }}{ "meta": { "status": 200, "errors": null, "rootLocation": "https://apis.indeed.com/ads", "perPage": null, "links": [ { "rel": "up", "href": "/v1/campaigns" }, { "rel": "Traffic Statistics", "href": "/v1/campaigns/48eee5f3bb716870/stats" } ] }, "data": { "Name": "Entry Level Jobs - Priority 2", "Id": "48eee5f3bb716870", "Type": "SOURCE", "Status": "PAUSED", "CurrencyCode": "JPY", "MaxCostPerClick": 25, "DailyBudget": 68, "TrackingToken": "&source=indeed", "NonSpendingReasons": [ { "type": "USER_PAUSED_CAMPAIGN", "description": "Campaign has been paused, as requested." } ], "SpendingChannels": [], "FundingSource": "Bonus Sponsored Job Credits", "SponsorshipPlan": "STANDARD" }}Request did not include a valid access token:
-
The
Authorizationheader is missing or malformed. Include the access token using theBearerscheme — for example,Authorization: Bearer XYZ. -
The access token is malformed. When building requests manually, check that you copied the token without missing or extra characters at the start or end.
-
The access token has expired. Tokens expire after one hour (3,600 seconds). Get a new token using your client credentials (2-legged OAuth) or a refresh token (3-legged OAuth).
- application/json
- Schema
- Example (from schema)
- Example
Schema
Array [
]
Array [
up: The related resource is a collection that contains the requested resource, or an entity that the requested resource is attached to.next: The next page of entries in a paginated result.prev: The previous page of entries in a paginated result.]
meta
object
Response-related metadata.
HTTP status code of the response.
errors
object[]
Any errors that prevented successful processing of the request. If there were no errors, the value is null.
Name of the error.
Human-readable description of the problem.
Base URL of the Sponsored Jobs API.
For endpoints that return paginated results, the effective maximum number of entries returned on one page. The value may be smaller than the maximum you requested with the perPage parameter. If the endpoint returns a single result or doesn't paginate, the value is null.
links
object[]
Resources related to the requested resource.
The relationship between the requested resource and the related resource. These values are commonly used:
However, the value may also be an arbitrary string describing the relationship, such as Campaign Info.
Endpoint URL of the related resource. Can contain query string parameters. To get the complete URL, append the href to rootLocation.
{ "meta": { "status": 200, "errors": [ { "type": "RESOURCE_NOT_FOUND", "description": "Couldn't locate the requested resource" } ], "rootLocation": "https://apis.indeed.com/ads", "perPage": 25, "links": [ { "rel": "next", "href": "/v1/campaigns/3141592653589793" } ] }, "data": null}{ "meta": { "status": 401, "errors": [ { "type": "INVALID_TOKEN", "description": "Invalid OAuth access token." } ], "rootLocation": "https://apis.indeed.com/ads", "perPage": null, "links": null }, "data": null}The access token was valid but can't be used with this API. Inspect the error returned in the meta.errors for details.
| Error type | Meaning and common causes |
|---|---|
INSUFFICIENT_SCOPE | The access token does not have the OAuth v2 token scope required for this API endpoint. For common causes, see FAQ and troubleshooting. |
NOT_EMPLOYER_ACCESS_TOKEN | This endpoint requires an access token that represents an employer. That is, you must specify the employer parameter when requesting the access token. You need to do this for the majority of the Sponsored Jobs API endpoints. |
LEGACY_ACCESS_TOKEN_NOT_ALLOWED | Sponsored Jobs API no longer supports access tokens that you get through legacy OAuth endpoints. For updated endpoints, see Integrate with Indeed and call APIs |
- application/json
- Schema
- Example (from schema)
- Example
Schema
Array [
]
Array [
up: The related resource is a collection that contains the requested resource, or an entity that the requested resource is attached to.next: The next page of entries in a paginated result.prev: The previous page of entries in a paginated result.]
meta
object
Response-related metadata.
HTTP status code of the response.
errors
object[]
Any errors that prevented successful processing of the request. If there were no errors, the value is null.
Name of the error.
Human-readable description of the problem.
Base URL of the Sponsored Jobs API.
For endpoints that return paginated results, the effective maximum number of entries returned on one page. The value may be smaller than the maximum you requested with the perPage parameter. If the endpoint returns a single result or doesn't paginate, the value is null.
links
object[]
Resources related to the requested resource.
The relationship between the requested resource and the related resource. These values are commonly used:
However, the value may also be an arbitrary string describing the relationship, such as Campaign Info.
Endpoint URL of the related resource. Can contain query string parameters. To get the complete URL, append the href to rootLocation.
{ "meta": { "status": 200, "errors": [ { "type": "RESOURCE_NOT_FOUND", "description": "Couldn't locate the requested resource" } ], "rootLocation": "https://apis.indeed.com/ads", "perPage": 25, "links": [ { "rel": "next", "href": "/v1/campaigns/3141592653589793" } ] }, "data": null}{ "meta": { "status": 403, "errors": [ { "type": "INSUFFICIENT_SCOPE", "description": "Access token does not have permission to access this API." } ], "rootLocation": "https://apis.indeed.com/ads", "perPage": null, "links": null }, "data": null}Requested campaign does not exist, or belongs to a different employer. Be sure to use an access token that represents the employer. See Get access token that represents employer that owns the requested campaign.
- application/json
- Schema
- Example (from schema)
- Example
Schema
Array [
]
Array [
up: The related resource is a collection that contains the requested resource, or an entity that the requested resource is attached to.next: The next page of entries in a paginated result.prev: The previous page of entries in a paginated result.]
meta
object
Response-related metadata.
HTTP status code of the response.
errors
object[]
Any errors that prevented successful processing of the request. If there were no errors, the value is null.
Name of the error.
Human-readable description of the problem.
Base URL of the Sponsored Jobs API.
For endpoints that return paginated results, the effective maximum number of entries returned on one page. The value may be smaller than the maximum you requested with the perPage parameter. If the endpoint returns a single result or doesn't paginate, the value is null.
links
object[]
Resources related to the requested resource.
The relationship between the requested resource and the related resource. These values are commonly used:
However, the value may also be an arbitrary string describing the relationship, such as Campaign Info.
Endpoint URL of the related resource. Can contain query string parameters. To get the complete URL, append the href to rootLocation.
{ "meta": { "status": 200, "errors": [ { "type": "RESOURCE_NOT_FOUND", "description": "Couldn't locate the requested resource" } ], "rootLocation": "https://apis.indeed.com/ads", "perPage": 25, "links": [ { "rel": "next", "href": "/v1/campaigns/3141592653589793" } ] }, "data": null}{ "meta": { "status": 404, "errors": [ { "type": "RESOURCE_NOT_FOUND", "description": "Couldn't locate the requested resource." } ], "rootLocation": "https://apis.indeed.com/ads", "perPage": null, "links": { "rel": "up", "href": "/v1/campaigns" } }, "data": null}Unexpected error. The problem is sometimes temporary. The same request can succeed after retrying.
If retrying the request does not help, a problem with parsing the request might have occurred. Make sure that all the required parameters are present and that all parameters are correctly formatted.
- application/json
- Schema
- Example (from schema)
- Example
Schema
Array [
]
Array [
up: The related resource is a collection that contains the requested resource, or an entity that the requested resource is attached to.next: The next page of entries in a paginated result.prev: The previous page of entries in a paginated result.]
meta
object
Response-related metadata.
HTTP status code of the response.
errors
object[]
Any errors that prevented successful processing of the request. If there were no errors, the value is null.
Name of the error.
Human-readable description of the problem.
Base URL of the Sponsored Jobs API.
For endpoints that return paginated results, the effective maximum number of entries returned on one page. The value may be smaller than the maximum you requested with the perPage parameter. If the endpoint returns a single result or doesn't paginate, the value is null.
links
object[]
Resources related to the requested resource.
The relationship between the requested resource and the related resource. These values are commonly used:
However, the value may also be an arbitrary string describing the relationship, such as Campaign Info.
Endpoint URL of the related resource. Can contain query string parameters. To get the complete URL, append the href to rootLocation.
{ "meta": { "status": 200, "errors": [ { "type": "RESOURCE_NOT_FOUND", "description": "Couldn't locate the requested resource" } ], "rootLocation": "https://apis.indeed.com/ads", "perPage": 25, "links": [ { "rel": "next", "href": "/v1/campaigns/3141592653589793" } ] }, "data": null}{ "meta": { "status": 500, "errors": [ { "type": "INTERNAL_SERVER_ERROR", "description": "Failed to process the request." } ], "rootLocation": "https://apis.indeed.com/ads", "perPage": null, "links": null }, "data": null}