Skip to main content

Documentation Home

Find a Tender REST API how-to guide

Introduction

This document outlines the steps to be taken to submit a notice via the Find a Tender REST API method, retrieve a '<submission_id>' and use this '<submission_id>' to retrieve information regarding the notice status. This document will also outline the steps to search for submissions posted.

Scope and purpose

The purpose of this document is to provide the required information to operate the Find a Tender REST API.

  • Setup
  • Submit notice
  • Get submitted notice information
  • Search notices
  • Render notice

Setup

To use the Find a Tender REST API, a user must have:

  1. A valid SIRSI account
  2. A CDP API Key

To acquire these credentials please contact eSenders@crowncommercial.gov.uk.

Submit Notice

See the specifications of the Submit Notice REST API method.

  1. Create a notice XML following the latest Find a Tender reception schema (for changes from the previous version of the schema, please see Find a Tender schema changes). See also the sample reception schema XML.
  2. Once this notice has been created, please Base64 encode the created notice reception xml. See an example of the Base64 encoded sample XML.
  3. Construct a POST request with:
    • API Key Authentication
    • Accept header - in the form of 'Accept: application/json'.
    • Content-Type header - in the form of 'Content-Type: application/x-www-form-urlencoded'
    • 'notice' parameter with the value equal to the Base64 encoded string created in Step 2.
  4. Send this request to https://www.find-tender.service.gov.uk/api/latest/notice/submission/submit.
  5. The response parameters can be found within the specification: https://www.find-tender.service.gov.uk/api/{version}/notice/submission/submit.

cURL

Sample:
   curl -X POST \
   https://www.find-tender.service.gov.uk/api/latest/notice/submission/submit \
   -H "CDP-Api-Key: YbHJy1zPfMgDfa9npEDBtZ05ji0w2OM7M" \
   -H "Accept: application/json" \
   -H "Content-Type: application/x-www-form-urlencoded" \ 
   -d notice=PD94bWwgdmVycT049IlIyLjAuOS5TMDIiDQp4bWxucz0idHJ1ay9SMi4wLjkuUzA2BDQogICAgICAgICAgICAgICA8Q09VTlRSWSTUVOVEFSWV9PD94b WwgdmVycT049IlIyLjAuOS5TMDIiDQp4bWxucz0idHJ1ay9SMi4wLjkuUzA2BDQogDSADECRTREA54R35CDSFSDICAgICAgICAgICAgICA8Q09VTlJFUE12KSOEM0LDSA PDEWMOVr...jkuUzA2BDQogICAgICAgICAgICAgI
						

Get submitted notice information

See the specifications of the Get submitted notice information REST API method.

  1. Retrieve the '<submission_id>' from the response to Submit notice - see details of the response for the Submit notice method.
  2. Construct a GET request with:
    • API Key Authentication
    • Accept header - in the form of 'Accept: application/json'.
    • Add the '<submission_id>' from the step 1 to the request.
  3. Send the request to https://www.find-tender.service.gov.uk/api/{version}/notice/submission/info/{submission_id}

cURL

Sample:
   curl -X GET \
   -H "CDP-Api-Key: YbHJy1zPfMgDfa9npEDBtZ05ji0w2OM7M" \
   -H "Accept: application/json" \
   https://www.find-tender.service.gov.uk/api/latest/notice/submission/info/20250521-000001 
						

Search notices

See the specifications of the Search notices REST API method.

  1. Construct a GET request with:
    • API Key Authentication
    • Accept header - in the form of 'Accept: application/json'.
    • Add in a query string including any of the following parameters (all are optional) and associated values:
      • noDocExt - e.g. 2018-01-000001
      • page - e.g. 17
      • pageSize - e.g. 07
      • receivedFrom - e.g. 2018/08/31
      • receivedTo - e.g. 2018/09/10
      • sort - e.g. submission_id,ASC
      • status - e.g. PUBLISHED
  2. Send the request to https://www.find-tender.service.gov.uk/api/{version}/notice/submission/search

cURL

Sample:
  curl -X GET \
  -H "CDP-Api-Key: YbHJy1zPfMgDfa9npEDBtZ05ji0w2OM7M" \ 
  -H "Accept: application/json" \
  https://www.find-tender.service.gov.uk/api/latest/notice/submission/search?receivedFrom=2018/08/28&recivedTo=2018/09/07						

Render notice

See the specifications of the Render notice REST API method.

  1. Create a notice XML following the latest Find a Tender reception schema (for changes from the previous version of the schema, please see Find a Tender schema changes). See also the Sample reception schema XML.
  2. Once this notice has been created, please Base64 encode the created notice reception xml. See an example of the Base64 encoded sample XML.
  3. Construct a POST request with:
    • API Key Authentication
    • Accept header - in the form of 'Accept: application/json'.
    • Content-Type header - in the form of 'Content-Type: application/x-www-form-urlencoded'.
    • 'notice' parameter with the value equal to the Base64 encoded string created in Step 2.
      or 'submission_id'
  4. Send the request to https://www.find-tender.service.gov.uk/api/{version}/notice/submission/search
  5. The response parameters can be found within the specification: https://www.find-tender.service.gov.uk/api/{version}/notice/submission/render.

cURL

Sample:
  	curl -X GET \
	https://www.find-tender.service.gov.uk/api/latest/notice/submission/render \
	-H "CDP-Api-Key: YbHJy1zPfMgDfa9npEDBtZ05ji0w2OM7M" \
	-H "Accept: application/json" \
	-H "Content-Type: application/x-www-form-urlencoded" \
	-d format=PDF \
	-d coverPage=true \
   	-d notice=PD94bWwgdmVycT049IlIyLjAuOS5TMDIiDQp4bWxucz0idHJ1ay9SMi4wLjkuUzA2BDQogICAgICAgICAgICAgICA8Q09VTlRSWSTUVOVEFSWV9PD94b WwgdmVycT049IlIyLjAuOS5TMDIiDQp4bWxucz0idHJ1ay9SMi4wLjkuUzA2BDQogDSADECRTREA54R35CDSFSDICAgICAgICAgICAgICA8Q09VTlJFUE12KSOEM0LDSA PDEWMOVr...jkuUzA2BDQogICAgICAgICAgICAgI