Skip to content

List quotes

GET/quotes

Business Automation API · Quotes

List quotes. Only approved quotes are returned at this time.

Required permissionsfdc-quotes:read

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 object
Quote summary.
Show child attributesHide child attributes
proposalNumberstring
Proposal number.
typestring
Quote type.
Must be one of: new, amendment, renewal.
dealregNumberstring
Deal registration number.
teamingRegNumberstring
Teaming registration number.
validUntilstring (date)
Date when quote expires in yyyy-mm-dd format.
autogeneratedboolean
Indicates whether the quote was autogenerated or manually created.
amendAndExtendboolean
Indicates whether the quote was for Amend and Extend.
pagesobject
Page 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.
sizeintegerrequired
The size of the page being returned.
maxSizeintegerrequired
The 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.