# Commerce
- **OpenAPI Version:** `3.1.1`
- **API Version:** `2`
[Zoom Commerce](https://developers.zoom.us/docs/commerce/) APIs allows partners to manage subscriptions, enable intergrations, and more.
## Servers
- **URL:** `https://api.zoom.us/v2`
## Operations
### Create an end customer account
- **Method:** `POST`
- **Path:** `/commerce/account`
- **Tags:** Account Management
Creates an end customer account. **Note** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:sub_account:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Request Body
##### Content-Type: application/json
- **`account_name` (required)**
`string` — The account's name.
- **`billing_address` (required)**
`object` — The address details.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO country code.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or ZIP code.
- **`state` (required)**
`string` — The state or province.
- **`contacts` (required)**
`array` — The account's contact details. Provide at least one contact.
**Items:**
- **`business_phone` (required)**
`string` — The contact's business phone number.
- **`company_email` (required)**
`string` — The contact's company email ID. The email domain should be the same as the account domain.
- **`first_name` (required)**
`string` — The contact's first name.
- **`job_title` (required)**
`string` — The contact's job title.
- **`last_name` (required)**
`string` — The contact's last name.
- **`primary_role`**
`string`, possible values: `"Admin", "Decision Maker", "Economic Buyer", "Executive Sponsor", "Zoom Champion", "Zoom Coach", "Influencer", "Technical Evaluator", "End User", "Legal", "Procurement", "Vendor Manager", "Sourcing Manager", "Billing"` — The contact's primary role.
- **`currency` (required)**
`string` — The ISO currency code.
- **`employee_count` (required)**
`string`, possible values: `"Just Me", "2-10", "11-50", "51-250", "251-500", "501-1000", "1001-5000", "5001-10000", "10001+"` — The company's employee count.
- **`website` (required)**
`string` — The company's website. It should not be any social media handle or Facebook, Google, and eBay shopping front.
- **`sub_reseller_crm_account_number`**
`string` — The sub-reseller's CRM account number.
**Example:**
```json
{
"account_name": "John Galt",
"employee_count": "251-500",
"website": "www.example.com",
"sub_reseller_crm_account_number": "A-45733",
"contacts": [
{
"first_name": "Tracy",
"last_name": "Smith",
"job_title": "Account Executive",
"company_email": "tsmith@somecompany.com",
"business_phone": "192837489342",
"primary_role": "Decision Maker"
}
],
"currency": "USD",
"billing_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
}
```
#### Responses
##### Status: 201 The account creation request was submitted successfully.
###### Content-Type: application/json
- **`create_reference_id`**
`string` — The unique reference ID for this account creation process. Please use this ID for checking the status.
- **`crm_account_number`**
`string` — The unique CRM account number.
- **`status`**
`string`, possible values: `"submitted", "success", "partial success", "failure"` — The supported status.
- **`status_detail`**
`string` — The details in case of partial success or failure.
**Example:**
```json
{
"create_reference_id": "ACC-2333",
"crm_account_number": "A-0012",
"status": "submitted",
"status_detail": "one or more contact creation failed."
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5101\` \
More than 1 account found with given domain. \
\*\*Error Code:\*\* \`5102\` \
Account name must be at most 255 characters. \
\*\*Error Code:\*\* \`5103\` \
Account name cannot be blank. \
\*\*Error Code:\*\* \`5104\` \
Account name must not contain following special characters @ # $ % ^ + = : | \
\*\*Error Code:\*\* \`5105\` \
First name must be at most 40 characters. \
\*\*Error Code:\*\* \`5106\` \
First name cannot be blank. \
\*\*Error Code:\*\* \`5107\` \
Last name must be at most 80 characters. \
\*\*Error Code:\*\* \`5108\` \
Last name cannot be blank. \
\*\*Error Code:\*\* \`5109\` \
Job title must be at most 128 characters. \
\*\*Error Code:\*\* \`5110\` \
Invalid company email. \
\*\*Error Code:\*\* \`5111\` \
Company email must be at most 80 characters. \
\*\*Error Code:\*\* \`5010\` \
Business phone must be between 10 to 15 characters long. \
\*\*Error Code:\*\* \`5113\` \
Address Line1 must be at most 255 characters. \
\*\*Error Code:\*\* \`5114\` \
City must be at most 40 characters. \
\*\*Error Code:\*\* \`5115\` \
State must be at most 80 characters. \
\*\*Error Code:\*\* \`5116\` \
Postal Code must be at most 20 characters. \
\*\*Error Code:\*\* \`5117\` \
Website must be in URL syntax. \
\*\*Error Code:\*\* \`5118\` \
Country cannot be blank. \
\*\*Error Code:\*\* \`5119\` \
Currency cannot be blank. \
\*\*Error Code:\*\* \`5120\` \
No account found. \
\*\*Error Code:\*\* \`5121\` \
Account create or update already in progress. \
\*\*Error Code:\*\* \`5122\` \
Employee count cannot be blank. \
\*\*Error Code:\*\* \`5123\` \
Invalid employee count. \
\*\*Error Code:\*\* \`5124\` \
Billing Address cannot be blank. \
\*\*Error Code:\*\* \`5125\` \
City cannot be blank. \
\*\*Error Code:\*\* \`5126\` \
Postal Code cannot be blank. \
\*\*Error Code:\*\* \`5127\` \
Invalid country. \
\*\*Error Code:\*\* \`5128\` \
State cannot be blank. \
\*\*Error Code:\*\* \`5402\` \
Currency should be a valid ISO currency code \
\*\*Error Code:\*\* \`5130\` \
Company email cannot be blank. \
\*\*Error Code:\*\* \`5131\` \
AddressLine1 cannot be blank. \
\*\*Error Code:\*\* \`5132\` \
Website cannot be blank. \
\*\*Error Code:\*\* \`5133\` \
The email domain of the contact must match the domain of the account website. \
\*\*Error Code:\*\* \`5134\` \
The contact's email domain is whitelisted as public and is therefore not permitted. \
\*\*Error Code:\*\* \`5138\` \
Invalid contact primary role. \
\*\*Error Code:\*\* \`5139\` \
At least 1 account contact is required, and company emails must be unique and have the same domain. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request. Please try again later.
### Add contacts to an existing end customer or your own account.
- **Method:** `POST`
- **Path:** `/commerce/account/{accountKey}/contacts`
- **Tags:** Account Management
Add contacts to an existing end customer or your own account.\
**Note:** Check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:update:account:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Request Body
##### Content-Type: application/json
- **`contacts`**
`array` — The contact details for the account. At least one contact should be provided.
**Items:**
- **`business_phone` (required)**
`string` — The contact's business phone number.
- **`company_email` (required)**
`string` — The contact's company email ID. The email domain should be the same as the account domain.
- **`first_name` (required)**
`string` — The contact's first name.
- **`job_title` (required)**
`string` — The contact's job title.
- **`last_name` (required)**
`string` — The contact's last name.
- **`primary_role`**
`string`, possible values: `"Admin", "Decision Maker", "Economic Buyer", "Executive Sponsor", "Zoom Champion", "Zoom Coach", "Influencer", "Technical Evaluator", "End User", "Legal", "Procurement", "Vendor Manager", "Sourcing Manager", "Billing"` — The contact's primary role.
**Example:**
```json
{
"contacts": [
{
"first_name": "Tracy",
"last_name": "Smith",
"job_title": "Account Executive",
"company_email": "tsmith@somecompany.com",
"business_phone": "192837489342",
"primary_role": "Decision Maker"
}
]
}
```
#### Responses
##### Status: 200 Account contact request submitted successfully.
###### Content-Type: application/json
- **`create_reference_id`**
`string` — The unique reference ID for this account creation process. Use this ID for checking the status.
- **`crm_account_number`**
`string` — The unique CRM account number.
- **`status`**
`string`, possible values: `"submitted", "success", "partial success", "failure"` — The current status of the request: submitted, success, partial success, or failure.
- **`status_detail`**
`string` — Additional details in case of partial success or error.
**Example:**
```json
{
"create_reference_id": "ACC-2333",
"crm_account_number": "A-0012",
"status": "submitted",
"status_detail": "One or more contact creation failed."
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5105\` \
First name must be at most 40 characters \
\*\*Error Code:\*\* \`5106\` \
First name cannot be blank. \
\*\*Error Code:\*\* \`5107\` \
Last name must be at most 80 characters. \
\*\*Error Code:\*\* \`5108\` \
Last name cannot be blank. \
\*\*Error Code:\*\* \`5109\` \
Job title must be at most 128 characters. \
\*\*Error Code:\*\* \`5110\` \
Invalid company email. \
\*\*Error Code:\*\* \`5111\` \
Company email must be at most 80 characters. \
\*\*Error Code:\*\* \`5112\` \
Business phone must be at most 15 characters. \
\*\*Error Code:\*\* \`5121\` \
Account create or update already in progress. \
\*\*Error Code:\*\* \`5130\` \
Company email cannot be blank. \
\*\*Error Code:\*\* \`5139\` \
At least 1 account contact is required, and company emails must be unique and have the same domain. \
\*\*Error Code:\*\* \`5138\` \
Invalid contact primary role. \
\*\*Error Code:\*\* \`5120\` \
No account found. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found No account found.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request. Please try again later.
### Get the list of all accounts associated with a Zoom Partner/Sub-Reseller, by the account type
- **Method:** `GET`
- **Path:** `/commerce/accounts`
- **Tags:** Account Management
Returns the list of all accounts associated with a Zoom Partner and Sub-Reseller, by the account type - endCustomer, subReseller, and relatedPartner.\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:account:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 This endpoint returns the end customer account list.
###### Content-Type: application/json
- **`account_list` (required)**
`array` — The list of accounts.
**Items:**
- **`account_name`**
`string` — The account name.
- **`account_type`**
`string`, possible values: `"Partner", "Customer"` — The account type: Partner or Customer.
- **`country`**
`string` — The ISO code for the account country.
- **`create_reference_id`**
`string` — The unique reference ID for the account created by the Zoom commerce API.
- **`crm_account_number`**
`string` — The unique CRM account number.
- **`currency`**
`string` — The ISO code for the account currency.
- **`partner_type`**
`string`, possible values: `"Distributor", "Subreseller", "Reseller", "Carrier"` — The partner type.
- **`status`**
`string`, possible values: `"submitted", "success", "partial success", "failure", "in review", "failed to submit"` — The current status of an account.
- **`website`**
`string` — The account's website.
- **`zoom_account_number`**
`string` — The Zoom account number (ZAN).
- **`zoom_account_numbers`**
`array` — Additional Zoom account numbers (ZAN) associated with this CRM account.
**Items:**
`number`
- **`page_count`**
`integer` — The total number of pages in the result set.
**Example:**
```json
{
"page_count": 20,
"account_list": [
{
"create_reference_id": "Cust-00123343242",
"crm_account_number": "A0012",
"account_name": "John Galt",
"zoom_account_number": "3842618277",
"zoom_account_numbers": [
3842618277
],
"account_type": "Customer",
"partner_type": "Subreseller",
"country": "US",
"currency": "USD",
"website": "www.abc.com",
"status": "submitted"
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5007\` \
Invalid page number. It must start with 1 or more. \
\*\*Error Code:\*\* \`5008\` \
Invalid page size. It must be between 1 and 99. \
\*\*Error Code:\*\* \`5140\` \
Invalid account type. It must be one of: endCustomer, subReseller, relatedPartner. \
\*\*Error Code:\*\* \`5000\` \
Invalid character & or | in the name filter. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(/docs/api/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Get the account details for a Zoom Partner/Subreseller/End Customer
- **Method:** `GET`
- **Path:** `/commerce/accounts/{accountKey}`
- **Tags:** Account Management
Returns the account details for a Zoom Partner, Subreseller, and End Customer.\
**Note:** Please check the base URL for sandbox and production environments under the Zoom Commerce section [here](https://developers.zoom.us/docs/api/).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:account:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 The account details.
###### Content-Type: application/json
- **`account_name`**
`string` — The account name.
- **`account_type`**
`string`, possible values: `"Partner", "Customer"` — The account type can be either Partner or Customer.
- **`billing_address`**
`object` — The address details.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The Postal or ZIP code number.
- **`contacts`**
`array` — The contacts.
**Items:**
- **`business_phone` (required)**
`string` — The contact's business phone number.
- **`company_email` (required)**
`string` — The contact's company email ID. The email domain should be the same as the account domain.
- **`first_name` (required)**
`string` — The contact's first name.
- **`job_title` (required)**
`string` — The contact's job title.
- **`last_name` (required)**
`string` — The contact's last name.
- **`contact_crm_number`**
`string` — The contact's unique CRM number.
- **`primary_role`**
`string`, possible values: `"Admin", "Decision Maker", "Economic Buyer", "Executive Sponsor", "Zoom Champion", "Zoom Coach", "Influencer", "Technical Evaluator", "End User", "Legal", "Procurement", "Vendor Manager", "Sourcing Manager", "Billing"` — The contact's primary role.
- **`create_reference_id`**
`string` — The unique reference ID for this account. Please use this ID for getting the account details if the account doesn't have an account number.
- **`created_on_date`**
`string`, format: `YYYY-MM-DD` — The creation date.
- **`crm_account_number`**
`string` — The unique ID for the account in the Zoom CRM system.
- **`currency`**
`string` — The ISO currency code for the account currency.
- **`employee_count`**
`string`, possible values: `"Just Me", "2-10", "11-50", "51-250", "251-500", "501-1000", "1001-5000", "5001-10000", "10000+"` — The company's employee count. Supported values are - Just Me, 2-10, 11-50, 51-250, 251-500, 501-1000, 1001-5000, 5001-10000, and 10000+.
- **`errors`**
`array` — Array of messages in case of validation or processing errors.
**Items:**
- **`error_code`**
`string` — Error code.
- **`error_description`**
`string` — Error description.
- **`partner_type`**
`string`, possible values: `"Distributor", "Subreseller", "Reseller", "Carrier"` — The partner type.
- **`status`**
`string`, possible values: `"submitted", "success", "partial success", "failure", "in review", "failed to submit"` — The current status of an account.
- **`status_detail`**
`string` — The details in case of partial success or failure.
- **`website`**
`string` — The company's website. It should not be any social media handle or Facebook, Google, and eBay shopping front.
- **`zoom_account_number`**
`string` — The unique Zoom account number. This is the identifier which the end customer should refer to in any communication with Zoom.
- **`zoom_account_numbers`**
`array` — Additional Zoom account numbers (ZAN) associated with this CRM account.
**Items:**
`number`
**Example:**
```json
{
"crm_account_number": "A-0012",
"create_reference_id": "ACC-2333",
"status": "submitted",
"status_detail": "Contact update failure.",
"zoom_account_number": "1223837102",
"zoom_account_numbers": [
3842618277
],
"account_name": "ABC Pvt Ltd.",
"account_type": "Customer",
"created_on_date": "2022-10-18",
"employee_count": "51-250",
"website": "www.example.com",
"currency": "US",
"partner_type": "Subreseller",
"contacts": [
{
"contact_crm_number": "A-12428",
"first_name": "Tracy",
"last_name": "Smith",
"job_title": "Account Executive",
"company_email": "tsmith@somecompany.com",
"business_phone": "192837489342",
"primary_role": "Decision Maker"
}
],
"billing_address": {
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
},
"errors": [
{
"error_code": "5012",
"error_description": "Invalid contact email."
}
]
}
```
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found \*\*Error Code:\*\* \`5009\` \
No records found. \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests For more information, see \[rate limits]\(/docs/api/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request. Please try again later.
### Gets all billing documents for a distributor or a reseller
- **Method:** `GET`
- **Path:** `/commerce/billing_documents`
- **Tags:** Billing
Returns all billing documents for a distributor or a reseller.
Billing Documents represent the end customer's invoices, credit memos and debit memos. The response can be filtered by status, document date etc. By default, the list of unpaid invoices in the last 1 month are retrieved.
**Note:** Check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:billing_documents:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 Billing documents retrieved successfully.
###### Content-Type: application/json
- **`billing_documents`**
`array` — The billing document list.
**Items:**
- **`balance`**
`object` — This field represents the sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — The monetary value.
- **`currency`**
`string` — The ISO code for the currency.
- **`billing_description`**
`string` — The description or any other detail about the document.
- **`customer_name`**
`array` — The end customer account name.
**Items:**
`string`
- **`customer_zoom_account_number`**
`number` — The end customer zoom account number.
- **`document_date`**
`string` — The document date.
- **`document_number`**
`string` — The document number.
- **`document_type`**
`string`, possible values: `"invoice", "credit_memo", "debit_memo"` — The type of the billing document: invoice, credit memo, or debit memo.
- **`due_date`**
`string` — The document due date.
- **`invoice_owner_name`**
`string` — The invoice owner's name.
- **`net_amount`**
`object` — This field represents sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — money value
- **`currency`**
`string` — The ISO code for the currency.
- **`payment_status`**
`string`, possible values: `"Paid", "Unpaid"` — The status of the document: paid or unpaid.
- **`po_number`**
`string` — Purchase order number
- **`posted_date`**
`string` — The posted date for the document.
- **`reason_detail`**
`string` — The reason description or detail for which this document has been generated.
- **`reference_billing_document_id`**
`string` — Any other billing document associated with this invoice or credit memo or debit memo.
- **`sub_reseller_name`**
`string` — The sub-reseller name if the subscription was created by a distributor on their behalf.
- **`document_count`**
`integer` — The total number of documents.
- **`next_page_token`**
`string` — The token for the next page in the record set if result has more records than the number specified by the page size. The next page token paginates through a large set of results. A next page token returns whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.
**Example:**
```json
{
"document_count": 100,
"billing_documents": [
{
"document_number": "INVC10235997",
"document_date": "2023-10-25T00:00:00.000Z",
"document_type": "invoice",
"customer_name": [
"ABC Pvt. Ltd."
],
"customer_zoom_account_number": 4435343789,
"sub_reseller_name": "Subreseller One",
"invoice_owner_name": "Subreseller One",
"due_date": "2023-11-25T00:00:00.000Z",
"payment_status": "Paid",
"balance": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"po_number": "PO-10021-A",
"billing_description": "Correcting invoice error",
"posted_date": "2023-10-26",
"reason_detail": "Correcting invoice error",
"reference_billing_document_id": "8a8aa183907cc66e01907d722e232bcd"
}
],
"next_page_token": "gfrnkgrgfe4583492"
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5504\` \
Payment Status valid values are : paid, unpaid, and all. \
\*\*Error Code:\*\* \`5505\` \
Date range cannot be more than 3 years. \
\*\*Error Code:\*\* \`5002\` \
Invalid date format. Expected format: YYYY-MM-DD. \
\*\*Error Code:\*\* \`5008\` \
Invalid page size. It must be between 1 and 99. \
\*\*Error Code:\*\* \`5506\` \
5506 - Invalid sort values. It must be one of: documentNumber.asc, documentDate.asc, dueDate.asc, balance.asc, documentNumber.desc, documentDate.desc, dueDate.desc, and balance.desc. \
\*\*Error Code:\*\* \`5507\` \
Multiples fields not supported in sorting. \
\*\*Error Code:\*\* \`5000\` \
Invalid character & or | in the name filter. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Gets the PDF document for the billing document ID
- **Method:** `GET`
- **Path:** `/commerce/billing_documents/{documentNumber}/document`
- **Tags:** Billing
Returns the PDF document for the billing document ID.
**Note:** Check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:billing_documents:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 The billing document PDF retrieved successfully.
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found \*\*Error Code:\*\* \`5501\` \
No document found. \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition, which prevented it from fulfilling the request.
### Get detailed information about a specific invoice for a distributor or a reseller
- **Method:** `GET`
- **Path:** `/commerce/invoices/{invoiceNumber}`
- **Tags:** Billing
Returns detailed information about a specific invoice for a distributor or a reseller.
To filter the details for a particular end customer provide the end customer Zoom account number or CRM account number.\
**Note:** Check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:billing_documents:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 The invoice details retrieved successfully.
###### Content-Type: application/json
- **`balance`**
`object` — This field represents the sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — The monetary value.
- **`currency`**
`string` — The ISO code for the currency.
- **`bill_to_contact`**
`object` — Bill to contact details.
- **`crm_contact_number`**
`string` — Unique CRM Number for the contact
- **`email`**
`string` — The contact's email ID.
- **`first_name`**
`string` — The first name of the bill to contact.
- **`last_name`**
`string` — The last name of the bill to contact.
- **`billing_description`**
`string` — The description or any other detail about the document.
- **`customer_name`**
`array` — The end customer account name.
**Items:**
`string`
- **`due_date`**
`string` — The document due date.
- **`invoice_date`**
`string` — The document date.
- **`invoice_items`**
`array` — The invoice items.
**Items:**
- **`charge_name`**
`string` — The name of the charge.
- **`charge_type`**
`string` — The type of the charge
- **`description`**
`string` — The description of the invoice item
- **`end_customer_account`**
`object` — Account details.
- **`account_name`**
`string` — The account name
- **`address`**
`object` — Address details
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — Type of address - billTo, shipTo, soldTo
- **`city` (required)**
`string` — City name
- **`country` (required)**
`string` — ISO code for the country
- **`line_1` (required)**
`string` — Street address
- **`state` (required)**
`string` — State or Province
- **`line_2`**
`string` — Street address
- **`line_3`**
`string` — Street address
- **`postal_code`**
`string` — Postal or Zip Code/number
- **`crm_account_number`**
`string` — Unique CRM Account Number for the customer or partner/reseller.
- **`zoom_account_number`**
`string` — Unique Zoom Account Number for the customer or partner/reseller.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the service period for this item, i.e., the last day of the service period
- **`offer_name`**
`string` — The name of the offer associated with this invoice item
- **`offer_price_list_id`**
`string` — The offer price list unique identifier
- **`offer_price_list_name`**
`string` — The offer price list name
- **`partner_sku_code`**
`string` — The unique SKU for partners.
- **`po_number`**
`string` — The purchase order number associated with the invoice item.
- **`quantity`**
`integer` — The quantity of this item, in the configured unit of measure for the charge.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the service period for this item. For a one-time fee item, the date of the charge.
- **`subscription_number`**
`string` — The subscription number associated with this invoice item
- **`tax_amount`**
`object` — This field represents the sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — The monetary value.
- **`currency`**
`string` — The ISO code for the currency.
- **`total_amount`**
`object` — This field represents sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — The monetary value.
- **`currency`**
`string` — The ISO code for the currency.
- **`invoice_number`**
`string` — The document number.
- **`invoice_owner_account`**
`object` — Account details.
- **`account_name`**
`string` — The account name
- **`address`**
`object` — Address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — Type of address - billTo, shipTo, soldTo.
- **`city` (required)**
`string` — city name
- **`country` (required)**
`string` — ISO code for the country
- **`line_1` (required)**
`string` — Street address
- **`state` (required)**
`string` — state or province
- **`line_2`**
`string` — Street address
- **`line_3`**
`string` — Street address
- **`postal_code`**
`string` — postal or zip code/number
- **`crm_account_number`**
`string` — Unique CRM Account Number for the customer or partner/reseller.
- **`zoom_account_number`**
`string` — Unique Zoom Account Number for the customer or partner/reseller.
- **`net_amount`**
`object` — This field represents sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — The monetary value.
- **`currency`**
`string` — The ISO code for the currency.
- **`payment_status`**
`string`, possible values: `"Paid", "Unpaid"` — The status of the document: paid or unpaid.
- **`po_numbers`**
`string` — All purchase order numbers associated with this invoice.
- **`posted_date`**
`string`, format: `YYYY-MM-DD` — The posted date for the document.
- **`reason_detail`**
`string` — The reason description or detail for which this document has been generated.
- **`reference_billing_document_id`**
`string` — Any other billing document associated with this invoice.
- **`sold_to_contact`**
`object` — Sold to contact details
- **`crm_contact_number`**
`string` — Unique CRM Number for the contact.
- **`email`**
`string` — The contact's email ID.
- **`first_name`**
`string` — The first name of the sold to contact.
- **`last_name`**
`string` — The last name of the sold to contact.
- **`sub_reseller`**
`object` — Account details.
- **`account_name`**
`string` — The account name
- **`address`**
`object` — Address details
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — Type of address - billTo, shipTo, soldTo
- **`city` (required)**
`string` — city name
- **`country` (required)**
`string` — ISO code for the country
- **`line_1` (required)**
`string` — Street address
- **`state` (required)**
`string` — state or province
- **`line_2`**
`string` — Street address
- **`line_3`**
`string` — Street address
- **`postal_code`**
`string` — postal or zip code/number
- **`crm_account_number`**
`string` — Unique CRM Account Number for the customer or partner/reseller.
- **`zoom_account_number`**
`string` — Unique Zoom Account Number for the customer or partner/reseller.
- **`target_date`**
`object`, format: `YYYY-MM-DD` — This date determines which charges are to be billed. All charges that are to be billed on this date or prior will be included in the invoice.
- **`total_tax_amount`**
`object` — This field represents the total tax amount for the invoice.
- **`amount`**
`number` — The monetary value.
- **`currency`**
`string` — The ISO code for the currency.
**Example:**
```json
{
"invoice_number": "INVC10235997",
"invoice_date": "2023-10-25T00:00:00.000Z",
"customer_name": [
"ABC Pvt. Ltd."
],
"invoice_owner_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sub_reseller": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1232",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sold_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "abc@test.com"
},
"bill_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "abc@test.com"
},
"due_date": "2023-11-25T00:00:00.000Z",
"payment_status": "Paid",
"balance": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"po_numbers": "PO-10021-A, PO-10021-A1",
"billing_description": "Correcting invoice error",
"posted_date": "2024-10-25",
"reason_detail": "Correcting invoice error",
"reference_billing_document_id": "8a8aa183907cc66e01907d722e307bre",
"total_tax_amount": {
"amount": 99.99,
"currency": "USD"
},
"target_date": "2024-10-25",
"invoice_items": [
{
"end_customer_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"charge_name": "monthly recurring charge",
"charge_type": "recurring",
"description": "Invoice for ABC Pvt. Ltd.",
"offer_name": "Zoom Workplace Pro",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"offer_price_list_id": "PRL-342923",
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"subscription_number": "A-31231322",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"po_number": "PO-10021-A",
"quantity": 100,
"tax_amount": {
"amount": 99.99,
"currency": "USD"
},
"total_amount": {
"amount": 99.99,
"currency": "USD"
}
}
]
}
```
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Unauthorized access. Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found \*\*Error Code:\*\* \`5009\` \
No records found. \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Retrieves all valid Zoom Campaigns which a deal registration can be associated with.
- **Method:** `GET`
- **Path:** `/commerce/campaigns`
- **Tags:** Deal Registration
Retrieves all valid Zoom Campaigns which a deal registration can be associated with.\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:deal_registration:admin`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 Campaign detail returned successfully.
###### Content-Type: application/json
- **`campaigns`**
`array` — List of campaigns.
**Items:**
- **`campaign_number` (required)**
`number` — Unique campaign number.
- **`campaign_description`**
`string` — Campaign description.
- **`campaign_end_date`**
`string`, format: `YYYY-MM-DD` — Campaign end date in YYYY-MM-DD format.
- **`campaign_name`**
`string` — Campaign name.
- **`campaign_start_date`**
`string`, format: `YYYY-MM-DD` — Campaign start date in YYYY-MM-DD format.
**Example:**
```json
{
"campaigns": [
{
"campaign_number": 3423423,
"campaign_name": "Zoom campaign for Education",
"campaign_description": "Zoom Workplace for Education focus campaign",
"campaign_start_date": "2023-10-03",
"campaign_end_date": "2024-10-03"
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details.
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Creates a new deal registration for a partner
- **Method:** `POST`
- **Path:** `/commerce/deal_registration`
- **Tags:** Deal Registration
Creates a new Deal Registration for a partner.\
**Note:** Check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:deal_registration:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Request Body
##### Content-Type: application/json
- **`currency` (required)**
`string` — ISO currency code for the deal.
- **`end_customer_contact_crm_number` (required)**
`string` — Contact CRM number of the primary contact for the end customer.
- **`end_customer_crm_account_number` (required)**
`string` — CRM account number for the end customer.
- **`end_customer_industry` (required)**
`string`, possible values: `"Commercial", "FED", "SLED", "Education", "Federal", "State & Local"` — Industry category that best describes the end customer's products/services. Supported values are Commercial, FED, SLED, Education, Federal, State & Local.
- **`estimated_close_date` (required)**
`string`, format: `YYYY-MM-DD` — Estimated close date for the opportunity. Should be today or a future date.
- **`estimated_mrr` (required)**
`integer` — Estimated size of the opportunity in Monthly Recurring Revenue.
- **`met_decision_maker` (required)**
`boolean` — Set to true if the partner has met the end customer's decision maker. Defaults to false.
- **`opportunity_name` (required)**
`string` — Name for the opportunity.
- **`opportunity_type` (required)**
`string`, possible values: `"Indirect Reseller Registration", "Direct Reseller Registration"` — The type of opportunity being registered.
- **`product_groups` (required)**
`array` — Zoom product types for which this deal will be eligible.
**Items:**
- **`name` (required)**
`string`, possible values: `"Zoom Workplace (Pro or Biz)", "Zoom Workplace (Biz+)", "Zoom Workplace (Ent Essentials)", "Zoom Workplace (Ent+/Premier)", "Zoom Workplace Add-Ons", "Zoom Phone (standalone)", "Zoom Revenue Accelerator", "Zoom Contact Center", "Zoom Spaces", "Zoom Build Platform", "Workvivo", "Professional Services", "Support Services", "Zoom Virtual Agent"` — Deal registration product group name.
- **`quantity` (required)**
`integer` — Expected license quantity.
- **`requires_professional_services` (required)**
`boolean` — Set to true if any professional or managed services will be provided as part of this opportunity.
- **`sales_activities` (required)**
`array` — Sales activities associated with this deal.
**Items:**
- **`date` (required)**
`string`, format: `YYYY-MM-DD` — Date of activity in YYYY-MM-DD format.
- **`type` (required)**
`string`, possible values: `"Zoom Meeting with Customer", "Onsite Meeting with Customer", "Zoom Demonstration", "Partner SE is Engaged"` — Type of sales activity. Supported values are Zoom Meeting with Customer, Onsite Meeting with Customer, Zoom Demonstration, Partner SE is Engaged.
- **`sales_rep_contact_crm_number` (required)**
`string` — Unique identifier for the partner contact who will be the primary sales representative.
- **`additional_comments`**
`string` — Additional comments or special considerations for the deal.
- **`budget_identified`**
`boolean` — Set to true if the partner has identified the budget with the end customer's decision maker. Defaults to false.
- **`buy_gov_skus`**
`boolean` — Set to true if the end customer is a public sector company and will buy Zoom for Government (ZfG) SKUs.
- **`campaign_number`**
`string` — Valid Zoom campaign number which influenced this deal.
- **`decision_maker_crm_number`**
`string` — End customer decision maker contact's CRM number.
- **`documents`**
`array` — Array of document or attachment IDs uploaded for the deal.
**Items:**
- **`document_reference_id`**
`string` — Unique document number.
- **`document_type`**
`string`, possible values: `"Deal Registration", "Other"` — Type of document.
- **`end_customer_contacts`**
`array` — Additional end customer contacts who will be associated with this deal registration.
**Items:**
- **`contact_crm_number`**
`string` — Contact's unique CRM number.
- **`end_customer_department`**
`array` — End customer division or department.
**Items:**
`string`, possible values: `"Engineering", "Executives", "Finance", "HR", "IT", "Marketing", "Sales", "Site-Wide", "Other"`
- **`is_public_sector`**
`boolean` — Set to true if the end customer is a Public Sector Customer. Defaults to false. Public Sector Customer means any United States of America Federal customer (legislative branch, executive branch, judicial branch, and military services), State and Local customer (all legislative, executive, administrative, and judicial agencies within a State, County, City, or Town), Federal System Integrator customer (government contractors doing work on behalf of or selling to Federal Agencies), Public Higher Education School or Institution customers, or Public K-12 School customers.
- **`migration_type`**
`string`, possible values: `"PBX/Zoom Hybrid Integration (HI)", "PBX/Zoom HI + some Zoom Phone Migration", "Some PBX to Zoom Phone Migration, No HI", "None of these", "Standard VLA"` — Migration type if deal is being registered for an end customer through some special initiative.
- **`opportunity_desc`**
`string` — Detailed description for the opportunity.
- **`partner_contacts`**
`array` — Additional partner contacts who will be associated with this deal registration.
**Items:**
- **`contact_crm_number`**
`string` — Contact's unique CRM number.
- **`phone_carrier`**
`string`, possible values: `"Yes, and they want to maintain it", "Yes, but they are willing to switch", "There is no existing agreement", "I don’t know"` — Does the customer have an existing phone carrier agreement. Supported values are "Yes, and they want to maintain it", "Yes, but they are willing to switch", "There is no existing agreement", "I don’t know".
- **`professional_services_delivered_by`**
`string`, possible values: `"Zoom", "Partner", "Third Party"` — Comma-separated list of PSO services delivery agents.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services. Recommended if "requires\_professional\_services" is true.
- **`rfp_details`**
`object` — RFP details for the deal registration.
- **`is_rfp` (required)**
`boolean` — Set to true if the opportunity is part of an existing RFP/public tender.
- **`due_date`**
`string`, format: `YYYY-MM-DD` — Date when the RFP is due, in YYYY-MM-DD format. Required if is\_rfp is true.
- **`issue_date`**
`string`, format: `YYYY-MM-DD` — Date when the RFP was issued, in YYYY-MM-DD format. Required if is\_rfp is true.
- **`rfp_link`**
`string` — The link to the RFP if publicly posted.
- **`sub_reseller_crm_account_number`**
`string` — The sub-reseller CRM account number on whose behalf this deal is being submitted.
- **`submitter_contact_crm_number`**
`string` — Deal submitter contact CRM number.
**Example:**
```json
{
"opportunity_type": "TSD Agent Registration",
"sub_reseller_crm_account_number": "A-3243",
"sales_rep_contact_crm_number": "C-3332",
"partner_contacts": [
{
"contact_crm_number": "C-12428"
}
],
"end_customer_crm_account_number": "A-343",
"end_customer_contact_crm_number": "C-132",
"end_customer_contacts": [
{
"contact_crm_number": "A-12428"
}
],
"end_customer_department": [
"Engineering"
],
"met_decision_maker": false,
"decision_maker_crm_number": "C-3487284",
"budget_identified": false,
"is_public_sector": false,
"buy_gov_skus": false,
"end_customer_industry": "Commercial",
"opportunity_name": "New sales opportunity",
"opportunity_desc": "New sales opportunity",
"estimated_close_date": "2024-10-01",
"estimated_mrr": 200000,
"currency": "USD",
"requires_professional_services": false,
"professional_services_description": "false",
"professional_services_delivered_by": "Zoom, Partner",
"phone_carrier": "Yes, and they want to maintain it",
"product_groups": [
{
"name": "Zoom Workplace (Pro or Biz)",
"quantity": 1000
}
],
"campaign_number": "3245",
"sales_activities": [
{
"type": "Zoom Meeting with Customer",
"date": "2023-10-25"
}
],
"rfp_details": {
"is_rfp": false,
"rfp_link": "https://www.rfplink.abc.com",
"issue_date": "2024-07-02",
"due_date": "2024-09-02"
},
"submitter_contact_crm_number": "C-3332",
"migration_type": "PBX/Zoom Hybrid Integration (HI)",
"additional_comments": "customer retention deal",
"documents": [
{
"document_reference_id": "D-1212",
"document_type": "Deal Registration"
}
]
}
```
#### Responses
##### Status: 201 Deal Registration created successfully.
###### Content-Type: application/json
- **`create_reference_id`**
`string` — The unique reference ID for this deal registration if created using the Deal Registration API. Use this ID for checking the status.
- **`deal_reg_number`**
`string` — The unique deal registration number.
- **`errors`**
`array` — Array of messages in case of validation or processing errors.
**Items:**
- **`error_code` (required)**
`string` — Error code.
- **`error_description` (required)**
`string` — Error description.
- **`status`**
`string`, possible values: `"submitted", "success", "failure"` — Status of this deal registration request.
**Example:**
```json
{
"create_reference_id": "DRR-4834729",
"deal_reg_number": "DL-0012",
"status": "submitted",
"errors": [
{
"error_code": "5801",
"error_description": "Invalid end customer contact CRM number."
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5810\` \
Estimated close date should be in future. \
\*\*Error Code:\*\* \`5811\` \
This opportunity type submission is not allowed. Please reach out to partner support. \
\*\*Error Code:\*\* \`5812\` \
At least one sales activity is required. \
\*\*Error Code:\*\* \`5813\` \
At least one product is required for deal registration. \
\*\*Error Code:\*\* \`5814\` \
If you have met the decision maker, please provide the decision maker contact. \
\*\*Error Code:\*\* \`5815\` \
If opportunity is part of an RFP (is\_rfp=true), rfp\_due\_date and rfp\_issue\_date cannot be blank. \
\*\*Error Code:\*\* \`5816\` \
If opportunity is part of an RFP (is\_rfp=true), rfp\_issue\_date cannot be in the past.. \
\*\*Error Code:\*\* \`5817\` \
End customer industry should be from the allowed list of values. \
\*\*Error Code:\*\* \`5818\` \
End customer department should be from the allowed list of values. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Unauthorized access. Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found See details.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Gets all valid Deal Registrations for a partner
- **Method:** `GET`
- **Path:** `/commerce/deal_registrations`
- **Tags:** Deal Registration
Retrieves all valid deal registrations for a partner.\
**Note:** Please check the base URL for sandbox and production environments under the Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:deal_registration:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 Deal registration for a partner returned successfully.
###### Content-Type: application/json
- **`deal_registrations`**
`array` — The list of deal registrations.
**Items:**
- **`create_reference_id`**
`string` — The unique reference ID for this deal registration. Use this ID for checking the status.
- **`currency`**
`string` — The ISO code for the deal currency.
- **`deal_name`**
`string` — The name for the deal.
- **`deal_reg_number`**
`string` — The deal registration number for the corresponding deal registration.
- **`end_customer`**
`object` — The end customer associated with the deal registration.
- **`account_local_name`**
`string` — The account name in local language.
- **`account_name`**
`string` — The end customer's name.
- **`address`**
`object` — The details of the address.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The type of address: \`billTo\`, \`shipTo\`, and \`soldTo\`.
- **`city` (required)**
`string` — The city's name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.
- **`crm_account_number`**
`string` — The end customer's CRM account number.
- **`department`**
`string`, possible values: `"Engineering", "Executives", "Finance", "HR", "IT", "Marketing", "Sales", "Site-Wide", " Other"` — The end customer's division or department.
- **`employee_count`**
`string`, possible values: `"Just Me", "2-10", "11-50", "51-250", "251-500", "501-1000", "1001-5000", "5001-10000", "10000+"` — The company's employee count. Supported values are 'Just Me', '2-10', '11-50', '51-250', '251-500', '501-1000', '1001-5000', '5001-10000', and '10000+'.
- **`industry`**
`string`, possible values: `"Commercial", "FED", "SLED", "Education", "Federal", "State & Local"` — The industry category that best describes the end customer's products or services. Supported values are Commercial, FED, SLED, Education, Federal, and State & Local.
- **`website`**
`string` — The company's website. Must not be any social media handle or Facebook, Google, and eBay shopping front.
- **`estimated_mrr`**
`integer` — The estimated size of the opportunity in monthly recurring revenue.
- **`expected_closed_date`**
`string`, format: `YYYY-MM-DD` — The expected close date for the opportunity. Must be today or a future date.
- **`extended_expiry_date`**
`string`, format: `YYYY-MM-DD` — The extended expiration date for the deal.
- **`invoice_owner_crm_account_number`**
`string` — The CRM account number for the invoice owner.
- **`opportunity`**
`object` — The opportunity's details.
- **`channel_sales_motion`**
`string`, possible values: `"Direct Reseller", "Indirect Reseller"` — The channel sales motion associated with the opportunity: Direct Reseller, Indirect Reseller, Referral, and so on.
- **`expected_close_date`**
`string`, format: `YYYY-MM-DD` — The expected or actual close date for this deal.
- **`opportunity_id`**
`string` — The opportunity ID for the corresponding opportunity associated with the deal registration.
- **`opportunity_name`**
`string` — The corresponding opportunity's name.
- **`opportunity_type`**
`string` — The corresponding opportunity type.
- **`partner_role`**
`string`, possible values: `"Deal Registration", "Partner Assist", "Incumbent Partner", "Fulfilment", "Standard Transaction"` — The role the partner has in this opportunity: Deal Registration, Partner Assist, Incumbent Partner, Fulfilment, and so on.
- **`opportunity_stage`**
`string`, possible values: `"submitted", "pending review", "denied", "returned", "pending sales review", "approved", "expired", "revoked", "closed-lost", "closed-won", "draft", "qualification", "solution", "proof", "agreement", "finalize"` — The current stage for this deal registration.
- **`original_expiry_date`**
`string`, format: `YYYY-MM-DD` — The original expiration date for the deal.
- **`partner_sales_rep`**
`string` — The partner sales representative name.
- **`program_name`**
`string`, possible values: `"Direct Reseller Registration", "Indirect Reseller Registration", "TSD Agent Registration", "Bill on Behalf Registration", "Direct Referral Registration", "Standard Referral Registration", "Zoom X Registration"` — The program under which the deal is being registered.
- **`status`**
`string`, possible values: `"submitted", "pending review", "denied", "returned", "pending sales review", "approved", "expired", "revoked", "closed-lost", "closed-won", "draft", "qualification", "solution", "proof", "agreement", "finalize", "submit failed"` — The deal registration status.
- **`submitted_date`**
`string`, format: `YYYY-MM-DD` — The date this deal registration was submitted.
- **`zoom_account_executive`**
`string` — The Zoom Account Executive associated with this deal registration.
- **`zoom_cam`**
`string` — The Zoom Channel Account Manager associated with this deal registration.
- **`page_count`**
`integer` — The total number of pages in the result set.
**Example:**
```json
{
"page_count": 20,
"deal_registrations": [
{
"deal_reg_number": "DL-135621",
"create_reference_id": "DRR-4834729",
"deal_name": "New deal for Zoom Phone",
"invoice_owner_crm_account_number": "A-4567",
"opportunity_stage": "closed-won",
"submitted_date": "2023-10-25",
"expected_closed_date": "2024-10-25",
"estimated_mrr": 1000000,
"currency": "USD",
"program_name": "Direct Reseller Registration",
"original_expiry_date": "2023-10-25",
"extended_expiry_date": "2023-10-25",
"partner_sales_rep": "John Doe",
"zoom_account_executive": "John Doe",
"zoom_cam": "John Doe",
"status": "submitted",
"end_customer": {
"crm_account_number": "A-1232",
"account_name": "ABC Pvt Ltd",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
},
"department": "Engineering",
"industry": "Commercial",
"account_local_name": "ABC Pvt Ltd",
"employee_count": "2-10",
"website": "www.zoom.com"
},
"opportunity": {
"opportunity_id": "a56b89",
"opportunity_name": "New sales opportunity",
"opportunity_type": "Sales Channel",
"expected_close_date": "2023-10-25",
"partner_role": "Deal Registration",
"channel_sales_motion": "Direct Reseller"
}
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5201\` \
The deal registration number should be at least three characters. \
\*\*Error Code:\*\* \`5202\` \
The deal registration create reference ID should be at least three characters. \
\*\*Error Code:\*\* \`5203\` \
The end customer account name should be at least three characters. \
\*\*Error Code:\*\* \`5204\` \
The CRM account number should be at least three characters. \
\*\*Error Code:\*\* \`5205\` \
The Zoom account number should be at least three characters. \
\*\*Error Code:\*\* \`5247\` \
'submit failed' status filter cannot be included with other status values \
\*\*Error Code:\*\* \`5000\` \
Invalid character & or | in the name filter. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Get details of a deal registration by registration number
- **Method:** `GET`
- **Path:** `/commerce/deal_registrations/{dealRegKey}`
- **Tags:** Deal Registration
Retrieve details for a deal registration by the deal registration number.
**Note** Check the base URL for sandbox and production environments under the Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:deal_registration:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 Deal registration details returned successfully.
###### Content-Type: application/json
- **`additional_comments`**
`string` — The additional comments or special considerations for the deal.
- **`approved_date`**
`string`, format: `YYYY-MM-DD` — The date this deal registration was approved.
- **`budget_identified`**
`boolean` — True if the partner has identified the budget with the end customer's decision maker.
- **`buy_gov_skus`**
`boolean` — True if the end customer is a public sector company and will buy Zoom for Government (ZfG) SKUs.
- **`campaign`**
`string` — The Zoom campaign that influenced this deal.
- **`create_reference_id`**
`string` — The unique reference ID for this deal registration if created using the \*\*Deal Registration\*\* API. Use this ID for checking the status.
- **`currency`**
`string` — The ISO code for the deal currency.
- **`deal_description`**
`string` — The deal's description.
- **`deal_name`**
`string` — The deal's name.
- **`deal_reg_number`**
`string` — The deal registration number for the corresponding deal registration.
- **`decision_maker_email`**
`string` — The email ID for the end customer decision maker.
- **`decision_maker_name`**
`string` — The name of the decision maker.
- **`denied_date`**
`string`, format: `YYYY-MM-DD` — The date this deal registration was denied.
- **`documents`**
`array` — Documents associated with this deal registration.
**Items:**
- **`document_note`**
`string` — Note associated with the document.
- **`document_reference_id`**
`string` — Unique reference ID for the document.
- **`document_type`**
`string`, possible values: `"Deal Registration", "Other"` — Type of document.
- **`end_customer`**
`object` — The end customer associated with the deal registration.
- **`account_local_name`**
`string` — The account name in local language.
- **`account_name`**
`string` — The end customer's name.
- **`address`**
`object` — The details of the address.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The type of address: billTo, shipTo, and soldTo.
- **`city` (required)**
`string` — The city's name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.
- **`crm_account_number`**
`string` — The end customer's CRM account number.
- **`department`**
`string`, possible values: `"Engineering", "Executives", "Finance", "HR", "IT", "Marketing", "Sales", "Site-Wide", " Other"` — The end user's customer division or department.
- **`employee_count`**
`string`, possible values: `"Just Me", "2-10", "11-50", "51-250", "251-500", "501-1000", "1001-5000", "5001-10000", "10000+"` — The company's employee count. Supported values are 'Just Me', '2-10', '11-50', '51-250', '251-500', '501-1000', '1001-5000', '5001-10000', or '10000+'.
- **`industry`**
`string`, possible values: `"Commercial", "FED", "SLED", "Education", "Federal", "State & Local"` — The industry category that best describes the end customer's products/services. Supported values are Commercial, FED, SLED, Education, Federal, or State & Local.
- **`website`**
`string` — The company's website.
- **`end_customer_other_contacts`**
`array` — The additional end customer contacts who will be associated with this deal registration.
**Items:**
- **`contact_crm_number` (required)**
`string` — The contact's unique CRM number.
- **`email`**
`string` — The contact's company email ID. The email domain should be the same as the account domain.
- **`end_customer_contact_domain_reason`**
`string` — The reason or justification for public domain for the end customer's contact email.
- **`first_name`**
`string` — The contact's first name.
- **`last_name`**
`string` — The contact's last name.
- **`phone`**
`string` — The contact's business phone number.
- **`title`**
`string` — The contact's job title.
- **`end_customer_primary_contact`**
`object` — The deal registration's contact details.
- **`contact_crm_number` (required)**
`string` — The contact's unique CRM number.
- **`email`**
`string` — The contact's company email ID. The email domain should be the same as the account domain.
- **`end_customer_contact_domain_reason`**
`string` — The reason or justification for public domain for the end customer's contact email.
- **`first_name`**
`string` — The contact's first name.
- **`last_name`**
`string` — The contact's last name.
- **`phone`**
`string` — The contact's business phone number.
- **`title`**
`string` — The contact's job title.
- **`end_customer_website_details`**
`object` — The account website's details.
- **`empty_website`**
`boolean`, default: `false` — True if the end customer doesn't have a website. Default is \`false\`.
- **`empty_website_reason`**
`string` — The reason why the website is blank. This field is mandatory if \`empty\_website\` is \`true\`.
- **`public_website_reason`**
`string` — The justification if the website is a public domain.
- **`estimated_mrr`**
`integer` — The estimated size of the opportunity in monthly recurring revenue.
- **`expected_close_date`**
`string`, format: `YYYY-MM-DD` — The expected close date for the deal.
- **`extended_expiry_date`**
`string`, format: `YYYY-MM-DD` — The extended expiration date for the deal.
- **`invoice_owner`**
`object` — The distributor associated with the deal registration.
- **`account_name`**
`string` — The distributor's name.
- **`address`**
`object` — The details of the address.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The type of address: billTo, shipTo, and soldTo.
- **`city` (required)**
`string` — The city's name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.
- **`crm_account_number`**
`string` — The distributor's CRM account number.
- **`is_existing_customer`**
`boolean` — True if the deal registration is for an existing end customer. False if this is a new customer.
- **`is_public_sector`**
`boolean` — True if the end customer is a public sector customer. Public sector customer means any United States of America federal customer (legislative branch, executive branch, judicial branch, and military services), State and Local customer (all legislative, executive, administrative, and judicial agencies within a State, County, City, or Town), Federal System Integrator customer (government contractors doing work on behalf of (sell-through) or selling to Federal Agencies), Public Higher Education School or Institution customers, or Public K-12 School customers.
- **`met_decision_maker`**
`boolean` — True if the partner has met the end customer's decision maker.
- **`migration_type`**
`string`, possible values: `"PBX/Zoom Hybrid Integration (HI)", "PBX/Zoom HI + some Zoom Phone Migration", "Some PBX to Zoom Phone Migration, No HI", "None of these", "Standard VLA"` — Migration type if deal is being registered for an end customer through some special initiative.
- **`opportunity`**
`object` — The opportunity's details.
- **`channel_sales_motion`**
`string`, possible values: `"Direct Reseller", "Indirect Reseller"` — The channel sales motion associated with the opportunity: Direct Reseller, Indirect Reseller, Referral, and so on.
- **`expected_close_date`**
`string`, format: `YYYY-MM-DD` — The expected close date for the opportunity.
- **`opportunity_name`**
`string` — The corresponding opportunity name.
- **`opportunity_number`**
`string` — The opportunity number for the corresponding opportunity associated with the deal registration.
- **`opportunity_type`**
`string` — The corresponding opportunity type.
- **`partner_role`**
`string`, possible values: `"Deal Registration", "Partner Assist", "Incumbent Partner", "Fulfilment"` — The role partner has in this opportunity: Deal Registration, Partner Assist, Incumbent Partner, Fulfilment, and so on.
- **`opportunity_stage`**
`string`, possible values: `"submitted", "pending review", "denied", "returned", "pending sales review", "approved", "expired", "revoked", "closed-lost", "closed-won", "draft", "qualification", "solution", "proof", "agreement", "finalize", "discovery", "review", "submitted"` — The current stage for this deal registration.
- **`original_expiry_date`**
`string`, format: `YYYY-MM-DD` — The original expiration date for the deal.
- **`partner_contacts`**
`array` — The additional partner contacts who are associated with this deal registration.
**Items:**
- **`contact_crm_number` (required)**
`string` — The contact's unique CRM number.
- **`email`**
`string` — The contact's company email ID. The email domain should be the same as the account domain.
- **`first_name`**
`string` — The contact's first name.
- **`last_name`**
`string` — The contact's last name.
- **`phone`**
`string` — The contact's business phone number.
- **`title`**
`string` — The contact's job title.
- **`partner_role`**
`string`, possible values: `"Deal Registration", "Partner Assist", "Incumbent Partner", "Fulfilment", "Standard Transaction"` — The role the partner has in this deal: Deal Registration, Partner Assist, Incumbent Partner, Fulfilment, and so on.
- **`phone_carrier`**
`string`, possible values: `"Yes, and they want to maintain it", "Yes, but they are willing to switch", "There is no existing agreement", "I don't know"` — Whether the customer has an existing phone carrier agreement. Supported values are "Yes, and they want to maintain it", "Yes, but they are willing to switch", "There is no existing agreement", and "I don't know".
- **`product_groups`**
`array` — The Zoom product types for which this deal is eligible.
**Items:**
- **`name` (required)**
`string`, possible values: `"Zoom Workplace (Pro or Biz)", "Zoom Workplace (Biz+)", "Zoom Workplace (Ent Essentials)", "Zoom Workplace (Ent+/Premier)", "Zoom Workplace Add-Ons", "Zoom Phone (standalone)", "Zoom Revenue Accelerator", "Zoom Contact Center", "Zoom Spaces", "Zoom Build Platform", "Workvivo", "Professional Services", "Support Services", "Zoom Virtual Agent"` — Deal registration product group name.
- **`quantity` (required)**
`integer` — The license quantity.
- **`professional_services_delivered_by`**
`string`, possible values: `"Zoom", "Partner", "Third Party"` — Comma-separated list of PSO services delivery agents.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services if "requires\_professional\_services" is true.
- **`program_name`**
`string`, possible values: `"Direct Reseller Registration", "Indirect Reseller Registration", "TSD Agent Registration", "Bill on Behalf Registration", "Direct Referral Registration", "Standard Referral Registration", "Zoom X Registration"` — The type of opportunity being registered.
- **`related_partner`**
`string` — Any other partner account related to this deal.
- **`requires_professional_services`**
`boolean` — True if any professional or managed services are provided as part of this opportunity.
- **`rfp_details`**
`object` — The RFP details for the deal registration.
- **`due_date`**
`string`, format: `YYYY-MM-DD` — The date when the RFP is due, in YYYY-MM-DD format.
- **`is_rfp`**
`boolean` — True if the opportunity is part of existing RFP or public tender.
- **`issue_date`**
`string`, format: `YYYY-MM-DD` — The date when the RFP was issued, in YYYY-MM-DD format.
- **`rfp_link`**
`string` — The link to the RFP if publicly posted.
- **`sales_activities`**
`array` — The sales activities associated with this deal.
**Items:**
- **`date` (required)**
`string`, format: `YYYY-MM-DD` — The date of activity in \`YYYY-MM-DD\` format.
- **`type` (required)**
`string`, possible values: `"Zoom Meeting with Customer", "Onsite Meeting with Customer", "Zoom Demonstration", "Partner SE is Engaged"` — The type of sales activity. Supported values are Zoom Meeting with Customer, Onsite Meeting with Customer, Zoom Demonstration, and Partner SE is Engaged.
- **`sales_activity_number`**
`string` — Unique identifier for the sales activity.
- **`sales_representative`**
`object` — The deal registration's sales representative.
- **`sales_rep_contact`**
`object` — The deal registration's contact details.
- **`contact_crm_number` (required)**
`string` — The contact's unique CRM number.
- **`email`**
`string` — The contact's company email ID. The email domain should be the same as the account domain.
- **`first_name`**
`string` — The contact's first name.
- **`last_name`**
`string` — The contact's last name.
- **`phone`**
`string` — The contact's business phone number.
- **`title`**
`string` — The contact's job title.
- **`self_sales_representative`**
`boolean` — True if the partner is the sales representative for this deal.
- **`status`**
`string`, possible values: `"submitted", "pending review", "denied", "returned", "pending sales review", "approved", "expired", "revoked", "closed-lost", "closed-won", "draft", "qualification", "solution", "proof", "agreement", "finalize", "failure", "submit failed"` — The deal registration's status.
- **`status_detail`**
`object` — The details in case the deal registration request has been returned without approval.
- **`denied_reason`**
`string` — The reason the deal registration request was denied.
- **`failure_reason`**
`string` — Failure error message if status is 'submit failed'.
- **`other_comments`**
`string` — Any additional comment related to current status.
- **`return_reason`**
`string` — The reason why the deal registration request was returned.
- **`revoke_reason`**
`string` — The reason why the deal registration request was revoked.
- **`sub_reseller`**
`object` — The sub-reseller associated with the deal registration.
- **`account_name`**
`string` — The sub-reseller's name.
- **`address`**
`object` — The details of the address.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The type of address: billTo, shipTo, and soldTo.
- **`city` (required)**
`string` — The city's name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.
- **`crm_account_number`**
`string` — The sub-reseller's CRM account number.
- **`submitted_date`**
`string`, format: `YYYY-MM-DD` — The date this deal registration was submitted.
- **`submitter`**
`object` — The deal registration's contact details.
- **`contact_crm_number` (required)**
`string` — The contact's unique CRM number.
- **`email`**
`string` — The contact's company email ID. The email domain should be the same as the account domain.
- **`first_name`**
`string` — The contact's first name.
- **`last_name`**
`string` — The contact's last name.
- **`phone`**
`string` — The contact's business phone number.
- **`title`**
`string` — The contact's job title.
- **`zoom_cams`**
`object` — The Zoom channel account managers.
- **`zoom_distribution_cam`**
`string` — The account manager for the Zoom distribution channel.
- **`zoom_named_cam`**
`string` — The account manager for the Zoom named channel.
- **`zoom_territory_cam`**
`string` — The Zoom territory channel account manager.
**Example:**
```json
{
"deal_reg_number": "DL-135621",
"create_reference_id": "DRR-4834729",
"deal_name": "New deal for Zoom Phone",
"deal_description": "New deal for Zoom Phone",
"currency": "USD",
"program_name": "TSD Agent Registration",
"opportunity_stage": "closed-won",
"submitted_date": "2023-10-25",
"approved_date": "2023-10-25",
"denied_date": "2023-10-25",
"expected_close_date": "2023-10-25",
"partner_role": "Deal Registration",
"original_expiry_date": "2023-10-25",
"extended_expiry_date": "2023-10-25",
"sales_representative": {
"self_sales_representative": true,
"sales_rep_contact": {
"contact_crm_number": "A-12428",
"first_name": "Tracy",
"last_name": "Smith",
"email": "tsmith@somecompany.com",
"title": "Account Executive",
"phone": "192837489342"
}
},
"submitter": {
"contact_crm_number": "A-12428",
"first_name": "Tracy",
"last_name": "Smith",
"email": "tsmith@somecompany.com",
"title": "Account Executive",
"phone": "192837489342"
},
"related_partner": "A-1232",
"partner_contacts": [
{
"contact_crm_number": "A-12428",
"first_name": "Tracy",
"last_name": "Smith",
"email": "tsmith@somecompany.com",
"title": "Account Executive",
"phone": "192837489342"
}
],
"is_existing_customer": false,
"sub_reseller": {
"crm_account_number": "A-1232",
"account_name": "ABC Pvt Ltd",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"invoice_owner": {
"crm_account_number": "A-1232",
"account_name": "ABC Distributors Inc",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"end_customer": {
"crm_account_number": "A-1232",
"account_name": "ABC Pvt Ltd",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
},
"department": "Engineering",
"industry": "Commercial",
"account_local_name": "ABC Pvt Ltd",
"employee_count": "2-10",
"website": "www.zoom.com"
},
"end_customer_primary_contact": {
"contact_crm_number": "A-12428",
"first_name": "Tracy",
"last_name": "Smith",
"email": "tsmith@somecompany.com",
"title": "Account Executive",
"phone": "192837489342",
"end_customer_contact_domain_reason": "To be provided by customer later"
},
"end_customer_other_contacts": [
{
"contact_crm_number": "A-12428",
"first_name": "Tracy",
"last_name": "Smith",
"email": "tsmith@somecompany.com",
"title": "Account Executive",
"phone": "192837489342",
"end_customer_contact_domain_reason": "To be provided by customer later"
}
],
"end_customer_website_details": {
"empty_website": false,
"empty_website_reason": "To be provided by customer",
"public_website_reason": "To be provided by customer"
},
"is_public_sector": false,
"budget_identified": false,
"buy_gov_skus": false,
"met_decision_maker": false,
"decision_maker_email": "abc@test.com",
"decision_maker_name": "John Doe",
"estimated_mrr": 100000,
"requires_professional_services": false,
"professional_services_description": "Partner will provide this service.",
"professional_services_delivered_by": "Zoom, Partner",
"phone_carrier": "There is no existing agreement",
"product_groups": [
{
"name": "Zoom Workplace (Pro or Biz)",
"quantity": 1000
}
],
"campaign": "Global Zoom Phone Launch",
"sales_activities": [
{
"sales_activity_number": "ZDRA00011",
"type": "Zoom Meeting with Customer",
"date": "2023-10-25"
}
],
"rfp_details": {
"is_rfp": false,
"rfp_link": "https://www.rfplink.example.com",
"issue_date": "2023-10-25",
"due_date": "2023-10-25"
},
"zoom_cams": {
"zoom_territory_cam": "John Doe",
"zoom_named_cam": "John Doe",
"zoom_distribution_cam": "John Doe"
},
"additional_comments": "customer retention",
"opportunity": {
"opportunity_number": "a56b89",
"opportunity_name": "New sales opportunity",
"opportunity_type": "Sales Channel",
"partner_role": "Deal Registration",
"channel_sales_motion": "Direct Reseller",
"expected_close_date": "2023-10-25"
},
"status": "submitted",
"status_detail": {
"return_reason": "RFP link is invalid.",
"revoke_reason": "A duplicate deal registration is in progress.",
"denied_reason": "The customer is not compliant for the requested deal.",
"other_comments": "Conditional approval.",
"failure_reason": "Time out."
},
"documents": [
{
"document_reference_id": "DOC-1234",
"document_note": "Latest purchase order.",
"document_type": "Deal Registration"
}
],
"migration_type": "PBX/Zoom Hybrid Integration (HI)"
}
```
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found \*\*Error Code:\*\* \`5009\` \
No records found. \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Updates an existing deal registration
- **Method:** `PATCH`
- **Path:** `/commerce/deal_registrations/{dealRegKey}`
- **Tags:** Deal Registration
Updates an existing deal registration that has been returned (Deal status = returned).\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:deal_registration:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Request Body
##### Content-Type: application/json
- **`add_end_customer_contacts`**
`array` — Additional end customer contacts to be associated with this deal registration.
**Items:**
- **`contact_crm_number`**
`string` — Contact's unique CRM number.
- **`add_partner_contacts`**
`array` — Additional partner contacts to be associated with this deal registration.
**Items:**
- **`contact_crm_number`**
`string` — Contact's unique CRM number.
- **`add_product_groups`**
`array` — Additional Zoom product types for which this deal will be eligible.
**Items:**
- **`name` (required)**
`string`, possible values: `"Zoom Workplace (Pro or Biz)", "Zoom Workplace (Biz+)", "Zoom Workplace (Ent Essentials)", "Zoom Workplace (Ent+/Premier)", "Zoom Workplace Add-Ons", "Zoom Phone (standalone)", "Zoom Revenue Accelerator", "Zoom Contact Center", "Zoom Spaces", "Zoom Build Platform", "Workvivo", "Professional Services", "Support Services", "Zoom Virtual Agent"` — Deal registration product group name.
- **`quantity` (required)**
`integer` — Expected license quantity.
- **`additional_comments`**
`string` — Additional comments or special considerations for the deal.
- **`budget_identified`**
`boolean` — Set to true if the partner has identified the budget with the end customer's decision maker. Defaults to false.
- **`buy_gov_skus`**
`boolean` — Set to true if the end customer is a public sector company and will buy Zoom for Government (ZfG) SKUs.
- **`campaign_number`**
`string` — Valid Zoom campaign number that influenced this deal.
- **`currency`**
`string` — ISO code for the deal.
- **`decision_maker_crm_number`**
`string` — End customer decision maker contact's CRM number.
- **`documents`**
`array` — Array of document or attachment IDs uploaded for the deal.
**Items:**
- **`document_reference_id`**
`string` — Unique document number.
- **`document_type`**
`string`, possible values: `"Deal Registration", "Other"` — Type of document.
- **`end_customer_department`**
`array` — End customer division or department.
**Items:**
`string`, possible values: `"Engineering", "Executives", "Finance", "HR", "IT", "Marketing", "Sales", "Site-Wide", "Other"`
- **`end_customer_industry`**
`string`, possible values: `"Commercial", "FED", "SLED", "Education", "Federal", "State & Local"` — Industry category that best describes the end customer's products/services. Supported values are Commercial, FED, SLED, Education, Federal, State & Local.
- **`estimated_close_date`**
`string`, format: `YYYY-MM-DD` — Estimated close date for the opportunity. Should be today or a future date.
- **`estimated_mrr`**
`integer` — Estimated size of the opportunity in Monthly Recurring Revenue.
- **`is_public_sector`**
`boolean` — Set to true if the end customer is a Public Sector Customer. Defaults to false. Public Sector Customer means any United States of America Federal customer (legislative branch, executive branch, judicial branch, and military services), State and Local customer (all legislative, executive, administrative, and judicial agencies within a State, County, City, or Town), Federal System Integrator customer (government contractors doing work on behalf of or selling to Federal Agencies), Public Higher Education School or Institution customers, or Public K-12 School customers.
- **`met_decision_maker`**
`boolean` — Set to true if the partner has met the end customer's decision maker. Defaults to false.
- **`opportunity_desc`**
`string` — Detailed description for the opportunity.
- **`opportunity_name`**
`string` — Name for the opportunity.
- **`phone_carrier`**
`string`, possible values: `"Yes, and they want to maintain it", "Yes, but they are willing to switch", "There is no existing agreement", "I don’t know"` — Does the customer have an existing phone carrier agreement. Supported values are "Yes, and they want to maintain it", "Yes, but they are willing to switch", "There is no existing agreement", "I don’t know".
- **`professional_services_delivered_by`**
`string`, possible values: `"Zoom", "Partner", "Third Party"` — Comma-separated list of PSO services delivery agents.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if "requires\_professional\_services" is true.
- **`remove_product_groups`**
`array` — Zoom product types to remove from this deal.
**Items:**
- **`name` (required)**
`string`, possible values: `"Zoom Workplace (Pro or Biz)", "Zoom Workplace (Biz+)", "Zoom Workplace (Ent Essentials)", "Zoom Workplace (Ent+/Premier)", "Zoom Workplace Add-Ons", "Zoom Phone (standalone)", "Zoom Revenue Accelerator", "Zoom Contact Center", "Zoom Spaces", "Zoom Build Platform", "Workvivo", "Professional Services", "Support Services", "Zoom Meetings (standalone)", "Zoom One (without Phone)", "Zoom Events & Webinar", "Other", "Zoom One (with Phone)", "Zoom Virtual Agent"` — Deal registration product group name.
- **`requires_professional_services`**
`boolean` — Set to true if any professional or managed services will be provided as part of this opportunity.
- **`rfp_details`**
`object` — RFP details for the deal registration.
- **`is_rfp` (required)**
`boolean` — Set to true if the opportunity is part of an existing RFP/public tender.
- **`due_date`**
`string`, format: `YYYY-MM-DD` — Date when the RFP is due, in YYYY-MM-DD format. Required if is\_rfp is true.
- **`issue_date`**
`string`, format: `YYYY-MM-DD` — Date when the RFP was issued, in YYYY-MM-DD format. Required if is\_rfp is true.
- **`rfp_link`**
`string` — The link to the RFP if publicly posted.
- **`sales_activities`**
`array` — Sales activities associated with this deal.
**Items:**
- **`date` (required)**
`string`, format: `YYYY-MM-DD` — Date of activity in YYYY-MM-DD format.
- **`type` (required)**
`string`, possible values: `"Zoom Meeting with Customer", "Onsite Meeting with Customer", "Zoom Demonstration", "Partner SE is Engaged"` — Type of sales activity. Supported values are Zoom Meeting with Customer, Onsite Meeting with Customer, Zoom Demonstration, Partner SE is Engaged.
- **`sales_activity_number`**
`string` — Sales activity number for the activity to update. Leave this blank if a new sales activity needs to be added.
- **`sales_rep_contact_crm_number`**
`string` — Unique identifier for the partner contact who will be the primary sales representative.
- **`submitter_contact_crm_number`**
`string` — Deal submitter contact CRM number.
**Example:**
```json
{
"sales_rep_contact_crm_number": "C-3332",
"add_partner_contacts": [
{
"contact_crm_number": "C-12428"
}
],
"add_end_customer_contacts": [
{
"contact_crm_number": "A-12428"
}
],
"end_customer_department": [
"Engineering"
],
"met_decision_maker": false,
"decision_maker_crm_number": "C-3487284",
"budget_identified": false,
"is_public_sector": false,
"buy_gov_skus": false,
"end_customer_industry": "Commercial",
"opportunity_name": "New sales opportunity",
"opportunity_desc": "New sales opportunity",
"estimated_close_date": "2024-10-01",
"estimated_mrr": 200000,
"currency": "USD",
"requires_professional_services": false,
"professional_services_description": "false",
"professional_services_delivered_by": "Zoom, Partner",
"phone_carrier": "Yes, and they want to maintain it",
"add_product_groups": [
{
"name": "Zoom Workplace (Pro or Biz)",
"quantity": 1000
}
],
"remove_product_groups": [
{
"name": "Zoom Workplace (Pro or Biz)"
}
],
"campaign_number": "3245",
"sales_activities": [
{
"sales_activity_number": "ZDRA00011",
"type": "Zoom Meeting with Customer",
"date": "2023-10-25"
}
],
"rfp_details": {
"is_rfp": false,
"rfp_link": "https://www.rfplink.abc.com",
"issue_date": "2024-07-02",
"due_date": "2024-09-02"
},
"submitter_contact_crm_number": "C-3332",
"additional_comments": "customer retention deal",
"documents": [
{
"document_reference_id": "D-1212",
"document_type": "Deal Registration"
}
]
}
```
#### Responses
##### Status: 200 Deal registration updated successfully.
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5810\` \
Estimated close date should be in the future. \
\*\*Error Code:\*\* \`5814\` \
If you have met the decision maker, please provide the decision maker's contact. \
\*\*Error Code:\*\* \`5815\` \
If the opportunity is part of an RFP (\`is\_rfp\`=true), \`rfp\_due\_date\` and \`rfp\_issue\_date\` cannot be blank. \
\*\*Error Code:\*\* \`5817\` \
End customer industry should be from the allowed list of values. \
\*\*Error Code:\*\* \`5818\` \
End customer department should be from the allowed list of values. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found See details.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition that prevented it from fulfilling the request.
### Create a subscription order for a Zoom partner
- **Method:** `POST`
- **Path:** `/commerce/order`
- **Tags:** Order
Create a subscription order for a Zoom partner's end customers. One order can have more than one subscription for more than one end customer. The same order can create a new subscription and also amend an existing subscription. **Note** Check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api/).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:order:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `HEAVY`
**Not supported in Gov cluster**
#### Request Body
##### Content-Type: application/json
- **`header` (required)**
`object` — The order header's details.
- **`order_date` (required)**
`string`, format: `YYYY-MM-DD` — The order date in \`YYYY-MM-DD\` format.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this order.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type.
- **`deal_reg_number`**
`string` — The registration number of the deal registered by either a partner or a reseller.
- **`order_description`**
`string` — The order's description.
- **`order_type`**
`string`, possible values: `"trial", "sale"`, default: `"sale"` — The order's type. Supported values are 'trial' and 'sale'.
- **`po_number`**
`string` — The purchase order's number.
- **`amend_subscriptions`**
`array` — The order details for amending an existing subscription.
**Items:**
- **`add_add_ons`**
`array` — The offer details for add-ons to be added in the subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer's price list ID.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`add_offers`**
`array` — The offer details for offers to be added in the subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price's list ID.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`cancel_subscription`**
`object` — Cancellation details.
- **`cancel_reason` (required)**
`string` — Reason for cancellation.
- **`cancel_by`**
`string`, possible values: `"EndOfCurrentTerm", "EndOfLastInvoicePeriod", "SpecificDate"` — When the subscription will be cancelled. Required for paid subscriptions. Currently only 'EndOfCurrentTerm' is supported.
- **`cancel_on`**
`string`, format: `YYYY-MM-DD` — Must be provided if cancel\_by is SpecificDate.
- **`remove_offers`**
`array` — The offer details for offers to be removed from the subscription.
**Items:**
- **`end_date` (required)**
`string`, format: `YYYY-MM-DD` — The date when the offer will be removed. It should be between today and the subscription end date.
- **`offer_price_list_id` (required)**
`string` — The offer price list ID for the offer to be removed from the subscription.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`remove_reason`**
`string` — The reason for cancellation.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`renew_subscription`**
`object` — Renewal details.
- **`renewal_term`**
`object` — Subscription initial, renewal or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, 60.
- **`subscription_number`**
`string` — The subscription number of the subscription being updated. Required for a paid subscription amendment.
- **`update_offers`**
`array` — Update terms and quantity of an offer or add-on.
**Items:**
- **`offer_price_list_id` (required)**
`string` — Offer price list ID for the offer to be updated.
- **`start_date` (required)**
`string`, format: `YYYY-MM-DD` — Change start date. Should be between today and subscription end date.
- **`offer_attributes`**
`array` — Offer specific attributes like number of hosts, participant capacity, etc.
**Items:**
- **`name`**
`string` — Attribute name.
- **`value`**
`string` — Attribute value.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`update_subscription`**
`object` — Update paid subscription attributes.
- **`auto_renew`**
`boolean` — Whether the subscription automatically renews at the end of each term. Only applicable if the initial term type is TERMED. If auto\_renew is true, providing renewal\_term is required.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set communication and invoice profile for the end customer.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment'.
- **`deployment_partner_address`**
`object` — The address details. Required with 'deployment\_partner\_name'.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The country's ISO code.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if 'requires\_professional\_services' is set to 'Yes, Zoom will do the deployment'.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if \`requires\_professional\_services\` is true.
- **`pso_engagement_request_id`**
`string` — Required if \`is\_zoom\_pso\_org\_engaged\` is set to \`Yes and I have a PSO Engagement Request ID\`.
- **`renewal_term`**
`object` — The subscription's renewal term. Required for paid subscriptions (order\_type = sale).
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, 60.
- **`sold_to_crm_contact_number`**
`string` — CRM contact number for the sold to contact.
- **`update_trial_subscription`**
`object` — Update trial subscription attributes.
- **`extend_trial_offers`**
`array` — Offers requiring trial period extension.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer's price list ID.
- **`upgrade_offers`**
`array` — The offer details for offers to be upgraded in the subscription. Not applicable for trial amendment order.
**Items:**
- **`start_date` (required)**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`new_offer_price_list_id`**
`string` — The new offer price list ID.
- **`new_partner_sku_code`**
`string` — The unique SKU code for partners.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`old_offer_price_list_id`**
`string` — The existing offer price list ID.
- **`old_partner_sku_code`**
`string` — The unique SKU code for partners.
- **`old_subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`zoom_account_number`**
`string` — The end customer Zoom account number. Required for amend trial order. This field is ignored for paid subscription amendments.
- **`create_subscriptions`**
`array` — The order details for creating a new subscription.
**Items:**
- **`currency` (required)**
`string` — Subscription currency in a three-letter ISO currency code.
- **`end_customer_crm_account_number` (required)**
`string` — The CRM account number for the end customer.
- **`initial_term` (required)**
`object` — The subscription's initial term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The subscription term's type. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, and 60.
- **`sold_to_crm_contact_number` (required)**
`string` — The CRM contact's number for the 'sold to contact'.
- **`add_add_ons`**
`array` — The new add-ons to be added to a subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription's end date.
- **`add_offers`**
`array` — New offers to be added to a subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription's end date.
- **`auto_renew`**
`boolean`, default: `true` — Whether the subscription automatically renews at the end of each term. Defaults to \`true\`. Only applicable for \`createSubscription\` order action if the initial term type is TERMED.
- **`end_customer_account_number`**
`string` — The end customer's Zoom account number.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set communication and invoice profile for the end customer. If left blank, this defaults to a language based on the end customer's country.
- **`free_months_reason_code`**
`string`, possible values: `"Customer's Desired Billing/Start Date", "Billing at Later Date for Other Reason", "Align to Customer's Renewal Date"` — The reason for requesting free period in the subscription. Required if the subscription has a free period.
- **`paid_period_start_date`**
`string`, format: `YYYY-MM-DD` — The subscription paid period start date. Required if the subscription has a free period.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment'.
- **`deployment_partner_address`**
`object` — The address details. Required with 'deployment\_partner\_name'.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if 'requires\_professional\_services' is set to 'Yes, Zoom will do the deployment'.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if \`requires\_professional\_services\` is true.
- **`pso_engagement_request_id`**
`string` — Required if \`is\_zoom\_pso\_org\_engaged\` is set to \`Yes and I have a PSO Engagement Request ID\`.
- **`renewal_term`**
`object` — The subscription's renewal term. Required for paid subscriptions (order\_type = sale).
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The subscription term's type. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, and 60.
- **`service_start_date`**
`string`, format: `YYYY-MM-DD` — The service start date. It should be equal to or before \`paid\_period\_start\_date\`.
- **`sub_reseller`**
`object` — The sub-reseller's account number. This input will be ignored if a deal registration number has been provided in the request. The sub-reseller associated with that deal registration will be associated with this order request.
- **`account_name`**
`string` — The sub-reseller's name.
- **`crm_account_number`**
`string` — The sub-reseller's CRM account number.
**Example:**
```json
{
"header": {
"order_type": "sale",
"order_description": "New Contact Center subscription for ABC Pvt. Ltd.",
"deal_reg_number": "DELREG-1002-L1",
"order_date": "2023-10-03",
"po_number": "PO-10021-A",
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
]
},
"create_subscriptions": [
{
"end_customer_account_number": "5333445346",
"end_customer_crm_account_number": "A-3454334",
"sold_to_crm_contact_number": "C-232442",
"end_customer_language": "es-ES;",
"initial_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2023-10-03"
},
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"sub_reseller": {
"crm_account_number": "A-45r33",
"account_name": "Novam Corp."
},
"service_start_date": "2024-03-20",
"paid_period_start_date": "2024-03-20",
"free_months_reason_code": "Customer's Desired Billing/Start Date",
"currency": "CAD",
"auto_renew": true,
"add_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Recording storage capacity in GB",
"value": "10"
}
]
}
],
"add_add_ons": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
]
}
],
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
}
],
"amend_subscriptions": [
{
"subscription_number": "A-31231322",
"zoom_account_number": "3428342132",
"add_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
]
}
],
"add_add_ons": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
]
}
],
"upgrade_offers": [
{
"new_offer_price_list_id": "Off-2323",
"new_partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"old_offer_price_list_id": "Off-2564",
"old_partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"old_subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
]
}
],
"remove_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"end_date": "2023-10-03",
"remove_reason": "Downsell"
}
],
"update_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
]
}
],
"cancel_subscription": {
"cancel_by": "EndOfCurrentTerm",
"cancel_on": "2023-10-03",
"cancel_reason": "Downsell"
},
"renew_subscription": {
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
}
},
"update_subscription": {
"auto_renew": true,
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"sold_to_crm_contact_number": "C-232442",
"end_customer_language": "es-ES;",
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "Zoom phone professional services"
}
},
"update_trial_subscription": {
"extend_trial_offers": [
{
"offer_price_list_id": "PRL-3683272383"
}
]
}
}
]
}
```
#### Responses
##### Status: 201 Order created successfully.
###### Content-Type: application/json
- **`errors`**
`array` — Array of messages in case of validation or processing errors.
**Items:**
- **`error_code` (required)**
`string` — Error code.
- **`error_description` (required)**
`string` — Error description.
- **`order_date`**
`string`, format: `YYYY-MM-DD` — The date when order should be placed in the billing system.
- **`order_number`**
`string` — The order number is provided when the order is successfully submitted or completed.
- **`order_reference_id`**
`string` — Reference ID for an order.
- **`status`**
`string`, possible values: `"failedToSubmit", "completed", "canceled", "submitted", "failed"` — Status of the order. Supported values are: \`failedToSubmit\`, \`completed\`, \`canceled\`, \`submitted\`, \`failed\`.
- **`subscriptions`**
`array` — Array of subscription numbers and their statuses in an order.
**Items:**
- **`invoice_owner_crm_account_number`**
`string` — The CRM account number for the Invoice Owner.
- **`invoice_owner_id`**
`string` — The invoice owner billing account ID.
- **`subscription_number`**
`string` — Subscription number of the subscription included in this order.
- **`subscription_owner_id`**
`string` — The subscription owner billing account ID.
- **`subscription_status`**
`string`, possible values: `"active", "pending_activation", "pending_acceptance", "cancelled", "suspended", "expired"` — Status of the subscription. Supported values are \`active\`, \`pending\_activation\`, \`pending\_acceptance\`, \`cancelled\`, \`suspended\`, or \`expired\`.
- **`zoom_account_number`**
`string` — End customer zoom account number of the subscription included in this order.
**Example:**
```json
{
"status": "submitted",
"order_reference_id": "OR-3248714941",
"order_number": "O-32487149",
"order_date": "2023-10-03",
"subscriptions": [
{
"subscription_number": "A-31231322",
"zoom_account_number": "3578345739",
"subscription_status": "active",
"subscription_owner_id": "A-3454334",
"invoice_owner_id": "A-34547634",
"invoice_owner_crm_account_number": "A-3454374"
}
],
"errors": [
{
"error_code": "5604",
"error_description": "No pricebook exists with given offer_price_list_id."
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5662\` \
Sub Reseller account number is invalid or not associated with Partner. \
\*\*Error Code:\*\* \`5692\` \
End customer CRM Number or Zoom account number is not associated with Partner. \
\*\*Error Code:\*\* \`5147\` \
No account found for the CRM account number. \
\*\*Error Code:\*\* \`5601\` \
\`Cancel\_on\` is required when \`cancel\_by\` is \`SpecificDate\`. \
\*\*Error Code:\*\* \`5604\` \
No pricebook exists with given offer\_price\_list\_id. \
\*\*Error Code:\*\* \`5660\` \
No pricebook exists with given partner SKU code. \
\*\*Error Code:\*\* \`5605\` \
Request body can not be blank. \
\*\*Error Code:\*\* \`5606\` \
Order header can not be null. \
\*\*Error Code:\*\* \`5607\` \
Order date cannot be blank. \
\*\*Error Code:\*\* \`5608\` \
Invalid order date format. Expected format is YYYY-MM-DD. \
\*\*Error Code:\*\* \`5609\` \
Order date can not be of past. \
\*\*Error Code:\*\* \`5611\` \
Invalid quantity. \
\*\*Error Code:\*\* \`5610\` \
Invalid PO Number. \
\*\*Error Code:\*\* \`5623\` \
Invalid order type - value must be trial or sale. \
\*\*Error Code:\*\* \`5616\` \
For amendment order, \*\*Subscription Number\*\* cannot be blank. \
\*\*Error Code:\*\* \`5617\` \
Sub reseller crm\_account\_number cannot be blank. \
\*\*Error Code:\*\* \`5618\` \
Sub reseller account\_name cannot be blank. \
\*\*Error Code:\*\* \`5619\` \
Start date cannot be blank. \
\*\*Error Code:\*\* \`5002\` \
Invalid cancel on date format. Expected format is YYYY-MM-DD. \
\*\*Error Code:\*\* \`5678\` \
The subscription number is invalid. \
\*\*Error Code:\*\* \`5625\` \
Start Date should be in valid date format \`YYYY-MM-DD\` and greater than or equal to today. \
\*\*Error Code:\*\* \`5627\` \
InitialTerm: \`termType\` must be either \`TERMED\` or \`EVERGREEN\`. \
\*\*Error Code:\*\* \`5629\` \
Initial term periodType is mandatory for termType TERMED and must be one of these: Month, or Year. \
\*\*Error Code:\*\* \`5630\` \
Initial term termPeriod is mandatory for termType TERMED and must be between 1 to 60 months. \
\*\*Error Code:\*\* \`5633\` \
For cancel subscription, remove reason cannot be blank. \
\*\*Error Code:\*\* \`5634\` \
For cancel subscription, remove reason must be at most 255 characters. \
\*\*Error Code:\*\* \`5635\` \
For cancel subscription, cancel reason cannot be blank. \
\*\*Error Code:\*\* \`5636\` \
For cancel subscription, cancel reason must be at most 255 characters. \
\*\*Error Code:\*\* \`5639\` \
Currency must be in a valid ISO currency code. \
\*\*Error Code:\*\* \`5009\` \
Value is not a whole number. \
\*\*Error Code:\*\* \`5628\` \
Unable to find partner SKU for some of the offers in the order. Please try creating a quote for this transaction or contact the Zoom Partner Success team. \
\*\*Error Code:\*\* \`5629\` \
Amendment or renewal is not allowed for offers with $0 net price. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request. \*\*Error Code:\*\* \`5632\` \
Unable to process the order. \
### Preview delta order metrics and subscriptions in an order
- **Method:** `POST`
- **Path:** `/commerce/order/preview`
- **Tags:** Order
Previews the delta order metrics and subscriptions in an order. Validates the order and gets the metrics like TCV, applicable discounts, and net MRR before placing the order for provisioning. This operation is only an order preview, and no order is submitted for fulfillment. To submit the order, use the [order API](https://developers.zoom.us/docs/api/commerce/#tag/order/post/commerce/order/preview). \n**Note** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api/).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:order:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `HEAVY`
**Not supported in Gov cluster**
#### Request Body
##### Content-Type: application/json
- **`header` (required)**
`object` — The order header details.
- **`order_date` (required)**
`string`, format: `YYYY-MM-DD` — The order date in YYYY-MM-DD format.
- **`additional_attributes`**
`array` — The order-level attributes.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`deal_reg_number`**
`string` — The registration number of the deal registered by the partner or reseller.
- **`order_description`**
`string` — The description of the order.
- **`order_type`**
`string`, possible values: `"trial", "sale"`, default: `"sale"` — The type of order.
- **`po_number`**
`string` — The purchase order number.
- **`amend_subscriptions`**
`array` — The order details for amending an existing subscription.
**Items:**
- **`add_add_ons`**
`array` — The offer details for add-ons to be added in the subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`offer_attributes`**
`array` — The offer's specific attributes such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges, it should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`add_offers`**
`array` — The offer details for offers to be added in the subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`offer_attributes`**
`array` — The offer's specific attributes such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges, it should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`cancel_subscription`**
`object` — The cancellation details.
- **`cancel_reason` (required)**
`string` — The reason for cancellation.
- **`cancel_by`**
`string`, possible values: `"EndOfCurrentTerm", "EndOfLastInvoicePeriod", "SpecificDate"` — When the subscription will be cancelled. Required for paid subscriptions. Currently only 'EndOfCurrentTerm' is supported.
- **`cancel_on`**
`string`, format: `YYYY-MM-DD` — Must be provided if \`cancel\_by\` is \`SpecificDate\`.
- **`remove_offers`**
`array` — The offer details for offers to be removed from the subscription.
**Items:**
- **`end_date` (required)**
`string`, format: `YYYY-MM-DD` — The date when the offer will be removed. It should be between today and the subscription end date.
- **`offer_price_list_id` (required)**
`string` — The offer price list ID for the offer to be removed from the subscription.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`remove_reason`**
`string` — The reason for cancellation.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`renew_subscription`**
`object` — The renewal details.
- **`renewal_term`**
`object` — The subscription's initial, renewal, or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then the \`term\_period\` field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, 60.
- **`subscription_number`**
`string` — The subscription number of the subscription which is being updated. Required for a paid subscription amendment.
- **`update_offers`**
`array` — The update terms and quantity of an offer or add-on.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID for the offer to be updated.
- **`start_date` (required)**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`offer_attributes`**
`array` — The offer's specific attributes such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges, it should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`update_subscription`**
`object` — Update the subscription attributes.
- **`auto_renew`**
`boolean` — Whether the subscription automatically renews at the end of each term. Only applicable if the initial term type is TERMED. If auto\_renew is true, providing renewal\_term is required.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set communication and invoice profile for the end customer.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.'
- **`deployment_partner_address`**
`object` — The address details. Required with 'deployment\_partner\_name'.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if \`requires\_professional\_services\` is set to \`Yes, Zoom will do the deployment\`.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if \`requires\_professional\_services\` is true.
- **`pso_engagement_request_id`**
`string` — Required if \`is\_zoom\_pso\_org\_engaged\` is set to \`Yes and I have a PSO Engagement Request ID\`.
- **`renewal_term`**
`object` — The subscription's renewal term. Required for paid subscriptions where \`order\_type\` = \`sale\`.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then the \`term\_period\` field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, 60.
- **`sold_to_crm_contact_number`**
`string` — The CRM contact number for the sold-to contact.
- **`upgrade_offers`**
`array` — The offer details for offers to be upgraded in the subscription.
**Items:**
- **`start_date` (required)**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`new_offer_price_list_id`**
`string` — The new offer price list ID.
- **`new_partner_sku_code`**
`string` — The unique SKU code for partners.
- **`offer_attributes`**
`array` — The offer's specific attributes such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`old_offer_price_list_id`**
`string` — The existing offer price list ID.
- **`old_partner_sku_code`**
`string` — The unique SKU code for partners. Either this setting or \`old\_offer\_price\_list\_id\` should be provided. If this is provided, \`old\_offer\_price\_list\_id\` will be ignored.
- **`old_subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges, it should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`zoom_account_number`**
`string` — The end customer Zoom account number. Required for amend trial order. This field is ignored for paid subscription amendments.
- **`create_subscriptions`**
`array` — The order details for creating a new subscription.
**Items:**
- **`currency` (required)**
`string` — The subscription currency in a three-letter ISO currency code.
- **`end_customer_crm_account_number` (required)**
`string` — The CRM account number for the end customer.
- **`initial_term` (required)**
`object` — The subscription's initial term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then the \`term\_period\` field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`sold_to_crm_contact_number` (required)**
`string` — The CRM contact number for the sold-to contact.
- **`add_add_ons`**
`array` — The new add-ons to be added to a subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`offer_attributes`**
`array` — The offer's specific attributes such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges, it should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`add_offers`**
`array` — The new offers to be added to a subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`offer_attributes`**
`array` — The offer's specific attributes such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Quantity is not applicable for flat-fee charges. For other charges, it should be between minimum and maximum allowed for the plan. Defaults to applicable value if left blank.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`auto_renew`**
`boolean`, default: `true` — Whether the subscription automatically renews at the end of each term. Defaults to true. Only applicable for \`createSubscription\` order action if the initial term type is TERMED.
- **`end_customer_account_number`**
`string` — The end customer Zoom account number.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set communication and invoice profile for the end customer. Will default to a language based on the end customer's country if left blank.
- **`free_months_reason_code`**
`string`, possible values: `"Customer's Desired Billing/Start Date", "Billing at Later Date for Other Reason", "Align to Customer's Renewal Date"` — The reason for requesting a free period in the subscription. Required if the subscription has a free period.
- **`paid_period_start_date`**
`string`, format: `YYYY-MM-DD` — The subscription's paid period start date. Required if the subscription has a free period.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.'
- **`deployment_partner_address`**
`object` — The address details. Required with 'deployment\_partner\_name'.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if \`requires\_professional\_services\` is set to \`Yes, Zoom will do the deployment\`.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if \`requires\_professional\_services\` is true.
- **`pso_engagement_request_id`**
`string` — Required if \`is\_zoom\_pso\_org\_engaged\` is set to \`Yes and I have a PSO Engagement Request ID\`.
- **`renewal_term`**
`object` — The subscription's renewal term. Required for paid subscriptions where \`order\_type\` = \`sale\`.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then the \`term\_period\` field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The term's end date, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The term's start date, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The term's duration in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`service_start_date`**
`string`, format: `YYYY-MM-DD` — The service start date. It should be equal to or before \`paid\_period\_start\_date\`.
- **`sub_reseller`**
`object` — The sub-reseller's account number. This input will be ignored if a deal registration number has been provided in the request. The sub-reseller associated with that deal registration will be associated with this order request.
- **`account_name`**
`string` — The sub-reseller's name.
- **`crm_account_number`**
`string` — The sub-reseller's CRM account number.
**Example:**
```json
{
"header": {
"order_type": "sale",
"order_description": "New ZCC subscription for ABC Pvt. Ltd.",
"deal_reg_number": "DELREG-1002-L1",
"order_date": "2023-10-03",
"po_number": "PO-10021-A",
"additional_attributes": [
{
"name": "Customer segment.",
"value": "Healthcare"
}
]
},
"create_subscriptions": [
{
"end_customer_account_number": "5333445346",
"end_customer_crm_account_number": "A-3454334",
"sold_to_crm_contact_number": "C-232442",
"end_customer_language": "es-ES;",
"initial_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2023-10-03"
},
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"sub_reseller": {
"crm_account_number": "A-45r33",
"account_name": "Novam Corp."
},
"service_start_date": "2024-03-20",
"paid_period_start_date": "2024-03-20",
"free_months_reason_code": "Billing at Later Date for Other Reason",
"currency": "CAD",
"auto_renew": true,
"add_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
]
}
],
"add_add_ons": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
]
}
],
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
}
],
"amend_subscriptions": [
{
"subscription_number": "A-31231322",
"zoom_account_number": "2334235678",
"add_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
]
}
],
"add_add_ons": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
]
}
],
"upgrade_offers": [
{
"new_offer_price_list_id": "Off-2323",
"new_partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"old_offer_price_list_id": "Off-2564",
"old_partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"old_subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
]
}
],
"remove_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"end_date": "2023-10-03",
"remove_reason": "Downsell"
}
],
"update_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
]
}
],
"cancel_subscription": {
"cancel_by": "EndOfCurrentTerm",
"cancel_on": "2023-10-03",
"cancel_reason": "Downsell"
},
"renew_subscription": {
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
}
},
"update_subscription": {
"auto_renew": true,
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"sold_to_crm_contact_number": "C-232442",
"end_customer_language": "es-ES;",
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "Zoom phone professional services"
}
}
}
]
}
```
#### Responses
##### Status: 201 Order created successfully.
###### Content-Type: application/json
- **`errors`**
`array` — The array of messages in case of validation processing errors.
**Items:**
- **`error_code` (required)**
`string` — The error code.
- **`error_description` (required)**
`string` — The error description.
- **`order_date`**
`string`, format: `MM-DD-YYYY` — The date when order should be placed in the billing system.
- **`order_metrics`**
`object` — The order metrics, such as tcv, mrr, tcb, and so on.
- **`mrr`**
`number`, format: `double` — The monthly recurring revenue.
- **`tcb`**
`number`, format: `double` — The total contracted billing. This is the forecast value at the time of booking for the total amount that will be billed over the duration of the charge.
- **`tcv`**
`number`, format: `double` — The total contract value. This is the total amount that has been booked over the duration of the charge.
- **`total_discount_pct`**
`number`, format: `percentage` — The total discount applied (in percentage).
- **`total_net_amount`**
`number`, format: `double` — The total net amount booked in this order.
- **`order_reference_id`**
`string` — The reference ID for an order.
- **`status`**
`string`, possible values: `"draft", "failedToSubmit", "completed", "canceled", "submitted", "failed"` — The preview status of the order. Supported values are \`draft\`, \`failedToSubmit\`, \`completed\`, \`canceled\`, \`submitted\`, and \`failed\`.
- **`subscription_item_metrics`**
`array` — The array of subscription line items.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — The charge model of this charge.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — The charge type of this charge.
- **`discounts`**
`array` — The applicable discounts.
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE", "ONETIMERECURRINGUSAGE"` — This field specifies how the discount will be applied. One time or recurring.
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — The application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription.
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — The type of discount.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either \`percent\_value\` or \`amount\_value\` is required.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either \`percent\_value\` or \`amount\_value\` is required but both should not be provided.
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — The money value.
- **`currency`**
`string` — The ISO code for the currency.
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — The money value.
- **`currency`**
`string` — The ISO code for the currency.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — The money value.
- **`currency`**
`string` — The ISO code for the currency.
- **`mrr`**
`object` — Represents the sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — The monetary value.
- **`currency`**
`string` — The ISO code for the currency.
- **`offer_id`**
`string` — The offer or plan ID.
- **`offer_name`**
`string` — The offer or plan name.
- **`offer_price_list_id`**
`string` — The offer price list ID.
- **`offer_price_list_name`**
`string` — The offer price list name.
- **`sku`**
`string` — The offer SKU.
- **`subscription_preview`**
`array` — The subscription metrics preview.
**Items:**
- **`mrr`**
`number`, format: `double` — The monthly recurring revenue.
- **`subscription_number`**
`string` — The subscription number of the subscription.
- **`tcb`**
`number`, format: `double` — The total contracted billing. This is the forecast value at the time of booking for the total amount that will be billed over the duration of the charge.
- **`tcv`**
`number`, format: `double` — The total contract value. This is the total amount that has been booked over the duration of the charge.
- **`total_discount_pct`**
`number`, format: `percentage` — The total discount applied (in percentage).
- **`total_net_amount`**
`number`, format: `double` — The total net amount booked in this subscription or amendment.
- **`warnings`**
`array` — The array of messages in case of validation or processing warnings.
**Items:**
- **`error_code` (required)**
`string` — The error code.
- **`error_description` (required)**
`string` — The error description.
**Example:**
```json
{
"status": "submitted",
"order_reference_id": "OR-3248714941",
"order_date": "07-01-2024",
"order_metrics": {
"tcv": 100000,
"tcb": 100000,
"mrr": 1000,
"total_net_amount": 100000,
"total_discount_pct": 0.1
},
"subscription_preview": [
{
"subscription_number": "A-31231322",
"tcv": 100000,
"tcb": 100000,
"mrr": 1000,
"total_net_amount": 100000,
"total_discount_pct": 0.1
}
],
"subscription_item_metrics": [
{
"offer_id": "PR-2323",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-00000118",
"offer_price_list_id": "Off-2323",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"mrr": {
"amount": 99.99,
"currency": "USD"
}
}
],
"errors": [
{
"error_code": "5604",
"error_description": "No pricebook exists with given offer_price_list_id."
}
],
"warnings": [
{
"error_code": "5604",
"error_description": "No pricebook exists with given offer_price_list_id."
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5662\` \
Sub Reseller account number is invalid or not associated with the partner. \
\*\*Error Code:\*\* \`5692\` \
End customer CRM number or Zoom account number is not associated with the partner. \
\*\*Error Code:\*\* \`5142\` \
No account found for the CRM account number. \
\*\*Error Code:\*\* \`5601\` \
\`Cancel\_on\` is required when \`cancel\_by\` is \`SpecificDate\`. \
\*\*Error Code:\*\* \`5604\` \
No pricebook exists with given \`offer\_price\_list\_id\`. \
\*\*Error Code:\*\* \`5660\` \
No pricebook exists with given partner SKU code. \
\*\*Error Code:\*\* \`5605\` \
Request body cannot be blank. \
\*\*Error Code:\*\* \`5606\` \
Order header cannot be null. \
\*\*Error Code:\*\* \`5607\` \
Order date cannot be blank. \
\*\*Error Code:\*\* \`5608\` \
Invalid order date format. Expected format is YYYY-MM-DD. \
\*\*Error Code:\*\* \`5609\` \
Order date should be greater than or equal to today and in \`YYYY-MM-DD\` format. \
\*\*Error Code:\*\* \`5610\` \
Invalid PO number. \
\*\*Error Code:\*\* \`5611\` \
Invalid quantity. \
\*\*Error Code:\*\* \`5623\` \
Invalid order type: value must be \`trial\` or \`sale\`. \
\*\*Error Code:\*\* \`5616\` \
For amendment order, subscription number cannot be blank. \
\*\*Error Code:\*\* \`5617\` \
Sub reseller \`crm\_account\_number\` cannot be blank. \
\*\*Error Code:\*\* \`5618\` \
Sub reseller \`account\_name\` cannot be blank. \
\*\*Error Code:\*\* \`5619\` \
Start date cannot be blank. \
\*\*Error Code:\*\* \`5002\` \
Invalid cancel on date format. Expected format is \`YYYY-MM-DD\`. \
\*\*Error Code:\*\* \`5678\` \
The subscription number is invalid. \
\*\*Error Code:\*\* \`5625\` \
Start date should be in valid date format \`YYYY-MM-DD\` and greater than or equal to today. \
\*\*Error Code:\*\* \`5627\` \
\`initialTerm\` \`termType\` must be either \`TERMED\` or \`EVERGREEN\`. \
\*\*Error Code:\*\* \`5629\` \
Initial term \`periodType\` is mandatory for \`termType\` TERMED and must be one of \`Month\` or \`Year\`. \
\*\*Error Code:\*\* \`5630\` \
Initial term \`termPeriod\` is mandatory for \`termType\` TERMED and must be between \`1\` to \`60\` months. \
\*\*Error Code:\*\* \`5633\` \
For cancel subscription, remove reason cannot be blank. \
\*\*Error Code:\*\* \`5634\` \
For cancel subscription, remove reason must be at most 255 characters. \
\*\*Error Code:\*\* \`5635\` \
For cancel subscription, cancel reason cannot be blank. \
\*\*Error Code:\*\* \`5636\` \
For cancel subscription, cancel reason must be at most 255 characters. \
\*\*Error Code:\*\* \`5639\` \
Currency must be in a valid ISO currency code. \
\*\*Error Code:\*\* \`5648\` \
For new subscription, you must provide either the end customer's CRM account number or Zoom account number. \
\*\*Error Code:\*\* \`5009\` \
Value is not a whole number. \
\*\*Error Code:\*\* \`5628\` \
Unable to find partner SKU for some of the offers in the Order. Please try creating a quote for this transaction or contact Zoom Partner Success team. \
\*\*Error Code:\*\* \`5629\` \
Amendment or renewal is not allowed for offers with $0 net price. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request. \*\*Error Code:\*\* \`5632\` \
Unable to process the order. \
### Gets all orders for a Zoom partner.
- **Method:** `GET`
- **Path:** `/commerce/orders`
- **Tags:** Order
Returns all orders for a Zoom partner based on specified filters.\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:order:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 Orders returned successfully.
###### Content-Type: application/json
- **`order_list`**
`array` — The orders list.
**Items:**
- **`creation_date`**
`string`, format: `YYYY-MM-DD` — The date when this order was created.
- **`deal_reg_number`**
`string` — The registration number of the deal registered by partner or reseller.
- **`effective_date`**
`string`, format: `YYYY-MM-DD` — The date when this order was activated. Also the contract's effective date.
- **`end_customer_account_name`**
`string` — The end customer's account name.
- **`end_customer_account_number`**
`string` — The end customer's Zoom account number.
- **`end_customer_crm_account_number`**
`string` — The end customer's CRM account number.
- **`invoice_owner_crm_account_number`**
`string` — The CRM account number for the Invoice Owner.
- **`invoice_owner_name`**
`string` — The name of the Invoice Owner account.
- **`net_amount`**
`object` — The net order value.
- **`amount`**
`number` — The money value.
- **`currency`**
`string` — The ISO code for the currency.
- **`order_number`**
`string` — The order number of the order.
- **`order_reference_id`**
`string` — The reference ID for a draft order.
- **`order_type`**
`string`, possible values: `"trial", "sale"` — The type of order.
- **`po_number`**
`string` — The purchase order's number.
- **`status`**
`string`, possible values: `"draft", "failedToSubmit", "completed", "canceled", "submitted", "failed"` — The status of the order. Supported values are "draft", "failedToSubmit", "completed", "canceled", "submitted", "failed".
- **`sub_reseller_crm_account_number`**
`string` — The sub-reseller's CRM account number if the order was placed by a distributor on their behalf.
- **`sub_reseller_name`**
`string` — The sub-reseller's name if the order was placed by a distributor on their behalf.
- **`tcv`**
`object` — The net order value.
- **`amount`**
`number` — The money value for total contract value.
- **`currency`**
`string` — The ISO code for the currency.
- **`trade_screening`**
`boolean` — Flag to indicate whether the subscription cleared trade screening check or not.
- **`transaction_type`**
`string`, possible values: `"New", "Amend"` — The transaction type for the order. Possible values are New or Amend.
- **`updated_date`**
`string`, format: `YYYY-MM-DD` — The date when this order was last updated.
- **`page_count`**
`integer` — The total number of pages in the result set.
**Example:**
```json
{
"page_count": 20,
"order_list": [
{
"order_reference_id": "OR-125613343",
"order_number": "O-3429342",
"status": "submitted",
"order_type": "sale",
"transaction_type": "New",
"invoice_owner_crm_account_number": "A-3454374",
"invoice_owner_name": "ABC Distributors",
"end_customer_account_name": "dfreABC Pvt. Ltd.",
"end_customer_account_number": "3842618277",
"end_customer_crm_account_number": "A-3454334",
"sub_reseller_name": "John",
"sub_reseller_crm_account_number": "A-348742",
"creation_date": "2024-07-01",
"effective_date": "2024-07-01",
"net_amount": {
"amount": 100000,
"currency": "USD"
},
"tcv": {
"amount": 100000,
"currency": "USD"
},
"updated_date": "2024-07-01",
"trade_screening": false,
"deal_reg_number": "DELREG-1002-L1",
"po_number": "PO-10021-A"
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5623\` \
Invalid order type. \
\*\*Error Code:\*\* \`5689\` \
Invalid order status. \
\*\*Error Code:\*\* \`5506\` \
Invalid sort values. It must be one of: orderNumber.asc, orderNumber.desc, orderReferenceId.asc, orderReferenceId.desc , zoomAccountNumber.asc , dealRegistrationNumber.asc, dealRegistrationNumber.desc, poNumber.asc, poNumber.desc, subResellerName.asc, subResellerName.desc, status.asc, status.desc, effectiveDate.asc, effectiveDate.desc, updatedDate.asc, or updatedDate.desc \
\*\*Error Code:\*\* \`5000\` \
Invalid character & or | in the name filter. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition that prevented it from fulfilling the request.
### Get order details by order reference ID
- **Method:** `GET`
- **Path:** `/commerce/orders/{orderReferenceId}`
- **Tags:** Order
Gets order details by order reference ID.\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:order:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 Order returned successfully.
###### Content-Type: application/json
- **`amend_subscriptions`**
`array` — Amendment order details.
**Items:**
- **`add_add_ons`**
`array` — subscription lines for amendment of an existing subscription
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — charge model of this charge
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — charge type of this charge
- **`discounts`**
`array` — Applicable discounts
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE", "ONETIMERECURRINGUSAGE"` — specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE"
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account"
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — type of discount. supported values are "DealReg", "Partner", "Exception"
- **`amount_value`**
`number`, format: `double` — discount in amount. Either percent\_value or amount\_value is required.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — discount in percentage. Either percent\_value or amount\_value is required but both should not be provided
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — offer or plan ID
- **`offer_name`**
`string` — offer/plan name
- **`offer_price_list_id`**
`string` — Offer price list ID
- **`offer_price_list_name`**
`string` — Offer price list name
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — Offer SKU
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`usage_based_charge`**
`boolean` — true if the plan has a usage or overage based charge
- **`add_offers`**
`array` — subscription lines for amendment of an existing subscription
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — charge model of this charge
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — charge type of this charge
- **`discounts`**
`array` — Applicable discounts
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE", "ONETIMERECURRINGUSAGE"` — specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE"
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account"
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — type of discount. supported values are "DealReg", "Partner", "Exception"
- **`amount_value`**
`number`, format: `double` — discount in amount. Either percent\_value or amount\_value is required.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — discount in percentage. Either percent\_value or amount\_value is required but both should not be provided
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — offer or plan ID
- **`offer_name`**
`string` — offer/plan name
- **`offer_price_list_id`**
`string` — Offer price list ID
- **`offer_price_list_name`**
`string` — Offer price list name
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — Offer SKU
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`usage_based_charge`**
`boolean` — true if the plan has a usage or overage based charge
- **`bill_to_contact`**
`object` — Bill to contact details
- **`crm_account_number`**
`string` — Unique CRM Number for the contact
- **`email`**
`string` — The contact's email id.
- **`first_name`**
`string` — The first name of the bill to contact.
- **`last_name`**
`string` — The last name of the bill to contact.
- **`cancel_subscription`**
`object` — Order cancellation details for a cancel subscription action.
- **`cancel_by`**
`string`, possible values: `"EndOfCurrentTerm", "EndOfLastInvoicePeriod", "SpecificDate"` — Supported values - "EndOfCurrentTerm", "EndOfLastInvoicePeriod", "SpecificDate".
- **`cancel_on`**
`string`, format: `YYYY-MM-DD` — Must be provided if cancel\_by is SpecificDate
- **`cancel_reason`**
`string` — Reason for cancellation
- **`currency`**
`string` — Subscription currency in 3-letter ISO currency code
- **`deal_reg_number`**
`string` — Registration Number of the deal registered by partner/reseller
- **`end_customer_account`**
`object` — Account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — Address details
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — type of address - billTo, shipTo, soldTo
- **`city` (required)**
`string` — city name
- **`country` (required)**
`string` — ISO code for the country
- **`line_1` (required)**
`string` — Street address
- **`state` (required)**
`string` — state or province
- **`line_2`**
`string` — Street address
- **`line_3`**
`string` — Street address
- **`postal_code`**
`string` — postal or zip code/number
- **`crm_account_number`**
`string` — Unique CRM Account Number for the customer or partner/reseller
- **`zoom_account_number`**
`string` — Unique Zoom Account Number for the customer or partner/reseller
- **`invoice_owner_account`**
`object` — Account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — Address details
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — type of address - billTo, shipTo, soldTo
- **`city` (required)**
`string` — city name
- **`country` (required)**
`string` — ISO code for the country
- **`line_1` (required)**
`string` — Street address
- **`state` (required)**
`string` — state or province
- **`line_2`**
`string` — Street address
- **`line_3`**
`string` — Street address
- **`postal_code`**
`string` — postal or zip code/number
- **`crm_account_number`**
`string` — Unique CRM Account Number for the customer or partner/reseller
- **`zoom_account_number`**
`string` — Unique Zoom Account Number for the customer or partner/reseller
- **`po_number`**
`string` — Purchase order number
- **`remove_offers`**
`array` — subscription lines for amendment of an existing subscription
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — charge model of this charge
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — charge type of this charge
- **`discounts`**
`array` — Applicable discounts
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE", "ONETIMERECURRINGUSAGE"` — specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE"
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account"
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — type of discount. supported values are "DealReg", "Partner", "Exception"
- **`amount_value`**
`number`, format: `double` — discount in amount. Either percent\_value or amount\_value is required.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — discount in percentage. Either percent\_value or amount\_value is required but both should not be provided
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — offer or plan ID
- **`offer_name`**
`string` — offer/plan name
- **`offer_price_list_id`**
`string` — Offer price list ID
- **`offer_price_list_name`**
`string` — Offer price list name
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — number of licenses. Should be between minimum and maximum allowed for the plan.
- **`remove_reason`**
`string` — The reason for cancellation.
- **`sku`**
`string` — Offer SKU
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`usage_based_charge`**
`boolean` — true if the plan has a usage or overage based charge
- **`renew_subscription`**
`object` — Order renewal details for a renew subscription action.
- **`renewal_term`**
`object` — Subscription initial, renewal, or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED", "EVERGREEN"` — type of the subcription term. Supported values are TERMED and EVERGREEN. If the subscription is TERMED, then the \`period\` and \`period\_type\` fields are also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The term's end date, in YYYY-MM-DD format.
- **`period_type`**
`string`, possible values: `"Month", "Year"` — Unit of time that the term is measured in. Only applicable if the value of the term\_type field is TERMED. Supported values are \`Month\` or \`Year\`.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The term's start date, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`sold_to_contact`**
`object` — Sold to contact details
- **`crm_account_number`**
`string` — Unique CRM Number for the contact
- **`email`**
`string` — The contact's email id.
- **`first_name`**
`string` — The first name of the sold to contact.
- **`last_name`**
`string` — The last name of the sold to contact.
- **`sub_reseller`**
`object` — Account details.
- **`account_name`**
`string` — The account name
- **`address`**
`object` — Address details
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — type of address - billTo, shipTo, soldTo
- **`city` (required)**
`string` — city name
- **`country` (required)**
`string` — ISO code for the country
- **`line_1` (required)**
`string` — Street address
- **`state` (required)**
`string` — state or province
- **`line_2`**
`string` — Street address
- **`line_3`**
`string` — Street address
- **`postal_code`**
`string` — postal or zip code/number
- **`crm_account_number`**
`string` — Unique CRM Account Number for the customer or partner/reseller
- **`zoom_account_number`**
`string` — Unique Zoom Account Number for the customer or partner/reseller
- **`subscription_metrics`**
`object` — subscription metrics like tcv, mrr, tcb .
- **`mrr`**
`number`, format: `double` — Monthly recurring revenue
- **`subscription_number`**
`string` — Subscription number of the subscription
- **`tcb`**
`number`, format: `double` — Total contracted billing. This is the forecast value at the time of booking for the total amount that will be billed over the duration of the charge.
- **`tcv`**
`number`, format: `double` — Total contract value. This is the total amount that has been booked over the duration of the charge.
- **`total_discount_pct`**
`number`, format: `percentage` — Total discount applied (in percentage))
- **`subscription_number`**
`string` — Subscription number of the subscription, which is created or updated. Will be blank if subscription creation is not complete.
- **`update_offers`**
`array` — subscription lines for amendment of an existing subscription. update terms and quantity of an offer or add-on
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — charge model of this charge
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — charge type of this charge
- **`discounts`**
`array` — Applicable discounts
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE", "ONETIMERECURRINGUSAGE"` — specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE"
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account"
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — type of discount. supported values are "DealReg", "Partner", "Exception"
- **`amount_value`**
`number`, format: `double` — discount in amount. Either percent\_value or amount\_value is required.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — discount in percentage. Either percent\_value or amount\_value is required but both should not be provided
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — offer or plan ID
- **`offer_name`**
`string` — offer/plan name
- **`offer_price_list_id`**
`string` — Offer price list ID
- **`offer_price_list_name`**
`string` — Offer price list name
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — Offer SKU
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`usage_based_charge`**
`boolean` — true if the plan has a usage or overage based charge
- **`update_subscription`**
`object` — Update subscription attributes.
- **`auto_renew`**
`boolean` — Whether the subscription automatically renews at the end of the each term. Only applicable if the initial term type is TERMED. If auto\_renew is true, providing renewal\_term is required.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set communication and invoice profile for the end customer.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.
- **`deployment_partner_address`**
`object` — The address details.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number.
- **`deployment_partner_name`**
`string` — The deployment partner's name.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if 'requires\_professional\_services' is set to 'Yes, Zoom will do the deployment\`.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if \`requires\_professional\_services\` is true.
- **`pso_engagement_request_id`**
`string` — Required if 'is\_zoom\_pso\_org\_engaged' is set to 'Yes and I have a PSO Engagement Request ID\`.
- **`renewal_term`**
`object` — The subscription's renewal term. Required for paid subscriptions, where \`order\_type = sale\`.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The subscription term's type. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The term's end date, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The term's start date, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The term's duration in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`sold_to_crm_contact_number`**
`string` — CRM contact number for the sold to contact.
- **`update_trial_subscription`**
`object` — Update trial subscription attributes.
- **`extend_trial_offers`**
`array` — Offers requiring trial period extension.
**Items:**
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The subscription line's end date, in YYYY-MM-DD format.
- **`offer_id`**
`string` — Offer or plan ID.
- **`offer_name`**
`string` — Offer or plan name.
- **`offer_price_list_id`**
`string` — The offer's price list ID.
- **`offer_price_list_name`**
`string` — Offer price list name.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`sku`**
`string` — Offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The subscription line's start date, in YYYY-MM-DD format.
- **`upgrade_offers`**
`array` — subscription lines for amendment of an existing subscription
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — charge model of this charge
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — charge type of this charge
- **`discounts`**
`array` — Applicable discounts
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE", "ONETIMERECURRINGUSAGE"` — specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE"
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account"
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — type of discount. supported values are "DealReg", "Partner", "Exception"
- **`amount_value`**
`number`, format: `double` — discount in amount. Either percent\_value or amount\_value is required.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — discount in percentage. Either percent\_value or amount\_value is required but both should not be provided
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — offer or plan ID
- **`offer_name`**
`string` — offer/plan name
- **`offer_price_list_id`**
`string` — Offer price list ID
- **`offer_price_list_name`**
`string` — Offer price list name
- **`old_offer_price_list_id`**
`string` — Old Offer price list ID in case of upgrade or cancel/replace order
- **`old_partner_sku_code`**
`string` — Unique SKU code for partners for old offer price list in case of upgrade or cancel/replace order.
- **`old_subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — Offer SKU
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`usage_based_charge`**
`boolean` — true if the plan has a usage or overage based charge
- **`create_subscription`**
`array` — New subscription order details.
**Items:**
- **`add_ons`**
`array` — add-ons for new subscription.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — charge model of this charge.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — Charge type of this charge.
- **`discounts`**
`array` — Applicable discounts.
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE", "ONETIMERECURRINGUSAGE"` — How the discount will be applied. One time or recurring.
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is \`subscription\` and the value of the \`apply\_to\` field is \`RECURRING\`, the discount applies to all recurring charges in the same subscription.
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — Type of discount.
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either \`percent\_value\` or \`amount\_value\` is required.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either \`percent\_value\` or \`amount\_value\` is required, but both should not be provided.
- **`net_amount`**
`object` — Represents sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`net_price`**
`object` — Represents sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency.
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — Offer or plan ID.
- **`offer_name`**
`string` — Offer or plan name.
- **`offer_price_list_id`**
`string` — Offer price list ID.
- **`offer_price_list_name`**
`string` — Offer price list name.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — Number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — Offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`usage_based_charge`**
`boolean` — True if the plan has a usage or overage based charge.
- **`agreement_dates`**
`object` — Subscription agreement dates.
- **`contract_effective_date`**
`string`, format: `YYYY-MM-DD` — Date when the contract will be effective from. It is a required field to provide in the order when order action type is \`createSubscription\`, in YYYY-MM-DD format and if \`order\_date\` is different from contract effective date.
- **`customer_acceptance_date`**
`string`, format: `YYYY-MM-DD` — Date when the order was approved by the customer. This is a required field to provide in the order when the order action type is \`addOffer\`, \`createSubscription\`, \`addOn\`, \`upgrade\`, \`upsell\`, and \`renewSubscription\`, in YYYY-MM-DD format.
- **`service_activation_date`**
`string`, format: `YYYY-MM-DD` — Date when the service will be activated from, in YYYY-MM-DD format.
- **`auto_renew`**
`boolean`, default: `true` — Whether the subscription automatically renews at the end of the each term. Defaults to true. Only applicable for "createSubscription" order action if the initial term type is TERMED.
- **`bill_to_contact`**
`object` — Bill to contact details.
- **`crm_contact_number`**
`string` — Unique CRM Number for the contact.
- **`email`**
`string` — The contact's email ID.
- **`first_name`**
`string` — The first name of the bill to contact.
- **`last_name`**
`string` — The last name of the bill to contact.
- **`currency`**
`string` — Subscription currency in 3-letter ISO currency code
- **`deal_reg_number`**
`string` — Registration Number of the deal registered by partner or reseller
- **`end_customer_account`**
`object` — Account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — Address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The address type.
- **`city` (required)**
`string` — City name.
- **`country` (required)**
`string` — The country's ISO code.
- **`line_1` (required)**
`string` — Street address.
- **`state` (required)**
`string` — State or province.
- **`line_2`**
`string` — Street address.
- **`line_3`**
`string` — Street address.
- **`postal_code`**
`string` — Postal or ZIP code or number.
- **`crm_account_number`**
`string` — Unique CRM Account Number for the customer, partner, or reseller.
- **`zoom_account_number`**
`string` — Unique Zoom Account Number for the customer, partner, or reseller.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language used to set communication and invoice profile for the end customer.
- **`free_months_included`**
`boolean` — True if the order created a free period subscription.
- **`free_months_reason_code`**
`string`, possible values: `"Customer's Desired Billing/Start Date", "Billing at Later Date for Other Reason", "Align to Customer's Renewal Date"` — Reason for free period in the subscription. Required if the subscription has free period.
- **`initial_term`**
`object` — Subscription initial, renewal or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED", "EVERGREEN"` — The subscription term's type. Supported values are TERMED and EVERGREEN. If the subscription is TERMED, then \`period\` and \`period\_type\` fields are also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the term, in YYYY-MM-DD format.
- **`period_type`**
`string`, possible values: `"Month", "Year"` — Unit of time that the term is measured in. Only applicable if the value of the term\_type field is TERMED. Supported values are \`Month\` or \`Year\`.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`invoice_owner_account`**
`object` — Account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — Address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The address type.
- **`city` (required)**
`string` — City name.
- **`country` (required)**
`string` — The country's ISO code.
- **`line_1` (required)**
`string` — Street address.
- **`state` (required)**
`string` — State or province.
- **`line_2`**
`string` — Street address.
- **`line_3`**
`string` — Street address.
- **`postal_code`**
`string` — Postal or ZIP code or number.
- **`crm_account_number`**
`string` — Unique CRM Account Number for the customer, partner, or reseller.
- **`zoom_account_number`**
`string` — Unique Zoom Account Number for the customer, partner, or reseller.
- **`offers`**
`array` — Subscription lines for new subscription.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — Charge model of this charge.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — Charge type of this charge.
- **`discounts`**
`array` — Applicable discounts
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE", "ONETIMERECURRINGUSAGE"` — How the discount will be applied. One time or recurring.
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is \`subscription\` and the value of the \`apply\_to\` field is \`RECURRING\`, the discount applies to all recurring charges in the same subscription.
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — Type of discount.
- **`amount_value`**
`number`, format: `double` — discount in amount. Either \`percent\_value\` or \`amount\_value\` is required.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either \`percent\_value\` or \`amount\_value\` is required but both should not be provided.
- **`net_amount`**
`object` — Represents sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`net_price`**
`object` — Represents sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency.
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — Offer or plan ID.
- **`offer_name`**
`string` — Offer or plan name.
- **`offer_price_list_id`**
`string` — Offer price list ID.
- **`offer_price_list_name`**
`string` — Offer price list name.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — Number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — Offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`usage_based_charge`**
`boolean` — True if the plan has a usage or overage based charge.
- **`paid_period_start_date`**
`string`, format: `YYYY-MM-DD` — Subscription paid period start date. Required if the subscription has free periods.
- **`payment_term`**
`string`, possible values: `"Due upon Receipt", "Net30", "Net45", "Net60"` — Payment term for this subscription. If null, will be defaulted to the payment term associated with the account.
- **`po_number`**
`string` — Purchase order number.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.
- **`deployment_partner_address`**
`object` — The address details.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number.
- **`deployment_partner_name`**
`string` — Name of the deployment partner.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if 'requires\_professional\_services' is set to 'Yes, Zoom will do the deployment.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if "requires\_professional\_services" is true.
- **`pso_engagement_request_id`**
`string` — Required if 'is\_zoom\_pso\_org\_engaged' is set to 'Yes and I have a PSO Engagement Request ID.
- **`renewal_term`**
`object` — Subscription initial, renewal or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED", "EVERGREEN"` — Type of the subcription term. Supported values are TERMED and EVERGREEN. If the subscription is TERMED, then the \`period\` and \`period\_type\` fields are also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the term, in YYYY-MM-DD format.
- **`period_type`**
`string`, possible values: `"Month", "Year"` — Unit of time that the term is measured in. Only applicable if the value of the term\_type field is TERMED. Supported values are \`Month\` or \`Year\`.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`service_start_date`**
`string`, format: `YYYY-MM-DD` — Service start date. Equal to or before \`paid\_period\_start\_date\`.
- **`sold_to_contact`**
`object` — Sold to contact details.
- **`crm_contact_number`**
`string` — Unique CRM Number for the contact.
- **`email`**
`string` — The contact's email ID.
- **`first_name`**
`string` — The first name of the sold to contact.
- **`last_name`**
`string` — The last name of the sold to contact.
- **`sold_to_crm_contact_number`**
`string` — CRM contact number for the sold to contact.
- **`sub_reseller`**
`object` — Account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — Address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The address type.
- **`city` (required)**
`string` — The city namel
- **`country` (required)**
`string` — The country's ISO code.
- **`line_1` (required)**
`string` — Street address
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — Street address
- **`line_3`**
`string` — Street addressl
- **`postal_code`**
`string` — Postal or zip code/numberl
- **`crm_account_number`**
`string` — Unique CRM Account Number for the customer, partner, or reseller.
- **`zoom_account_number`**
`string` — Unique Zoom Account Number for the customer, partner, or reseller.
- **`subscription_metrics`**
`object` — Subscription metrics like tcv, mrr, or tcb.
- **`mrr`**
`number`, format: `double` — Monthly recurring revenue.
- **`subscription_number`**
`string` — Subscription number of the subscription.
- **`tcb`**
`number`, format: `double` — Total contracted billing. This is the forecast value at the time of booking for the total amount that will be billed over the duration of the charge.
- **`tcv`**
`number`, format: `double` — Total contract value. This is the total amount that has been booked over the duration of the charge.
- **`total_discount_pct`**
`number`, format: `percentage` — Total discount applied, in percentage.
- **`subscription_number`**
`string` — Subscription number of the subscription, which is created or updated. Will be blank if subscription creation is not complete.
- **`errors`**
`array` — Array of messages in case of validation or processing errors.
**Items:**
- **`error_code`**
`string` — Error code.
- **`error_description`**
`string` — Error description.
- **`header`**
`object` — Order header details.
- **`order_date` (required)**
`string`, format: `YYYY-MM-DD` — Order date in YYYY-MM-DD format.
- **`additional_attributes`**
`array` — The order level attributes.
**Items:**
- **`name`**
`string` — The attribute name.
- **`value`**
`string` — The attribute's value.
- **`deal_reg_number`**
`string` — Registration Number of the deal registered by partner/reseller
- **`order_description`**
`string` — The order's description.
- **`order_metrics`**
`object` — Order metrics like tcv, mrr, or tcb.
- **`mrr`**
`number`, format: `double` — Monthly recurring revenue.
- **`tcb`**
`number`, format: `double` — Total contracted billing. This is the forecast value at the time of booking for the total amount that will be billed over the duration of the charge.
- **`tcv`**
`number`, format: `double` — Total contract value. This is the total amount that has been booked over the duration of the charge.
- **`total_discount_pct`**
`number`, format: `percentage` — Total discount applied, in percentage.
- **`total_net_amount`**
`number` — Total net amount, the sum of all the offers in this order.
- **`order_number`**
`string` — The billing system order number when the order is successfully submitted or completed.
- **`order_reference_id`**
`string` — Reference ID for an order.
- **`order_type`**
`string`, default: `"sale"` — Type of order - sale or trial.
- **`po_number`**
`string` — Purchase order number.
- **`status`**
`string`, possible values: `"draft", "failedToSubmit", "completed", "canceled", "submitted", "failed"` — The order's status. Supported values are \`draft\`, \`failedToSubmit\`, \`completed\`, \`canceled\`, \`submitted\`, \`failed\`.
- **`trade_screening`**
`boolean` — The flag to indicate whether the subcription cleared trade screening check or not.
- **`transaction_type`**
`string`, possible values: `"New", "Amend"` — The transaction type for the order. Possible values are New or Amend.
- **`trial_id`**
`string` — Trial's unique identifier if the order was trial order.
- **`warnings`**
`array` — The array of messages in case of validation or processing warnings
**Items:**
- **`error_code` (required)**
`string` — The error code.
- **`error_description` (required)**
`string` — The error description.
**Example:**
```json
{
"header": {
"order_reference_id": "OR-3248714941",
"order_type": "sale",
"transaction_type": "New",
"order_description": "New Contact Center subscription for ABC Pvt. Ltd.",
"status": "submitted",
"order_number": "PAR-OR-1012312",
"deal_reg_number": "DELREG-1002-L1",
"order_date": "2022-10-25",
"po_number": "PO-10021-A",
"trade_screening": false,
"order_metrics": {
"tcv": 120000,
"tcb": 120000,
"mrr": 10000,
"total_discount_pct": 0.1,
"total_net_amount": 123.46
},
"additional_attributes": [
{
"name": "Customer segment.",
"value": "Healthcare"
}
],
"trial_id": "Z-021462495"
},
"create_subscription": [
{
"subscription_number": "A-1232632",
"end_customer_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"invoice_owner_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sub_reseller": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1232",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sold_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "jchill@example.com"
},
"bill_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "jchill@example.com"
},
"initial_term": {
"term_type": "TERMED",
"period_type": "Month",
"term_period": 12,
"start_date": "2022-10-25",
"end_date": "2022-10-25"
},
"renewal_term": {
"term_type": "TERMED",
"period_type": "Month",
"term_period": 12,
"start_date": "2022-10-25",
"end_date": "2022-10-25"
},
"agreement_dates": {
"contract_effective_date": "2022-10-25",
"service_activation_date": "2022-10-25",
"customer_acceptance_date": "2022-10-25"
},
"sold_to_crm_contact_number": "C-34267",
"end_customer_language": "es-ES;",
"payment_term": "Net30",
"service_start_date": "2022-10-25",
"paid_period_start_date": "2022-10-25",
"free_months_included": false,
"free_months_reason_code": "Billing at Later Date for Other Reason",
"auto_renew": true,
"currency": "CAD",
"deal_reg_number": "DELREG-1002-L1",
"po_number": "PO-10021-A",
"subscription_metrics": {
"subscription_number": "A2324323",
"tcv": 120000,
"tcb": 120000,
"mrr": 10000,
"total_discount_pct": 10
},
"offers": [
{
"offer_id": "Off-34213",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"add_ons": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
}
],
"amend_subscriptions": [
{
"subscription_number": "A-4534587",
"end_customer_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"invoice_owner_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sub_reseller": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sold_to_contact": {
"crm_account_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "abc@test.com"
},
"bill_to_contact": {
"crm_account_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "abc@test.com"
},
"currency": "CAD",
"deal_reg_number": "DELREG-1002-L1",
"po_number": "PO-10021-A",
"subscription_metrics": {
"subscription_number": "A4324242",
"tcv": 120000,
"tcb": 120000,
"mrr": 10000,
"total_discount_pct": 10
},
"add_offers": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"add_add_ons": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"upgrade_offers": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"old_offer_price_list_id": "PRL-3412",
"old_partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"old_subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"remove_offers": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"remove_reason": "Downsell",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"update_offers": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"cancel_subscription": {
"cancel_by": "EndOfCurrentTerm",
"cancel_on": "2022-10-25",
"cancel_reason": "Customer no longer uses this."
},
"renew_subscription": {
"renewal_term": {
"term_type": "TERMED",
"period_type": "Month",
"term_period": 12,
"start_date": "2022-10-25",
"end_date": "2022-10-25"
}
},
"update_subscription": {
"auto_renew": true,
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"sold_to_crm_contact_number": "C-232442",
"end_customer_language": "es-ES;",
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
},
"update_trial_subscription": {
"extend_trial_offers": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-3683272383",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"start_date": "2022-10-25",
"end_date": "2022-10-25"
}
]
}
}
],
"errors": [
{
"error_code": "5012",
"error_description": "Invalid Partner/Reseller Identifier supplied."
}
],
"warnings": [
{
"error_code": "5604",
"error_description": "No pricebook exists with given offer_price_list_id."
}
]
}
```
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found \*\*Error Code:\*\* \`5009\` \
No records found. \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Upload an attachment pdf file in context of a deal registration or quote
- **Method:** `POST`
- **Path:** `/commerce/file`
- **Tags:** Platform
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:file:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Request Body
##### Content-Type: multipart/form-data
- **`file`**
`string` — Attachment file. Only PDF format supported.
**Example:**
```json
{
"file": "Vm0wd2QyUXlVWGxWV0d4V1YwZDRWMVl3WkRSV01WbDNXa1JTVjAxV2JETlhhMUpUVjBaS2RHVkdXbFppVkZaeVZtMTRTMk15VGtsalJtaG9UVmhDVVZkV1pEUlRNazE0V2toR1VtSkdXbGhaYTJoRFZWWmtWMXBFVWxSTmF6RTBWMnRvUjFWdFNrZFhiR2hhWWtaV00xcFZXbUZrUjA1R1drWndWMDFFUlRGV1ZFb3dWakZhV0ZOcmFHaFNlbXhXVm1wT1QwMHhjRlpYYlVacVZtdGFNRlZ0ZUZOVWJVWTJVbFJHVjFaRmIzZFdha1poVjBaT2NtRkhhRk5sYlhoWFZtMHdlR0l4U2tkWGJHUllZbFZhY2xWcVJtRlRSbGw1VFZSU1ZrMXJjRWxhU0hCSFZqSkZlVlZZWkZwbGEzQklXWHBHVDJSV1ZuUmhSazVzWWxob1dGWnRNSGRsUjBsNFUydGtXR0pIVWxsWmJHaFRWMFpTVjJGRlRsTmlSbkJaV2xWYVQxWlhTbFpYVkVwV1lrWktSRlpxUVhoa1ZsWjFWMnhhYUdFeGNGbFhhMVpoVkRKT2MyTkZaR2hTTW5oVVZGY3hiMkl4V1hoYVJFSmFWbXhzTTFSVmFHOWhiRXB6WTBac1dtSkdXbWhaTW5oWFkxWkdWVkpzVGs1WFJVcElWbXBLTkZReFdsaFRhMlJxVW14d1dGbHNhRk5OTVZweFUydDBWMVpyY0ZwWGExcDNZa2RGZWxGcmJGaFhTRUpJVmtSS1UxWXhXblZVYkdocFZqTm9WVlpHWTNoaU1sSnpWMjVTVGxkSFVsWlVWM1J6VGxaV2RHUkhkRmhTTUhCSlZsZDRjMWR0U2toaFJsSlhUVVp3VkZacVNrZFNiRkp6Vkcxc1UySnJTbUZXTW5oWFdWWlJlRmRzYUZSaVJuQlpWbXRXZDFZeGJISlhhM1JVVW14d2VGVXlkR0ZpUmxwelYyeHdXR0V4Y0ROWmEyUkdaV3hHY21KR1pGZE5NRXBKVm10U1MxVXhXWGhXYmxaV1lsaENWRmxyVm5kV1ZscDBaVWM1VWsxWFVucFdNV2h2VjBkS1JrNVdVbFZXYlZFd1ZqRmFWMlJIVWtoa1JtUk9WakZLU2xkV1ZtRmpNV1IwVTJ0a1dHSlhhR0ZVVmxwM1pXeHJlVTFWWkZOaVJrcDZWa2N4YzFVeVNuSlRiVVpYVFc1b1dGbHFTa1psUm1SWldrVTFWMVpzY0ZWWFYzUnJWVEZzVjFWc1dsaGliVkp6V1d0YWQyVkdWblJOVldSVlRXdHdSMVl5ZUhkWGJGcFhZMGRvV21FeVVrZGFWV1JQVWxaa2MxcEhiRmhTVlhCS1ZtMTBVMU14VlhoWFdHaFlZbXhhVmxsclpHOWpSbHB4VkcwNVYxWnRVbGhXVjNNMVZXc3hXRlZyYUZkTmFsWlVWa2Q0WVZKc1RuTmhSbFpYWWxaRmQxWnFRbUZaVm1SSVZXdG9hMUp0YUZSVVZXaERVMnhhYzFwRVVtcE5WMUl3VlRKMGIyRkdTbk5UYkdoVlZsWndNMVpyV21GalZrcDFXa1pPVGxacmNEVldSM2hoVkRKR1YxTnVVbEJXUlRWWVZGYzFiMWRHYkZoamVrWllVbXR3ZVZkcldtOWhWMFkyVm01b1YxWkZTbkpVYTFwclVqRldjMXBHYUdoTk1VcFZWbGN4TkdReVZrZFdiR1JvVW5wc2IxUldXbmRsYkZsNVkwVmtWMDFFUmpGWlZXaExWakZhUmxkcmVGZE5WbkJJV1RJeFMxSXhjRWhpUm1oVFZsaENTMVp0TVRCVk1VbDVVbGhvV0ZkSGVGWlpWRVozWVVaV2NWTnRPVmRTYkVwWlZHeGpOVll4V25OalJXaFlWa1UxZGxsV1ZYaFhSbFoxWTBaa1RsWXlhREpXYWtKclV6RmtWMVp1U2xCV2JIQndWbXRXVm1ReFduRlJiVVphVm1zMVNWWlhkRzloTVVwMFZXNUNWMkpIYUVSVWJYaGhWbFpPVlZKc1ZrNVdia0YzVmxjd01WTXhXa2hUYkdob1VtMW9WbFpzV25kTk1YQllaVWhLYkZZeFdrcFhhMXBQVkd4YWNtSXpaRmhpUmxwb1dWUktSMVl4VGxsalJuQk9UVzFvV1ZaR1l6RmlNV1JIVjI1R1UySkZjSE5WYlRGVFYyeGtjbFpVUmxoU2EzQmFWVmQ0YzFkR1duUlZhbHBWVm14d2VsWnFSbGRqTVdSellVZHNhVlpyY0ZwV2JHTjRUa2RSZVZaclpGZGliRXBQVm14a1UxZEdVbFpWYTJSc1ZteEtlbFp0TURWV01ERldZbnBLVm1KWVVuWldha1poVW14a2NtVkdaR2hoTTBKUlZsY3hORmxYVFhoalJXaHBVbXMxVDFac1dscGxiRnAwWlVkR1ZrMVZiRFJaYTFwclYwZEtjbU5GT1ZkaVdHZ3pWakJhYzFkWFRrZGFSbVJUWWtad05WWnRNVEJaVmxGNFZteFdUbEpIY3prPQ=="
}
```
#### Responses
##### Status: 201 File uploaded successfully.
###### Content-Type: application/json
- **`document_reference_id`**
`string` — Unique reference id for the uploaded file.
**Example:**
```json
{
"document_reference_id": "DOC-1234"
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`7101\` \
Only PDF files are supported. \
\*\*Error Code:\*\* \`7102\` \
Associated object type is required. \
\*\*Error Code:\*\* \`7103\` \
Associated object reference id is required. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request. \*\*Error Code:\*\* \`7100\` \
Unable to upload file. Please try again later. \
### Gets details of all files associated with a quote or deal registration
- **Method:** `GET`
- **Path:** `/commerce/files/{associatedReferenceId}/details`
- **Tags:** Platform
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:file:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
#### Responses
##### Status: 200 All files retrieved successfully.
###### Content-Type: application/json
**Array of:**
- **`associated_object_type`**
`string`, possible values: `"Quote", "Deal"` — Context object type - Quote, Deal etc.
- **`associated_reference_id`**
`string` — Unique reference ID for the associated object. If the "associated\_object\_type" is "Quote", this will be quote\_reference\_id.
- **`description`**
`string` — Description for the attachment.
- **`document_name`**
`string` — The file name.
- **`document_reference_id`**
`string` — Unique reference ID for the uploaded file.
- **`document_type`**
`string` — Type of document.
- **`uploaded_on`**
`string`, format: `YYYY-MM-DD` — Date when the document was uploaded.
* Max items: `10`
**Example:**
```json
[
{
"associated_object_type": "Quote",
"associated_reference_id": "QU-2323",
"description": "Client approval for a quote.",
"uploaded_on": "2023-10-03",
"document_reference_id": "DOC-1234",
"document_name": "endcustomer_acceptance_12032024.pdf",
"document_type": "Purchase Order"
}
]
```
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 403 \*\*HTTP Status Code:\*\* \`403\` \
Forbidden Insufficient permissions.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found Incorrect associated reference ID.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Download a file associated with a quote or deal registration.
- **Method:** `GET`
- **Path:** `/commerce/files/{documentReferenceId}`
- **Tags:** Platform
Download a file associated with a quote or deal registration.
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:file:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 File retrieved successfully.
###### Content-Type: application/pdf
`string`
**Example:**
```json
"VmpJeGQxVnRWblJWYkZab1UwZDRjMVpyWkd0T2JGSllUbGQwYVZJd1dsbFpNR1F3WVVaSmVXVklhRmhXYldoeVdXcEdTMUp0U2tkUmJGcFhZbFpLVFZaWGRGWk9Sa0pTVUZRd1BRPT0="
```
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request. \*\*Error Code:\*\* \`6104\` \
Unable to download the file. Please try again later. \
### Gets Zoom Product Catalog for a Zoom Partner
- **Method:** `POST`
- **Path:** `/commerce/catalog`
- **Tags:** Product Catalog
Returns the Zoom product catalog for a Zoom Partner.\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:product_catalog:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Request Body
##### Content-Type: application/json
- **`filter_options` (required)**
`array` — This field filters the results based on criteria. Multiple filter criteria can be provided.
**Items:**
- **`filter_by` (required)**
`string`, possible values: `"offerType", "billingPeriod", "currency", "country", "offerIds", "partnerSkuCodes", "priceListIds"` — Filters by \`offerType\`, \`billingPeriod\`, \`currency\`, \`country\`, \`offerIds\`, \`partnerSkuCodes\`, \`priceListIds\`, 'quoteEligible' and 'sector'. By default, the API will filter by 'offerType=plan', 'currency=USD'.
- **`filter_value` (required)**
`string` — The filter values are separated by commas. For offerType, supported values are - plan, standalone, configurable, isv, addon. For billingPeriod, supported values are - Month, Quarter, Annual, Semi-Annual, Two Years, Three Years, Week, Subscription Term. For sector, supported values are - Commercial, USDOD and GOV.
- **`operand`**
`string`, possible values: `"in", "notIn"` — Supported values: \`in\` and \`notIn\`. Default is \`in\`.
- **`eligibility_criteria`**
`object` — The eligibility criteria for searching through the Zoom product catalog.
- **`only_base_plans`**
`boolean` — If \`only\_base\_plans\` = true, the API returns only base plan offers. Only one of these criteria: \`only\_base\_plans\` or \`upgrade\_offer\_id\` should be specified in the request.
- **`only_trial_eligible`**
`boolean` — If true, the API returns only trial-eligible offers or add-ons. The default is false.
- **`upgrade_offer_id`**
`string` — If this criterion is selected, the API returns only applicable upgrade offers in the response. Only one of these criteria: \`only\_base\_plans\` or \`upgrade\_offer\_id\` should be specified in the request.
**Example:**
```json
{
"filter_options": [
{
"filter_by": "billingPeriod",
"filter_value": "Annual",
"operand": "in"
}
],
"eligibility_criteria": {
"only_trial_eligible": false,
"only_base_plans": false,
"upgrade_offer_id": "OFR-002"
}
}
```
#### Responses
##### Status: 200 Retrieved all currently available offers.
###### Content-Type: application/json
- **`offers` (required)**
`array` — The list of Zoom offers available for a Zoom partner.
**Items:**
- **`offer_id` (required)**
`string` — The unique identifier for the Zoom offer or plan. Offer can be a hard bundle, standalone Zoom Product, dynamic bundle, add-on or an ISV.
- **`offer_name` (required)**
`string` — The plan name of the Zoom offer or plan. Offer can be a hard bundle, standalone Zoom Product, dynamic bundle or an ISV.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The offer availability end date.
- **`offer_attributes`**
`array` — The offer's attributes.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`uom`**
`string` — The unit of measure.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types: Integer, Enum, String, Boolean, Object.
- **`offer_desc`**
`string` — The short description for the plan.
- **`offer_products`**
`array` — The products associated with an offer.
**Items:**
- **`price_list`**
`array` — The offer price list or rate plans.
**Items:**
- **`billing_period`**
`string`, possible values: `"Month", "Quarter", "Annual", "Semi-Annual", "Two Years", "Three Years", "Week", "Subscription Term"` — The billing period for this price list: Month, Annual, Quarter, and so on.
- **`eccn_value`**
`string` — The ECCN value for the offer.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date until when this price plan is active.
- **`price_list_id`**
`string` — The unique identifier for the price plan.
- **`price_list_name`**
`string` — The name of the price plan.
- **`prices`**
`array` — The offer price list or rate plan charges.
**Items:**
- **`amount`**
`number` — The list price per UOM. It should not be null if charge model is not tiered or volume.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Tiered Pricing", "Volume Pricing", "Per Unit Pricing", "Overage Pricing"` — The supported values for the charge model are Flat Fee Pricing, Tiered Pricing, Volume Pricing, Per Unit Pricing, Overage Pricing.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — The supported values for the charge type are OneTime, Recurring, and Usage.
- **`country`**
`string` — The ISO country code for this charge.
- **`currency`**
`string` — The ISO currency code for this charge.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The effective end date for the price.
- **`min_unit_quantity`**
`integer` — The minimum quantity for this charge.
- **`name`**
`string` — The name for the charge.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`price_list_charge_id`**
`string` — The unique identifier for the charge.
- **`price_tiers`**
`array` — The price list charge tier details for a volume or tiered price list charge.
**Items:**
- **`apply_rule`**
`string` — This field applies a rule of either flat-fee or per-unit.
- **`lower`**
`integer` — The lower limit of the tier.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`price`**
`number`, format: `double` — The tier price.
- **`upper`**
`integer` — The upper limit of the tier.
- **`region`**
`string`, possible values: `"LATAM", "APAC"` — The geographic region for this charge.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The effective start date for the price.
- **`status`**
`string`, possible values: `"Active", "In-active", "Expired"` — The status of the charge.
- **`uom`**
`string` — The unit of measure for the charge.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date when this price plan can be used.
- **`status`**
`string`, possible values: `"Active", "Limited", "In-active", "Expired"` — Whether the price list is active or not. Supported values: Active, Limited, Inactive, or Expired.
- **`product_family_id`**
`string` — The Zoom product family ID.
- **`product_family_name`**
`string` — The Zoom product family name.
- **`product_features`**
`array` — The product features.
**Items:**
- **`feature_id`**
`string` — The feature or attribute of the product.
- **`name`**
`string` — The feature or attribute of the product.
- **`uom`**
`string` — The unit of measure.
- **`value`**
`string` — The feature or attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The value data type. Supported data types: Integer, Enum, String, Boolean, or Object.
- **`product_group_id`**
`string` — The Zoom product group ID.
- **`product_group_name`**
`string` — The Zoom product group name.
- **`product_id`**
`string` — The unique identifier for the product.
- **`product_name`**
`string` — The Zoom product's name.
- **`product_type`**
`string`, possible values: `"base", "add-on'"` — The supported values are base and add-on.
- **`sku`**
`string` — The SKU for the product.
- **`offer_type`**
`string`, possible values: `"plan", "standalone", "configurable", "isv", "addon"` — The type of offering. Supported options are plan, standalone, addon, configurable, and ISV.
- **`pricebook`**
`array` — The price book details.
**Items:**
- **`billing_period`**
`string`, possible values: `"Month", "Quarter", "Annual", "Semi-Annual", "Two Years", "Three Years", "Week", "Subscription Term"` — The billing period for this price list: Month, Annual, Quarter, and so on.
- **`eccn_value`**
`string` — The ECCN value for the offer.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date until when this price plan is active.
- **`price_list_id`**
`string` — The unique identifier for the price plan.
- **`price_list_name`**
`string` — The name of the price plan.
- **`pricebook_attributes`**
`array` — The price book attributes.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types: Integer, Enum, String, Boolean, Object.
- **`prices`**
`array` — The offer price list or rate plan charges.
**Items:**
- **`amount`**
`number` — The list price per UOM. It should not be null if charge model is not tiered or volume.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Tiered Pricing", "Volume Pricing", "Per Unit Pricing", "Overage Pricing"` — The supported values for the charge model are Flat Fee Pricing, Tiered Pricing, Volume Pricing, Per Unit Pricing, Overage Pricing.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — The supported values for the charge type are OneTime, Recurring, and Usage.
- **`country`**
`string` — The ISO country code for this charge.
- **`currency`**
`string` — The ISO currency code for this charge.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The effective end date for the price.
- **`is_channel_discount_applicable`**
`boolean` — True if 'z\_product\_class' is 1 , 2 or 3 and the class discount applies to this charge.
- **`min_unit_quantity`**
`integer` — The minimum quantity for this charge.
- **`name`**
`string` — The name for the charge.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`price_list_charge_id`**
`string` — The unique identifier for the charge.
- **`price_tiers`**
`array` — The price list charge tier details for a volume or tiered price list charge.
**Items:**
- **`apply_rule`**
`string` — Applies the rule of either flat-fee or per-unit.
- **`lower`**
`integer` — The lower limit of the tier.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`price`**
`number`, format: `double` — The tier price.
- **`upper`**
`integer` — The upper limit of the tier.
- **`region`**
`string`, possible values: `"LATAM", "APAC"` — The geographic region for this charge.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The effective start date for the price.
- **`status`**
`string`, possible values: `"Active", "In-active", "Expired"` — The status of the charge.
- **`uom`**
`string` — The unit of measure for the charge.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date when this price plan can be used.
- **`status`**
`string`, possible values: `"Active", "Limited", "In-active", "Expired"` — Whether the price list is active or not. Supported values: Active, Limited, Inactive, or Expired.
- **`z_product_class`**
`string`, possible values: `"1", "2", "3", "4"` — The Zoom product class for this price list.
- **`sku`**
`string` — The Zoom offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The offer availability start date.
- **`status`**
`string`, possible values: `"Active", "Limited", "In-active", "Expired"` — Whether the offer is active or not. Supported values: Active, Limited, Inactive, or Expired.
- **`z_product_category`**
`string`, possible values: `"Add-on Product", "Add On Services", "Base Product", "Others", "Professional Service", "Standalone Product"` — The Zoom product category. Supported values are Add-on Product, Add On Services, Base Product, Others, Professional Service, Standalone Product.
**Example:**
```json
{
"offers": [
{
"offer_id": "OFR-0000012",
"offer_name": "Zoom One Pro",
"offer_desc": "Zoom One Professional Bundle",
"offer_type": "plan",
"z_product_category": "Base Product",
"sku": "SKU-00000118",
"status": "Limited",
"start_date": "2020-10-01",
"end_date": "2023-10-25",
"offer_products": [
{
"product_name": "Meetings",
"product_id": "PR-1323",
"product_family_id": "dfewur3erfdd",
"product_family_name": "Core Communication",
"product_group_id": "dfewur3erfdd",
"product_group_name": "Communication",
"product_type": "base",
"sku": "SKU-10000120",
"product_features": [
{
"feature_id": "Number of participants",
"name": "Maximum number of participants supported",
"value_type": "Integer",
"value": "100",
"uom": "count"
}
],
"price_list": [
{
"price_list_id": "PRL-23823",
"price_list_name": "Zoom Workplace Pro Annual",
"prices": [
{
"price_list_charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"charge_type": "Recurring",
"charge_model": "Volume Pricing",
"name": "Flat fee charge",
"uom": "host",
"amount": 9.99,
"currency": "USD",
"region": "LATAM",
"country": "US",
"min_unit_quantity": 10,
"status": "Active",
"start_date": "2023-10-25",
"end_date": "2023-10-25",
"price_tiers": [
{
"partner_sku_code": "[Max Depth Exceeded]",
"lower": "[Max Depth Exceeded]",
"upper": "[Max Depth Exceeded]",
"price": "[Max Depth Exceeded]",
"apply_rule": "[Max Depth Exceeded]"
}
]
}
],
"start_date": "2023-10-25",
"end_date": "2030-10-02",
"billing_period": "Month",
"status": "Limited",
"eccn_value": "5D992"
}
]
}
],
"offer_attributes": [
{
"name": "Min licenses for purchase",
"uom": "count",
"value_type": "Integer",
"value": "10"
}
],
"pricebook": [
{
"price_list_id": "PRL-23823",
"price_list_name": "Zoom Workplace Pro Annual",
"prices": [
{
"price_list_charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"charge_type": "Recurring",
"charge_model": "Volume Pricing",
"name": "Flat fee charge",
"uom": "host",
"amount": 9.99,
"currency": "USD",
"region": "LATAM",
"country": "US",
"min_unit_quantity": 10,
"status": "Active",
"start_date": "2023-10-25",
"end_date": "2023-10-25",
"is_channel_discount_applicable": true,
"price_tiers": [
{
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"lower": 1,
"upper": 10,
"price": 81,
"apply_rule": "per-unit"
}
]
}
],
"start_date": "2023-10-25",
"end_date": "2030-10-02",
"billing_period": "Month",
"status": "Limited",
"eccn_value": "5D992",
"z_product_class": "1",
"pricebook_attributes": [
{
"name": "Pricebook eligible for Order",
"value_type": "Boolean",
"value": "true"
}
]
}
]
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5408\` \
Invalid filter\_by value. Valid values are: offerIds, offerType, billingPeriod, currency, country, priceListIds, partnerSkuCodes. \
\*\*Error Code:\*\* \`5411\` \
Invalid filter\_value. \
\*\*Error Code:\*\* \`5401\` \
No offer present for given filters. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Gets the details for a Zoom product or offer.
- **Method:** `GET`
- **Path:** `/commerce/catalog/{offerId}`
- **Tags:** Product Catalog
Returns the details for a Zoom product or offer. Each offer is identified by a unique ID.\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:product_catalog:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 The Zoom product or offer details returned successfully.
###### Content-Type: application/json
- **`offer_id` (required)**
`string` — The unique identifier for the Zoom offer or plan. Offer can be a hard bundle, standalone Zoom Product, dynamic bundle, add-on, or an ISV.
- **`offer_name` (required)**
`string` — The plan name of the Zoom offer or plan. Offer can be a hard bundle, standalone Zoom Product, dynamic bundle, or an ISV.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The offer availability of the end date.
- **`offer_attributes`**
`array` — The offer attributes.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`uom`**
`string` — The unit of measure.
- **`value`**
`string` — The attribute's value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types: Integer, Enum, String, Boolean, or Object.
- **`offer_desc`**
`string` — The short description for the plan.
- **`offer_products`**
`array` — The products associated with an offer.
**Items:**
- **`price_list`**
`array` — The offer price list or rate plans.
**Items:**
- **`billing_period`**
`string`, possible values: `"Month", "Quarter", "Annual", "Semi-Annual", "Two Years", "Three Years", "Week", "Subscription Term"` — The billing period for this price list: Month, Annual, Quarter, and so on.
- **`eccn_value`**
`string` — The ECCN value for the offer.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date until when this price plan is active.
- **`price_list_id`**
`string` — The unique identifier for the price plan.
- **`price_list_name`**
`string` — The name of the price plan.
- **`prices`**
`array` — The offer price list or rate plan charges.
**Items:**
- **`amount`**
`number` — The list price per UOM. It should not be null if charge model is not tiered or volume.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Tiered Pricing", "Volume Pricing", "Per Unit Pricing", "Overage Pricing"` — The supported values for the charge model are Flat Fee Pricing, Tiered Pricing, Volume Pricing, Per Unit Pricing, Overage Pricing.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — The supported values for the charge type are OneTime, Recurring, and Usage.
- **`country`**
`string` — The ISO country code for this charge.
- **`currency`**
`string` — The ISO currency code for this charge.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The effective end date for the price.
- **`min_unit_quantity`**
`integer` — The minimum quantity for this charge.
- **`name`**
`string` — The name for the charge.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`price_list_charge_id`**
`string` — The unique identifier for the charge.
- **`price_tiers`**
`array` — The price list's charge tier details for a volume or tiered price list charge.
**Items:**
- **`apply_rule`**
`string` — The apply rule: flat-fee or per-unit.
- **`lower`**
`integer` — The lower limit of the tier.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`price`**
`number`, format: `double` — The tier price.
- **`upper`**
`integer` — The upper limit of the tier.
- **`region`**
`string`, possible values: `"LATAM", "APAC"` — The geographic region for this charge.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The effective start date for the price.
- **`status`**
`string`, possible values: `"Active", "In-active", "Expired"` — The status of the charge.
- **`uom`**
`string` — The unit of measure for the charge.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date when this price plan can be used.
- **`status`**
`string`, possible values: `"Active", "Limited", "In-active", "Expired"` — Whether the price list is active or not. Supported values: Active, Limited, Inactive, or Expired.
- **`product_family_id`**
`string` — The Zoom product family ID.
- **`product_family_name`**
`string` — The Zoom product family name.
- **`product_features`**
`array` — The product features.
**Items:**
- **`feature_id`**
`string` — The feature or attribute of the product.
- **`name`**
`string` — The feature or attribute of the product.
- **`uom`**
`string` — The unit of measure.
- **`value`**
`string` — The feature or attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — Value data type. Supported data types: Integer, Enum, String, Boolean, and Object.
- **`product_group_id`**
`string` — The Zoom product group ID.
- **`product_group_name`**
`string` — The Zoom product group name.
- **`product_id`**
`string` — The unique identifier for the product.
- **`product_name`**
`string` — The Zoom product name.
- **`product_type`**
`string`, possible values: `"base", "add-on'"` — Supported values: base, and add-on.
- **`sku`**
`string` — The SKU for the product.
- **`offer_type`**
`string`, possible values: `"plan", "standalone", "configurable", "isv", "addon"` — The type of offering. Supported options are plan, standalone, add-on, configurable, or ISV.
- **`pricebook`**
`array` — The price book details.
**Items:**
- **`billing_period`**
`string`, possible values: `"Month", "Quarter", "Annual", "Semi-Annual", "Two Years", "Three Years", "Week", "Subscription Term"` — The billing period for this price list: Month, Annual, Quarter, and so on.
- **`eccn_value`**
`string` — The ECCN value for the offer.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date until when this price plan is active.
- **`price_list_id`**
`string` — The unique identifier for the price plan.
- **`price_list_name`**
`string` — The name of the price plan.
- **`pricebook_attributes`**
`array` — The pricebook attributes.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types: Integer, Enum, String, Boolean, Object.
- **`prices`**
`array` — The offer price list or rate plan charges.
**Items:**
- **`amount`**
`number` — The list price per UOM. It should not be null if charge model is not tiered or volume.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Tiered Pricing", "Volume Pricing", "Per Unit Pricing", "Overage Pricing"` — The supported values for the charge model are Flat Fee Pricing, Tiered Pricing, Volume Pricing, Per Unit Pricing, Overage Pricing.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — The supported values for the charge type are OneTime, Recurring, and Usage.
- **`country`**
`string` — The ISO country code for this charge.
- **`currency`**
`string` — The ISO currency code for this charge.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The effective end date for the price.
- **`is_channel_discount_applicable`**
`boolean` — True if 'z\_product\_class' is 1 , 2 or 3 and the class discount applies to this charge.
- **`min_unit_quantity`**
`integer` — The minimum quantity for this charge.
- **`name`**
`string` — The name for the charge.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`price_list_charge_id`**
`string` — The unique identifier for the charge.
- **`price_tiers`**
`array` — The price list's charge tier details for a volume or tiered price list charge.
**Items:**
- **`apply_rule`**
`string` — The apply rule for this field: flat-fee or per-unit.
- **`lower`**
`integer` — The lower limit of the tier.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`price`**
`number`, format: `double` — The tier price.
- **`upper`**
`integer` — The upper limit of the tier.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The effective start date for the price.
- **`status`**
`string`, possible values: `"Active", "In-active", "Expired"` — The status of the charge.
- **`uom`**
`string` — The unit of measure for the charge.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date when this price plan can be used.
- **`status`**
`string`, possible values: `"Active", "Limited", "In-active", "Expired"` — Whether the price list is active or not. Supported values: Active, Limited, Inactive, or Expired.
- **`z_product_class`**
`string`, possible values: `"1", "2", "3", "4"` — The Zoom product class for this price list.
- **`sku`**
`string` — The Zoom offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The offer availability of the start date.
- **`status`**
`string`, possible values: `"Active", "Limited", "In-active", "Expired"` — Whether the offer is active or not. Supported values: Active, Limited, Inactive, or Expired.
- **`z_product_category`**
`string`, possible values: `"Add-on Product", "Add On Services", "Base Product", "Others", "Professional Service", "Standalone Product"` — The Zoom product category. Supported values are Add-on Product, Add On Services, Base Product, Others, Professional Service, Standalone Product.
**Example:**
```json
{
"offer_id": "OFR-0000012",
"offer_name": "Zoom One Pro",
"offer_desc": "Zoom One Professional Bundle",
"offer_type": "plan",
"z_product_category": "Base Product",
"sku": "SKU-00000118",
"status": "Limited",
"start_date": "2020-10-23",
"end_date": "2023-10-25",
"offer_products": [
{
"product_name": "Meetings",
"product_id": "PR-1231",
"product_family_id": "dfewur3erfdd",
"product_family_name": "Core Communication",
"product_group_id": "dfewur3erfdd",
"product_group_name": "Communication",
"product_type": "base",
"sku": "SKU-10000120",
"product_features": [
{
"feature_id": "Number of participants",
"name": "Maximum number of participants supported",
"value_type": "Integer",
"value": "100",
"uom": "count"
}
],
"price_list": [
{
"price_list_id": "PRL-122",
"price_list_name": "Zoom Workplace Pro Annual",
"prices": [
{
"price_list_charge_id": "PRLC-1231",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"charge_type": "Recurring",
"charge_model": "Volume Pricing",
"name": "Flat fee charge",
"uom": "host",
"amount": 9.99,
"currency": "USD",
"region": "LATAM",
"country": "US",
"min_unit_quantity": 10,
"status": "Active",
"start_date": "2023-10-25",
"end_date": "2023-10-25",
"price_tiers": [
{
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"lower": 1,
"upper": 10,
"price": 81,
"apply_rule": "per-unit"
}
]
}
],
"start_date": "2023-10-25",
"end_date": "2030-10-02",
"billing_period": "Month",
"status": "Limited",
"eccn_value": "5D992"
}
]
}
],
"offer_attributes": [
{
"name": "Min licenses for purchase",
"uom": "count",
"value_type": "Integer",
"value": "10"
}
],
"pricebook": [
{
"price_list_id": "PRL-122",
"price_list_name": "Zoom Workplace Pro Annual",
"prices": [
{
"price_list_charge_id": "PRLC-1231",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"charge_type": "Recurring",
"charge_model": "Volume Pricing",
"name": "Flat fee charge",
"uom": "host",
"amount": 9.99,
"currency": "USD",
"country": "US",
"min_unit_quantity": 10,
"status": "Active",
"start_date": "2023-10-25",
"end_date": "2023-10-25",
"is_channel_discount_applicable": true,
"price_tiers": [
{
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"lower": 1,
"upper": 10,
"price": 81,
"apply_rule": "per-unit"
}
]
}
],
"start_date": "2023-10-25",
"end_date": "2030-10-02",
"billing_period": "Month",
"status": "Limited",
"eccn_value": "5D992",
"z_product_class": "1",
"pricebook_attributes": [
{
"name": "Pricebook eligible for Order",
"value_type": "Boolean",
"value": "true"
}
]
}
]
}
```
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found \*\*Error Code:\*\* \`5009\` \
No records found. \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Validate offer compatibility and dependencies
- **Method:** `POST`
- **Path:** `/commerce/catalogvalidator`
- **Tags:** Product Catalog
Validates offers against dependency rules, quantity constraints, and eligibility criteria.
Each violation provides a recommendation on how to fix the violation.
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:product_catalog:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
#### Request Body
##### Content-Type: application/json
- **`validation_request` (required)**
`object`
- **`transaction_type` (required)**
`string`, possible values: `"ORDER", "QUOTE", "ESTIMATOR", "TRIAL"` — The type of transaction being validated.
- **`add_ons`**
`array` — The add-on offers to validate.
**Items:**
- **`price_list_id` (required)**
`string` — The offer price list ID (e.g., PRL-1718109929895).
- **`quantity`**
`integer`, default: `1` — The quantity of the offer.
- **`offers`**
`array` — The base plan offers to validate.
**Items:**
- **`price_list_id` (required)**
`string` — The offer price list ID (e.g., PRL-1718109929895).
- **`quantity`**
`integer`, default: `1` — The quantity of the offer.
**Example:**
```json
{
"validation_request": {
"transaction_type": "ORDER",
"offers": [
{
"price_list_id": "PRL-1718109929895",
"quantity": 1
}
],
"add_ons": [
{
"price_list_id": "PRL-1718109929895",
"quantity": 1
}
]
}
}
```
#### Responses
##### Status: 200 Validator successfully executed.
###### Content-Type: application/json
- **`validation_response`**
`object`
- **`is_valid` (required)**
`boolean` — True if validator response has no 'Stop' violations.
- **`violations` (required)**
`array` — List of validation violations with recommended resolutions.
**Items:**
- **`affected_offers` (required)**
`array` — Price list IDs from the request payload that caused this violation.
**Items:**
`string`
- **`reason` (required)**
`object`
- **`error_code` (required)**
`string` — The error code.
- **`error_message` (required)**
`string` — The error message.
- **`severity` (required)**
`string`, possible values: `"Stop", "Warning", "Info"` — Severity level. - Stop: Blocks any order or quote execution for this offer combination. - Warnings: Advisory or recommended guidelines. - Info: Information. Order or quote processing will not be blocked for Warning and Info severity types.
- **`violation_type` (required)**
`string`, possible values: `"Quantity mismatch", "Too many of same type", "Missing dependency", "Incompatible combination", "Generic"` — Category of rule violation. - Quantity mismatch: wrong quantity. \*\*Suggested action\*\* - Adjust quantity) - Too many of same type: too many distinct offers. \*\*Suggested action\*\* - Choose one - Missing dependency: missing dependencies \*\*Suggested action\*\* - Add - Incompatible combination: incompatible offers \*\*Suggested action\*\* - Remove
- **`suggestions`**
`array | null` — Suggestions for resolving this violation. May be null for informational violations.
**Example:**
```json
{
"validation_response": {
"is_valid": true,
"violations": [
{
"violation_type": "Quantity mismatch",
"severity": "Stop",
"reason": {
"error_code": "6311",
"error_message": "Zoom Phone Pay As You Go must be accompanied by one of the following rate plans"
},
"affected_offers": [
""
],
"suggestions": [
{
"action": "Add",
"offers": [
{
"price_list_id": "PRL-1741014098274",
"name": "Zoom Workplace Pro Plus US/Canada Monthly"
}
],
"suggested_quantity": 1,
"mandatory": false,
"product_type": "base"
}
]
}
]
}
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request Invalid input parameters. \*\*Error Code:\*\* \`5424\` \
Transaction type is required. \
\*\*Error Code:\*\* \`5425\` \
Invalid transaction type. \
\*\*Error Code:\*\* \`5426\` \
At least one offer or add-on is required. \
\*\*Error Code:\*\* \`5427\` \
Price list ID is required. \
\*\*Error Code:\*\* \`5429\` \
Duplicate price list ID: {0}. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Unauthorized - Invalid or missing authentication token
##### Status: 403 \*\*HTTP Status Code:\*\* \`403\` \
Forbidden Forbidden - Insufficient permissions.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rate-limits/).
### Gets the pricebook in a downloadable file
- **Method:** `GET`
- **Path:** `/commerce/pricebooks`
- **Tags:** Product Catalog
Returns the pricebook in a CSV or Excel format including list price and discounted price based on the partner type.\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:product_catalog:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 The downloadable CSV or Excel file.
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5402\` \
Currency should be a valid ISO currency code \
\*\*Error Code:\*\* \`5403\` \
File type should be one of: CSV, XLS. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Create a subscription quote for a Zoom Partner
- **Method:** `POST`
- **Path:** `/commerce/quote`
- **Tags:** Quote
Create a subscription quote for a Zoom partner's end customers. **Note** Check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api/).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:quote:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Request Body
##### Content-Type: application/json
- **`header` (required)**
`object` — The quote header's details.
- **`quote_date` (required)**
`string`, format: `YYYY-MM-DD` — The quote date in \`YYYY-MM-DD\` format.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this quote.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types - Integer, Enum, String, Boolean, Object.
- **`deal_reg_number`**
`string` — The registration number of the deal registered by partner or reseller.
- **`negotiation_note`**
`string` — A note for negotiation deal for the quote.
- **`quote_description`**
`string` — A description of the quote.
- **`quote_expiry_date`**
`string`, format: `YYYY-MM-DD` — The date when the quote will expire. If not provided, the quote will expire in 30 days from the date of creation. Maximum allowed expiry date is 180 days.
- **`quote_type`**
`string`, possible values: `"trial", "sale"`, default: `"sale"` — The type of quote. Supported values are \`trial\` and \`sale\`.
- **`amend_subscriptions`**
`array` — The quote details for amending an existing subscription.
**Items:**
- **`add_add_ons`**
`array` — The offer details for add-ons to be added in the subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer's price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — Type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`add_offers`**
`array` — The offer details for offers to be added in the subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge that this discount applies to.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — Type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this subscription.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types - Integer, Enum, String, Boolean, Object.
- **`cancel_subscription`**
`object` — Cancellation details.
- **`cancel_by` (required)**
`string`, possible values: `"EndOfCurrentTerm", "EndOfLastInvoicePeriod", "SpecificDate"` — When the subscription will be cancelled. Required for paid subscriptions. Currently only 'EndOfCurrentTerm' is supported.
- **`cancel_reason` (required)**
`string` — Reason for cancellation.
- **`cancel_on`**
`string`, format: `YYYY-MM-DD` — Must be provided if \`cancel\_by\` is \`SpecificDate\`.
- **`end_customer_account_number`**
`string` — The end customer Zoom account number. Required for amend trial quote. This field is ignored for paid subscription amendments.
- **`remove_offers`**
`array` — The offer details for offers to be removed from the subscription.
**Items:**
- **`end_date` (required)**
`string`, format: `YYYY-MM-DD` — The date when the offer will be removed. It should be between today and the subscription end date.
- **`offer_price_list_id` (required)**
`string` — The offer price list ID for the offer to be removed from the subscription.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`remove_reason`**
`string` — The reason for cancellation.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`renew_subscription`**
`object` — Renewal details.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge that this discount applies to.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — Type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`renewal_term`**
`object` — Subscription initial, renewal or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The term's end date, in \`YYYY-MM-DD\` format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The term's start date, in \`YYYY-MM-DD\` format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The term's duration, in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`subscription_number`**
`string` — The subscription number of the subscription being updated. Required for paid subscription amendments. This field is ignored for trial quotes.
- **`update_offers`**
`array` — Update terms and quantity of an offer or add-on.
**Items:**
- **`offer_price_list_id` (required)**
`string` — Offer price list ID for the offer to be updated.
- **`start_date` (required)**
`string`, format: `YYYY-MM-DD` — Change start date. Should be between today and subscription end date.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — Type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either \`percent\_value\` or \`amount\_value\` is required.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either \`percent\_value\` or \`amount\_value\` is required, but both should not be provided.
- **`offer_attributes`**
`array` — Offer specific attributes like number of hosts, participant capacity, etc.
**Items:**
- **`name`**
`string` — Attribute name.
- **`value`**
`string` — Attribute value.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — Number of licenses. Should be between minimum and maximum allowed for the plan.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`update_subscription`**
`object` — Update subscription attributes.
- **`auto_renew`**
`boolean` — Whether the subscription automatically renews at the end of each term. Only applicable if the initial term type is TERMED. If auto\_renew is true, providing renewal\_term is required.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set communication and invoice profile for the end customer.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if the subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.'
- **`deployment_partner_address`**
`object` — The address details. Required with 'deployment\_partner\_name'.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if 'requires\_professional\_services' is set to 'Yes, Zoom will do the deployment'.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if \`requires\_professional\_services\` is true.
- **`pso_engagement_request_id`**
`string` — Required if 'is\_zoom\_pso\_org\_engaged' is set to 'Yes and I have a PSO Engagement Request ID'.
- **`renewal_term`**
`object` — The subscription's renewal term. Required for paid subscriptions when \`order\_type\` = \`sale\`.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The term's end date, in \`YYYY-MM-DD\` format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The term's start date, in \`YYYY-MM-DD\` format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The term's duration, in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`sold_to_crm_contact_number`**
`string` — CRM contact number for the sold to contact.
- **`upgrade_offers`**
`array` — The offer details for offers to be upgraded in the subscription.
**Items:**
- **`start_date` (required)**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — Type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`new_offer_price_list_id`**
`string` — The new offer price list ID.
- **`new_partner_sku_code`**
`string` — The unique SKU code for partners.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`old_offer_price_list_id`**
`string` — The existing offer price list ID.
- **`old_partner_sku_code`**
`string` — The unique SKU code for partners.
- **`old_subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`quantity`**
`integer` — The number of licenses.
- **`create_subscriptions`**
`array` — The quote details for creating a new subscription.
**Items:**
- **`currency` (required)**
`string` — Subscription currency in a three-letter ISO currency code.
- **`initial_term` (required)**
`object` — The subscription's initial, renewal, or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, 60.
- **`sold_to_crm_contact_number` (required)**
`string` — The CRM contact's number for the 'sold to contact'.
- **`add_add_ons`**
`array` — The new add-ons to be added to a subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — Type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription's end date.
- **`add_offers`**
`array` — New offers to be added to a subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — Type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription's end date.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this subscription.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types - Integer, Enum, String, Boolean, Object.
- **`auto_renew`**
`boolean`, default: `true` — Whether the subscription automatically renews at the end of each term. Defaults to true. Only applicable for \`createSubscription\` quote action if the initial term type is TERMED.
- **`end_customer_account_number`**
`string` — The end customer's Zoom account number.
- **`end_customer_crm_account_number`**
`string` — The CRM account number for the end customer.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set communication and invoice profile for the end customer. Will be defaulted to a language based on end customer's country if left blank.
- **`free_months_reason_code`**
`string`, possible values: `"Customer's Desired Billing/Start Date", "Billing at Later Date for Other Reason", "Align to Customer's Renewal Date"` — The reason for requesting free period in the subscription. Required if the subscription has a free period.
- **`paid_period_start_date`**
`string`, format: `YYYY-MM-DD` — The subscription paid period start date. Required if the subscription has a free period.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.'
- **`deployment_partner_address`**
`object` — The address details. Required with 'deployment\_partner\_name'.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if 'requires\_professional\_services' is set to 'Yes, Zoom will do the deployment.'
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if \`requires\_professional\_services\` is \`true\`.
- **`pso_engagement_request_id`**
`string` — Required if 'is\_zoom\_pso\_org\_engaged' is set to 'Yes and I have a PSO Engagement Request ID.'
- **`renewal_term`**
`object` — The subscription's initial, renewal, or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The term's end date, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The term's start date, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The term's duration, in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`service_start_date`**
`string`, format: `YYYY-MM-DD` — The service start date. It should be equal to or before \`paid\_period\_start\_date\`.
- **`sub_reseller`**
`object` — The sub-reseller's account number.
- **`account_name`**
`string` — The sub-reseller's name.
- **`crm_account_number`**
`string` — The sub-reseller's CRM account number.
**Example:**
```json
{
"header": {
"quote_type": "sale",
"quote_description": "New ZCC subscription for ABC Pvt. Ltd.",
"deal_reg_number": "DELREG-1002-L1",
"quote_date": "2023-10-03",
"quote_expiry_date": "2023-11-02",
"negotiation_note": "Additional discount for a new large deal.",
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
]
},
"create_subscriptions": [
{
"end_customer_account_number": "5333445346",
"end_customer_crm_account_number": "A-3454334",
"sold_to_crm_contact_number": "C-232442",
"end_customer_language": "es-ES;",
"initial_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2023-10-03"
},
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"sub_reseller": {
"crm_account_number": "A-45r33",
"account_name": "Novam Corp."
},
"service_start_date": "2024-03-20",
"paid_period_start_date": "2024-03-20",
"free_months_reason_code": "Customer's Desired Billing/Start Date",
"currency": "CAD",
"auto_renew": true,
"add_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Recording storage capacity in GB",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"add_add_ons": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
],
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
}
],
"amend_subscriptions": [
{
"subscription_number": "A-31231322",
"end_customer_account_number": "1232412317",
"add_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"add_add_ons": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"upgrade_offers": [
{
"new_offer_price_list_id": "Off-2323",
"new_partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"old_offer_price_list_id": "Off-2564",
"old_partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"old_subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"remove_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"end_date": "2023-10-03",
"remove_reason": "Downsell"
}
],
"update_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"cancel_subscription": {
"cancel_by": "EndOfCurrentTerm",
"cancel_on": "2023-10-03",
"cancel_reason": "Downsell"
},
"renew_subscription": {
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
},
"update_subscription": {
"auto_renew": true,
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"sold_to_crm_contact_number": "C-232442",
"end_customer_language": "es-ES;",
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
},
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
]
}
]
}
```
#### Responses
##### Status: 201 Quote created successfully.
###### Content-Type: application/json
- **`errors`**
`array` — Array of messages in case of validation errors.
**Items:**
- **`error_code` (required)**
`string` — Error code.
- **`error_description` (required)**
`string` — Error description.
- **`quote_date`**
`string`, format: `YYYY-MM-DD` — The date when quote should be placed in the billing system.
- **`quote_reference_id`**
`string` — Reference ID for a quote.
- **`status`**
`string`, possible values: `"failedToSubmit", "submitted"` — Status of the quote.
**Example:**
```json
{
"status": "submitted",
"quote_reference_id": "QO-3248714941",
"quote_date": "2023-10-03",
"errors": [
{
"error_code": "5604",
"error_description": "No pricebook exists with given offer_price_list_id."
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5135\` \
Invalid sub reseller account number. \
\*\*Error Code:\*\* \`5136\` \
Invalid end customer account number. \
\*\*Error Code:\*\* \`5142\` \
Invalid end customer CRM account number. \
\*\*Error Code:\*\* \`5601\` \
Cancel\_on is required when cancel\_by is SpecificDate. \
\*\*Error Code:\*\* \`5604\` \
No pricebook exists with given offer\_price\_list\_id. \
\*\*Error Code:\*\* \`5660\` \
No pricebook exists with given partner SKU code. \
\*\*Error Code:\*\* \`5605\` \
Request body can not be blank. \
\*\*Error Code:\*\* \`5606\` \
Quote header can not be null. \
\*\*Error Code:\*\* \`5607\` \
Quote date cannot be blank. \
\*\*Error Code:\*\* \`5608\` \
Invalid quote date format. Expected format is \`YYYY-MM-DD\`. \
\*\*Error Code:\*\* \`5609\` \
Quote date can not be of past. \
\*\*Error Code:\*\* \`5611\` \
Invalid quantity. \
\*\*Error Code:\*\* \`5610\` \
Invalid PO Number. \
\*\*Error Code:\*\* \`5623\` \
Invalid quote type. \
\*\*Error Code:\*\* \`5616\` \
For amendment quote, subscription number cannot be blank. \
\*\*Error Code:\*\* \`5617\` \
Sub reseller crm\_account\_number cannot be blank. \
\*\*Error Code:\*\* \`5618\` \
Sub reseller account\_name cannot be blank. \
\*\*Error Code:\*\* \`5619\` \
Start date cannot be blank. \
\*\*Error Code:\*\* \`5002\` \
Invalid cancel on date format. Expected format is \`YYYY-MM-DD\`. \
\*\*Error Code:\*\* \`5678\` \
Invalid subscription number. \
\*\*Error Code:\*\* \`5625\` \
Start date should be in valid date format (\`YYYY-MM-DD\`) and greater than or equal to today. \
\*\*Error Code:\*\* \`5627\` \
Initial Term Type must be one of these: TERMED, or EVERGREEN. \
\*\*Error Code:\*\* \`5629\` \
Initial term periodType is mandatory for termType TERMED and must be one of these: Month, or Year. \
\*\*Error Code:\*\* \`5630\` \
Initial term termPeriod is mandatory for termType TERMED and must be between 1 to 60 months. \
\*\*Error Code:\*\* \`5633\` \
For cancel subscription, remove reason cannot be blank. \
\*\*Error Code:\*\* \`5634\` \
For cancel subscription, remove reason must be at most 255 characters. \
\*\*Error Code:\*\* \`5635\` \
For cancel subscription, cancel reason cannot be blank. \
\*\*Error Code:\*\* \`5636\` \
For cancel subscription, cancel reason must be at most 255 characters. \
\*\*Error Code:\*\* \`5639\` \
Currency must be in a valid ISO currency code. \
\*\*Error Code:\*\* \`5009\` \
Value is not a whole number. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition that prevented it from fulfilling the request. \*\*Error Code:\*\* \`5632\` \
Unable to process the quote. \
### Preview delta quote metrics and subscriptions in a quote
- **Method:** `POST`
- **Path:** `/commerce/quote/preview`
- **Tags:** Quote
Previews the delta quote metrics and subscriptions in a quote. The API can be used to validate the quote and get metrics like TCV, applicable discounts, and net MRR before submitting the quote for actual creation and provisioning. This operation is only a quote preview and no quote is submitted for approval and fulfillment. To submit the quote, use the quote API.\
**Note:** Please check the base URL for sandbox and production environments in the Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:quote:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `HEAVY`
**Not supported in Gov cluster**
#### Request Body
##### Content-Type: application/json
- **`header` (required)**
`object` — The quote header's details.
- **`quote_date` (required)**
`string`, format: `YYYY-MM-DD` — The quote date in YYYY-MM-DD format.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this quote.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types - Integer, Enum, String, Boolean, Object.
- **`deal_reg_number`**
`string` — The registration number of the deal registered by a partner or reseller.
- **`negotiation_note`**
`string` — A note for a negotiation deal for the quote.
- **`po_number`**
`string` — The purchase order number.
- **`quote_description`**
`string` — A description of the quote.
- **`quote_expiry_date`**
`string`, format: `YYYY-MM-DD` — The date when the quote will expire. If not provided, the quote will expire in 30 days from the date of creation. Maximum allowed expiry date is 180 days.
- **`quote_type`**
`string`, possible values: `"trial", "sale"`, default: `"sale"` — The type of quote. Supported values are 'trial' and 'sale'.
- **`amend_subscriptions`**
`array` — The quote details for amending an existing subscription.
**Items:**
- **`add_add_ons`**
`array` — The offer details for add-ons to be added in the subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value is supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`add_offers`**
`array` — The offer details for offers to be added in the subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value is supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this subscription.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types - Integer, Enum, String, Boolean, Object.
- **`cancel_subscription`**
`object` — The cancellation details.
- **`cancel_by` (required)**
`string`, possible values: `"EndOfCurrentTerm", "EndOfLastInvoicePeriod", "SpecificDate"` — When the subscription will be cancelled. Required for paid subscriptions. Currently only 'EndOfCurrentTerm' is supported.
- **`cancel_reason` (required)**
`string` — The reason for cancellation.
- **`cancel_on`**
`string`, format: `YYYY-MM-DD` — Must be provided if cancel\_by is SpecificDate.
- **`end_customer_account_number`**
`string` — The end customer Zoom account number. Required for amend trial quote. This field is ignored for paid subscription amendments.
- **`remove_offers`**
`array` — The offer details for offers to be removed from the subscription.
**Items:**
- **`end_date` (required)**
`string`, format: `YYYY-MM-DD` — The date when the offer will be removed. It should be between today and the subscription end date.
- **`offer_price_list_id` (required)**
`string` — The offer price list ID for the offer to be removed from the subscription.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`remove_reason`**
`string` — The reason for cancellation.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`renew_subscription`**
`object` — The renewal details.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value is supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`renewal_term`**
`object` — The subscription's initial, renewal, or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then the 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`subscription_number`**
`string` — The subscription number of the subscription being updated. Required for paid subscription amendments. This field is ignored for trial quotes.
- **`update_offers`**
`array` — Updated terms and quantity of an offer or add-on.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID for the offer to be updated.
- **`start_date` (required)**
`string`, format: `YYYY-MM-DD` — The change start date. Should be between today and the subscription end date.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value is supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer specific attributes like the number of hosts and participant capacity.
**Items:**
- **`name`**
`string` — The attribute name.
- **`value`**
`string` — The attribute value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Should be between minimum and maximum allowed for the plan.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`update_subscription`**
`object` — Update subscription attributes.
- **`auto_renew`**
`boolean` — Whether the subscription automatically renews at the end of each term. Only applicable if the initial term type is TERMED. If \`auto\_renew\` is \`true\`, providing \`renewal\_term\` is required.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set communication and invoice profile for the end customer.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if the subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.'
- **`deployment_partner_address`**
`object` — The address details. Required with 'deployment\_partner\_name'.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — The deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if 'requires\_professional\_services' is set to 'Yes, Zoom will do the deployment'.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services. This should be provided if "requires\_professional\_services" is true.
- **`pso_engagement_request_id`**
`string` — Required if 'is\_zoom\_pso\_org\_engaged' is set to 'Yes and I have a PSO Engagement Request ID'.
- **`renewal_term`**
`object` — The subscription's renewal term. Required for paid subscriptions (order\_type = sale).
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then the 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`sold_to_crm_contact_number`**
`string` — The CRM contact number for the sold to contact.
- **`upgrade_offers`**
`array` — The offer details for offers to be upgraded in the subscription.
**Items:**
- **`start_date` (required)**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value is supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`new_offer_price_list_id`**
`string` — The new offer price list ID.
- **`new_partner_sku_code`**
`string` — The unique SKU code for partners.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`old_offer_price_list_id`**
`string` — The existing offer price list ID.
- **`old_partner_sku_code`**
`string` — The unique SKU code for partners.
- **`old_subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`quantity`**
`integer` — The number of licenses.
- **`create_subscriptions`**
`array` — The quote details for creating a new subscription.
**Items:**
- **`currency` (required)**
`string` — The subscription currency in a three-letter ISO currency code.
- **`initial_term` (required)**
`object` — The subscription's initial, renewal, or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then the 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`sold_to_crm_contact_number` (required)**
`string` — The CRM contact's number for the 'sold to contact'.
- **`add_add_ons`**
`array` — The new add-ons to be added to a subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value is supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription's end date.
- **`add_offers`**
`array` — New offers to be added to a subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value is supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription's end date.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this subscription.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types - Integer, Enum, String, Boolean, Object.
- **`auto_renew`**
`boolean`, default: `true` — Whether the subscription automatically renews at the end of each term. Defaults to true. Only applicable for "createSubscription" quote action if the initial term type is TERMED.
- **`end_customer_account_number`**
`string` — The end customer's Zoom account number.
- **`end_customer_crm_account_number`**
`string` — The CRM account number for the end customer.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to use to set the communication and invoice profile for the end customer. This will default to a language based on the end customer's country if left blank.
- **`free_months_reason_code`**
`string`, possible values: `"Customer's Desired Billing/Start Date", "Billing at Later Date for Other Reason", "Align to Customer's Renewal Date"` — The reason for requesting a free period in the subscription. Required if the subscription has a free period.
- **`paid_period_start_date`**
`string`, format: `YYYY-MM-DD` — The subscription paid period start date. Required if the subscription has a free period.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if the subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.'
- **`deployment_partner_address`**
`object` — The address details. Required with 'deployment\_partner\_name'.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — The deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if 'requires\_professional\_services' is set to 'Yes, Zoom will do the deployment.'
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services. This should be provided if "requires\_professional\_services" is true.
- **`pso_engagement_request_id`**
`string` — Required if 'is\_zoom\_pso\_org\_engaged' is set to 'Yes and I have a PSO Engagement Request ID.'
- **`renewal_term`**
`object` — The subscription's initial, renewal, or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then the 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`service_start_date`**
`string`, format: `YYYY-MM-DD` — The service start date. It should be equal to or before \`paid\_period\_start\_date\`.
- **`sub_reseller`**
`object` — The sub-reseller's account number.
- **`account_name`**
`string` — The sub-reseller's name.
- **`crm_account_number`**
`string` — The sub-reseller's CRM account number.
**Example:**
```json
{
"header": {
"quote_type": "sale",
"quote_description": "New ZCC subscription for ABC Pvt. Ltd.",
"deal_reg_number": "DELREG-1002-L1",
"quote_date": "2023-10-03",
"quote_expiry_date": "2023-11-02",
"po_number": "PO-10021-A",
"negotiation_note": "Additional discount for a new large deal.",
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
]
},
"create_subscriptions": [
{
"end_customer_account_number": "5333445346",
"end_customer_crm_account_number": "A-3454334",
"sold_to_crm_contact_number": "C-232442",
"end_customer_language": "es-ES;",
"initial_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2023-10-03"
},
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"sub_reseller": {
"crm_account_number": "A-45r33",
"account_name": "Novam Corp."
},
"service_start_date": "2024-03-20",
"paid_period_start_date": "2024-03-20",
"free_months_reason_code": "Customer's Desired Billing/Start Date",
"currency": "CAD",
"auto_renew": true,
"add_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Recording storage capacity in GB",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"add_add_ons": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
],
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
}
],
"amend_subscriptions": [
{
"subscription_number": "A-31231322",
"end_customer_account_number": "1232412317",
"add_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"add_add_ons": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"upgrade_offers": [
{
"new_offer_price_list_id": "Off-2323",
"new_partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"old_offer_price_list_id": "Off-2564",
"old_partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"old_subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"remove_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"end_date": "2023-10-03",
"remove_reason": "Downsell"
}
],
"update_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"cancel_subscription": {
"cancel_by": "EndOfCurrentTerm",
"cancel_on": "2023-10-03",
"cancel_reason": "Downsell"
},
"renew_subscription": {
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
},
"update_subscription": {
"auto_renew": true,
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"sold_to_crm_contact_number": "C-232442",
"end_customer_language": "es-ES;",
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
},
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
]
}
]
}
```
#### Responses
##### Status: 201 Quote created successfully.
###### Content-Type: application/json
- **`errors`**
`array` — The array of messages in case of validation or processing errors.
**Items:**
- **`error_code` (required)**
`string` — The error code.
- **`error_description` (required)**
`string` — The error description.
- **`quote_date`**
`string`, format: `MM-DD-YYYY` — The date when the quote should be placed in the billing system.
- **`quote_metrics`**
`object` — The quote metrics, such as TCV, MRR, or TCB.
- **`mrr`**
`number`, format: `double` — The monthly recurring revenue.
- **`tcb`**
`number`, format: `double` — The total contracted billing. This is the forecast value at the time of booking for the total amount that will be billed over the duration of the charge.
- **`tcv`**
`number`, format: `double` — The total contract value. This is the total amount that has been booked over the duration of the charge.
- **`total_discount_pct`**
`number`, format: `percentage` — The total discount applied (in percentage).
- **`quote_reference_id`**
`string` — The reference ID for a quote.
- **`status`**
`string`, possible values: `"failedToSubmit", "submitted"` — The preview status of the quote.
- **`subscription_item_metrics`**
`array` — The array of subscription line items.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — The charge model of this charge.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — The charge type of this charge.
- **`discounts`**
`array` — Applicable discounts.
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE", "ONETIMERECURRINGUSAGE"` — Specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE", and "ONETIMERECURRINGUSAGE".
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — The application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan", "subscription", and "account".
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — The type of discount. Supported values are "DealReg", "Partner", "Exception".
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`apply_to_charge`**
`string` — The charge ID for the charge to which this discount is applied.
- **`discount_program`**
`string` — The name of the strategic program if it's a strategic program discount.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`net_amount`**
`object` — Represents the sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — The money value.
- **`currency`**
`string` — The ISO code for the currency.
- **`net_price`**
`object` — Represents the sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — The money value.
- **`currency`**
`string` — The ISO code for the currency.
- **`sale_price`**
`object` — Represents the sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — The money value.
- **`currency`**
`string` — The ISO code for the currency.
- **`mrr`**
`object` — Represents the sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — The monetary value.
- **`currency`**
`string` — The ISO code for the currency.
- **`offer_id`**
`string` — The offer or plan ID.
- **`offer_name`**
`string` — The offer or plan name.
- **`offer_price_list_id`**
`string` — The offer price list ID.
- **`offer_price_list_name`**
`string` — The offer price list name.
- **`sku`**
`string` — The offer SKU.
- **`subscription_preview`**
`array` — The subscription metrics preview.
**Items:**
- **`mrr`**
`number`, format: `double` — The monthly recurring revenue.
- **`paid_period_start_date`**
`string`, format: `YYYY-MM-DD` — The subscription paid period start date. This is set (overridden) by the system if the deal registration is associated with a strategic program.
- **`subscription_number`**
`object` — The subscription number of the subscription.
- **`tcb`**
`number`, format: `double` — The total contracted billing. This is the forecast value at the time of booking for the total amount that will be billed over the duration of the charge.
- **`tcv`**
`number`, format: `double` — The total contract value. This is the total amount that has been booked over the duration of the charge.
- **`total_discount_pct`**
`number`, format: `percentage` — The total discount applied (in percentage).
- **`warnings`**
`array` — The array of messages in case of validation or processing warnings.
**Items:**
- **`error_code` (required)**
`string` — The error code.
- **`error_description` (required)**
`string` — The error description.
**Example:**
```json
{
"status": "submitted",
"quote_reference_id": "OR-3248714941",
"quote_date": "07-01-2024",
"quote_metrics": {
"tcv": 100000,
"tcb": 100000,
"mrr": 1000,
"total_discount_pct": 0.1
},
"subscription_preview": [
{
"subscription_number": "A-31231322",
"paid_period_start_date": "2024-03-20",
"tcv": 100000,
"tcb": 100000,
"mrr": 1000,
"total_discount_pct": 0.1
}
],
"subscription_item_metrics": [
{
"offer_id": "PR-2323",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-00000118",
"offer_price_list_id": "Off-2323",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"apply_to_charge": "PRLC-3223",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"mrr": {
"amount": 99.99,
"currency": "USD"
}
}
],
"errors": [
{
"error_code": "5604",
"error_description": "No pricebook exists with given offer_price_list_id."
}
],
"warnings": [
{
"error_code": "5604",
"error_description": "No pricebook exists with given offer_price_list_id."
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details.
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request. \*\*Error Code:\*\* \`6103\` \
Unable to preview quote. Please try again later. \
### Gets all quotes for a Zoom partner
- **Method:** `GET`
- **Path:** `/commerce/quotes`
- **Tags:** Quote
Returns all quotes for a Zoom partner based on specified filters.\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:quote:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 Quotes returned successfully.
###### Content-Type: application/json
- **`page_count`**
`integer` — The total number of pages in the result set.
- **`quote_list`**
`array` — The quotes list.
**Items:**
- **`creation_date`**
`string`, format: `YYYY-MM-DD` — The date when this quote was created.
- **`deal_reg_number`**
`string` — The registration number of the deal registered by partner or reseller.
- **`effective_date`**
`string`, format: `YYYY-MM-DD` — The date when this quote was activated. Also the contract's effective date.
- **`end_customer_account_name`**
`string` — The end customer's account name.
- **`end_customer_account_number`**
`string` — The end customer's Zoom account number.
- **`end_customer_crm_account_number`**
`string` — The end customer's CRM account number.
- **`invoice_owner_crm_account_number`**
`string` — The invoice owner's CRM account number if the quote was placed by a distributor on their behalf.
- **`invoice_owner_name`**
`string` — The sub-reseller's name if the quote was placed by a distributor on their behalf.
- **`net_amount`**
`object` — The net quote value.
- **`amount`**
`number` — The money value.
- **`currency`**
`string` — ISO code for the currency.
- **`po_number`**
`string` — The purchase order's number.
- **`quote_number`**
`string` — The quote number of the quote.
- **`quote_reference_id`**
`string` — The reference ID for a draft quote.
- **`quote_type`**
`string`, possible values: `"trial", "sale"` — Type of quote
- **`status`**
`string`, possible values: `"failedToSubmit", "completed", "canceled", "submitted", "failed", "approved", "rejected", "returned", "provisioning"` — The status of the quote.
- **`sub_reseller_crm_account_number`**
`string` — The sub-reseller's CRM account number if the quote was placed by a distributor on their behalf.
- **`sub_reseller_name`**
`string` — The sub-reseller's name if the quote was placed by a distributor on their behalf.
- **`trade_screening`**
`boolean` — The flag to indicate whether the subcription cleared trade screening check or not.
- **`transaction_type`**
`string`, possible values: `"New", "Amend"` — The transaction type for the order. Possible values are New or Amend.
- **`updated_date`**
`string`, format: `YYYY-MM-DD` — The date when this quote was last updated.
**Example:**
```json
{
"page_count": 20,
"quote_list": [
{
"quote_reference_id": "OR-125613343",
"quote_number": "O-3429342",
"status": "submitted",
"quote_type": "sale",
"transaction_type": "New",
"end_customer_account_name": "dfreABC Pvt. Ltd.",
"end_customer_account_number": "3842618277",
"end_customer_crm_account_number": "A-3454334",
"sub_reseller_name": "John",
"sub_reseller_crm_account_number": "A-348742",
"invoice_owner_name": "John",
"invoice_owner_crm_account_number": "A-348742",
"creation_date": "2024-07-01",
"effective_date": "2024-07-01",
"net_amount": {
"amount": 100000,
"currency": "USD"
},
"updated_date": "2024-07-01",
"trade_screening": false,
"deal_reg_number": "DELREG-1002-L1",
"po_number": "PO-10021-A"
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`6200\` \
Invalid quote type. \
\*\*Error Code:\*\* \`6201\` \
Invalid quote status. \
\*\*Error Code:\*\* \`6202\` \
Invalid sort value. \
\*\*Error Code:\*\* \`6203\` \
Invalid filter type. \
\*\*Error Code:\*\* \`5000\` \
Invalid character & or | in the name filter. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition that prevented it from fulfilling the request.
### Get quote details by quote reference ID
- **Method:** `GET`
- **Path:** `/commerce/quotes/{quoteReferenceId}`
- **Tags:** Quote
Get quote details by quote reference ID. **Note** Check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api/).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:quote:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 Quote returned successfully.
###### Content-Type: application/json
- **`amend_subscriptions`**
`array` — Amendment quote details.
**Items:**
- **`add_add_ons`**
`array` — Subscription lines for amendment of an existing subscription.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — Charge model of this charge.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — Charge type of this charge.
- **`discounts`**
`array` — Applicable discounts.
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE"` — Specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE".
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account".
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — Type of discount. Supported values are "DealReg", "Partner", "Exception".
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`apply_to_charge`**
`string` — The charge ID for the charge to which this discount is applied.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`total_discount`**
`number`, format: `double` — Total discount applied on the charge.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — Offer or plan ID.
- **`offer_name`**
`string` — Offer or plan name.
- **`offer_price_list_id`**
`string` — Offer price list ID.
- **`offer_price_list_name`**
`string` — Offer price list name.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — Offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`usage_based_charge`**
`boolean` — True if the plan has a usage or overage based charge.
- **`add_offers`**
`array` — Subscription lines for amendment of an existing subscription.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — Charge model of this charge.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — Charge type of this charge.
- **`discounts`**
`array` — Applicable discounts.
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE"` — Specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE".
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account".
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — Type of discount. Supported values are "DealReg", "Partner", "Exception".
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`apply_to_charge`**
`string` — The charge ID for the charge to which this discount is applied.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`total_discount`**
`number`, format: `double` — Total discount applied on the charge.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — Offer or plan ID.
- **`offer_name`**
`string` — Offer or plan name.
- **`offer_price_list_id`**
`string` — Offer price list ID.
- **`offer_price_list_name`**
`string` — Offer price list name.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — Number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — Offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`usage_based_charge`**
`boolean` — True if the plan has a usage or overage based charge.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this subscription.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type.
- **`bill_to_contact`**
`object` — Bill to contact details.
- **`crm_contact_number`**
`string` — The contact's unique CRM number.
- **`email`**
`string` — The contact's email address.
- **`first_name`**
`string` — The first name of the bill to contact.
- **`last_name`**
`string` — The last name of the bill to contact.
- **`cancel_subscription`**
`object` — Quote cancellation details for a cancel subscription action.
- **`cancel_by`**
`string`, possible values: `"EndOfCurrentTerm", "EndOfLastInvoicePeriod", "SpecificDate"` — Supported values - "EndOfCurrentTerm", "EndOfLastInvoicePeriod", "SpecificDate".
- **`cancel_on`**
`string`, format: `YYYY-MM-DD` — Must be provided if cancel\_by is SpecificDate.
- **`cancel_reason`**
`string` — Reason for cancellation.
- **`currency`**
`string` — Subscription currency in 3-letter ISO currency code.
- **`deal_reg_number`**
`string` — Registration number of the deal registered by partner/reseller.
- **`end_customer_account`**
`object` — Account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — Address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The address type.
- **`city` (required)**
`string` — City name.
- **`country` (required)**
`string` — The country's ISO code.
- **`line_1` (required)**
`string` — Street address line 1.
- **`state` (required)**
`string` — State or province.
- **`line_2`**
`string` — Street address line 2.
- **`line_3`**
`string` — Street address line 3.
- **`postal_code`**
`string` — Postal or zip code or number.
- **`crm_account_number`**
`string` — Unique CRM account number for the customer, partner, or reseller.
- **`zoom_account_number`**
`string` — Unique Zoom account number for the customer, partner, or reseller.
- **`invoice_owner_account`**
`object` — Account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — Address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The address type.
- **`city` (required)**
`string` — City name.
- **`country` (required)**
`string` — The country's ISO code.
- **`line_1` (required)**
`string` — Street address line 1.
- **`state` (required)**
`string` — State or province.
- **`line_2`**
`string` — Street address line 2.
- **`line_3`**
`string` — Street address line 3.
- **`postal_code`**
`string` — Postal or zip code or number.
- **`crm_account_number`**
`string` — Unique CRM account number for the customer, partner, or reseller.
- **`zoom_account_number`**
`string` — Unique Zoom account number for the customer, partner, or reseller.
- **`po_number`**
`string` — Purchase order number.
- **`remove_offers`**
`array` — Subscription lines for amendment of an existing subscription.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — Charge model of this charge.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — Charge type of this charge.
- **`discounts`**
`array` — Applicable discounts.
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE"` — Specifies how the discount will be applied. One time or recurring.
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account".
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — Type of discount. Supported values are "DealReg", "Partner", "Exception".
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`apply_to_charge`**
`string` — The charge ID for the charge to which this discount is applied.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`total_discount`**
`number`, format: `double` — Total discount applied on the charge.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — Offer or plan ID.
- **`offer_name`**
`string` — Offer or plan name.
- **`offer_price_list_id`**
`string` — Offer price list ID.
- **`offer_price_list_name`**
`string` — Offer price list name.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — Number of licenses. Should be between minimum and maximum allowed for the plan.
- **`remove_reason`**
`string` — The reason for cancellation.
- **`sku`**
`string` — Offer SKU.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`usage_based_charge`**
`boolean` — True if the plan has a usage or overage based charge.
- **`renew_subscription`**
`object` — docum renewal details for a renew subscription action.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge that this discount applies to.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only one value supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`discount_level`**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account".
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`renewal_term`**
`object` — Subscription initial, renewal or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED", "EVERGREEN"` — type of the subcription term. Supported values are TERMED and EVERGREEN. If the subscription is TERMED, then period and period\_type fields are also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the term, in YYYY-MM-DD format.
- **`period_type`**
`string`, possible values: `"Month", "Year"` — Unit of time that the term is measured in. Only applicable if the value of the term\_type field is TERMED. Supported values are "Month" or "Year".
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, 60.
- **`sold_to_contact`**
`object` — Sold to contact details.
- **`crm_contact_number`**
`string` — The contact's unique CRM number.
- **`email`**
`string` — The contact's email address.
- **`first_name`**
`string` — The first name of the sold to contact.
- **`last_name`**
`string` — The last name of the sold to contact.
- **`sub_reseller`**
`object` — Account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — Address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The address type.
- **`city` (required)**
`string` — City name.
- **`country` (required)**
`string` — The country's ISO code.
- **`line_1` (required)**
`string` — Street address line 1.
- **`state` (required)**
`string` — State or province.
- **`line_2`**
`string` — Street address line 2.
- **`line_3`**
`string` — Street address line 3.
- **`postal_code`**
`string` — Postal or zip code or number.
- **`crm_account_number`**
`string` — Unique CRM account number for the customer, partner, or reseller.
- **`zoom_account_number`**
`string` — Unique Zoom account number for the customer, partner, or reseller.
- **`subscription_metrics`**
`object` — Subscription metrics like total contract value (tcv), monthly recurring revenue (mrr), total contracted billing (tcb).
- **`mrr`**
`number`, format: `double` — Monthly recurring revenue.
- **`subscription_number`**
`string` — Subscription number of the subscription.
- **`tcb`**
`number`, format: `double` — Total contracted billing. This is the forecast value at the time of booking for the total amount that will be billed over the duration of the charge.
- **`tcv`**
`number`, format: `double` — Total contract value. This is the total amount that has been booked over the duration of the charge.
- **`total_discount_pct`**
`number`, format: `percentage` — Total discount applied (in percentage).
- **`subscription_number`**
`string` — Subscription number of the subscription, which is created or updated. Will be blank if subscription creation is not complete.
- **`update_offers`**
`array` — Subscription lines for amendment of an existing subscription. update terms and quantity of an offer or add-on.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — Charge model of this charge.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — Charge type of this charge.
- **`discounts`**
`array` — Applicable discounts.
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE"` — Specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE".
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account".
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — Type of discount. supported values are "DealReg", "Partner", "Exception".
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`apply_to_charge`**
`string` — The charge ID for the charge to which this discount is applied.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`total_discount`**
`number`, format: `double` — Total discount applied on the charge.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — Offer or plan ID.
- **`offer_name`**
`string` — Offer or plan name.
- **`offer_price_list_id`**
`string` — Offer price list ID.
- **`offer_price_list_name`**
`string` — Offer price list name
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — Number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — Offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`usage_based_charge`**
`boolean` — True if the plan has a usage or overage based charge.
- **`update_subscription`**
`object` — Update subscription attributes.
- **`auto_renew`**
`boolean` — Whether the subscription automatically renews at the end of the each term. Only applicable if the initial term type is TERMED. If \`auto\_renew\` is \`true\`, providing \`renewal\_term\` is required.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set communication and invoice profile for the end customer.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.
- **`deployment_partner_address`**
`object` — The address details.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if \`requires\_professional\_services\` is set to \`Yes, Zoom will do the deployment\`.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if \`requires\_professional\_services\` is \`true\`.
- **`pso_engagement_request_id`**
`string` — Required if \`is\_zoom\_pso\_org\_engaged\` is set to \`Yes and I have a PSO Engagement Request ID\`.
- **`renewal_term`**
`object` — The subscription's renewal term. Required for paid subscriptions where \`order\_type\` = \`sale\`.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The subscription term's type. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The term's end date, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The term's start date, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The term duration, in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`sold_to_crm_contact_number`**
`string` — CRM contact number for the sold to contact.
- **`upgrade_offers`**
`array` — Subscription lines for amendment of an existing subscription.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — Charge model of this charge.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — Charge type of this charge.
- **`discounts`**
`array` — Applicable discounts.
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE"` — Specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE".
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account".
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — Type of discount. Supported values are "DealReg", "Partner", "Exception".
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`apply_to_charge`**
`string` — The charge ID for the charge to which this discount is applied.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency
- **`total_discount`**
`number`, format: `double` — Total discount applied on the charge.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — Offer or plan ID.
- **`offer_name`**
`string` — Offer or plan name.
- **`offer_price_list_id`**
`string` — Offer price list ID.
- **`offer_price_list_name`**
`string` — Offer price list name.
- **`old_offer_price_list_id`**
`string` — Old Offer price list ID in case of upgrade or cancel/replace quote.
- **`old_partner_sku_code`**
`string` — Unique SKU code for partners for old offer price list in case of upgrade or cancel/replace quote.
- **`old_subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — Number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — Offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`usage_based_charge`**
`boolean` — True if the plan has a usage or overage based charge.
- **`create_subscriptions`**
`array` — New subscription quote details.
**Items:**
- **`add_ons`**
`array` — The add-ons for new subscription.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — The charge model of this charge.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — The charge type of this charge.
- **`discounts`**
`array` — Applicable discounts.
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE"` — Specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE".
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account".
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — Type of discount. Supported values are "DealReg", "Partner", "Exception".
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`apply_to_charge`**
`string` — The charge ID for the charge to which this discount is applied.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`total_discount`**
`number`, format: `double` — Total discount applied on the charge.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — The offer or plan ID.
- **`offer_name`**
`string` — The offer or plan name.
- **`offer_price_list_id`**
`string` — The offer price list ID.
- **`offer_price_list_name`**
`string` — The offer price list name.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — The offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`usage_based_charge`**
`boolean` — True if the plan has a usage or overage based charge.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this subscription.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types - Integer, Enum, String, Boolean, Object.
- **`agreement_dates`**
`object` — Subscription agreement dates.
- **`contract_effective_date`**
`string`, format: `YYYY-MM-DD` — The date when the contract will be effective from. It is a required field to provide in the quote when quote action type is \`createSubscription\`, in YYYY-MM-DD format and if \`quote\_date\` is different from contract effective date.
- **`customer_acceptance_date`**
`string`, format: `YYYY-MM-DD` — The date when the quote was approved by the customer. It is a required field to provide in the quote when quote action type is \`addOffer\`, \`createSubscription\`, \`addOn\`, \`upgrade\`, \`upsell\`, \`renewSubscription\`, in YYYY-MM-DD format.
- **`service_activation_date`**
`string`, format: `YYYY-MM-DD` — The date when the service will be activated from, in YYYY-MM-DD format.
- **`auto_renew`**
`boolean`, default: `true` — Specifies whether the subscription automatically renews at the end of the each term. Defaults to true. Only applicable for "createSubscription" quote action if the initial term type is TERMED.
- **`bill_to_contact`**
`object` — Bill to contact details.
- **`crm_contact_number`**
`string` — Unique CRM Number for the contact.
- **`email`**
`string` — The contact's email address.
- **`first_name`**
`string` — The first name of the bill to contact.
- **`last_name`**
`string` — The last name of the bill to contact.
- **`currency`**
`string` — Subscription currency in 3-letter ISO currency code.
- **`deal_reg_number`**
`string` — Registration number of the deal registered by partner/reseller.
- **`end_customer_account`**
`object` — Account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — Address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — Type of address - billTo, shipTo, soldTo.
- **`city` (required)**
`string` — City name.
- **`country` (required)**
`string` — ISO code for the country.
- **`line_1` (required)**
`string` — Street address line 1.
- **`state` (required)**
`string` — State or province.
- **`line_2`**
`string` — Street address line 2.
- **`line_3`**
`string` — Street address line 3.
- **`postal_code`**
`string` — Postal or zip code/number.
- **`crm_account_number`**
`string` — Unique CRM account number for the customer or partner/reseller.
- **`zoom_account_number`**
`string` — Unique Zoom account number for the customer or partner/reseller.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set the communication and invoice profile for the end customer.
- **`free_months_included`**
`boolean` — True if the quote created a free period subscription.
- **`free_months_reason_code`**
`string`, possible values: `"Customer's Desired Billing/Start Date", "Billing at Later Date for Other Reason", "Align to Customer's Renewal Date"` — Reason for free period in the subscription. Required if the subscription has free period.
- **`initial_term`**
`object` — Subscription initial, renewal or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The subscription term's type. Supported values are TERMED and EVERGREEN. If the subscription is TERMED, then \`period\` and \`period\_type\` fields are also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The term's end date, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The term's start date, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The term's duration in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`invoice_owner_account`**
`object` — Account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — Address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — Type of address - billTo, shipTo, soldTo.
- **`city` (required)**
`string` — City name.
- **`country` (required)**
`string` — ISO code for the country.
- **`line_1` (required)**
`string` — Street address line 1.
- **`state` (required)**
`string` — State or province.
- **`line_2`**
`string` — Street address line 2.
- **`line_3`**
`string` — Street address line 3.
- **`postal_code`**
`string` — Postal or zip code/number.
- **`crm_account_number`**
`string` — Unique CRM account number for the customer or partner/reseller.
- **`zoom_account_number`**
`string` — Unique Zoom account number for the customer or partner/reseller.
- **`offers`**
`array` — Subscription lines for new subscription.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — Charge model of this charge.
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — Charge type of this charge.
- **`discounts`**
`array` — Applicable discounts.
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE"` — Specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE".
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account".
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — Type of discount.
- **`amount_value`**
`number`, format: `double` — Discount in amount. Either percent\_value or amount\_value is required.
- **`apply_to_charge`**
`string` — The charge ID for the charge that this discount applies to.
- **`discount_program`**
`string` — Name of the strategic program if its strategic program discount.
- **`percent_value`**
`number`, format: `percent` — Discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount.
- **`amount`**
`number` — Money value.
- **`currency`**
`string` — ISO code for the currency.
- **`total_discount`**
`number`, format: `double` — Total discount applied on the charge.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the subscription line, in YYYY-MM-DD format.
- **`offer_id`**
`string` — Offer or plan ID.
- **`offer_name`**
`string` — Offer/plan name.
- **`offer_price_list_id`**
`string` — Offer price list ID.
- **`offer_price_list_name`**
`string` — Offer price list name.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — Number of licenses. Should be between minimum and maximum allowed for the plan.
- **`sku`**
`string` — Offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the subscription line, in YYYY-MM-DD format.
- **`usage_based_charge`**
`boolean` — True if the plan has a usage or overage based charge.
- **`paid_period_start_date`**
`string`, format: `YYYY-MM-DD` — Subscription paid period start date. Required if the subscription has free periods.
- **`payment_term`**
`string`, possible values: `"Due upon Receipt", "Net30", "Net45", "Net60"` — The payment term for this subscription. Supported values are - Due upon Receipt, Net30, Net45 and Net60. If null, will be defaulted to the payment term associated with the account.
- **`po_number`**
`string` — Purchase order number.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.
- **`deployment_partner_address`**
`object` — The address details.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if \`requires\_professional\_services\` is set to \`Yes, Zoom will do the deployment\`.
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if \`requires\_professional\_services\` is \`true\`.
- **`pso_engagement_request_id`**
`string` — Required if \`is\_zoom\_pso\_org\_engaged\` is set to \`Yes and I have a PSO Engagement Request ID\`.
- **`renewal_term`**
`object` — Subscription initial, renewal or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED", "EVERGREEN"` — The subscription term's type. Supported values are TERMED and EVERGREEN. If the subscription is TERMED, then \`period\` and \`period\_type\` fields are also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The term's end date, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The term's start date, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The term's duration in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`service_start_date`**
`string`, format: `YYYY-MM-DD` — Service start date. Equal to or before paid\_period\_start\_date.
- **`sold_to_contact`**
`object` — Sold to contact details.
- **`crm_contact_number`**
`string` — Unique CRM Number for the contact.
- **`email`**
`string` — The contact's email address.
- **`first_name`**
`string` — The first name of the sold to contact.
- **`last_name`**
`string` — The last name of the sold to contact.
- **`sold_to_crm_contact_number`**
`string` — CRM contact number for the sold to contact.
- **`sub_reseller`**
`object` — Account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — Address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — Type of address - billTo, shipTo, soldTo.
- **`city` (required)**
`string` — City name.
- **`country` (required)**
`string` — ISO code for the country.
- **`line_1` (required)**
`string` — Street address line 1.
- **`state` (required)**
`string` — State or province.
- **`line_2`**
`string` — Street address line 2.
- **`line_3`**
`string` — Street address line 3.
- **`postal_code`**
`string` — Postal or zip code/number.
- **`crm_account_number`**
`string` — Unique CRM account number for the customer or partner/reseller.
- **`zoom_account_number`**
`string` — Unique Zoom account number for the customer or partner/reseller.
- **`subscription_metrics`**
`object` — Subscription metrics like total contract value (tcv), monthly recurring revenue (mrr), total contracted billing (tcb).
- **`mrr`**
`number`, format: `double` — Monthly recurring revenue.
- **`subscription_number`**
`string` — Subscription number of the subscription.
- **`tcb`**
`number`, format: `double` — Total contracted billing. This is the forecast value at the time of booking for the total amount that will be billed over the duration of the charge.
- **`tcv`**
`number`, format: `double` — Total contract value. This is the total amount that has been booked over the duration of the charge.
- **`total_discount_pct`**
`number`, format: `percentage` — Total discount applied (in percentage).
- **`subscription_number`**
`string` — Subscription number of the subscription, which is created or updated. Will be blank if subscription creation is not complete.
- **`errors`**
`array` — Array of messages in case of validation or processing errors.
**Items:**
- **`error_code`**
`string` — Error code.
- **`error_description`**
`string` — Error description.
- **`header`**
`object` — Quote header details.
- **`quote_date` (required)**
`string`, format: `YYYY-MM-DD` — Quote date in \`YYYY-MM-DD\` format.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this quote.
**Items:**
- **`name`**
`string` — The attribute name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types - Integer, Enum, String, Boolean, or Object.
- **`deal_reg_number`**
`string` — Registration number of the deal registered by partner or reseller.
- **`documents`**
`array` — Documents uploaded for this quote provisioning.
**Items:**
- **`document_note`**
`string` — Note associated with the document.
- **`document_reference_id`**
`string` — Unique reference ID for the uploaded file.
- **`document_type`**
`string`, possible values: `"Purchase Order", "Customer Acceptance", "Other", "Quote"` — Type of document.
- **`negotiations`**
`array` — Negotiation activities.
**Items:**
- **`action_by`**
`string`, possible values: `"Partner", "Zoom COPS"` — Note or comment added by Partner or Zoom team.
- **`as_of_date`**
`string` — When the note was added.
- **`partner_note`**
`string` — Note or comment added by the partner.
- **`quote_number`**
`string` — Quote number associated with this action.
- **`status`**
`string`, possible values: `"Submitted", "Rejected", "Approved", "Provisioned"` — What action, if any, was taken on the quote.
- **`zoom_note`**
`string` — Note or comment added by Zoom team.
- **`po_number`**
`string` — Purchase order number.
- **`quote_description`**
`string` — The description for the quote.
- **`quote_expiry_date`**
`string`, format: `YYYY-MM-DD` — The date when quote will expire. If not provided, the quote will expire in 30 days from the date of creation. Max allowed expiry date is 180 days.
- **`quote_metrics`**
`object` — Quote metrics like total contract value (tcv), monthly recurring revenue (mrr), total contracted billing (tcb).
- **`mrr`**
`number`, format: `double` — Monthly recurring revenue.
- **`tcb`**
`number`, format: `double` — Total contracted billing. This is the forecast value at the time of booking for the total amount that will be billed over the duration of the charge.
- **`tcv`**
`number`, format: `double` — Total contract value. This is the total amount that has been booked over the duration of the charge.
- **`total_discount_pct`**
`number`, format: `percentage` — Total discount applied (in percentage).
- **`quote_number`**
`string` — The billing system quote number when the quote is successfully submitted or completed.
- **`quote_reference_id`**
`string` — Reference ID for a quote.
- **`quote_type`**
`string`, possible values: `"trial", "sale"`, default: `"sale"` — Type of quote - sale or trial.
- **`status`**
`string`, possible values: `"failedToSubmit", "completed", "canceled", "submitted", "failed", "approved", "rejected", "returned", "provisioning", "recalled"` — The status of the quote.
- **`trade_screening`**
`boolean` — The flag to indicate whether the subscription cleared trade screening check or not.
- **`transaction_type`**
`string`, possible values: `"New", "Amend"` — The transaction type for the quote. Possible values are New or Amend.
- **`warnings`**
`array` — Array of messages in case of validation or processing warnings
**Items:**
- **`error_code` (required)**
`string` — Error code.
- **`error_description` (required)**
`string` — Error description.
**Example:**
```json
{
"header": {
"quote_reference_id": "QU-3248714941",
"quote_type": "sale",
"transaction_type": "New",
"quote_description": "New ZCC subscription for ABC Pvt. Ltd.",
"status": "submitted",
"quote_number": "Q-1012312",
"deal_reg_number": "DELREG-1002-L1",
"quote_date": "2022-10-25",
"quote_expiry_date": "2023-11-02",
"po_number": "PO-10021-A",
"trade_screening": false,
"quote_metrics": {
"tcv": 120000,
"tcb": 120000,
"mrr": 10000,
"total_discount_pct": 0.1
},
"negotiations": [
{
"partner_note": "Need additional information for approving exception discount",
"zoom_note": "Exception discount not matching promo code.",
"action_by": "Zoom COPS",
"as_of_date": "2022-10-25T12:10:234Z",
"status": "Rejected",
"quote_number": "Q-1012312"
}
],
"documents": [
{
"document_reference_id": "DOC-1234",
"document_note": "Latest purchase order.",
"document_type": "Purchase Order"
}
],
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
]
},
"create_subscriptions": [
{
"subscription_number": "A-1232632",
"end_customer_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"invoice_owner_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sub_reseller": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1232",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sold_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "abc@test.com"
},
"bill_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "abc@example.com"
},
"initial_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2022-10-25",
"end_date": "2022-10-25"
},
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2022-10-25",
"end_date": "2022-10-25"
},
"agreement_dates": {
"contract_effective_date": "2022-10-25",
"service_activation_date": "2022-10-25",
"customer_acceptance_date": "2022-10-25"
},
"sold_to_crm_contact_number": "C-34267",
"end_customer_language": "es-ES;",
"payment_term": "Net30",
"service_start_date": "2022-10-25",
"paid_period_start_date": "2022-10-25",
"free_months_included": false,
"free_months_reason_code": "Billing at Later Date for Other Reason",
"auto_renew": true,
"currency": "CAD",
"deal_reg_number": "DELREG-1002-L1",
"po_number": "PO-10021-A",
"subscription_metrics": {
"subscription_number": "A2324323",
"tcv": 120000,
"tcb": 120000,
"mrr": 10000,
"total_discount_pct": 10
},
"offers": [
{
"offer_id": "Off-34213",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"total_discount": 20,
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"apply_to_charge": "PRLC-3223",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"add_ons": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"total_discount": 20,
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"apply_to_charge": "PRLC-3223",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
],
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
}
],
"amend_subscriptions": [
{
"subscription_number": "A-4534587",
"end_customer_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"invoice_owner_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sub_reseller": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-1234",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sold_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "Abc@example.com"
},
"bill_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "Abc@example.com"
},
"currency": "CAD",
"deal_reg_number": "DELREG-1002-L1",
"po_number": "PO-10021-A",
"subscription_metrics": {
"subscription_number": "A4324242",
"tcv": 120000,
"tcb": 120000,
"mrr": 10000,
"total_discount_pct": 10
},
"add_offers": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"total_discount": 20,
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"apply_to_charge": "PRLC-3223",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"add_add_ons": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"total_discount": 20,
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"apply_to_charge": "PRLC-3223",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"upgrade_offers": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"old_offer_price_list_id": "PRL-3412",
"old_partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"old_subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"total_discount": 20,
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"apply_to_charge": "PRLC-3223",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"remove_offers": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"total_discount": 20,
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"apply_to_charge": "PRLC-3223",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true,
"remove_reason": "Downsell"
}
],
"update_offers": [
{
"offer_id": "OFF-4556",
"offer_name": "Zoom Workplace Pro",
"sku": "SKU-10000120",
"offer_price_list_id": "PRL-2323",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2022-10-25",
"end_date": "2022-10-25",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"total_discount": 20,
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"apply_to_charge": "PRLC-3223",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
}
],
"usage_based_charge": true
}
],
"cancel_subscription": {
"cancel_by": "EndOfCurrentTerm",
"cancel_on": "2022-10-25",
"cancel_reason": "Customer no longer uses this."
},
"renew_subscription": {
"renewal_term": {
"term_type": "TERMED",
"period_type": "Month",
"term_period": 12,
"start_date": "2022-10-25",
"end_date": "2022-10-25"
},
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223",
"discount_level": "subscription",
"discount_program": "VLA program"
}
]
},
"update_subscription": {
"auto_renew": true,
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"sold_to_crm_contact_number": "C-232442",
"end_customer_language": "es-ES;",
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
},
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
]
}
],
"errors": [
{
"error_code": "5012",
"error_description": "Invalid Partner or Reseller Identifier supplied."
}
],
"warnings": [
{
"error_code": "5604",
"error_description": "No pricebook exists with given `offer_price_list_id`."
}
]
}
```
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found \*\*Error Code:\*\* \`5009\` \
No records found. \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(/docs/api/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition that prevented it from fulfilling the request.
### Update a subscription quote for a Zoom Partner
- **Method:** `PATCH`
- **Path:** `/commerce/quotes/{quoteReferenceId}`
- **Tags:** Quote
Update a subscription quote for a Zoom partner's end customers. Approved quotes cannot be updated.\
**Note:** Check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api/).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:quote:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Request Body
##### Content-Type: application/json
- **`header` (required)**
`object` — The quote header's details.
- **`quote_date` (required)**
`string`, format: `YYYY-MM-DD` — The quote date in YYYY-MM-DD format.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this quote.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types - Integer, Enum, String, Boolean, Object.
- **`negotiation_note`**
`string` — A note for negotiation deal for the quote.
- **`quote_description`**
`string` — A description of the quote.
- **`quote_expiry_date`**
`string`, format: `YYYY-MM-DD` — The date when the quote will expire. If not provided, the quote will expire in 30 days from the date of creation. Maximum allowed expiry date is 180 days.
- **`amend_subscriptions`**
`array` — The quote details for amending an existing subscription.
**Items:**
- **`add_add_ons`**
`array` — The offer details for add-ons to be added in the subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer's price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`add_offers`**
`array` — The offer details for offers to be added in the subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this subscription.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types - Integer, Enum, String, Boolean, Object.
- **`cancel_subscription`**
`object` — The cancellation details.
- **`cancel_by` (required)**
`string`, possible values: `"EndOfCurrentTerm", "EndOfLastInvoicePeriod", "SpecificDate"` — When the subscription will be cancelled. Required for paid subscriptions. Currently only 'EndOfCurrentTerm' is supported.
- **`cancel_reason` (required)**
`string` — The reason for cancellation.
- **`cancel_on`**
`string`, format: `YYYY-MM-DD` — Must be provided if cancel\_by is SpecificDate.
- **`remove_offers`**
`array` — The offer details for offers to be removed from the subscription.
**Items:**
- **`end_date` (required)**
`string`, format: `YYYY-MM-DD` — The date when the offer will be removed. It should be between today and the subscription end date.
- **`offer_price_list_id` (required)**
`string` — The offer price list ID for the offer to be removed from the subscription.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`remove_reason`**
`string` — The reason for cancellation.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`renew_subscription`**
`object` — The renewal details.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`renewal_term`**
`object` — Subscription initial, renewal or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — End date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — Start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`update_offers`**
`array` — Update terms and quantity of an offer or add-on.
**Items:**
- **`offer_price_list_id` (required)**
`string` — Offer price list ID for the offer to be updated.
- **`start_date` (required)**
`string`, format: `YYYY-MM-DD` — The change start date. Should be between today and subscription end date.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — Offer's specific attributes such as the number of hosts and participant capacity.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — Unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses. Should be between minimum and maximum allowed for the plan.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`update_subscription`**
`object` — Update subscription attributes.
- **`auto_renew`**
`boolean` — Whether the subscription automatically renews at the end of each term. Only applicable if the initial term type is TERMED. If auto\_renew is true, providing renewal\_term is required.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set communication and invoice profile for the end customer.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.'
- **`deployment_partner_address`**
`object` — The address details. Required with 'deployment\_partner\_name'.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if 'requires\_professional\_services' is set to 'Yes, Zoom will do the deployment.'
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if "requires\_professional\_services" is true.
- **`pso_engagement_request_id`**
`string` — Required if 'is\_zoom\_pso\_org\_engaged' is set to 'Yes and I have a PSO Engagement Request ID.'
- **`renewal_term`**
`object` — The subscription's renewal term. Required for paid subscriptions (order\_type = sale).
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`sold_to_crm_contact_number`**
`string` — CRM contact number for the sold to contact.
- **`upgrade_offers`**
`array` — The offer details for offers to be upgraded in the subscription.
**Items:**
- **`start_date` (required)**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription end date.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`new_offer_price_list_id`**
`string` — The new offer price list ID.
- **`new_partner_sku_code`**
`string` — The unique SKU code for partners.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`old_offer_price_list_id`**
`string` — The existing offer price list ID.
- **`old_partner_sku_code`**
`string` — The unique SKU code for partners.
- **`old_subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`quantity`**
`integer` — The number of licenses.
- **`create_subscriptions`**
`array` — The quote details for creating a new subscription.
**Items:**
- **`add_add_ons`**
`array` — The new add-ons to be added to a subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription's end date.
- **`add_offers`**
`array` — New offers to be added to a subscription.
**Items:**
- **`offer_price_list_id` (required)**
`string` — The offer price list ID.
- **`discounts`**
`array` — Additional discounts requested for this offer.
**Items:**
- **`apply_to_charge` (required)**
`string` — The charge ID for the charge to which this discount will be applied.
- **`discount_type` (required)**
`string`, possible values: `"Exception"` — The type of discount. Currently only 1 value supported.
- **`amount_value`**
`number`, format: `double` — The discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — The discount in percentage. Either percent\_value or amount\_value is required but both should not be provided.
- **`offer_attributes`**
`array` — The offer's specific attributes, such as the number of hosts, participant capacity, and so on.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute's value.
- **`partner_sku_code`**
`string` — The unique SKU code for partners.
- **`quantity`**
`integer` — The number of licenses.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The change start date. It should be between today and the subscription's end date.
- **`additional_attributes`**
`array` — Any additional attributes that need to be tracked for this subscription.
**Items:**
- **`name`**
`string` — The attribute's name.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types - Integer, Enum, String, Boolean, Object.
- **`auto_renew`**
`boolean`, default: `true` — Whether the subscription automatically renews at the end of each term. Defaults to true. Only applicable for "createSubscription" quote action if the initial term type is TERMED.
- **`currency`**
`string` — Subscription currency in a three-letter ISO currency code.
- **`end_customer_language`**
`string`, possible values: `"es-ES;", "de-DE;", "fr-FR;", "ja-JP;", "en-US;"` — The language to be used to set communication and invoice profile for the end customer.
- **`free_months_reason_code`**
`string`, possible values: `"Customer's Desired Billing/Start Date", "Billing at Later Date for Other Reason", "Align to Customer's Renewal Date"` — The reason for requesting free period in the subscription. Required if the subscription has a free period.
- **`initial_term`**
`object` — The subscription's initial, renewal, or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 36, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, or 60.
- **`paid_period_start_date`**
`string`, format: `YYYY-MM-DD` — The subscription paid period start date. Required if the subscription has a free period.
- **`professional_services`**
`object` — Set professional services requirements. Required for Zoom Contact Center (ZCX) deals.
- **`requires_professional_services` (required)**
`string`, possible values: `"Yes, my organization will do the deployment", "Yes, Zoom will do the deployment", "Yes, a different organization will do the deployment", "No, the platform is already deployed", "No, the customer doesn't want deployment", "No, other reason"` — Set professional services requirements for this subscription. Required if subscription contains ZCX offer.
- **`deployment_partner`**
`object` — Required if 'requires\_professional\_services' is set to 'Yes, a different organization will do the deployment.'
- **`deployment_partner_address`**
`object` — The address details. Required with 'deployment\_partner\_name'.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`postal_code` (required)**
`string` — The postal or zip code number.
- **`state` (required)**
`string` — The state or province.
- **`deployment_partner_crm_account_number`**
`string` — Deployment partner CRM number. Required if 'deployment\_partner\_name' is blank.
- **`deployment_partner_name`**
`string` — The deployment partner's name. Required if 'deployment\_partner\_crm\_account\_number' is blank.
- **`is_zoom_pso_org_engaged`**
`string`, possible values: `"Yes and I have a PSO Engagement Request ID", "Yes, but I need an Engagement Request to be created", "No, I need to start now"` — Required if 'requires\_professional\_services' is set to 'Yes, Zoom will do the deployment.'
- **`professional_services_description`**
`string` — A description of the partner-led professional or managed services should be provided if "requires\_professional\_services" is true.
- **`pso_engagement_request_id`**
`string` — Required if 'is\_zoom\_pso\_org\_engaged' is set to 'Yes and I have a PSO Engagement Request ID.'
- **`renewal_term`**
`object` — The subscription's initial, renewal, or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED"` — The type of the subscription term. If the subscription is TERMED, then 'term\_period' field is also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer`, possible values: `12, 24, 26, 48, 60` — The duration of the term in months. Only applicable if the value of the \`term\_type\` field is TERMED. Allowed values are 12, 24, 36, 48, 60.
- **`service_start_date`**
`string`, format: `YYYY-MM-DD` — The service start date. It should be equal to or before \`paid\_period\_start\_date\`.
**Example:**
```json
{
"header": {
"quote_description": "New ZCC subscription for ABC Pvt. Ltd.",
"quote_date": "2023-10-03",
"quote_expiry_date": "2023-11-02",
"negotiation_note": "Quote updated as per approval comment.",
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
]
},
"create_subscriptions": [
{
"initial_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2023-10-03"
},
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"service_start_date": "2024-03-20",
"paid_period_start_date": "2024-03-20",
"free_months_reason_code": "Customer's Desired Billing/Start Date",
"currency": "CAD",
"auto_renew": true,
"end_customer_language": "es-ES;",
"add_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Recording storage capacity in GB",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"add_add_ons": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
],
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
}
],
"amend_subscriptions": [
{
"add_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"add_add_ons": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"upgrade_offers": [
{
"new_offer_price_list_id": "Off-2323",
"new_partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"old_offer_price_list_id": "Off-2564",
"old_partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"old_subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"remove_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"end_date": "2023-10-03",
"remove_reason": "Downsell"
}
],
"update_offers": [
{
"offer_price_list_id": "Off-2323",
"partner_sku_code": "PAR1-PRO-BASE-NH1Y",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2023-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"value": "10"
}
],
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
}
],
"cancel_subscription": {
"cancel_by": "EndOfCurrentTerm",
"cancel_on": "2023-10-03",
"cancel_reason": "Downsell"
},
"renew_subscription": {
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"discounts": [
{
"discount_type": "Exception",
"percent_value": 0.1,
"amount_value": 10,
"apply_to_charge": "PRLC-3223"
}
]
},
"update_subscription": {
"sold_to_crm_contact_number": "C-232442",
"auto_renew": true,
"renewal_term": {
"term_type": "TERMED",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-03-20"
},
"end_customer_language": "es-ES;",
"professional_services": {
"requires_professional_services": "Yes, Zoom will do the deployment",
"is_zoom_pso_org_engaged": "Yes and I have a PSO Engagement Request ID",
"pso_engagement_request_id": "SRE-351262",
"deployment_partner": {
"deployment_partner_name": "ABC LLC",
"deployment_partner_crm_account_number": "A-1234241",
"deployment_partner_address": {
"line_1": "55 Almaden Blvd",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"professional_services_description": "false"
}
},
"additional_attributes": [
{
"name": "Tracking number",
"value_type": "Boolean",
"value": "TR28483"
}
]
}
]
}
```
#### Responses
##### Status: 200 Quote updated successfully.
###### Content-Type: application/json
- **`errors`**
`array` — Array of messages in case of validation errors.
**Items:**
- **`error_code` (required)**
`string` — Error code.
- **`error_description` (required)**
`string` — Error description.
- **`quote_date`**
`string`, format: `YYYY-MM-DD` — The date when the quote should be placed in the billing system.
- **`quote_reference_id`**
`string` — Reference ID for a quote.
- **`status`**
`string`, possible values: `"failedToSubmit", "submitted"` — Status of the quote.
- **`warnings`**
`array` — Array of messages in case of validation or processing warnings.
**Items:**
- **`error_code` (required)**
`string` — Error code.
- **`error_description` (required)**
`string` — Error description.
**Example:**
```json
{
"status": "submitted",
"quote_reference_id": "QO-3248714941",
"quote_date": "2023-10-03",
"errors": [
{
"error_code": "5604",
"error_description": "No pricebook exists with given offer_price_list_id."
}
],
"warnings": [
{
"error_code": "5604",
"error_description": "No pricebook exists with given offer_price_list_id."
}
]
}
```
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request. \*\*Error Code:\*\* \`6103\` \
Unable to update quote. Please try again later. \
### Submits a subscription quote for provisioning
- **Method:** `PATCH`
- **Path:** `/commerce/quotes/{quoteReferenceId}/fulfillment`
- **Tags:** Quote
Submits a subscription quote for provisioning. Only approved quotes can be submitted for fulfillment.\
**Note:** Check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api/).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:write:quote:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
#### Request Body
##### Content-Type: application/json
- **`documents` (required)**
`array` — Array of document or attachment ids uploaded for the quote.
**Items:**
- **`document_reference_id`**
`string` — Unique document number.
- **`document_type`**
`string`, possible values: `"Purchase Order", "Customer Acceptance", "Other"` — Type of document.
- **`po_number` (required)**
`string` — The purchase order number.
- **`comments`**
`string` — Additional comments or notes to be added to the quote negotiation notes before provisioning.
**Example:**
```json
{
"po_number": "PO-10021-A",
"comments": "Submmitting for fulfillment after exception approval.",
"documents": [
{
"document_reference_id": "D-1212",
"document_type": "Purchase Order"
}
]
}
```
#### Responses
##### Status: 204 Quote successfully submitted for fulfillment.
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`6200\` \
Purchase order number is required. \
\*\*Error Code:\*\* \`6201\` \
Document numbers exceed acceptable limit. \
\*\*Error Code:\*\* \`6202\` \
Purchase Order document is required \
\*\*Error Code:\*\* \`6203\` \
Customer acceptance document is required \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request. \*\*Error Code:\*\* \`6220\` \
Unable to submit quote for fulfillment. Please try again later. \
### Gets paid subscriptions for a Zoom partner.
- **Method:** `GET`
- **Path:** `/commerce/subscriptions`
- **Tags:** Subscription
Returns paid subscriptions for a distributor or a reseller. The subscriptions list can be filtered by end customer account number, subscription status, subscription number, start and end dates. By default, the list of active subscriptions in the last month is retrieved.\
**Note:** Please check the base URL for sandbox and production environments under the Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:subscription:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 Subscriptions retrieved successfully.
###### Content-Type: application/json
- **`next_page_token`**
`string` — The next page token.
- **`subscription_list`**
`array` — The list of subscriptions.
**Items:**
- **`auto_renew`**
`boolean` — If true, the subscription automatically renews at the end of the current term.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The date when the subscription ends.
- **`invoice_owner`**
`object` — The account identifiers and the name.
- **`account_name`**
`string` — The account's name.
- **`crm_account_number`**
`string` — The unique CRM account number.
- **`zoom_account_number`**
`string` — The Zoom account number (ZAN).
- **`mrr`**
`object` — The monthly recurring revenue (MRR) details.
- **`currency`**
`string` — The ISO currency code.
- **`gross_amount`**
`number`, format: `double` — The gross amount.
- **`net_amount`**
`number`, format: `double` — The net amount.
- **`order_number`**
`string` — The associated order number, if any.
- **`sold_to_email`**
`string` — The email address of the sold-to contact.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The date when the subscription starts.
- **`sub_reseller_name`**
`string` — The sub-reseller's name.
- **`subscription_number`**
`string` — The subscription number.
- **`subscription_owner`**
`object` — The account identifiers and the name.
- **`account_name`**
`string` — The account's name.
- **`crm_account_number`**
`string` — The unique CRM account number.
- **`zoom_account_number`**
`string` — The Zoom account number (ZAN).
- **`subscription_status`**
`string`, possible values: `"active", "pending_activation", "pending_acceptance", "cancelled", "suspended", "expired"` — The status of the subscription.
- **`trade_screening`**
`boolean` — Whether the subscription cleared the trade screening check.
**Example:**
```json
{
"next_page_token": "nfirhf84574fkse",
"subscription_list": [
{
"subscription_number": "A-31231322",
"subscription_status": "active",
"subscription_owner": {
"crm_account_number": "A0012",
"account_name": "John Galt",
"zoom_account_number": "3842618277"
},
"invoice_owner": {
"crm_account_number": "A0012",
"account_name": "John Galt",
"zoom_account_number": "3842618277"
},
"start_date": "2023-07-01",
"end_date": "2024-07-01",
"order_number": "O-132323",
"sub_reseller_name": "ABC Inc.",
"sold_to_email": "abc@test.com",
"mrr": {
"gross_amount": 120000,
"net_amount": 120000,
"currency": "USD"
},
"auto_renew": true,
"trade_screening": false
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5313\` \
Invalid sort value. It must be one of: subscriptionNumber.asc, subscriptionNumber.desc, startDate.asc, endDate.asc, startDate.desc, or endDate.desc. \
\*\*Error Code:\*\* \`5320\` \
Invalid status value. It must be one of: active, pending\_activation, cancelled, or expired. \
\*\*Error Code:\*\* \`5002\` \
Invalid date format. Expected format: YYYY-MM-DD. \
\*\*Error Code:\*\* \`5003\` \
Invalid duration. It must be one of: lastMonth, last90Days, last1Year, or custom. \
\*\*Error Code:\*\* \`5000\` \
Invalid character & or | in the name filter. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Gets subscription details for a given subscription number
- **Method:** `GET`
- **Path:** `/commerce/subscriptions/{subscriptionNumber}`
- **Tags:** Subscription
Returns the subscription details for a given subscription number.\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api/).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:subscription:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 The subscription retrieved successfully.
###### Content-Type: application/json
- **`agreement_dates`**
`object` — The subscription agreement dates.
- **`contract_effective_date`**
`string`, format: `YYYY-MM-DD` — The date when the contract will be effective from. It is a required field to provide in the order when order action type is "createSubscription", in YYYY-MM-DD format and if order\_date is different from contract effective date.
- **`customer_acceptance_date`**
`string`, format: `YYYY-MM-DD` — The date when the order was approved by the customer. It is a required field to provide in the order when order action type is "addOffer", "createSubscription", "addOn", "upgrade", "upsell", "renewSubscription", in YYYY-MM-DD format.
- **`service_activation_date`**
`string`, format: `YYYY-MM-DD` — The date when the service will be activated, in YYYY-MM-DD format.
- **`auto_renew`**
`boolean` — If true, the subscription automatically renews at the end of the current term.
- **`bill_to`**
`object` — The details of the account.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — The details of the address.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.r
- **`crm_account_number`**
`string` — The unique CRM account number for the customer or partner or reseller
- **`zoom_account_number`**
`string` — The unique Zoom account number for the customer or partner or reseller
- **`bill_to_contact`**
`object` — Bill to contact details
- **`crm_contact_number`**
`string` — Unique CRM Number for the contact.
- **`email`**
`string` — The contact's email id.
- **`first_name`**
`string` — The first name of the bill to contact.
- **`last_name`**
`string` — The last name of the bill to contact.
- **`contracted_mrr`**
`number` — The monthly recurring revenue of the subscription.
- **`created_date`**
`string`, format: `YYYY-MM-DD` — The creation date in YYYY-MM-DD format.
- **`currency`**
`string` — The subscription currency in the 3-letter ISO currency code.
- **`current_term`**
`object` — The subscription's initial renewal or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED", "EVERGREEN"` — The type of the subcription term. Supported values are TERMED and EVERGREEN. If the subscription is TERMED, then period and \`period\_type\` fields are also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`period_type`**
`string`, possible values: `"Month", "Year"` — The unit of time that the term is measured. Only applicable if the value of the term\_type field is TERMED. Supported values are "Month" or "Year"
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer` — The duration of the term in months, years, depending on the value of the period\_type field. Only applicable if the value of the term\_type field is TERMED.
- **`deal_reg_number`**
`string` — The registration number of the deal registered by partner or reseller.
- **`end_customer_account`**
`object` — The account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — The address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The type of address: billTo, shipTo, or soldTo.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal or zip code.
- **`crm_account_number`**
`string` — The unique CRM account number for the customer or partner or reseller.
- **`zoom_account_number`**
`string` — The unique Zoom account number for the customer or partner or reseller.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the subscription, in YYYY-MM-DD format.
- **`free_months_included`**
`boolean`, default: `false` — True if the order created a free period subscription.
- **`free_months_reason_code`**
`string`, possible values: `"Standard Free Months", "Sales Promotion", "Customer's Desired Billing/Start Date", "Billing at later date for Other Reason", "Align to Customer's Renewal Date", "Competitor Buyout", "None"`, default: `"Standard Free Months"` — The reason for free period in the subscription. Required if the subscription has free period.
- **`initial_term`**
`object` — The subscription's initial renewal or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED", "EVERGREEN"` — The type of the subcription term. Supported values are TERMED and EVERGREEN. If the subscription is TERMED, then period and period\_type fields are also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`period_type`**
`string`, possible values: `"Month", "Year"` — The unit of time that the term is measured. Only applicable if the value of the term\_type field is TERMED. Supported values are "Month" or "Year"
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer` — The duration of the term in months, years, depending on the value of the period\_type field. Only applicable if the value of the term\_type field is TERMED.
- **`invoice_owner_account`**
`object` — The account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — The address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The type of address: billTo, shipTo, or soldTo.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.
- **`crm_account_number`**
`string` — The unique CRM account number for the customer or partner or reseller.
- **`zoom_account_number`**
`string` — The unique Zoom account number for the customer or partner or reseller.
- **`invoice_separately`**
`boolean` — If true, the subscription is billed separately from other subscriptions. If false, the subscription is included with other subscriptions in the account invoice.
- **`mrr`**
`object` — This field represents the sale price, list price, net amount, or gross amount.
- **`amount`**
`number` — The monetary value.
- **`currency`**
`string` — The ISO code for the currency.
- **`paid_period_start_date`**
`string`, format: `YYYY-MM-DD` — The subscription paid period start date.
- **`payment_term`**
`string`, possible values: `"Due upon Receipt", "Net30", "Net45", "Net60"` — The payment term for this subscription. Supported values: Due upon Receipt, Net30, Net45, and Net60. If null, it defaults to the payment term associated with the account.
- **`po_number`**
`string` — The purchase order number.
- **`renewal_term`**
`object` — The subscription's initial renewal or current term.
- **`term_type` (required)**
`string`, possible values: `"TERMED", "EVERGREEN"` — The type of the subcription term. Supported values are TERMED and EVERGREEN. If the subscription is TERMED, then period and period\_type fields are also required.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the term, in YYYY-MM-DD format.
- **`period_type`**
`string`, possible values: `"Month", "Year"` — The unit of time that the term is measured. Only applicable if the value of the term\_type field is TERMED. Supported values are "Month" or "Year"
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the term, in YYYY-MM-DD format.
- **`term_period`**
`integer` — The duration of the term in months, years, depending on the value of the \`period\_type\` field. Only applicable if the value of the \`term\_type\` field is TERMED.
- **`service_start_date`**
`string`, format: `YYYY-MM-DD` — The service start date. Equal to or before the start date of the paid period.
- **`sold_to`**
`object` — The details of the account.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — The details of the address.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.
- **`crm_account_number`**
`string` — The unique CRM account number for the customer or partner or reseller.
- **`zoom_account_number`**
`string` — The unique Zoom account number for the customer or partner or reseller.
- **`sold_to_contact`**
`object` — Sold to contact details
- **`crm_contact_number`**
`string` — Unique CRM Number for the contact
- **`email`**
`string` — The contact's email id.
- **`first_name`**
`string` — The first name of the sold to contact.
- **`last_name`**
`string` — The last name of the sold to contact.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the subscription, in YYYY-MM-DD format.
- **`status`**
`string`, possible values: `"draft", "pending_activation", "pending_acceptance", "active", "expired", "cancelled", "paused"` — The status of the subscription.
- **`sub_reseller`**
`object` — The sub-reseller account number.
- **`account_name`**
`string` — The sub-reseller name.
- **`address`**
`object` — The address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The type of address: billTo, shipTo, or soldTo.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.
- **`crm_account_number`**
`string` — The sub-reseller CRM account number.
- **`zoom_account_number`**
`string` — The unique Zoom account number for the customer or partner or reseller.
- **`subscription_lines`**
`array` — The subscription lines or items.
**Items:**
- **`charges`**
`array` — All charges applied on the offer.
**Items:**
- **`charge_id`**
`string` — The charge ID for the charge.
- **`charge_model`**
`string`, possible values: `"Flat Fee Pricing", "Per Unit Pricing", "Overage Pricing", "Volume Pricing", "Tiered Pricing"` — charge model of this charge
- **`charge_type`**
`string`, possible values: `"OneTime", "Recurring", "Usage"` — charge type of this charge
- **`discounts`**
`array` — Applicable discounts
**Items:**
- **`apply_to` (required)**
`string`, possible values: `"ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE", "ONETIMERECURRINGUSAGE"` — specifies how the discount will be applied. One time or recurring. Supported values are "ONETIME", "RECURRING", "USAGE", "ONETIMERECURRING", "ONETIMEUSAGE", "RECURRINGUSAGE" and "ONETIMERECURRINGUSAGE"
- **`discount_level` (required)**
`string`, possible values: `"priceplan", "subscription", "account"` — Application scope of the discount. For example, if the value of this field is subscription and the value of the apply\_to field is RECURRING, the discount applies to all recurring charges in the same subscription. Supported values are "priceplan" "subscription" "account"
- **`discount_type` (required)**
`string`, possible values: `"DealReg", "Partner Standard", "Exception"` — type of discount. supported values are "DealReg", "Partner", "Exception"
- **`amount_value`**
`number`, format: `double` — discount in amount. Either percent\_value or amount\_value is required.
- **`percent_value`**
`number`, format: `percent` — discount in percentage. Either percent\_value or amount\_value is required but both should not be provided
- **`net_amount`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`net_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`partner_sku_code`**
`string` — Unique SKU code for the charge.
- **`sale_price`**
`object` — Represents sale price, list price, net amount or gross amount
- **`amount`**
`number` — money value
- **`currency`**
`string` — ISO code for the currency
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the subscription line, in YYYY-MM-DD format.
- **`offer_attributes`**
`array` — The offer attributes.
**Items:**
- **`name`**
`string` — The attribute name.
- **`uom`**
`string` — The unit of measure.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types: Integer, Enum, String, Boolean, or Object.
- **`offer_id`**
`string` — The offer or plan ID.
- **`offer_name`**
`string` — The offer or plan name.
- **`offer_price_list_id`**
`string` — The offer price list ID.
- **`offer_price_list_name`**
`string` — The offer price list name.
- **`offer_type`**
`string`, possible values: `"plan", "standalone", "configurable", "isv", "addon"` — The type of offering.
- **`quantity`**
`integer` — The number of licenses.
- **`sku`**
`string` — The offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the subscription line, in YYYY-MM-DD format.
- **`status`**
`string`, possible values: `"draft", "pending_activation", "pending_acceptance", "active", "expired", "cancelled", "paused", "removed"` — The status of the subscription line.
- **`subscription_price_list_id`**
`string` — The unique ID for a pricelist in the subscription. Required if there are more than 1 lines in the subscription for this pricelist.
- **`subscription_number`**
`string` — The subscription number.
- **`updated_date`**
`string`, format: `YYYY-MM-DD` — The updated date in YYYY-MM-DD format.
**Example:**
```json
{
"subscription_number": "A-31231322",
"status": "active",
"payment_term": "Net30",
"service_start_date": "2023-10-03",
"paid_period_start_date": "2023-10-03",
"free_months_included": false,
"free_months_reason_code": "Standard Free Months",
"deal_reg_number": "DELREG-1002-L1",
"po_number": "PO-10021-A",
"currency": "CAD",
"end_customer_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-12323",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"invoice_owner_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-12323",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sub_reseller": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-45r33",
"account_name": "Novam Corp.",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"agreement_dates": {
"contract_effective_date": "2023-10-03",
"service_activation_date": "2023-10-03",
"customer_acceptance_date": "2023-10-03"
},
"initial_term": {
"term_type": "TERMED",
"period_type": "Month",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-10-03"
},
"renewal_term": {
"term_type": "TERMED",
"period_type": "Month",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-10-03"
},
"current_term": {
"term_type": "TERMED",
"period_type": "Month",
"term_period": 12,
"start_date": "2023-10-03",
"end_date": "2024-10-03"
},
"auto_renew": true,
"start_date": "2023-10-03",
"end_date": "2024-10-03",
"invoice_separately": true,
"contracted_mrr": 1000,
"mrr": {
"amount": 99.99,
"currency": "USD"
},
"bill_to": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-12323",
"account_name": "John Doe LLC",
"address": {
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sold_to": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-12323",
"account_name": "John Doe LLC",
"address": {
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sold_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "abc@test.com"
},
"bill_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "abc@test.com"
},
"subscription_lines": [
{
"offer_id": "PR-2323",
"offer_name": "Zoom Workplace Pro",
"offer_type": "plan",
"sku": "SKU-00000118",
"offer_price_list_id": "PRL-2323",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"subscription_price_list_id": "fvnderfy89rui43jr23ej23",
"quantity": 100,
"start_date": "2023-10-03",
"end_date": "2024-10-03",
"status": "active",
"charges": [
{
"charge_model": "Volume Pricing",
"charge_type": "OneTime",
"charge_id": "PRLC-3223",
"partner_sku_code": "PAR1-ENT-BASE-NH1Y",
"sale_price": {
"amount": 99.99,
"currency": "USD"
},
"net_price": {
"amount": 99.99,
"currency": "USD"
},
"net_amount": {
"amount": 99.99,
"currency": "USD"
},
"discounts": [
{
"discount_type": "DealReg",
"percent_value": 0.1,
"amount_value": 10,
"apply_to": "RECURRING",
"discount_level": "subscription"
}
]
}
],
"offer_attributes": [
{
"name": "Min licenses for purchase",
"uom": "count",
"value_type": "Integer",
"value": "10"
}
]
}
],
"created_date": "2024-10-03",
"updated_date": "2024-10-03"
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5302\` \
Invalid subscription number. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Unauthorized access. Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found \*\*Error Code:\*\* \`5009\` \
No records found \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Gets subscription changes/versions for a given subscription number.
- **Method:** `GET`
- **Path:** `/commerce/subscriptions/{subscriptionNumber}/versions`
- **Tags:** Subscription
Returns the subscription changes or versions for a given subscription number.\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section here -
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:subscription:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 Subscription changes/versions retrieved successfully.
###### Content-Type: application/json
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The subscription's end date.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The subscription's start date.
- **`status`**
`string`, possible values: `"active", "expired"` — This field indicates expired or active status.
- **`subscription_number`**
`string` — The subscription number of the subscription.
- **`subscription_versions`**
`array` — The subscription updates.
**Items:**
- **`action`**
`array` — List of actions applied to the subscription in this version.
**Items:**
`string`, possible values: `"create_subscription", "terms", "add_subscription_plan", "update_subscription_plan", "remove_subscription_plan", "renew", "cancel", "owner_transfer", "pause", "resume", "replace_subscription_plan"` — Action type: create, upsell, and downsell.
- **`currency`**
`string` — The ISO code for MRR currency.
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The subscription end date.
- **`latest_version`**
`boolean` — Whether this version is the latest version or not.
- **`mrr`**
`number` — The MRR value for this version.
- **`sequence`**
`integer` — The action order.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The subscription start date.
- **`version`**
`integer` — The version ID.
**Example:**
```json
{
"subscription_number": "A-31231322",
"status": "active",
"start_date": "2023-01-07",
"end_date": "2024-07-02",
"subscription_versions": [
{
"sequence": 1,
"version": 1,
"latest_version": true,
"action": [
"create"
],
"start_date": "2023-01-07",
"end_date": "2024-08-01",
"mrr": 1000,
"currency": "USD"
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details. \*\*Error Code:\*\* \`5302\` \
Invalid subscription number. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found \*\*Error Code:\*\* \`5009\` \
No records found \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Get trial subscriptions for a Zoom partner
- **Method:** `GET`
- **Path:** `/commerce/trials`
- **Tags:** Subscription
Returns trial subscriptions for a distributor or reseller. The subscriptions list can be filtered by end customer account number, subscription status, subscription number, and start and end dates. By default, the list of active subscriptions in the last month is retrieved.\
**Note:** Please check the base URL for sandbox and production environments under the Zoom Commerce section [here](https://developers.zoom.us/docs/api).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:subscription:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
#### Responses
##### Status: 200 Trials retrieved successfully.
###### Content-Type: application/json
- **`page_count`**
`integer` — The total number of pages in the result set.
- **`trial_list`**
`array` — The list of trials.
**Items:**
- **`invoice_owner`**
`object` — The account identifiers and name.
- **`account_name`**
`string` — The account name.
- **`crm_account_number`**
`string` — The unique CRM account number.
- **`zoom_account_number`**
`string` — The Zoom account number (ZAN).
- **`sub_reseller_name`**
`string` — The sub-reseller's name.
- **`subscription_owner`**
`object` — The account identifiers and name.
- **`account_name`**
`string` — The account name.
- **`crm_account_number`**
`string` — The unique CRM account number.
- **`zoom_account_number`**
`string` — The Zoom account number (ZAN).
- **`trial_id`**
`string` — The trial subscription's unique identifier.
**Example:**
```json
{
"page_count": 20,
"trial_list": [
{
"trial_id": "Z-021462495",
"subscription_owner": {
"crm_account_number": "A0012",
"account_name": "John Galt",
"zoom_account_number": "3842618277"
},
"invoice_owner": {
"crm_account_number": "A0012",
"account_name": "John Galt",
"zoom_account_number": "3842618277"
},
"sub_reseller_name": "ABC Inc."
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See Details \*\*Error Code:\*\* \`5000\` \
Invalid character & or | in the name filter. \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Authorization information is missing or invalid.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.
### Get trial details for an end customer by their Zoom account number or the trial ID
- **Method:** `GET`
- **Path:** `/commerce/trials/{trialReferenceId}`
- **Tags:** Subscription
Returns the trial details for an end customer.\
**Note:** Please check the base URL for sandbox and production environments under Zoom Commerce section [here](https://developers.zoom.us/docs/api/).
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:admin`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `zoom_commerce:read:subscription:admin`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
#### Responses
##### Status: 200 Trial details retrieved successfully.
###### Content-Type: application/json
- **`bill_to`**
`object` — The details of the account.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — The details of the address.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.
- **`crm_account_number`**
`string` — The unique CRM account number for the customer or partner or reseller
- **`zoom_account_number`**
`string` — The unique Zoom account number for the customer or partner or reseller
- **`bill_to_contact`**
`object` — Bill to contact details.
- **`crm_contact_number`**
`string` — Unique CRM Number for the contact.
- **`email`**
`string` — The contact's email ID.
- **`first_name`**
`string` — The first name of the bill to contact.
- **`last_name`**
`string` — The last name of the bill to contact.
- **`end_customer_account`**
`object` — The account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — The address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The type of address: billTo, shipTo, or soldTo.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal or zip code.
- **`crm_account_number`**
`string` — The unique CRM account number for the customer or partner or reseller.
- **`zoom_account_number`**
`string` — The unique Zoom account number for the customer or partner or reseller.
- **`invoice_owner_account`**
`object` — The account details.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — The address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The type of address: billTo, shipTo, or soldTo.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.
- **`crm_account_number`**
`string` — The unique CRM account number for the customer or partner or reseller.
- **`zoom_account_number`**
`string` — The unique Zoom account number for the customer or partner or reseller.
- **`sold_to`**
`object` — The details of the account.
- **`account_name`**
`string` — The account name.
- **`address`**
`object` — The details of the address.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.
- **`crm_account_number`**
`string` — The unique CRM account number for the customer or partner or reseller.
- **`zoom_account_number`**
`string` — The unique Zoom account number for the customer or partner or reseller.
- **`sold_to_contact`**
`object` — Sold to contact details.
- **`crm_contact_number`**
`string` — Unique CRM Number for the contact
- **`email`**
`string` — The contact's email ID.
- **`first_name`**
`string` — The first name of the sold to contact.
- **`last_name`**
`string` — The last name of the sold to contact.
- **`sub_reseller`**
`object` — The sub-reseller account number.
- **`account_name`**
`string` — The sub-reseller name.
- **`address`**
`object` — The address details.
- **`address_type` (required)**
`string`, possible values: `"billTo", "shipTo", "soldTo"` — The type of address: billTo, shipTo, or soldTo.
- **`city` (required)**
`string` — The city name.
- **`country` (required)**
`string` — The ISO code for the country.
- **`line_1` (required)**
`string` — The street address.
- **`state` (required)**
`string` — The state or province.
- **`line_2`**
`string` — The street address.
- **`line_3`**
`string` — The street address.
- **`postal_code`**
`string` — The postal number or zip code.
- **`crm_account_number`**
`string` — The sub-reseller CRM account number.
- **`zoom_account_number`**
`string` — The unique Zoom account number for the customer or partner or reseller.
- **`trial_id`**
`string` — This trial's unique identifier.
- **`trial_lines`**
`array` — The trial offers.
**Items:**
- **`end_date`**
`string`, format: `YYYY-MM-DD` — The end date of the subscription line, in YYYY-MM-DD format.
- **`offer_attributes`**
`array` — The offer attributes.
**Items:**
- **`name`**
`string` — The attribute name.
- **`uom`**
`string` — The unit of measure.
- **`value`**
`string` — The attribute value.
- **`value_type`**
`string`, possible values: `"Integer", "Enum", "String", "Boolean", "Object"` — The attribute value type. Supported data types: Integer, Enum, String, Boolean, or Object.
- **`offer_id`**
`string` — The offer or plan ID.
- **`offer_name`**
`string` — The offer or plan name.
- **`offer_price_list_id`**
`string` — The offer price list ID.
- **`offer_price_list_name`**
`string` — The offer price list name.
- **`offer_type`**
`string`, possible values: `"plan", "standalone", "configurable", "isv", "addon"` — The type of offering.
- **`quantity`**
`integer` — The number of licenses.
- **`sku`**
`string` — The offer SKU.
- **`start_date`**
`string`, format: `YYYY-MM-DD` — The start date of the subscription line, in YYYY-MM-DD format.
**Example:**
```json
{
"trial_id": "Z-021462495",
"end_customer_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-12323",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"invoice_owner_account": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-12323",
"account_name": "John Doe LLC",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sub_reseller": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-45r33",
"account_name": "Novam Corp.",
"address": {
"address_type": "billTo",
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"bill_to": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-12323",
"account_name": "John Doe LLC",
"address": {
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sold_to": {
"zoom_account_number": "3421746588",
"crm_account_number": "A-12323",
"account_name": "John Doe LLC",
"address": {
"line_1": "55 Almaden Blvd",
"line_2": "Suite 10",
"line_3": "Tower A",
"city": "San Jose",
"postal_code": "95114",
"state": "PA",
"country": "US"
}
},
"sold_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "abc@test.com"
},
"bill_to_contact": {
"crm_contact_number": "A-1232",
"first_name": "John",
"last_name": "Doe",
"email": "abc@test.com"
},
"trial_lines": [
{
"offer_id": "PR-2323",
"offer_name": "Zoom Workplace Pro",
"offer_type": "plan",
"sku": "SKU-00000118",
"offer_price_list_id": "PRL-2323",
"offer_price_list_name": "Zoom Workplace Pro Annual",
"quantity": 100,
"start_date": "2023-10-03",
"end_date": "2024-10-03",
"offer_attributes": [
{
"name": "Min licenses for purchase",
"uom": "count",
"value_type": "Integer",
"value": "10"
}
]
}
]
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request See details.
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized Unauthorized access. Authorization information is missing or invalid.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found \*\*Error Code:\*\* \`5009\` \
No records found. \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.