Request and response formats
Request format
PrimaryBid Connect API accepts data requests in JSON format. Therefore, to call an endpoint, you have to send an HTTP request to the server that starts with “accept: application/json” in the header. This tells the server to return responses using JSON formatting guidelines.
Include your secret API key and subscription key in the header, otherwise, the request will not go through.
curl --request GET \
--url https://stagingapi.primarybid.com/offer \
--header 'accept: application/json' \
--header 'primary-bid-api-secret: yourSecretKey' \
--header 'primary-bid-api-subscription: yourSubscriptionKey'
Response format
The response includes a "content-type: application/json" header, indicating that the server returns data in JSON format. There are two types of responses: successful response and error response. Both have a similar structure:
- Status code - a number that indicates if there’s an error. For instance, the status code is 200 for successful calls, otherwise, it’s 4xx.
- Response body - a list of fields and values with structured return data.
[
{
"id": "63f399b2c8f476e28aa2a608",
"offerType": "ipo",
"offerSubType": "spac_ipo",
"details": {
"status": "closed_for_subscription",
"countryCode": "GB",
"type": "ipo",
"subType": "primary",
"estTargetRaise": null,
"pressReleaseLink": "",
"membershipRequired": "no",
"offeringDocuments": [
{
"title": "Prospectus",
"documentUrl": "https://primarybid.com/11d0.pdf"
},
{
"title": "Retail Primer",
"documentUrl": "https://primarybid.com/11c0d0.pdf"
},
{
"title": "Company Announcement",
"documentUrl": "https://primarybid.com/1-b7d0.pdf"
},
{
"title": "Investor Presentation",
"documentUrl": "https://primarybid.com/107cc.pdf"
},
{
"title": "Factsheet",
"documentUrl": "https://primarybid.com/c651.pdf"
}
]
},
"textProperties": {
"legalDisclaimer": "The information provided on this website is for general informational purposes\nonly and is not intended to be legal advice.",
"title": "Offer 44186",
"specialInstruction": "Determine your investment goals and create a budget: Before you start investing,\nit's important to know what you want to achieve and how much you can afford to\ninvest on a regular basis.",
"companyAnnouncements": "We are pleased to announce that our company will be going public through an\ninitial public offering (IPO).",
"priceless": "",
"useOfProceeds": "When a company goes public through an initial public offering (IPO), the\nproceeds are the funds that are raised through the sale of the company's stock.\nThese proceeds can be used by the company for a variety of purposes, such as\npaying off debt, investing in new projects and products, or expanding the\nbusiness. The use of proceeds is typically outlined in the company's IPO\nprospectus, which is a document that provides potential investors with\ninformation about the company and its financial performance. By using the\nproceeds from an IPO wisely, a company can continue to grow and thrive in the\ncompetitive marketplace.",
"offerDiscount": "discount note",
"restriction": "Acceptance of Terms: By accessing or using the services offered on this website,\nyou agree to be bound by these Terms of Service and any additional terms and\nconditions that may be posted on the website from time to time."
},
"issuer": {
"id": "63f399b1c8f476e28aa2a607",
"businessDescriptionText": "Our company, [Company Name], is a leading provider of [Product/Service]. We have\nbeen in business for [Number] years and have built a strong reputation for\nproviding high-quality products and exceptional customer service. We are\ncommitted to innovation and constantly strive to improve and expand our product\nline. Our team is composed of highly skilled and experienced professionals who\nare passionate about what they do.",
"companyName": "bugbash Test IPO-44186",
"exchangeMic": "XLON",
"ticker": "TIA",
"sector": "Banks",
"fttRequired": false,
"sellerName": "",
"issuerType": "company"
},
"dates": {
"offerStartDateTime": "2023-02-20T16:03:00.164Z",
"offerEndDateTime": "2023-02-21T16:02:55.120Z",
"offerEarlyClose": "2023-02-20T16:04:40.290Z",
"lastModifiedOn": "2023-07-11T10:21:58.544Z",
"admissionDateTime": "2023-02-21T16:02:55.120Z"
},
"pricingAndOrderLimits": {
"acceptedCurrency": "GBP",
"priceType": "fixed",
"offerPrice": 1.9,
"currency": "GBP",
"hardMaxLimit": 99999999,
"hardMinLimit": 1000,
"discount": 1,
"discountTo": null,
"discountFrom": null
}
},
{
"id": "63ee4dda207fc1bf854e6271",
"offerType": "primary_placing",
"offerSubType": "company_placing",
"details": {
"status": "open_for_subscription",
"countryCode": "GB",
"type": "follow_on",
"subType": "primary",
"estTargetRaise": null,
"pressReleaseLink": "",
"membershipRequired": "no",
"offeringDocuments": []
},
"textProperties": {
"legalDisclaimer": "Please read our Risk Warning [/risk-warning] before subscribing.",
"title": "",
"specialInstruction": "Test",
"companyAnnouncements": "Test",
"priceless": "",
"useOfProceeds": "Test",
"offerDiscount": null,
"restriction": "Test"
},
"issuer": {
"id": "63ee4dc1b5fb7468d8314cde",
"businessDescriptionText": "TEST",
"companyName": "LIO'NEL TEST",
"exchangeMic": "XLON",
"ticker": "LION",
"sector": "Automobiles & Parts",
"fttRequired": false,
"sellerName": "",
"issuerType": "company"
},
"dates": {
"offerStartDateTime": "2023-02-16T15:39:00.312Z",
"offerEndDateTime": "2023-02-16T23:00:00.000Z",
"lastModifiedOn": "2023-02-16T15:39:00.312Z",
"admissionDateTime": "1970-01-01T08:00:00.000Z"
},
"pricingAndOrderLimits": {
"acceptedCurrency": "GBP",
"priceType": "fixed",
"offerPrice": 1.01,
"currency": "GBP",
"hardMaxLimit": 999999,
"hardMinLimit": 1,
"discount": 10,
"discountTo": null,
"discountFrom": null
}
},
{
"id": "63ebd584494bdef8c2886a6e",
"offerType": "ipo",
"offerSubType": "company_ipo",
"details": {
"status": "open_for_subscription",
"countryCode": "GB",
"type": "ipo",
"subType": "primary",
"estTargetRaise": null,
"pressReleaseLink": "",
"membershipRequired": "no",
"offeringDocuments": []
},
"textProperties": {
"legalDisclaimer": "legal disclaimer",
"title": "platform-test offer",
"specialInstruction": "instructions",
"companyAnnouncements": "company announcements",
"priceless": "",
"useOfProceeds": "use of proceeds",
"offerDiscount": "discount note",
"restriction": "conditions"
},
"issuer": {
"id": "61f262d77978480008b02770",
"businessDescriptionText": "For testing",
"companyName": "QA-TEAM",
"exchangeMic": "XLON",
"ticker": "QA_TEAM",
"sector": "Technology",
"securityIdentifier": "nbyruwltzndb",
"fttRequired": false,
"sellerName": "",
"issuerType": "company"
},
"dates": {
"offerStartDateTime": "2023-02-14T18:40:10.275Z",
"offerEndDateTime": "2023-02-15T18:40:04.717Z",
"lastModifiedOn": "2023-07-11T10:24:45.078Z",
"admissionDateTime": "1970-01-01T08:00:00.000Z"
},
"pricingAndOrderLimits": {
"acceptedCurrency": "GBP",
"priceType": "fixed",
"offerPrice": 0.01,
"currency": "GBP",
"hardMaxLimit": 99999999,
"hardMinLimit": 1,
"discount": 1,
"discountTo": null,
"discountFrom": null
}
}
]
4xx responses also include a message that describes the error. For instance, a 400 response includes a “Bad Request” message (read more on our Error handling page).