All guides

Ways to connect

Job board feeds

The roles employers post with us, published as XML feeds that job boards and aggregators read. Every apply link brings the candidate back to the platform, so the application is recorded against the place that created the job. Live

The feeds

Public, no key, no parameters. Each feed carries every role that qualifies (see below).

  • Feed
    Indeed
    Address
    https://opportunityplatform.co.uk/api/jobs/feed/indeed
    Format
    Indeed XML (<source><job>)
    Expiry
    The closing date, or a rolling 30 days ahead when there is none.
    Apply link
    /opportunities/<role>/apply?ref=indeed
  • Feed
    Reed
    Address
    https://opportunityplatform.co.uk/api/jobs/feed/reed
    Format
    Reed multiposting XML
    Expiry
    The closing date, or a rolling 30 days ahead when there is none.
    Apply link
    /opportunities/<role>/apply?ref=reed
  • Feed
    LinkedIn
    Address
    https://opportunityplatform.co.uk/api/jobs/feed/linkedin
    Format
    LinkedIn limited listings XML
    Expiry
    The closing date, when the employer gave one.
    Apply link
    /opportunities/<role>/apply?ref=linkedin
  • Feed
    Any aggregator
    Address
    https://opportunityplatform.co.uk/api/feeds/jobs.xml
    Format
    Generic XML, up to 1,000 roles
    Expiry
    The closing date, when the employer gave one.
    Apply link
    /opportunities/<role>

The ref on each apply link tells us which board sent the candidate, so employers and councils can see where applications came from.

What is included

  • Only live roles that an employer posted on the platform, with that employer named as the company.
  • Never roles we imported from another job board or read from an employer's own site with Connect your jobs, even though those now appear on the employer's careers page and widget. Re-advertising them would send candidates round in a circle, and passing on jobs read from someone else's site needs their permission to redistribute them.
  • The Indeed and Reed feeds also drop a role on its closing date, even in the hours before it is closed on the platform at midnight.
  • A role that is filled, withdrawn or closed leaves the feed the next time it is built.

How often

The feeds are built from live data on request and may be cached for up to an hour (the Indeed, Reed and LinkedIn feeds) or 15 minutes (the generic feed). Each board reads the feed on its own schedule, typically once a day, so a new role usually appears on a board within a day. That is also why open-ended roles carry a rolling 30-day expiry on Indeed and Reed: a role still live keeps moving its expiry forward, and one we stop listing drops off the board within that window.

Borough feeds

The generic feed, and the Reed feed's apply links, follow the site they are read from. Read the generic feed from a borough site and it carries only that borough's roles, with links back to that site:

https://<borough>.opportunityplatform.co.uk/api/feeds/jobs.xml

Getting your roles on a board

For employers there is nothing to do: post a role on the platform and it is included. For a board, listing is a one-off registration of the feed address in that board's partner tools, which our team does. If you run a job board or an aggregator and want to take our feed, or want filtered reads instead, get in touch or use the partner API.

Questions

Why is a role on the platform but not in the feed?

It was imported from another site or job board, has no employer record, is not live, or (on Indeed and Reed) has passed its closing date.

Can I get a feed of just one employer or one scheme?

Not as a feed today. Use the borough feed, or read GET /v1/jobs from the partner API with the filters you need.

Is pay always included?

Only when the employer stated it. We never fill in a figure or write "competitive" on an employer's behalf in the Indeed feed.

Job board feeds | Opportunity Platform Developers