List quotes¶
GET/
Business Automation API · Quotes
List quotes. Only approved quotes are returned at this time.
Parameters¶
| Name | In | Type | Required | Description |
|---|---|---|---|---|
X-Distributor-ID | header | string | Yes | Distributor ID. |
type | query | string | No | Quote type. Must be one of: new, amendment, renewal. |
billingCategoryType | query | string | No | Quote line billing category type. Must be one of: upfront, nonStandard. |
autogenerated | query | boolean | No | Whether to include only autogenerated quotes. |
createdByPartner | query | boolean | No | Filters the response to send only the quotes created by a partner or only the quotes created by a non-partner. |
amendAndExtend | query | boolean | No | Filters the response to send only the Amend and Extend quotes or only the quotes that are not for Amend and Extend. |
includeNFRQuotes | query | boolean | No | Filters the response to include Not For Resale (NFR) quotes or to exclude NFR quotes. |
createdMinutesAgo | query | integer | No | Include quotes created within the past specified number of minutes. Must be ≥ 1. |
approvedMinutesAgo | query | integer | No | Include quotes approved within the past specified number of minutes. Must be ≥ 1. |
approvedFrom | query | string (date-time) | No | Include quotes approved from the specified datetime up to the current datetime. Can be used in conjunction with approvedTo. |
approvedTo | query | string (date-time) | No | Include quotes approved up to the specified datetime. Can be used in conjunction with approvedFrom. |
expiresWithinDays | query | integer | No | Include quotes expiring within the next specified number of days. Must be ≥ 1. |
page | query | integer | No | Page to fetch starting with 1.Must be ≥ 1. |
pageSize | query | integer | No | Page size to use. Must be ≥ 1 and ≤ 500. |
Request samples¶
curl -X GET "https://api.central.sophos.com/business-automation/v1/quotes" -H "Authorization: Bearer <access-token>" -H "X-Distributor-ID: <X-Distributor-ID>"
import requests
response = requests.get(
"https://api.central.sophos.com/business-automation/v1/quotes",
headers={
"Authorization": "Bearer <access-token>",
"X-Distributor-ID": "<X-Distributor-ID>",
},
)
print(response.json())
$headers = @{
"Authorization" = "Bearer <access-token>"
"X-Distributor-ID" = "<X-Distributor-ID>"
}
Invoke-RestMethod -Method GET -Uri "https://api.central.sophos.com/business-automation/v1/quotes" -Headers $headers
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://api.central.sophos.com/business-automation/v1/quotes", nil)
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer <access-token>")
req.Header.Set("X-Distributor-ID", "<X-Distributor-ID>")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}
const response = await fetch("https://api.central.sophos.com/business-automation/v1/quotes", {
method: "GET",
headers: {
"Authorization": "Bearer <access-token>",
"X-Distributor-ID": "<X-Distributor-ID>",
},
});
const data = await response.json();
console.log(data);
Responses¶
200 — List of quotes.¶
Response fields
itemsarray of objectQuote summary.
Show child attributesHide child attributes
proposalNumberstringProposal number.
typestringQuote type.
Must be one of:
Must be one of:
new, amendment, renewal.dealregNumberstringDeal registration number.
teamingRegNumberstringTeaming registration number.
validUntilstring (date)Date when quote expires in
yyyy-mm-dd format.autogeneratedbooleanIndicates whether the quote was autogenerated or manually created.
amendAndExtendbooleanIndicates whether the quote was for Amend and Extend.
pagesobjectPage information.
Show child attributesHide child attributes
currentintegerrequired(Optional) The 1-based page number being returned.
totalinteger(Optional) The total number of pages.
itemsinteger(Optional) The total number of items across all pages.
sizeintegerrequiredThe size of the page being returned.
maxSizeintegerrequiredThe maximum page size that can be requested.
Errors¶
| Status | Meaning |
|---|---|
400 | Bad request. |
500 | Unexpected error. |
All error responses share the same shape — see the error response object.
Response examples¶
200¶
{
"items": [
{
"proposalNumber": "Q-00001",
"type": "new",
"dealregNumber": "DR20240106-000001",
"teamingRegNumber": "TP-987651",
"validUntil": "2024-02-13",
"autogenerated": false,
"amendAndExtend": false
}
],
"pages": {
"current": 1,
"total": 3,
"items": 137,
"size": 50,
"maxSize": 500
}
}
See the guide for a narrative walkthrough of this API.