Quote Management API
The Quote Management API provides endpoints to create, update, and retrieve customer quote data.
The Quote Management Open API is a ServiceNow implementation of the TM Forum Quote Management API REST specification. This implementation is based on https://www.tmforum.org/resources/standard/tmf648-quote-management-api-rest-specification-r19-0-0/.
This API can be extended to make customizations around required parameters, request body validation, additional REST operations and field mappings.
The Quote Management API requires the Quote Management (com.sn_quote_mgmt) plugin and the quote_integrator role. This API belongs to the sn_tmf_api namespace. See Quote Management.
- Quote [sn_quote_mgmt_core_quote]
- Sales Agreement [sn_sales_agmt_core_sales_agreement]
- Quote Line Item [sn_quote_mgmt_core_quote_line_item]
- Quote Line Characteristic [sn_quote_mgmt_core_quote_line_characteristic]
- Quote Pricing Adjustment [sn_quote_mgmt_core_pricing_adjustment]
Quote Management API - DELETE /sn_tmf_api/quote_management_api/quote/{id}
Deletes the specified quote.
URL format
Versioned URL: /api/sn_tmf_api/{api_version}/quote_management_api/quote/{id}
Default URL: /api/sn_tmf_api/quote_management_api/quote/{id}
Supported request parameters
| Name | Description |
|---|---|
| id | Sys_id of the quote to delete. Data type: String Table: Quote [sn_quote_mgmt_core_quote] |
| Name | Description |
|---|---|
| None |
| Name | Description |
|---|---|
| None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
| Header | Description |
|---|---|
| Accept | Data format of the response body. Only supports application/json. |
| Header | Description |
|---|---|
| None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
| Status code | Description |
|---|---|
| 204 | Successful. Request completed successfully and the specified quote was deleted. No content. |
| 400 | Bad Request. A bad request type or malformed request was detected. |
Response body parameters (JSON)
| Header | Description |
|---|---|
| None |
cURL request
This example shows how to delete a quote.
curl "http://instance.servicenow.com/api/sn_tmf_api/quote_management_api/quote/cb15734fd5692a10f8774663edf0ac19" \
--request DELETE\
--header "Accept:application/json" \
--user 'username':'password'
Quote Management API – GET /sn_tmf_api/quote_management_api/quote
Retrieves all quotes.
- Quote [sn_quote_mgmt_core_quote]
- Sales Agreement [sn_sales_agmt_core_sales_agreement]
- Quote Line Item [sn_quote_mgmt_core_quote_line_item]
- Quote Line Characteristic [sn_quote_mgmt_core_quote_line_characteristic]
- Quote Pricing Adjustment [sn_quote_mgmt_core_pricing_adjustment]
URL format
Versioned URL: /api/sn_tmf_api/{api_version}/quote_management_api/quote
Default URL: /api/sn_tmf_api/quote_management_api/quote
Supported request parameters
| Name | Description |
|---|---|
| None |
| Name | Description |
|---|---|
| fields | List of fields to return in the response. Invalid fields are ignored. Valid fields:
Data type: String Default: All fields returned. |
| id | Filter results by quote sys_id. Table: Quote [sn_quote_mgmt_core_quote] Data type: String Default: Empty |
| limit | Maximum number of records to return. For requests that exceed this number of records, use the offset parameter to paginate record retrieval. Data type: Number Default: 20 Maximum: 100 |
| offset | Starting index at which to begin retrieving records. Use this value to paginate record retrieval. This functionality enables the retrieval of all records, regardless of the number of records, in small manageable
chunks. Data type: Number Default: 0 |
| Name | Description |
|---|---|
| None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
| Header | Description |
|---|---|
| None |
| Header | Description |
|---|---|
| Content-Range | Range of content returned in a paginated call. For example, if |
| Content-Type | Data format of the response body. Only supports application/json. |
| Link | Contains the following links to navigate through query results.
|
| X-Total-Count | For paginated queries, this header specifies the total number of records available on the server. |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
| Status code | Description |
|---|---|
| 200 | Request successfully processed. Full resource returned in response (no pagination). |
| 206 | Partial resource returned in response (with pagination). |
| 400 | Bad request. Possible reasons:
|
| 404 | Record not found. No records matching the query parameters are found in the table. |
Response body parameters (JSON)
| Name | Description |
|---|---|
| contactMedium | List of contact mediums. Contact information related to the quote requester. |
| contactMedium.city | City in which the quote requester resides. Data type: String |
| contactMedium.country | Country in which the quote requester resides. Data type: String |
| contactMedium.locationId | Sys_id of the location listed in the Location [cmn_location] table or custom address. Data type: String |
| contactMedium.mediumType | Type of contact medium, such as email address, telephone number, or postal address. Data type: String |
| contactMedium.postCode | Postal code of the quote requester. Data type: String |
| contactMedium.stateOrProvince | State or province in which the quote requester resides. Data type: String |
| contactMedium.street | Street address of the quote requester. Data type: String |
| contactMedium.@type | Type of medium per the TMF Open API standard. For example, GeographicalAddressContactMedium. Data type: String |
| description | Description of the quote. Data type: String |
| expectedQuoteCompletionDate | The expected date from quote supplier to be able to send back a response for this quote. Data type: String |
| externalId | Unique consumer-provided ID for the quote. Data type: String |
| href | Relative link to access the quote. Data type: String Default: Empty string |
| id | Sys_id of the requested quote. Table: Quote [sn_quote_mgmt_core_quote] Data type: String |
| note | List of notes associated with the quote. Data type: Array |
| note.author | User name of the person that authored the associated note. Data type: String |
| note.date | Date that the note was created. Data type: String |
| note.text | Contents of the note. Data type: String |
| note.@type | This value is always Note. Data type: String |
| quoteDate | Date and time at which the quote was created. Data type: String |
| quoteItem | A list of quote items. Each quote item describes an action for a product to be quoted.Data type: Array of Objects |
| quoteItem.action | Action to be performed on this quote item (add, modify, remove, etc.). Data type: String |
| quoteItem.id | Sys_id of the quote item. Table: Quote Line Item [sn_quote_mgmt_core_quote_line_item] Data type: String |
| quoteItem.product | List of products included in the quote.Data type: Object |
| quoteItem.product. characteristic | List of product characteristics. Data type: Array of Objects See Create product characteristics and characteristic options. |
| quoteItem.product. characteristic.id | Sys_id of the product characteristic. Table: Quote Line Characteristic [sn_quote_mgmt_core_quote_line_characteristic] Data type: String |
| quoteItem.product. characteristic.name | Name of the product characteristic. Data type: String |
| quoteItem.product. characteristic.@type | This value is always StringCharacteristic. Data type: String |
| quoteItem.product. characteristic.value | Value of the characteristic. Data type: String |
| quoteItem.product. specification | Detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role. Data type: String |
| quoteItem.product.@type | This value is always Product. Data type: String |
| quoteItem.productOffering | A product offering reference (ProductOfferingRef). A product offering represents entities that are orderable from the provider of the catalog.Data type: Object |
| quoteItem. productOffering.href | Reference of the related entity. Data type: String |
| quoteItem. productOffering.id | Sys_id of product offering. Table: Product Offering [sn_prd_pm_product_offering] Data type: String |
| quoteItem. productOffering.name | Name of the related entity. Data type: String |
| quoteItem. productOffering.@type | This value is always ProductOfferingRef. Data type: String |
| quoteItem.quantity | Quantity asked for this quote item. Data type: Number |
| quoteItem.state | A quote state type (QuoteStateType). State of the quote. Data type: String |
| quoteItem.@type | This value is always QuoteItem. Data type: String |
| quoteNumber | Quote line item record number assigned to the quote. Table: Quote Line Item [sn_quote_mgmt_core_quote_line_item] Data type: String |
| relatedParty | List of contacts for the order. Data type: Array of Objects |
| relatedParty.id | Sys_id of the quote table to get the account, contact, or customer. Table: Quote [sn_quote_mgmt_core_quote] Data type: String |
| relatedParty.name | Name of the account, customer, or consumer.
Data type: String |
| relatedParty.@referredType | Type of customer.
Possible values:
Data type: String |
| relatedParty.role | The role of the party in the context of the quote (e.g., Account, Contact, or Customer). Data type: String |
| relatedParty.@type | This value is always ProductOfferingRef. Data type: String |
| requestedQuoteCompletionDate | A date time (DateTime). This value represents the date specified by the quote requester by which to receive a complete response for this quote. Data type: String |
| state | State of the quote item. Data type: String |
| @type | Type of resource. This value is always Quote. This information isn’t stored. Data type: String |
cURL request
This example retrieves all quotes.
curl "https://instance.service-now.com/api/sn_tmf_api/quote_management_api/quote" \
--request GET \
--header "Accept:application/json" \
--user 'userName':'password'
Response body.
{
"id": "47e562bad565a610f8774663edf0ac10",
"quoteNumber": "QT0001001",
"href": "api/sn_tmf_api/quote_management_api/quote/47e562bad565a610f8774663edf0ac10",
"@type": "Quote",
"description": "Testing Quote",
"expectedQuoteCompletionDate": "2025-05-23 11:12:08",
"externalId": "Test_1234",
"quoteDate": "2025-05-20 11:11:13",
"requestedQuoteCompletionDate": "2025-05-23 11:12:08",
"version": "3",
"agreement": [],
"contactMedium": [
{
"@type": "GeographicalAddressContactMedium",
"mediumType": "ShippingAddressRef",
"locationId": "6774fee611383110f877366201dea64f",
"city": "Santa Clara",
"country": "USA",
"postCode": "94560",
"stateOrProvince": "CA",
"street": "222 Star St"
}
],
"note": [],
"quoteItem": [
{
"id": "8be562bad565a610f8774663edf0ac16",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product",
"productCharacteristic": [
{
"id": "0fe562bad565a610f8774663edf0ac17",
"name": "Voice Pack",
"value": "1500 Minutes/Month"
},
{
"id": "4be562bad565a610f8774663edf0ac17",
"name": "SMS Pack",
"value": "700 /Month"
},
{
"id": "83e562bad565a610f8774663edf0ac18",
"name": "Data Pack",
"value": "20 GB/Month"
},
{
"id": "87e562bad565a610f8774663edf0ac17",
"name": "Mobile Number",
"value": ""
},
{
"id": "cfe562bad565a610f8774663edf0ac17",
"name": "Shipping Address",
"value": ""
}
],
"productSpecification": {
"id": "3ee1fdb1c3331010d216b5183c40dd81",
"href": "api/sn_tmf_api/catalogmanagement/productSpecification/3ee1fdb1c3331010d216b5183c40dd81",
"name": "Mobile Plan",
"@type": "ProductSpecificationRef"
}
},
"productOffering": {
"id": "2cb5588fc30020105252716b7d40dddd",
"href": "api/sn_tmf_api/catalogmanagement/productOffering/2cb5588fc30020105252716b7d40dddd",
"name": "All in one mobile plan starting from $49/month",
"@type": "ProductOfferingRef"
},
"quoteItemPrice": [
{
"description": "Standard Price List",
"name": "Standard Price List",
"priceType": "Recurring",
"recurringChargePeriod": "",
"unitOfMeasure": "",
"unitMarginPercentage": "",
"price": {
"totalOneTimePrice": {
"unit": "USD",
"value": 0
},
"monthlyRecurringPrice": {
"unit": "USD",
"value": 0
},
"annualRecurringPrice": {
"unit": "USD",
"value": 0
},
"cumulativeRecurringPrice": {
"unit": "USD",
"value": 0
},
"cumulativeAnnualRecurringPrice": {
"unit": "USD",
"value": 0
},
"cumulativeNetPrice": {
"unit": "USD",
"value": 0
},
"unitMarginAmount": {
"unit": "USD",
"value": 0
},
"unitMarginBasePrice": {
"unit": "USD",
"value": 0
},
"listPrice": {
"unit": "USD",
"value": 0
},
"unitCost": {
"unit": "USD",
"value": 0
},
"unitPrice": {
"unit": "USD",
"value": 0
},
"dutyFreeAmount": {
"unit": "USD",
"value": 0
},
"taxIncludedAmount": {
"unit": "USD",
"value": 0
}
},
"priceAlteration": []
}
]
}
],
"relatedParty": [
{
"role": "Customer",
"id": "9e2fd2ee11b43110f877366201dea674",
"name": "Startech svcs",
"@type": "RelatedPartyRef",
"@referredType": "Organization"
},
{
"role": "CustomerContact",
"id": "dca96eaa11f43110f877366201dea6c1",
"name": "Alex Star",
"@type": "RelatedPartyRef",
"@referredType": "Individual"
}
],
"state": "Draft"
}
Quote Management API – GET /sn_tmf_api/quote_management_api/quote/{id}
Retrieves a specified quote.
- Quote [sn_quote_mgmt_core_quote]
- Sales Agreement [sn_sales_agmt_core_sales_agreement]
- Quote Line Item [sn_quote_mgmt_core_quote_line_item]
- Quote Line Characteristic [sn_quote_mgmt_core_quote_line_characteristic]
- Quote Pricing Adjustment [sn_quote_mgmt_core_pricing_adjustment]
URL format
Versioned URL: /api/sn_tmf_api/{api_version}/quote_management_api/quote/{id}
Default URL: /api/sn_tmf_api/quote_management_api/quote/{id}
Supported request parameters
| Name | Description |
|---|---|
| id | Sys_id of the quote to retrieve. Data type: String Table: Quote [sn_quote_mgmt_core_quote] |
| Name | Description |
|---|---|
| None |
| Name | Description |
|---|---|
| None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
| Header | Description |
|---|---|
| None |
| Header | Description |
|---|---|
| Content-Type | Data format of the response body. Only supports application/json. |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
| Status code | Description |
|---|---|
| 200 | Request successfully processed. Full resource returned in response (no pagination). |
| 206 | Partial resource returned in response (with pagination). |
| 400 | Bad request. Possible reasons:
|
| 404 | Record not found. No records matching the query parameters are found in the table. |
Response body parameters (JSON)
| Name | Description |
|---|---|
| contactMedium | List of contact mediums. Contact information related to the quote requester. |
| contactMedium.city | City in which the quote requester resides. Data type: String |
| contactMedium.country | Country in which the quote requester resides. Data type: String |
| contactMedium.locationId | Sys_id of the location listed in the Location [cmn_location] table or custom address. Data type: String |
| contactMedium.mediumType | Type of contact medium, such as email address, telephone number, or postal address. Data type: String |
| contactMedium.postCode | Postal code of the quote requester. Data type: String |
| contactMedium.stateOrProvince | State or province in which the quote requester resides. Data type: String |
| contactMedium.street | Street address of the quote requester. Data type: String |
| contactMedium.@type | Type of medium per the TMF Open API standard. For example, GeographicalAddressContactMedium. Data type: String |
| description | Description of the quote. Data type: String |
| expectedQuoteCompletionDate | The expected date from quote supplier to be able to send back a response for this quote. Data type: String |
| externalId | Unique consumer-provided ID for the quote. Data type: String |
| href | Relative link to access the quote. Data type: String Default: Empty string |
| id | Sys_id of the requested quote. Table: Quote [sn_quote_mgmt_core_quote] Data type: String |
| note | List of notes associated with the quote. Data type: Array |
| note.author | User name of the person that authored the associated note. Data type: String |
| note.date | Date that the note was created. Data type: String |
| note.text | Contents of the note. Data type: String |
| note.@type | This value is always Note. Data type: String |
| quoteDate | Date and time at which the quote was created. Data type: String |
| quoteItem | A list of quote items. Each quote item describes an action for a product to be quoted.Data type: Array of Objects |
| quoteItem.action | Action to be performed on this quote item (add, modify, remove, etc.). Data type: String |
| quoteItem.id | Sys_id of the quote item. Table: Quote Line Item [sn_quote_mgmt_core_quote_line_item] Data type: String |
| quoteItem.product | List of products included in the quote.Data type: Object |
| quoteItem.product. characteristic | List of product characteristics. Data type: Array of Objects See Create product characteristics and characteristic options. |
| quoteItem.product. characteristic.id | Sys_id of the product characteristic. Table: Quote Line Characteristic [sn_quote_mgmt_core_quote_line_characteristic] Data type: String |
| quoteItem.product. characteristic.name | Name of the product characteristic. Data type: String |
| quoteItem.product. characteristic.@type | This value is always StringCharacteristic. Data type: String |
| quoteItem.product. characteristic.value | Value of the characteristic. Data type: String |
| quoteItem.product. specification | Detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role. Data type: String |
| quoteItem.product.@type | This value is always Product. Data type: String |
| quoteItem.productOffering | A product offering reference (ProductOfferingRef). A product offering represents entities that are orderable from the provider of the catalog.Data type: Object |
| quoteItem. productOffering.href | Reference of the related entity. Data type: String |
| quoteItem. productOffering.id | Sys_id of product offering. Table: Product Offering [sn_prd_pm_product_offering] Data type: String |
| quoteItem. productOffering.name | Name of the related entity. Data type: String |
| quoteItem. productOffering.@type | This value is always ProductOfferingRef. Data type: String |
| quoteItem.quantity | Quantity asked for this quote item. Data type: Number |
| quoteItem.state | A quote state type (QuoteStateType). State of the quote. Data type: String |
| quoteItem.@type | This value is always QuoteItem. Data type: String |
| quoteNumber | Quote line item record number assigned to the quote. Table: Quote Line Item [sn_quote_mgmt_core_quote_line_item] Data type: String |
| relatedParty | List of contacts for the order. Data type: Array of Objects |
| relatedParty.id | Sys_id of the quote table to get the account, contact, or customer. Table: Quote [sn_quote_mgmt_core_quote] Data type: String |
| relatedParty.name | Name of the account, customer, or consumer.
Data type: String |
| relatedParty.@referredType | Type of customer.
Possible values:
Data type: String |
| relatedParty.role | The role of the party in the context of the quote (e.g., Account, Contact, or Customer). Data type: String |
| relatedParty.@type | This value is always ProductOfferingRef. Data type: String |
| requestedQuoteCompletionDate | A date time (DateTime). This value represents the date specified by the quote requester by which to receive a complete response for this quote. Data type: String |
| state | State of the quote item. Data type: String |
| @type | Type of resource. This value is always Quote. This information isn’t stored. Data type: String |
cURL request
The following example retrieves a specified quote.
curl "https://instance.service-now.com/api/sn_tmf_api/quote_management_api/quote/04ba9004f11f3110f8777d7194f166f6" \
--request GET \
--header "Accept:application/json" \
--user 'userName':'password'
Response body.
{
"id": "47e562bad565a610f8774663edf0ac10",
"quoteNumber": "QT0001001",
"href": "api/sn_tmf_api/quote_management_api/quote/47e562bad565a610f8774663edf0ac10",
"@type": "Quote",
"description": "Testing Quote",
"expectedQuoteCompletionDate": "2025-05-23 11:12:08",
"externalId": "Test_1234",
"quoteDate": "2025-05-20 11:11:13",
"requestedQuoteCompletionDate": "2025-05-23 11:12:08",
"version": "3",
"agreement": [],
"contactMedium": [
{
"@type": "GeographicalAddressContactMedium",
"mediumType": "ShippingAddressRef",
"locationId": "6774fee611383110f877366201dea64f",
"city": "Santa Clara",
"country": "USA",
"postCode": "94560",
"stateOrProvince": "CA",
"street": "222 Star St"
}
],
"note": [],
"quoteItem": [
{
"id": "8be562bad565a610f8774663edf0ac16",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product",
"productCharacteristic": [
{
"id": "0fe562bad565a610f8774663edf0ac17",
"name": "Voice Pack",
"value": "1500 Minutes/Month"
},
{
"id": "4be562bad565a610f8774663edf0ac17",
"name": "SMS Pack",
"value": "700 /Month"
},
{
"id": "83e562bad565a610f8774663edf0ac18",
"name": "Data Pack",
"value": "20 GB/Month"
},
{
"id": "87e562bad565a610f8774663edf0ac17",
"name": "Mobile Number",
"value": ""
},
{
"id": "cfe562bad565a610f8774663edf0ac17",
"name": "Shipping Address",
"value": ""
}
],
"productSpecification": {
"id": "3ee1fdb1c3331010d216b5183c40dd81",
"href": "api/sn_tmf_api/catalogmanagement/productSpecification/3ee1fdb1c3331010d216b5183c40dd81",
"name": "Mobile Plan",
"@type": "ProductSpecificationRef"
}
},
"productOffering": {
"id": "2cb5588fc30020105252716b7d40dddd",
"href": "api/sn_tmf_api/catalogmanagement/productOffering/2cb5588fc30020105252716b7d40dddd",
"name": "All in one mobile plan starting from $49/month",
"@type": "ProductOfferingRef"
},
"quoteItemPrice": [
{
"description": "Standard Price List",
"name": "Standard Price List",
"priceType": "Recurring",
"recurringChargePeriod": "",
"unitOfMeasure": "",
"unitMarginPercentage": "",
"price": {
"totalOneTimePrice": {
"unit": "USD",
"value": 0
},
"monthlyRecurringPrice": {
"unit": "USD",
"value": 0
},
"annualRecurringPrice": {
"unit": "USD",
"value": 0
},
"cumulativeRecurringPrice": {
"unit": "USD",
"value": 0
},
"cumulativeAnnualRecurringPrice": {
"unit": "USD",
"value": 0
},
"cumulativeNetPrice": {
"unit": "USD",
"value": 0
},
"unitMarginAmount": {
"unit": "USD",
"value": 0
},
"unitMarginBasePrice": {
"unit": "USD",
"value": 0
},
"listPrice": {
"unit": "USD",
"value": 0
},
"unitCost": {
"unit": "USD",
"value": 0
},
"unitPrice": {
"unit": "USD",
"value": 0
},
"dutyFreeAmount": {
"unit": "USD",
"value": 0
},
"taxIncludedAmount": {
"unit": "USD",
"value": 0
}
},
"priceAlteration": []
}
]
}
],
"relatedParty": [
{
"role": "Customer",
"id": "9e2fd2ee11b43110f877366201dea674",
"name": "Startech svcs",
"@type": "RelatedPartyRef",
"@referredType": "Organization"
},
{
"role": "CustomerContact",
"id": "dca96eaa11f43110f877366201dea6c1",
"name": "Alex Star",
"@type": "RelatedPartyRef",
"@referredType": "Individual"
}
],
"state": "Draft"
}
Quote Management API - PATCH /sn_tmf_api/quote_management_api/quote/{id}
Updates the specified quote.
URL format
Versioned URL: /api/sn_tmf_api/{api_version}/quote_management_api/quote/{id}
Default URL: /api/sn_tmf_api/quote_management_api/quote/{id}
Supported request parameters
| Name | Description |
|---|---|
| id | Sys_id of the quote to update. Data type: String Table: Quote [sn_quote_mgmt_core_quote] |
| Name | Description |
|---|---|
| None |
| Name | Description |
|---|---|
| contactMedium | List of contact mediums. Contact information related to the quote requester. |
| contactMedium.city | City in which the quote requester resides. Data type: String |
| contactMedium.country | Country in which the quote requester resides. Data type: String |
| contactMedium.locationId | Sys_id of the location listed in the Location [cmn_location] table or custom address. Data type: String |
| contactMedium.mediumType | Type of contact medium, such as email address, telephone number, or postal address. Data type: String |
| contactMedium.postCode | Postal code of the quote requester. Data type: String |
| contactMedium.stateOrProvince | State or province in which the quote requester resides. Data type: String |
| contactMedium.street | Street address of the quote requester. Data type: String |
| contactMedium.@type | Type of medium per the TMF Open API standard. For example, GeographicalAddressContactMedium. Data type: String |
| description | Description of the quote. Data type: String |
| note | List of notes associated with the quote. Data type: Array |
| note.text | Contents of the note. Data type: String |
| note.@type | This value is always Note. Data type: String |
| quoteDate | Date and time at which the quote was created. Data type: String |
| quoteItem | A list of quote items. Each quote item describes an action for a product to be quoted.Data type: Array of Objects |
| quoteItem.action | Action to be performed on this quote item (add, modify, remove, etc.). Data type: String |
| quoteItem.id | Sys_id of the quote item. Table: Quote Line Item [sn_quote_mgmt_core_quote_line_item] Data type: String |
| quoteItem.product | List of products included in the quote.Data type: Object |
| quoteItem.product. characteristic | List of product characteristics. Data type: Array of Objects See Create product characteristics and characteristic options. |
| quoteItem.product. characteristic.id | Sys_id of the product characteristic. Table: Quote Line Characteristic [sn_quote_mgmt_core_quote_line_characteristic] Data type: String |
| quoteItem.product. characteristic.name | Name of the product characteristic. Data type: String |
| quoteItem.product. characteristic.@type | This value is always StringCharacteristic. Data type: String |
| quoteItem.product. characteristic.value | Value of the characteristic. Data type: String |
| quoteItem.product. specification | Detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role. Data type: String |
| quoteItem.product.@type | This value is always Product. Data type: String |
| quoteItem.productOffering | A product offering reference (ProductOfferingRef). A product offering represents entities that are orderable from the provider of the catalog.Data type: Object |
| quoteItem. productOffering.href | Reference of the related entity. Data type: String |
| quoteItem. productOffering.id | Sys_id of product offering. Table: Product Offering [sn_prd_pm_product_offering] Data type: String |
| quoteItem. productOffering.name | Name of the related entity. Data type: String |
| quoteItem. productOffering.@type | This value is always ProductOfferingRef. Data type: String |
| quoteItem.productRelationship | A list of quote items. Each quote item describes an action for a product to be quoted.Data type: Array of Objects |
| quoteItem.productRelationship. product | A product reference or value (ProductRefOrValue). A produt to be created defined by value or existing defined by reference. The product meets one of the following criteria:
Data type: String |
| quoteItem.productRelationship. relationshipType | Type of the product relationship, such as bundled if the product is a bundle and you want to describe the the bundled products within. Data type: String |
| quoteItem.quantity | Quantity asked for this quote item. Data type: Number |
| quoteItem.state | A quote state type (QuoteStateType). State of the quote. Data type: String |
| quoteItem.@type | This value is always QuoteItem. Data type: String |
| relatedParty | List of contacts for the order. Data type: Array of Objects |
| relatedParty.id | Sys_id of the quote table to get the account, contact, or customer. Table: Quote [sn_quote_mgmt_core_quote] Data type: String |
| relatedParty.name | Name of the account, customer, or consumer.
Data type: String |
| relatedParty.@referredType | Type of customer.
Possible values:
Data type: String |
| relatedParty.role | The role of the party in the context of the quote (e.g., Account, Contact, or Customer). Data type: String |
| relatedParty.@type | This value is always ProductOfferingRef. Data type: String |
| state | State of the quote item. Data type: String |
| @type | Type of resource. This value is always Quote. This information isn’t stored. Data type: String |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
| Header | Description |
|---|---|
| Accept | Data format of the response body. Only supports application/json. |
| Content-Type | Data format of the request body. Only supports application/json. |
| Header | Description |
|---|---|
| Content-Type | Data format of the response body. Only supports application/json. |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
| Status code | Description |
|---|---|
| 200 | Request successfully processed. Full resource returned in response (no pagination). |
| 400 | Bad request. Possible reasons:
|
| 404 | Record not found. No records matching the query parameters are found in the table. |
Response body parameters (JSON)
| Name | Description |
|---|---|
| contactMedium | List of contact mediums. Contact information related to the quote requester. |
| contactMedium.city | City in which the quote requester resides. Data type: String |
| contactMedium.country | Country in which the quote requester resides. Data type: String |
| contactMedium.locationId | Sys_id of the location listed in the Location [cmn_location] table or custom address. Data type: String |
| contactMedium.mediumType | Type of contact medium, such as email address, telephone number, or postal address. Data type: String |
| contactMedium.postCode | Postal code of the quote requester. Data type: String |
| contactMedium.stateOrProvince | State or province in which the quote requester resides. Data type: String |
| contactMedium.street | Street address of the quote requester. Data type: String |
| contactMedium.@type | Type of medium per the TMF Open API standard. For example, GeographicalAddressContactMedium. Data type: String |
| description | Description of the quote. Data type: String |
| note | List of notes associated with the quote. Data type: Array |
| note.text | Contents of the note. Data type: String |
| note.@type | This value is always Note. Data type: String |
| quoteDate | Date and time at which the quote was created. Data type: String |
| quoteItem | A list of quote items. Each quote item describes an action for a product to be quoted.Data type: Array of Objects |
| quoteItem.action | Action to be performed on this quote item (add, modify, remove, etc.). Data type: String |
| quoteItem.id | Sys_id of the quote item. Table: Quote Line Item [sn_quote_mgmt_core_quote_line_item] Data type: String |
| quoteItem.product | List of products included in the quote.Data type: Object |
| quoteItem.product. characteristic | List of product characteristics. Data type: Array of Objects See Create product characteristics and characteristic options. |
| quoteItem.product. characteristic.id | Sys_id of the product characteristic. Table: Quote Line Characteristic [sn_quote_mgmt_core_quote_line_characteristic] Data type: String |
| quoteItem.product. characteristic.name | Name of the product characteristic. Data type: String |
| quoteItem.product. characteristic.@type | This value is always StringCharacteristic. Data type: String |
| quoteItem.product. characteristic.value | Value of the characteristic. Data type: String |
| quoteItem.product. specification | Detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role. Data type: String |
| quoteItem.product.@type | This value is always Product. Data type: String |
| quoteItem.productOffering | A product offering reference (ProductOfferingRef). A product offering represents entities that are orderable from the provider of the catalog.Data type: Object |
| quoteItem. productOffering.href | Reference of the related entity. Data type: String |
| quoteItem. productOffering.id | Sys_id of product offering. Table: Product Offering [sn_prd_pm_product_offering] Data type: String |
| quoteItem. productOffering.name | Name of the related entity. Data type: String |
| quoteItem. productOffering.@type | This value is always ProductOfferingRef. Data type: String |
| quoteItem.productRelationship | A list of quote items. Each quote item describes an action for a product to be quoted.Data type: Array of Objects |
| quoteItem.productRelationship. product | A product reference or value (ProductRefOrValue). A produt to be created defined by value or existing defined by reference. The product meets one of the following criteria:
Data type: String |
| quoteItem.productRelationship. relationshipType | Type of the product relationship, such as bundled if the product is a bundle and you want to describe the the bundled products within. Data type: String |
| quoteItem.quantity | Quantity asked for this quote item. Data type: Number |
| quoteItem.state | A quote state type (QuoteStateType). State of the quote. Data type: String |
| quoteItem.@type | This value is always QuoteItem. Data type: String |
| relatedParty | List of contacts for the order. Data type: Array of Objects |
| relatedParty.id | Sys_id of the quote table to get the account, contact, or customer. Table: Quote [sn_quote_mgmt_core_quote] Data type: String |
| relatedParty.name | Name of the account, customer, or consumer.
Data type: String |
| relatedParty.@referredType | Type of customer.
Possible values:
Data type: String |
| relatedParty.role | The role of the party in the context of the quote (e.g., Account, Contact, or Customer). Data type: String |
| relatedParty.@type | This value is always ProductOfferingRef. Data type: String |
| state | State of the quote item. Data type: String |
| @type | Type of resource. This value is always Quote. This information isn’t stored. Data type: String |
cURL request
This example shows how to update a quote.
curl "https://k8s0747687-node1.thunder.devsnc.com/api/sn_tmf_api/quote_management_api/quote/cb15734fd5692a10f8774663edf0ac19" \
--request PATCH \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
\"@type\": \"Quote\",
\"description\": \"Quote for Internet and OTT Bundle\",
\"contactMedium\": [
{
\"@type\": \"GeographicalAddressContactMedium\",
\"mediumType\": \"ShippingAddressRef\",
\"locationId\": \"25ab96060a0a0bb300a6d66ce72095f2\",
\"city\": \"Santa Clara\",
\"country\": \"USA\",
\"postCode\": \"95050\",
\"stateOrProvince\": \"CA\",
\"street\": \"2866 Stevens Creek Blvd\"
}
],
\"note\": [
{
\"@type\": \"Note\",
\"text\": \"This is a quote request following today call\"
}
],
\"quoteItem\": [
{
\"id\": \"086be79bd5e1aa10f8774663edf0acba\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\"
},
\"productOffering\": {
\"id\": \"ffeb447211bc3110f877366201dea6df\",
\"name\": \"Internet and OTT Bundle\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"597bab9bd5e1aa10f8774663edf0ac1b\",
\"relationshipType\": \"HasChild\"
},
{
\"product\": \"d57bab9bd5e1aa10f8774663edf0ac1a\",
\"relationshipType\": \"HasChild\"
},
{
\"product\": \"d57bab9bd5e1aa10f8774663edf0ac1c\",
\"relationshipType\": \"HasChild\"
}
]
},
{
\"id\": \"d57bab9bd5e1aa10f8774663edf0ac1a\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\"
},
\"productOffering\": {
\"id\": \"0761dd9fd0a63110f8770dbf976be173\",
\"name\": \"Solana Modem N Series\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"086be79bd5e1aa10f8774663edf0acba\",
\"relationshipType\": \"HasParent\"
}
]
},
{
\"id\": \"597bab9bd5e1aa10f8774663edf0ac1b\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\"
},
\"productOffering\": {
\"id\": \"8b61dd9fd0a63110f8770dbf976be140\",
\"name\": \"Basic internet - 100 Mbps Plan\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"086be79bd5e1aa10f8774663edf0acba\",
\"relationshipType\": \"HasParent\"
}
]
},
{
\"id\": \"d57bab9bd5e1aa10f8774663edf0ac1c\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\"
},
\"productOffering\": {
\"id\": \"62619d9fd0a63110f8770dbf976be180\",
\"name\": \"Solana Movie streaming channel\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"086be79bd5e1aa10f8774663edf0acba\",
\"relationshipType\": \"HasParent\"
}
]
},
{
\"id\": \"797ca71fd5e1aa10f8774663edf0ac2b\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\",
\"productCharacteristic\": [
{
\"name\": \"Internet breakout\",
\"value\": \"No\"
},
{
\"name\": \"Quality of Service\",
\"value\": \"Basic\"
},
{
\"name\": \"Speed\",
\"value\": \"High\"
}
],
\"productSpecification\": {
\"id\": \"cd81594e74ae4a10f877468e695efa81\",
\"name\": \"VPN Site PS\",
\"@type\": \"ProductSpecificationRef\"
}
},
\"productOffering\": {
\"id\": \"6c3d1e86a5e20210f8774c9b4be6ce42\",
\"name\": \"VPN Site\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"7f8c6b1fd5e1aa10f8774663edf0ac71\",
\"relationshipType\": \"HasChild\"
},
{
\"product\": \"bb8c6b1fd5e1aa10f8774663edf0ac73\",
\"relationshipType\": \"HasChild\"
},
{
\"product\": \"bf8c6b1fd5e1aa10f8774663edf0ac70\",
\"relationshipType\": \"HasChild\"
},
{
\"product\": \"fb8c6b1fd5e1aa10f8774663edf0ac72\",
\"relationshipType\": \"HasChild\"
}
]
},
{
\"id\": \"bf8c6b1fd5e1aa10f8774663edf0ac70\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\"
},
\"productOffering\": {
\"id\": \"2c265d4274ee4a10f877468e695efa45\",
\"name\": \"Maintenance Fee\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"797ca71fd5e1aa10f8774663edf0ac2b\",
\"relationshipType\": \"HasParent\"
}
]
},
{
\"id\": \"7f8c6b1fd5e1aa10f8774663edf0ac71\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\"
},
\"productOffering\": {
\"id\": \"4466d50674ee4a10f877468e695efa0d\",
\"name\": \"Security Fee\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"797ca71fd5e1aa10f8774663edf0ac2b\",
\"relationshipType\": \"HasParent\"
}
]
},
{
\"id\": \"fb8c6b1fd5e1aa10f8774663edf0ac72\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\",
\"productCharacteristic\": [
{
\"name\": \"Speed\",
\"value\": \"High\"
},
{
\"name\": \"Internet breakout\",
\"value\": \"No\"
}
],
\"productSpecification\": {
\"id\": \"ee4f8d8a74ae4a10f877468e695efa3f\",
\"name\": \"VPN Endpoint PS\",
\"@type\": \"ProductSpecificationRef\"
}
},
\"productOffering\": {
\"id\": \"7acc9e46a5e20210f8774c9b4be6ce9e\",
\"name\": \"VPN Endpoint\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"797ca71fd5e1aa10f8774663edf0ac2b\",
\"relationshipType\": \"HasParent\"
}
]
},
{
\"id\": \"bb8c6b1fd5e1aa10f8774663edf0ac73\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\",
\"productCharacteristic\": [
{
\"name\": \"Quality of Service\",
\"value\": \"Basic\"
}
],
\"productSpecification\": {
\"id\": \"3ba0914e74ae4a10f877468e695efa6e\",
\"name\": \"VPN Firewall PS\",
\"@type\": \"ProductSpecificationRef\"
}
},
\"productOffering\": {
\"id\": \"4407d90674ee4a10f877468e695efaab\",
\"name\": \"VPN Firewall\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"797ca71fd5e1aa10f8774663edf0ac2b\",
\"relationshipType\": \"HasParent\"
}
]
}
],
\"relatedParty\": [
{
\"role\": \"Customer\",
\"id\": \"9e2fd2ee11b43110f877366201dea674\",
\"name\": \"Startech svcs\",
\"@type\": \"RelatedPartyRef\",
\"@referredType\": \"Organization\"
}
],
\"state\": \"Draft\"
}" \
--user 'userName':'password'
Response body.
{
"@type": "Quote",
"description": "Quote for Internet and OTT Bundle",
"contactMedium": [
{
"@type": "GeographicalAddressContactMedium",
"mediumType": "ShippingAddressRef",
"locationId": "25ab96060a0a0bb300a6d66ce72095f2",
"city": "Santa Clara",
"country": "USA",
"postCode": "95050",
"stateOrProvince": "CA",
"street": "2866 Stevens Creek Blvd"
}
],
"note": [
{
"@type": "Note",
"text": "This is a quote request following today call"
}
],
"quoteItem": [
{
"id": "086be79bd5e1aa10f8774663edf0acba",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product"
},
"productOffering": {
"id": "ffeb447211bc3110f877366201dea6df",
"name": "Internet and OTT Bundle",
"@type": "ProductOfferingRef"
},
"productRelationship": [
{
"product": "597bab9bd5e1aa10f8774663edf0ac1b",
"relationshipType": "HasChild"
},
{
"product": "d57bab9bd5e1aa10f8774663edf0ac1a",
"relationshipType": "HasChild"
},
{
"product": "d57bab9bd5e1aa10f8774663edf0ac1c",
"relationshipType": "HasChild"
}
]
},
{
"id": "d57bab9bd5e1aa10f8774663edf0ac1a",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product"
},
"productOffering": {
"id": "0761dd9fd0a63110f8770dbf976be173",
"name": "Solana Modem N Series",
"@type": "ProductOfferingRef"
},
"productRelationship": [
{
"product": "086be79bd5e1aa10f8774663edf0acba",
"relationshipType": "HasParent"
}
]
},
{
"id": "597bab9bd5e1aa10f8774663edf0ac1b",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product"
},
"productOffering": {
"id": "8b61dd9fd0a63110f8770dbf976be140",
"name": "Basic internet - 100 Mbps Plan",
"@type": "ProductOfferingRef"
},
"productRelationship": [
{
"product": "086be79bd5e1aa10f8774663edf0acba",
"relationshipType": "HasParent"
}
]
},
{
"id": "d57bab9bd5e1aa10f8774663edf0ac1c",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product"
},
"productOffering": {
"id": "62619d9fd0a63110f8770dbf976be180",
"name": "Solana Movie streaming channel",
"@type": "ProductOfferingRef"
},
"productRelationship": [
{
"product": "086be79bd5e1aa10f8774663edf0acba",
"relationshipType": "HasParent"
}
]
},
{
"id": "797ca71fd5e1aa10f8774663edf0ac2b",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product",
"productCharacteristic": [
{
"name": "Internet breakout",
"value": "No"
},
{
"name": "Quality of Service",
"value": "Basic"
},
{
"name": "Speed",
"value": "High"
}
],
"productSpecification": {
"id": "cd81594e74ae4a10f877468e695efa81",
"name": "VPN Site PS",
"@type": "ProductSpecificationRef"
}
},
"productOffering": {
"id": "6c3d1e86a5e20210f8774c9b4be6ce42",
"name": "VPN Site",
"@type": "ProductOfferingRef"
},
"productRelationship": [
{
"product": "7f8c6b1fd5e1aa10f8774663edf0ac71",
"relationshipType": "HasChild"
},
{
"product": "bb8c6b1fd5e1aa10f8774663edf0ac73",
"relationshipType": "HasChild"
},
{
"product": "bf8c6b1fd5e1aa10f8774663edf0ac70",
"relationshipType": "HasChild"
},
{
"product": "fb8c6b1fd5e1aa10f8774663edf0ac72",
"relationshipType": "HasChild"
}
]
},
{
"id": "bf8c6b1fd5e1aa10f8774663edf0ac70",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product"
},
"productOffering": {
"id": "2c265d4274ee4a10f877468e695efa45",
"name": "Maintenance Fee",
"@type": "ProductOfferingRef"
},
"productRelationship": [
{
"product": "797ca71fd5e1aa10f8774663edf0ac2b",
"relationshipType": "HasParent"
}
]
},
{
"id": "7f8c6b1fd5e1aa10f8774663edf0ac71",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product"
},
"productOffering": {
"id": "4466d50674ee4a10f877468e695efa0d",
"name": "Security Fee",
"@type": "ProductOfferingRef"
},
"productRelationship": [
{
"product": "797ca71fd5e1aa10f8774663edf0ac2b",
"relationshipType": "HasParent"
}
]
},
{
"id": "fb8c6b1fd5e1aa10f8774663edf0ac72",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product",
"productCharacteristic": [
{
"name": "Speed",
"value": "High"
},
{
"name": "Internet breakout",
"value": "No"
}
],
"productSpecification": {
"id": "ee4f8d8a74ae4a10f877468e695efa3f",
"name": "VPN Endpoint PS",
"@type": "ProductSpecificationRef"
}
},
"productOffering": {
"id": "7acc9e46a5e20210f8774c9b4be6ce9e",
"name": "VPN Endpoint",
"@type": "ProductOfferingRef"
},
"productRelationship": [
{
"product": "797ca71fd5e1aa10f8774663edf0ac2b",
"relationshipType": "HasParent"
}
]
},
{
"id": "bb8c6b1fd5e1aa10f8774663edf0ac73",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product",
"productCharacteristic": [
{
"name": "Quality of Service",
"value": "Basic"
}
],
"productSpecification": {
"id": "3ba0914e74ae4a10f877468e695efa6e",
"name": "VPN Firewall PS",
"@type": "ProductSpecificationRef"
}
},
"productOffering": {
"id": "4407d90674ee4a10f877468e695efaab",
"name": "VPN Firewall",
"@type": "ProductOfferingRef"
},
"productRelationship": [
{
"product": "797ca71fd5e1aa10f8774663edf0ac2b",
"relationshipType": "HasParent"
}
]
}
],
"relatedParty": [
{
"role": "Customer",
"id": "9e2fd2ee11b43110f877366201dea674",
"name": "Startech svcs",
"@type": "RelatedPartyRef",
"@referredType": "Organization"
}
],
"state": "Draft",
"id": "cb15734fd5692a10f8774663edf0ac19",
"version": "2",
"quoteDate": "2025-05-21 04:56:50",
"href": "api/sn_tmf_api/quote_management_api/quote/cb15734fd5692a10f8774663edf0ac19"
}
Quote Management API – POST /sn_tmf_api/quote_management_api/quote
Creates a quote.
- Quote [sn_quote_mgmt_core_quote]
- Sales Agreement [sn_sales_agmt_core_sales_agreement]
- Quote Line Item [sn_quote_mgmt_core_quote_line_item]
- Quote Line Characteristic [sn_quote_mgmt_core_quote_line_characteristic]
- Quote Pricing Adjustment [sn_quote_mgmt_core_pricing_adjustment]
URL format
Versioned URL: /api/sn_tmf_api/{api_version}/quote_management_api/quote
Default URL: /api/sn_tmf_api/quote_management_api/quote
Supported request parameters
| Name | Description |
|---|---|
| None |
| Name | Description |
|---|---|
| None |
| Name | Description |
|---|---|
| contactMedium | List of contact mediums. Contact information related to the quote requester. |
| contactMedium.city | City in which the quote requester resides. Data type: String |
| contactMedium.country | Country in which the quote requester resides. Data type: String |
| contactMedium.locationId | Sys_id of the location listed in the Location [cmn_location] table or custom address. Data type: String |
| contactMedium.mediumType | Type of contact medium, such as email address, telephone number, or postal address. Data type: String |
| contactMedium.postCode | Postal code of the quote requester. Data type: String |
| contactMedium.stateOrProvince | State or province in which the quote requester resides. Data type: String |
| contactMedium.street | Street address of the quote requester. Data type: String |
| contactMedium.@type | Type of medium per the TMF Open API standard. For example, GeographicalAddressContactMedium. Data type: String |
| description | Description of the quote. Data type: String |
| externalId | Unique consumer-provided ID for the quote. Data type: String |
| href | Relative link to access the quote. Data type: String Default: Empty string |
| note | List of notes associated with the quote. Data type: Array |
| note.text | Contents of the note. Data type: String |
| note.@type | This value is always Note. Data type: String |
| quoteDate | Date and time at which the quote was created. Data type: String |
| quoteItem | A list of quote items. Each quote item describes an action for a product to be quoted.Data type: Array of Objects |
| quoteItem.action | Action to be performed on this quote item (add, modify, remove, etc.). Data type: String |
| quoteItem.id | Sys_id of the quote item. Table: Quote Line Item [sn_quote_mgmt_core_quote_line_item] Data type: String |
| quoteItem.product | List of products included in the quote.Data type: Object |
| quoteItem.product. characteristic | List of product characteristics. Data type: Array of Objects See Create product characteristics and characteristic options. |
| quoteItem.product. characteristic.id | Sys_id of the product characteristic. Table: Quote Line Characteristic [sn_quote_mgmt_core_quote_line_characteristic] Data type: String |
| quoteItem.product. characteristic.name | Name of the product characteristic. Data type: String |
| quoteItem.product. characteristic.@type | This value is always StringCharacteristic. Data type: String |
| quoteItem.product. characteristic.value | Value of the characteristic. Data type: String |
| quoteItem.product. specification | Detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role. Data type: String |
| quoteItem.product.@type | This value is always Product. Data type: String |
| quoteItem.productOffering | A product offering reference (ProductOfferingRef). A product offering represents entities that are orderable from the provider of the catalog.Data type: Object |
| quoteItem. productOffering.href | Reference of the related entity. Data type: String |
| quoteItem. productOffering.id | Sys_id of product offering. Table: Product Offering [sn_prd_pm_product_offering] Data type: String |
| quoteItem. productOffering.name | Name of the related entity. Data type: String |
| quoteItem. productOffering.@type | This value is always ProductOfferingRef. Data type: String |
| quoteItem.productRelationship | A list of quote items. Each quote item describes an action for a product to be quoted.Data type: Array of Objects |
| quoteItem.productRelationship. product | A product reference or value (ProductRefOrValue). A produt to be created defined by value or existing defined by reference. The product meets one of the following criteria:
Data type: String |
| quoteItem.productRelationship. relationshipType | Type of the product relationship, such as bundled if the product is a bundle and you want to describe the the bundled products within. Data type: String |
| quoteItem.quantity | Quantity asked for this quote item. Data type: Number |
| quoteItem.state | A quote state type (QuoteStateType). State of the quote. Data type: String |
| quoteItem.@type | This value is always QuoteItem. Data type: String |
| relatedParty | List of contacts for the order. Data type: Array of Objects |
| relatedParty.id | Sys_id of the quote table to get the account, contact, or customer. Table: Quote [sn_quote_mgmt_core_quote] Data type: String |
| relatedParty.name | Name of the account, customer, or consumer.
Data type: String |
| relatedParty.@referredType | Type of customer.
Possible values:
Data type: String |
| relatedParty.role | The role of the party in the context of the quote (e.g., Account, Contact, or Customer). Data type: String |
| relatedParty.@type | This value is always ProductOfferingRef. Data type: String |
| state | State of the quote item. Data type: String |
| @type | Type of resource. This value is always Quote. This information isn’t stored. Data type: String |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
| Header | Description |
|---|---|
| Accept | Data format of the response body. Only supports application/json. |
| Header | Description |
|---|---|
| Content-Type | Data format of the response body. Only supports application/json. |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
| Status code | Description |
|---|---|
| 201 | Successful. The request was successfully processed. |
| 400 | Bad Request. A bad request
type or malformed request was detected. Possible reasons:
|
Response body parameters (JSON)
| Name | Description |
|---|---|
| contactMedium | List of contact mediums. Contact information related to the quote requester. |
| contactMedium.city | City in which the quote requester resides. Data type: String |
| contactMedium.country | Country in which the quote requester resides. Data type: String |
| contactMedium.locationId | Sys_id of the location listed in the Location [cmn_location] table or custom address. Data type: String |
| contactMedium.mediumType | Type of contact medium, such as email address, telephone number, or postal address. Data type: String |
| contactMedium.postCode | Postal code of the quote requester. Data type: String |
| contactMedium.stateOrProvince | State or province in which the quote requester resides. Data type: String |
| contactMedium.street | Street address of the quote requester. Data type: String |
| contactMedium.@type | Type of medium per the TMF Open API standard. For example, GeographicalAddressContactMedium. Data type: String |
| description | Description of the quote. Data type: String |
| externalId | Unique consumer-provided ID for the quote. Data type: String |
| href | Relative link to access the quote. Data type: String Default: Empty string |
| note | List of notes associated with the quote. Data type: Array |
| note.text | Contents of the note. Data type: String |
| note.@type | This value is always Note. Data type: String |
| quoteDate | Date and time at which the quote was created. Data type: String |
| quoteItem | A list of quote items. Each quote item describes an action for a product to be quoted.Data type: Array of Objects |
| quoteItem.action | Action to be performed on this quote item (add, modify, remove, etc.). Data type: String |
| quoteItem.id | Sys_id of the quote item. Table: Quote Line Item [sn_quote_mgmt_core_quote_line_item] Data type: String |
| quoteItem.product | List of products included in the quote.Data type: Object |
| quoteItem.product. characteristic | List of product characteristics. Data type: Array of Objects See Create product characteristics and characteristic options. |
| quoteItem.product. characteristic.id | Sys_id of the product characteristic. Table: Quote Line Characteristic [sn_quote_mgmt_core_quote_line_characteristic] Data type: String |
| quoteItem.product. characteristic.name | Name of the product characteristic. Data type: String |
| quoteItem.product. characteristic.@type | This value is always StringCharacteristic. Data type: String |
| quoteItem.product. characteristic.value | Value of the characteristic. Data type: String |
| quoteItem.product. specification | Detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role. Data type: String |
| quoteItem.product.@type | This value is always Product. Data type: String |
| quoteItem.productOffering | A product offering reference (ProductOfferingRef). A product offering represents entities that are orderable from the provider of the catalog.Data type: Object |
| quoteItem. productOffering.href | Reference of the related entity. Data type: String |
| quoteItem. productOffering.id | Sys_id of product offering. Table: Product Offering [sn_prd_pm_product_offering] Data type: String |
| quoteItem. productOffering.name | Name of the related entity. Data type: String |
| quoteItem. productOffering.@type | This value is always ProductOfferingRef. Data type: String |
| quoteItem.productRelationship | A list of quote items. Each quote item describes an action for a product to be quoted.Data type: Array of Objects |
| quoteItem.productRelationship. product | A product reference or value (ProductRefOrValue). A produt to be created defined by value or existing defined by reference. The product meets one of the following criteria:
Data type: String |
| quoteItem.productRelationship. relationshipType | Type of the product relationship, such as bundled if the product is a bundle and you want to describe the the bundled products within. Data type: String |
| quoteItem.quantity | Quantity asked for this quote item. Data type: Number |
| quoteItem.state | A quote state type (QuoteStateType). State of the quote. Data type: String |
| quoteItem.@type | This value is always QuoteItem. Data type: String |
| relatedParty | List of contacts for the order. Data type: Array of Objects |
| relatedParty.id | Sys_id of the quote table to get the account, contact, or customer. Table: Quote [sn_quote_mgmt_core_quote] Data type: String |
| relatedParty.name | Name of the account, customer, or consumer.
Data type: String |
| relatedParty.@referredType | Type of customer.
Possible values:
Data type: String |
| relatedParty.role | The role of the party in the context of the quote (e.g., Account, Contact, or Customer). Data type: String |
| relatedParty.@type | This value is always ProductOfferingRef. Data type: String |
| state | State of the quote item. Data type: String |
| @type | Type of resource. This value is always Quote. This information isn’t stored. Data type: String |
The following example shows how to create a quote.
curl "http://localhost:8080/api/sn_tmf_api/quote_management_api/quote" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
\"@type\": \"Quote\",
\"description\": \"Quote for Internet and OTT Bundle\",
\"state\": \"Draft\",
\"externalId\": \"12233\",
\"contactMedium\": [
{
\"@type\": \"GeographicalAddressContactMedium\",
\"mediumType\": \"ShippingAddressRef\",
\"locationId\": \"6774fee611383110f877366201dea64f\",
\"city\": \"Santa Clara\",
\"country\": \"USA\",
\"postCode\": \"95050\",
\"stateOrProvince\": \"CA\",
\"street\": \"2866 Stevens Creek Blvd\"
}
],
\"note\": [
{
\"@type\": \"Note\",
\"text\": \"This is a quote request for the Internet and OTT Bundle\"
}
],
\"quoteItem\": [
{
\"id\": \"ea88d77c4165ae10f8776348db5f9196\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\"
},
\"productOffering\": {
\"id\": \"ffeb447211bc3110f877366201dea6df\",
\"href\": \"api/sn_tmf_api/catalogmanagement/productOffering/ffeb447211bc3110f877366201dea6df\",
\"name\": \"Internet and OTT Bundle\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"3688d77c4165ae10f8776348db5f91cf\",
\"relationshipType\": \"HasChild\"
},
{
\"product\": \"3a881b7c4165ae10f8776348db5f911b\",
\"relationshipType\": \"HasChild\"
},
{
\"product\": \"7e88d77c4165ae10f8776348db5f91fb\",
\"relationshipType\": \"HasChild\"
}
]
},
{
\"id\": \"3688d77c4165ae10f8776348db5f91cf\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\"
},
\"productOffering\": {
\"id\": \"0761dd9fd0a63110f8770dbf976be173\",
\"href\": \"api/sn_tmf_api/catalogmanagement/productOffering/0761dd9fd0a63110f8770dbf976be173\",
\"name\": \"Solana Modem N Series\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"ea88d77c4165ae10f8776348db5f9196\",
\"relationshipType\": \"HasParent\"
}
]
},
{
\"id\": \"7e88d77c4165ae10f8776348db5f91fb\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\"
},
\"productOffering\": {
\"id\": \"8b61dd9fd0a63110f8770dbf976be140\",
\"href\": \"api/sn_tmf_api/catalogmanagement/productOffering/8b61dd9fd0a63110f8770dbf976be140\",
\"name\": \"Basic internet - 100 Mbps Plan\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"ea88d77c4165ae10f8776348db5f9196\",
\"relationshipType\": \"HasParent\"
}
]
},
{
\"id\": \"3a881b7c4165ae10f8776348db5f911b\",
\"@type\": \"QuoteItem\",
\"action\": \"add\",
\"quantity\": \"1\",
\"state\": \"Draft\",
\"product\": {
\"@type\": \"Product\"
},
\"productOffering\": {
\"id\": \"62619d9fd0a63110f8770dbf976be180\",
\"href\": \"api/sn_tmf_api/catalogmanagement/productOffering/62619d9fd0a63110f8770dbf976be180\",
\"name\": \"Solana Movie streaming channel\",
\"@type\": \"ProductOfferingRef\"
},
\"productRelationship\": [
{
\"product\": \"ea88d77c4165ae10f8776348db5f9196\",
\"relationshipType\": \"HasParent\"
}
]
}
],
\"relatedParty\": [
{
\"role\": \"Customer\",
\"id\": \"ab9a0e8b2fc9a610b79db3bf42faf3a6\",
\"name\": \"Funco Intl\",
\"@type\": \"RelatedPartyRef\",
\"@referredType\": \"Organization\"
}
]
}" \
--user 'userName':'password'
Response body.
{
"@type": "Quote",
"description": "Quote for Internet and OTT Bundle",
"state": "Draft",
"externalId": "12233",
"contactMedium": [
{
"@type": "GeographicalAddressContactMedium",
"mediumType": "ShippingAddressRef",
"locationId": "6774fee611383110f877366201dea64f",
"city": "Santa Clara",
"country": "USA",
"postCode": "95050",
"stateOrProvince": "CA",
"street": "2866 Stevens Creek Blvd"
}
],
"note": [
{
"@type": "Note",
"text": "This is a quote request for the Internet and OTT Bundle"
}
],
"quoteItem": [
{
"id": "ea88d77c4165ae10f8776348db5f9196",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product"
},
"productOffering": {
"id": "ffeb447211bc3110f877366201dea6df",
"href": "api/sn_tmf_api/catalogmanagement/productOffering/ffeb447211bc3110f877366201dea6df",
"name": "Internet and OTT Bundle",
"@type": "ProductOfferingRef",
"internalVersion": "1",
"version": "",
"internalId": "ffeb447211bc3110f877366201dea6df"
},
"productRelationship": [
{
"product": "3688d77c4165ae10f8776348db5f91cf",
"relationshipType": "HasChild"
},
{
"product": "3a881b7c4165ae10f8776348db5f911b",
"relationshipType": "HasChild"
},
{
"product": "7e88d77c4165ae10f8776348db5f91fb",
"relationshipType": "HasChild"
}
]
},
{
"id": "3688d77c4165ae10f8776348db5f91cf",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product"
},
"productOffering": {
"id": "0761dd9fd0a63110f8770dbf976be173",
"href": "api/sn_tmf_api/catalogmanagement/productOffering/0761dd9fd0a63110f8770dbf976be173",
"name": "Solana Modem N Series",
"@type": "ProductOfferingRef",
"internalVersion": "1",
"version": "",
"internalId": "0761dd9fd0a63110f8770dbf976be173"
},
"productRelationship": [
{
"product": "ea88d77c4165ae10f8776348db5f9196",
"relationshipType": "HasParent"
}
]
},
{
"id": "7e88d77c4165ae10f8776348db5f91fb",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product"
},
"productOffering": {
"id": "8b61dd9fd0a63110f8770dbf976be140",
"href": "api/sn_tmf_api/catalogmanagement/productOffering/8b61dd9fd0a63110f8770dbf976be140",
"name": "Basic internet - 100 Mbps Plan",
"@type": "ProductOfferingRef",
"internalVersion": "1",
"version": "",
"internalId": "8b61dd9fd0a63110f8770dbf976be140"
},
"productRelationship": [
{
"product": "ea88d77c4165ae10f8776348db5f9196",
"relationshipType": "HasParent"
}
]
},
{
"id": "3a881b7c4165ae10f8776348db5f911b",
"@type": "QuoteItem",
"action": "add",
"quantity": "1",
"state": "Draft",
"product": {
"@type": "Product"
},
"productOffering": {
"id": "62619d9fd0a63110f8770dbf976be180",
"href": "api/sn_tmf_api/catalogmanagement/productOffering/62619d9fd0a63110f8770dbf976be180",
"name": "Solana Movie streaming channel",
"@type": "ProductOfferingRef",
"internalVersion": "1",
"version": "",
"internalId": "62619d9fd0a63110f8770dbf976be180"
},
"productRelationship": [
{
"product": "ea88d77c4165ae10f8776348db5f9196",
"relationshipType": "HasParent"
}
]
}
],
"relatedParty": [
{
"role": "Customer",
"id": "ab9a0e8b2fc9a610b79db3bf42faf3a6",
"name": "Funco Intl",
"@type": "RelatedPartyRef",
"@referredType": "Organization"
}
],
"id": "acc805bcfff5a610b79dffffffffffe6",
"href": "api/sn_tmf_api/quote_management_api/quote/acc805bcfff5a610b79dffffffffffe6"
}