Get quote¶
GET/
Business Automation API · Quotes
Get quote details by proposal number.
Parameters¶
| Name | In | Type | Required | Description |
|---|---|---|---|---|
proposalNumber | path | string | Yes | Quote proposal number. |
X-Distributor-ID | header | string | Yes | Distributor ID. |
Request samples¶
curl -X GET "https://api.central.sophos.com/business-automation/v1/quotes/<proposalNumber>" -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/<proposalNumber>",
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/<proposalNumber>" -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/<proposalNumber>", 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/<proposalNumber>", {
method: "GET",
headers: {
"Authorization": "Bearer <access-token>",
"X-Distributor-ID": "<X-Distributor-ID>",
},
});
const data = await response.json();
console.log(data);
Responses¶
200 — Details of the requested quote.¶
Response fields
proposalNumberstringProposal number.
opportunityIdstringOpportunity ID.
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.paymentTermsstringPayment terms.
autogeneratedbooleanIndicates whether the quote was autogenerated or manually created.
createdByPartnerbooleanIndicates whether the quote was created by a partner.
amendAndExtendbooleanIndicates whether the quote was for Amend and Extend.
promotionalCodesarray of stringPromotion codes.
contactobjectContact information for distributor, partner, or end-user.
Show child attributesHide child attributes
firstNamestringFirst name.
lastNamestringLast name.
emailstring (email)Email address.
phonestringPhone number.
mobilestringMobile number.
distributorobjectDistributor account company details.
Show child attributesHide child attributes
namestringCompany name.
addressobjectAddress of the distributor, partner, or end-user.
Show child attributesHide child attributes
address1stringLine 1 of the address.
address2stringLine 2 of the address.
citystringCity.
statestringState.
countryCodestringTwo-letter ISO country code.
postalCodestringPostal code.
accountNumberstringAccount number.
Must match the pattern
Must match the pattern
^[0-9]+$. Must be 1–8 characters long.partnerobjectPartner account company details.
Show child attributesHide child attributes
namestringCompany name.
levelstringPartner level.
Must be one of:
Must be one of:
select, authorized, silver, gold, platinum.accountNumberstringAccount number.
Must match the pattern
Must match the pattern
^[0-9]+$. Must be 1–8 characters long.addressobjectAddress of the distributor, partner, or end-user.
Show child attributesHide child attributes
address1stringLine 1 of the address.
address2stringLine 2 of the address.
citystringCity.
statestringState.
countryCodestringTwo-letter ISO country code.
postalCodestringPostal code.
contactobjectContact information for distributor, partner, or end-user.
Show child attributesHide child attributes
firstNamestringFirst name.
lastNamestringLast name.
emailstring (email)Email address.
phonestringPhone number.
mobilestringMobile number.
endUserCustomerobjectEnd-user account company details.
Show child attributesHide child attributes
namestringCompany name.
accountNumberstringEnd-user account number.
addressobjectAddress of the distributor, partner, or end-user.
Show child attributesHide child attributes
address1stringLine 1 of the address.
address2stringLine 2 of the address.
citystringCity.
statestringState.
countryCodestringTwo-letter ISO country code.
postalCodestringPostal code.
contactobjectContact information for distributor, partner, or end-user.
Show child attributesHide child attributes
firstNamestringFirst name.
lastNamestringLast name.
emailstring (email)Email address.
phonestringPhone number.
mobilestringMobile number.
quoteLineItemsarray of objectQuote line item.
Show child attributesHide child attributes
productNamestringProduct name.
productDescriptionstringProduct description.
startDatestring (date)Quote line item start date in ISO format.
endDatestring (date)Quote line item end date in ISO format.
existingLicensesarray of stringList of existing license IDs or serial numbers.
billingCategorystringQuote line billing category.
skustringSophos Stock Keeping Unit.
utmLicenseIdstringUTM license ID.
termintegerSubscription term in months.
quantityintegerProduct quantity.
currencyCodestringCurrency code.
unitMsrpnumberManufacturer's suggested retail price per unit.
msrpnumberManufacturer's suggested retail price multiplied by the quantity.
additionalDiscountPercentagenumberAdditional discount percentage.
allowancenumberAllowance.
specialTotalnumberSpecial total.
intermediateTierMarginnumberIntermediate tier margin.
intermediateTierUnitnumberIntermediate tier unit.
intermediateTierTotalnumberIntermediate tier total.
marginPercentagenumberDistributor discount margin percentage.
unitnumberUnit net price.
totalnumberLine item total.
totalsobjectQuote line item totals.
Show child attributesHide child attributes
currencyCodestringCurrency code.
msrpTotalnumberSum of manufacturer's suggested total retail price for all quote lines.
specialTotalnumberSum of special total for all quote lines.
intermediateTierTotalnumberSum of intermediate tier total for all quote lines.
totalnumberSum of line item total for all quote lines.
Errors¶
| Status | Meaning |
|---|---|
404 | Can't find quote. |
500 | Unexpected error. |
All error responses share the same shape — see the error response object.
Response examples¶
200¶
{
"proposalNumber": "Q-000009",
"opportunityId": "a10Va000006uPrVIAU",
"type": "new",
"dealregNumber": "DR20240106-000001",
"teamingRegNumber": "TP-987651",
"validUntil": "2024-02-13",
"paymentTerms": "Net 30",
"autogenerated": false,
"createdByPartner": false,
"amendAndExtend": false,
"promotionalCodes": [
"GLOBAL_APX"
],
"contact": {
"firstName": "John",
"lastName": "Smith",
"email": "john.smith@example.com",
"phone": "9111678231",
"mobile": "6311628237"
},
"distributor": {
"name": "Example Disti, Inc.",
"address": {
"address1": "1134 Lane, Eastwood",
"address2": "New York 10001",
"city": "New York",
"state": "NY",
"countryCode": "US",
"postalCode": "10001"
},
"accountNumber": "12345678"
},
"partner": {
"name": "Acme Corp",
"level": "gold",
"accountNumber": "12345678",
"address": {
"address1": "1134 Lane, Eastwood",
"address2": "New York 10001",
"city": "New York",
"state": "NY",
"countryCode": "US",
"postalCode": "10001"
},
"contact": {
"firstName": "John",
"lastName": "Smith",
"email": "john.smith@example.com",
"phone": "9111678231",
"mobile": "6311628237"
}
},
"endUserCustomer": {
"name": "Acme Corp",
"accountNumber": "42839221",
"address": {
"address1": "1134 Lane, Eastwood",
"address2": "New York 10001",
"city": "New York",
"state": "NY",
"countryCode": "US",
"postalCode": "10001"
},
"contact": {
"firstName": "John",
"lastName": "Smith",
"email": "john.smith@example.com",
"phone": "9111678231",
"mobile": "6311628237"
}
},
"quoteLineItems": [
{
"productName": "XGS136",
"productDescription": "XGS 136 Email Protection",
"startDate": "2024-02-03",
"endDate": "2024-02-03",
"existingLicenses": [
"C023716784"
],
"billingCategory": "Upfront",
"sku": "CEAZ1CSMG",
"utmLicenseId": "D12345678",
"term": 36,
"quantity": 10,
"currencyCode": "USD",
"unitMsrp": 180.24,
"msrp": 1802.4,
"additionalDiscountPercentage": 0,
"allowance": 0,
"specialTotal": 1802.4,
"intermediateTierMargin": 0,
"intermediateTierUnit": 0,
"intermediateTierTotal": 1802.4,
"marginPercentage": 0,
"unit": 180.24,
"total": 1802.4
}
],
"totals": {
"currencyCode": "USD",
"msrpTotal": 1802.4,
"specialTotal": 1802.4,
"intermediateTierTotal": 1802.4,
"total": 1802.4
}
}
See the guide for a narrative walkthrough of this API.