{"url":"/api-reference/partner-portal-webservice/update-partner-portal-quote","method":"POST","path":"/api/partnerportal/updateQuote","tag":"Partner Portal Webservice","title":"Update partner portal quote","operation":{"description":"Save header edits and line adds, updates and deletes to a quote on an opportunity registered under the authenticated partner organization, in one transaction. expectedLastModifiedDate must be the lastModifiedDate from getQuote. Prices are pending until getQuote returns lastCalculatedOn at or after lastSavedOn; poll getQuote with backoff and a bounded number of attempts.","operationId":"updateQuote","parameters":[{"description":"Authentication scheme identifier. Use `api-token` or `partner-api-token` with the `x-auth-apikey` header, `api` or `partner-api` with `x-auth-apikey` plus a client certificate, `api-oauth-token` or `partner-api-oauth-token` with `x-auth-access-token`, and `federated-token` with `x-auth-ft`. A request with `Authorization: Bearer <token>` and no `x-auth-scheme` is treated as OAuth, and `federated-token` may also be sent as the `x-auth-scheme` and `x-auth-ft` query parameters.","example":"partner-api-token","in":"header","name":"x-auth-scheme","required":false,"schema":{"default":"partner-api-token","enum":["api-token","api","api-oauth-token","federated-token","partner-api-token","partner-api","partner-api-oauth-token"],"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Partnerportal_UpdatePartnerPortalQuoteWSRequest"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Partnerportal_UpdatePartnerPortalQuoteWSResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}},"description":"Bad Request. errorCode is one of: BAD_REQUEST, VALIDATION_FAILED, MISSING_REQUIRED_FIELD, INVALID_JSON, INVALID_REQUEST_BODY, FEATURE_NOT_ENABLED, INVALID_AUTH_ORG, LOCATION_NOT_FOUND, SELF_PROVISIONING_DISABLED, SKU_NOT_ALLOWED, QUANTITY_INVALID, AUTO_RENEW_REQUIRED, PROVISION_CAP_EXCEEDED, ACKNOWLEDGEMENT_REQUIRED, SIGNATURE_REQUIRED, APEX_VALIDATION, SKU_NOT_IN_PRICEBOOK.","shared":true},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}},"description":"Unauthorized. errorCode is one of: UNAUTHENTICATED, INVALID_CREDENTIAL, CREDENTIAL_EXPIRED, CREDENTIAL_REVOKED, CERTIFICATE_MISMATCH.","shared":true},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}},"description":"Forbidden. errorCode is one of: FORBIDDEN, DOMAIN_NOT_ALLOWED, DEVICE_SCOPE_MISMATCH, ROLE_NOT_PERMITTED, FUNCTIONALITY_REQUIRED, PARTNER_FUNCTIONALITY_REQUIRED, PERMISSION_REQUIRED, PARTNER_CLIENT_ACCESS_DENIED, HARDWARE_NOT_AVAILABLE, HARDWARE_ALREADY_REGISTERED, PARTNER_PORTAL_NOT_ENABLED, MANAGED_BY_MSP, SUPER_ADMIN_RESTRICTED_BY_MSP, MSP_DESIGNATION_INVALID, NOT_MANAGED_CLIENT, NOT_VERIFIED_MSP, ORDER_NOT_YOURS.","shared":true},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}},"description":"Too Many Requests. errorCode is one of: RATE_LIMITED, QUOTE_RATE_LIMITED.","shared":true},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}},"description":"Internal Server Error. errorCode is one of: INTERNAL_ERROR.","shared":true},"503":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}},"description":"Service Unavailable. errorCode is one of: SERVICE_UNAVAILABLE, SALESFORCE_UNAVAILABLE.","shared":true}},"security":[{"ApiKeyAuth":[]},{"oauth2":["write"]}],"summary":"Update partner portal quote","tags":["Partner Portal Webservice"]},"auth":{"headers":[{"description":"Your Rhombus API key. Must be accompanied by the `x-auth-scheme` header set to `api-token` (or `partner-api-token` for partner endpoints).","in":"header","name":"x-auth-apikey","type":"apiKey"}],"oauthScopes":["write"]},"components":{"schemas":{"ApiErrorResponse":{"description":"Body of every error response. Branch on errorCode; show errorMsg. Fields are only ever added.","properties":{"code":{"description":"Legacy alias of errorCode, present only for endpoint-specific codes.","type":"string"},"detail":{"description":"Legacy alias of errorMsg, present only for endpoint-specific codes.","type":"string"},"error":{"description":"Always true.","type":"boolean"},"errorCode":{"description":"Stable, machine-readable code. New codes may be added; treat unknown codes as their HTTP status. Status 200 marks codes returned in a 200 body with error true. Catalog:\n- BAD_REQUEST (400): The request is invalid.\n- VALIDATION_FAILED (400): The request failed validation.\n- MISSING_REQUIRED_FIELD (400): The request is missing a required field.\n- INVALID_JSON (400): The request body is not valid JSON.\n- INVALID_REQUEST_BODY (400): The request body does not match the expected object structure.\n- METHOD_NOT_ALLOWED (405): This endpoint does not accept that HTTP method; the Allow header lists the ones it does.\n- UNSUPPORTED_MEDIA_TYPE (415): This endpoint does not accept that Content-Type. Send application/json.\n- FEATURE_NOT_ENABLED (400): This feature is not enabled for the organization.\n- UNAUTHENTICATED (401): Authentication is required. Supply valid credentials.\n- FORBIDDEN (403): You do not have permission to perform this action.\n- NOT_FOUND (404): The requested resource was not found.\n- CONFLICT (409): The request conflicts with the current state of the resource.\n- RATE_LIMITED (429): Too many requests; try again later.\n- INTERNAL_ERROR (500): An unexpected error occurred.\n- SERVICE_UNAVAILABLE (503): The service is temporarily unavailable; try again shortly.\n- REQUEST_FAILED (200): The request could not be completed.\n- INVALID_CREDENTIAL (401): The supplied credential is malformed or not recognized.\n- CREDENTIAL_EXPIRED (401): The supplied credential has expired.\n- CREDENTIAL_REVOKED (401): The supplied credential has been revoked.\n- CERTIFICATE_MISMATCH (401): The client certificate does not match the supplied credential.\n- INVALID_AUTH_ORG (400): The x-auth-org header is not a valid organization UUID.\n- DOMAIN_NOT_ALLOWED (403): Requests from this domain are not allowed for this credential.\n- DEVICE_SCOPE_MISMATCH (403): This token is scoped to a different device.\n- ROLE_NOT_PERMITTED (403): Your role does not permit access to this organization.\n- FUNCTIONALITY_REQUIRED (403): Your role is missing a functionality this action requires.\n- PARTNER_FUNCTIONALITY_REQUIRED (403): Your partner role is missing a functionality this action requires.\n- PERMISSION_REQUIRED (403): Your role does not have the required permission on the requested resource.\n- PARTNER_CLIENT_ACCESS_DENIED (403): Your partner organization does not have access to this client organization.\n- HARDWARE_NOT_AVAILABLE (403): No hardware with this serial number is available for your organization to register.\n- HARDWARE_ALREADY_REGISTERED (403): This hardware is already registered to an organization. Remove it from that organization before registering it again.\n- LOCATION_NOT_FOUND (400): The location was not found in the target organization.\n- PARTNER_PORTAL_NOT_ENABLED (403): The partner portal is not enabled for your partner organization. Contact Rhombus support.\n- MANAGED_BY_MSP (403): This organization is managed by a Managed Service Provider. Contact the provider or Rhombus support.\n- SUPER_ADMIN_RESTRICTED_BY_MSP (403): The Super Admin role in this organization is managed by a Managed Service Provider. Contact the provider or Rhombus support.\n- MSP_DESIGNATION_INVALID (403): This operation requires an active, signed Managed Service Provider designation.\n- NOT_MANAGED_CLIENT (403): This organization is not a managed client of your Managed Service Provider account.\n- DEVICES_STILL_REGISTERED (200): Devices are still registered in this client organization.\n- LICENSES_STILL_ASSIGNED (200): Licenses you own are still assigned to devices in this client organization.\n- DOOR_BOUND_HARDWARE (200): This device is bound to one or more access-controlled doors. Remove the bindings in the source organization before moving it.\n- CONFIRM_NAME_MISMATCH (409): The confirmation text does not match the client organization name.\n- DUPLICATE_CLIENT_NAME (409): You already manage a client organization with this name. Set allowDuplicateName to create it anyway.\n- LICENSE_V2_DISABLED (409): Pooled licenses cannot be assigned to this client organization because it is not on license entitlements. Contact Rhombus support.\n- INSUFFICIENT_POOL_LICENSES (409): Not enough unassigned licenses of this product in the pool.\n- SELF_PROVISIONING_DISABLED (400): License self-provisioning is not enabled for your account. Contact your Rhombus account owner.\n- SKU_NOT_ALLOWED (400): This product cannot be self-provisioned.\n- QUANTITY_INVALID (400): The requested quantity is outside the allowed range for one order.\n- AUTO_RENEW_REQUIRED (400): autoRenew (true or false) is required.\n- PROVISION_CAP_EXCEEDED (400): This order exceeds the number of licenses you may provision today. Contact your Rhombus account owner.\n- ACKNOWLEDGEMENT_REQUIRED (400): You must review and agree to the order terms before placing the order.\n- SIGNATURE_REQUIRED (400): Type your name to sign the order.\n- APEX_VALIDATION (400): Salesforce rejected the order.\n- SKU_NOT_IN_PRICEBOOK (400): This product is not in your partner pricebook. Contact your Rhombus account owner.\n- NOT_VERIFIED_MSP (403): Your account is not an approved Managed Service Provider. Contact your Rhombus account owner.\n- ORDER_NOT_YOURS (403): This order belongs to another partner.\n- ORDER_NOT_FOUND (404): No such order for your organization.\n- PROVISION_REPLAY_MISMATCH (409): This request id was already used for a different product, quantity or auto-renew setting. Start a new order.\n- QUOTE_RECALCULATING (409): The quote is still being calculated. Wait a moment for the prices, then accept it again.\n- ORDER_NOT_CANCELLABLE (409): Only a quote that has not been accepted can be cancelled.\n- QUOTE_EXPIRED (410): This quote is no longer open for acceptance. Ask for a new quote.\n- QUOTE_RATE_LIMITED (429): Too many quotes were requested for your organization in the last minute. Try again shortly.\n- SALESFORCE_UNAVAILABLE (503): The order could not be processed right now and nothing was changed. Try again in a few minutes, or contact your Rhombus account owner.","type":"string","x-rhombus-error-codes":[{"code":"BAD_REQUEST","message":"The request is invalid.","status":400},{"code":"VALIDATION_FAILED","message":"The request failed validation.","status":400},{"code":"MISSING_REQUIRED_FIELD","message":"The request is missing a required field.","status":400},{"code":"INVALID_JSON","message":"The request body is not valid JSON.","status":400},{"code":"INVALID_REQUEST_BODY","message":"The request body does not match the expected object structure.","status":400},{"code":"METHOD_NOT_ALLOWED","message":"This endpoint does not accept that HTTP method; the Allow header lists the ones it does.","status":405},{"code":"UNSUPPORTED_MEDIA_TYPE","message":"This endpoint does not accept that Content-Type. Send application/json.","status":415},{"code":"FEATURE_NOT_ENABLED","message":"This feature is not enabled for the organization.","status":400},{"code":"UNAUTHENTICATED","message":"Authentication is required. Supply valid credentials.","status":401},{"code":"FORBIDDEN","message":"You do not have permission to perform this action.","status":403},{"code":"NOT_FOUND","message":"The requested resource was not found.","status":404},{"code":"CONFLICT","message":"The request conflicts with the current state of the resource.","status":409},{"code":"RATE_LIMITED","message":"Too many requests; try again later.","status":429},{"code":"INTERNAL_ERROR","message":"An unexpected error occurred.","status":500},{"code":"SERVICE_UNAVAILABLE","message":"The service is temporarily unavailable; try again shortly.","status":503},{"code":"REQUEST_FAILED","message":"The request could not be completed.","status":200},{"code":"INVALID_CREDENTIAL","message":"The supplied credential is malformed or not recognized.","status":401},{"code":"CREDENTIAL_EXPIRED","message":"The supplied credential has expired.","status":401},{"code":"CREDENTIAL_REVOKED","message":"The supplied credential has been revoked.","status":401},{"code":"CERTIFICATE_MISMATCH","message":"The client certificate does not match the supplied credential.","status":401},{"code":"INVALID_AUTH_ORG","message":"The x-auth-org header is not a valid organization UUID.","status":400},{"code":"DOMAIN_NOT_ALLOWED","message":"Requests from this domain are not allowed for this credential.","status":403},{"code":"DEVICE_SCOPE_MISMATCH","message":"This token is scoped to a different device.","status":403},{"code":"ROLE_NOT_PERMITTED","message":"Your role does not permit access to this organization.","status":403},{"code":"FUNCTIONALITY_REQUIRED","message":"Your role is missing a functionality this action requires.","status":403},{"code":"PARTNER_FUNCTIONALITY_REQUIRED","message":"Your partner role is missing a functionality this action requires.","status":403},{"code":"PERMISSION_REQUIRED","message":"Your role does not have the required permission on the requested resource.","status":403},{"code":"PARTNER_CLIENT_ACCESS_DENIED","message":"Your partner organization does not have access to this client organization.","status":403},{"code":"HARDWARE_NOT_AVAILABLE","message":"No hardware with this serial number is available for your organization to register.","status":403},{"code":"HARDWARE_ALREADY_REGISTERED","message":"This hardware is already registered to an organization. Remove it from that organization before registering it again.","status":403},{"code":"LOCATION_NOT_FOUND","message":"The location was not found in the target organization.","status":400},{"code":"PARTNER_PORTAL_NOT_ENABLED","message":"The partner portal is not enabled for your partner organization. Contact Rhombus support.","status":403},{"code":"MANAGED_BY_MSP","message":"This organization is managed by a Managed Service Provider. Contact the provider or Rhombus support.","status":403},{"code":"SUPER_ADMIN_RESTRICTED_BY_MSP","message":"The Super Admin role in this organization is managed by a Managed Service Provider. Contact the provider or Rhombus support.","status":403},{"code":"MSP_DESIGNATION_INVALID","message":"This operation requires an active, signed Managed Service Provider designation.","status":403},{"code":"NOT_MANAGED_CLIENT","message":"This organization is not a managed client of your Managed Service Provider account.","status":403},{"code":"DEVICES_STILL_REGISTERED","message":"Devices are still registered in this client organization.","status":200},{"code":"LICENSES_STILL_ASSIGNED","message":"Licenses you own are still assigned to devices in this client organization.","status":200},{"code":"DOOR_BOUND_HARDWARE","message":"This device is bound to one or more access-controlled doors. Remove the bindings in the source organization before moving it.","status":200},{"code":"CONFIRM_NAME_MISMATCH","message":"The confirmation text does not match the client organization name.","status":409},{"code":"DUPLICATE_CLIENT_NAME","message":"You already manage a client organization with this name. Set allowDuplicateName to create it anyway.","status":409},{"code":"LICENSE_V2_DISABLED","message":"Pooled licenses cannot be assigned to this client organization because it is not on license entitlements. Contact Rhombus support.","status":409},{"code":"INSUFFICIENT_POOL_LICENSES","message":"Not enough unassigned licenses of this product in the pool.","status":409},{"code":"SELF_PROVISIONING_DISABLED","message":"License self-provisioning is not enabled for your account. Contact your Rhombus account owner.","status":400},{"code":"SKU_NOT_ALLOWED","message":"This product cannot be self-provisioned.","status":400},{"code":"QUANTITY_INVALID","message":"The requested quantity is outside the allowed range for one order.","status":400},{"code":"AUTO_RENEW_REQUIRED","message":"autoRenew (true or false) is required.","status":400},{"code":"PROVISION_CAP_EXCEEDED","message":"This order exceeds the number of licenses you may provision today. Contact your Rhombus account owner.","status":400},{"code":"ACKNOWLEDGEMENT_REQUIRED","message":"You must review and agree to the order terms before placing the order.","status":400},{"code":"SIGNATURE_REQUIRED","message":"Type your name to sign the order.","status":400},{"code":"APEX_VALIDATION","message":"Salesforce rejected the order.","status":400},{"code":"SKU_NOT_IN_PRICEBOOK","message":"This product is not in your partner pricebook. Contact your Rhombus account owner.","status":400},{"code":"NOT_VERIFIED_MSP","message":"Your account is not an approved Managed Service Provider. Contact your Rhombus account owner.","status":403},{"code":"ORDER_NOT_YOURS","message":"This order belongs to another partner.","status":403},{"code":"ORDER_NOT_FOUND","message":"No such order for your organization.","status":404},{"code":"PROVISION_REPLAY_MISMATCH","message":"This request id was already used for a different product, quantity or auto-renew setting. Start a new order.","status":409},{"code":"QUOTE_RECALCULATING","message":"The quote is still being calculated. Wait a moment for the prices, then accept it again.","status":409},{"code":"ORDER_NOT_CANCELLABLE","message":"Only a quote that has not been accepted can be cancelled.","status":409},{"code":"QUOTE_EXPIRED","message":"This quote is no longer open for acceptance. Ask for a new quote.","status":410},{"code":"QUOTE_RATE_LIMITED","message":"Too many quotes were requested for your organization in the last minute. Try again shortly.","status":429},{"code":"SALESFORCE_UNAVAILABLE","message":"The order could not be processed right now and nothing was changed. Try again in a few minutes, or contact your Rhombus account owner.","status":503}]},"errorMsg":{"description":"Client-facing message.","type":"string"},"msg":{"description":"Legacy: the HTTP reason phrase.","type":"string"},"status":{"description":"The HTTP status code.","format":"int32","type":"integer"},"timestamp":{"description":"Epoch milliseconds.","format":"int64","type":"integer"},"txid":{"description":"Transaction id, also in the x-rhombus-txid header. Quote it to support.","type":"string"}},"type":"object"},"Partnerportal_PartnerPortalQuoteHeaderUpdateType":{"description":"Quote header edits. Omitted fields, and blank address fields, are left unchanged.","properties":{"billAttentionTo":{"description":"Bill-to attention","nullable":true,"type":"string"},"billingCity":{"description":"Bill-to city","nullable":true,"type":"string"},"billingCountry":{"description":"Bill-to country; must be a valid Salesforce Billing Country picklist value, e.g. \"United States\"","nullable":true,"type":"string"},"billingName":{"description":"Bill-to name","nullable":true,"type":"string"},"billingPostalCode":{"description":"Bill-to postal code","nullable":true,"type":"string"},"billingState":{"description":"Bill-to state; must be a valid Salesforce Billing State picklist value for the quote's billing country, e.g. \"California\". Required when billingCountry changes to a country that has states.","nullable":true,"type":"string"},"billingStreet":{"description":"Bill-to street","nullable":true,"type":"string"},"shipAttentionTo":{"description":"Ship-to attention","nullable":true,"type":"string"},"shippingCity":{"description":"Ship-to city","nullable":true,"type":"string"},"shippingCountry":{"description":"Ship-to country","nullable":true,"type":"string"},"shippingMethod":{"description":"Shipping method","nullable":true,"type":"string"},"shippingName":{"description":"Ship-to name","nullable":true,"type":"string"},"shippingPostalCode":{"description":"Ship-to postal code","nullable":true,"type":"string"},"shippingPriceOverride":{"description":"Whether the shipping price is overridden","nullable":true,"type":"boolean"},"shippingState":{"description":"Ship-to state","nullable":true,"type":"string"},"shippingStreet":{"description":"Ship-to street","nullable":true,"type":"string"}},"type":"object"},"Partnerportal_PartnerPortalQuoteLineAddType":{"description":"A line to add to a quote.","properties":{"contractStartDate":{"description":"Contract start date in yyyy-MM-dd format; only accepted for term products or trial quotes","nullable":true,"type":"string"},"productCode":{"description":"Product code (SKU) of an active Standard Price Book product","nullable":true,"type":"string"},"quantity":{"description":"Quantity","nullable":true,"type":"number"},"shippingPrice":{"description":"Line shipping price. Only allowed when the quote's Shipping Price Override is checked.","nullable":true,"type":"number"},"subscriptionTerm":{"description":"Subscription term in months; only accepted on Renewal opportunities","format":"int32","nullable":true,"type":"integer"}},"required":["productCode","quantity"],"type":"object"},"Partnerportal_PartnerPortalQuoteLineUpdateType":{"description":"Edits to an existing quote line. Omitted fields are left unchanged.","properties":{"contractStartDate":{"description":"Contract start date in yyyy-MM-dd format; only accepted for term products or trial quotes","nullable":true,"type":"string"},"quantity":{"description":"Quantity","nullable":true,"type":"number"},"quoteLineId":{"description":"Identifier of the Salesforce quote line to update","nullable":true,"type":"string"},"shippingPrice":{"description":"Line shipping price. Only allowed when the quote's Shipping Price Override is checked.","nullable":true,"type":"number"},"subscriptionTerm":{"description":"Subscription term in months; only accepted on Renewal opportunities","format":"int32","nullable":true,"type":"integer"}},"required":["quoteLineId"],"type":"object"},"Partnerportal_UpdatePartnerPortalQuoteWSRequest":{"description":"Request object for saving header edits and line adds, updates and deletes to a quote belonging to the authenticated partner organization, applied in one transaction. At least one change is required, and at most 200 line operations are allowed per save. Prices are recalculated asynchronously afterwards.","properties":{"addLines":{"description":"Lines to add","items":{"$ref":"#/components/schemas/Partnerportal_PartnerPortalQuoteLineAddType"},"nullable":true,"type":"array"},"deleteLineIds":{"description":"Identifiers of existing lines to delete","items":{"description":"Identifiers of existing lines to delete","nullable":true,"type":"string"},"nullable":true,"type":"array"},"expectedLastModifiedDate":{"description":"The quote's lastModifiedDate from the most recent getQuote; the save is rejected if the quote has changed since","nullable":true,"type":"string"},"quote":{"$ref":"#/components/schemas/Partnerportal_PartnerPortalQuoteHeaderUpdateType"},"quoteId":{"description":"Identifier of the Salesforce quote","nullable":true,"type":"string"},"updateLines":{"description":"Existing lines to update","items":{"$ref":"#/components/schemas/Partnerportal_PartnerPortalQuoteLineUpdateType"},"nullable":true,"type":"array"}},"required":["expectedLastModifiedDate","quoteId"],"type":"object"},"Partnerportal_UpdatePartnerPortalQuoteWSResponse":{"description":"Response object containing the result of saving changes to a quote.","properties":{"addedLineIds":{"description":"Identifiers of the lines that were added, in request order","items":{"description":"Identifiers of the lines that were added, in request order","nullable":true,"type":"string"},"nullable":true,"type":"array"},"deletedLineIds":{"description":"Identifiers of the lines that were deleted","items":{"description":"Identifiers of the lines that were deleted","nullable":true,"type":"string"},"nullable":true,"type":"array"},"error":{"nullable":true,"type":"boolean"},"errorCode":{"description":"Stable, machine-readable code for the failure (one of the ApiErrorCode catalog) when error is true. Branch on this, not on errorMsg.","nullable":true,"type":"string"},"errorMsg":{"nullable":true,"type":"string"},"quoteId":{"description":"Identifier of the updated Salesforce quote","nullable":true,"type":"string"},"recalcQueued":{"description":"Whether a price recalculation was queued for the save","nullable":true,"type":"boolean"},"savedAt":{"description":"Date and time the save was recorded; prices are current once getQuote returns a lastCalculatedOn at or after this value","nullable":true,"type":"string"},"updatedLineIds":{"description":"Identifiers of the lines that were updated","items":{"description":"Identifiers of the lines that were updated","nullable":true,"type":"string"},"nullable":true,"type":"array"},"warningMsg":{"nullable":true,"type":"string"}},"type":"object"}},"securitySchemes":{"ApiKeyAuth":{"description":"Your Rhombus API key. Must be accompanied by the `x-auth-scheme` header set to `api-token` (or `partner-api-token` for partner endpoints).","in":"header","name":"x-auth-apikey","type":"apiKey"},"oauth2":{"description":"OAuth 2.0 authorization code flow with PKCE (`S256`). Send the access token as `Authorization: Bearer <token>`. Each operation lists the scopes it requires; a token without them is refused 403 with `WWW-Authenticate: Bearer error=\"insufficient_scope\"`.","flows":{"authorizationCode":{"authorizationUrl":"https://console.rhombus.com/oauth/authorize","refreshUrl":"https://auth-web.rhombussystems.com/oauth/token","scopes":{"physical":"Unlock doors and elevators, lockdown, alarms, speakers and robots","read":"View cameras, footage and settings","write":"Change settings and data"},"tokenUrl":"https://auth-web.rhombussystems.com/oauth/token"}},"type":"oauth2"}}},"highlight":{"samples":{"cURL":[["text-code-function","curl"],[""," "],["text-code-string","--request"],[""," "],["text-code-string","POST"],[""," \\\n  "],["text-code-string","--url"],[""," "],["text-code-punctuation","'"],["text-code-string","https://api2.rhombussystems.com/api/partnerportal/updateQuote"],["text-code-punctuation","'"],[""," \\\n  "],["text-code-string","--header"],[""," "],["text-code-punctuation","'"],["text-code-string","x-auth-scheme: partner-api-token"],["text-code-punctuation","'"],[""," \\\n  "],["text-code-string","--header"],[""," "],["text-code-punctuation","'"],["text-code-string","x-auth-apikey: YOUR_API_KEY"],["text-code-punctuation","'"],[""," \\\n  "],["text-code-string","--header"],[""," "],["text-code-punctuation","'"],["text-code-string","Content-Type: application/json"],["text-code-punctuation","'"],[""," \\\n  "],["text-code-string","--data"],[""," "],["text-code-punctuation","'"],["text-code-string","{"],["","\n"],["text-code-string","    \"addLines\": ["],["","\n"],["text-code-string","      {"],["","\n"],["text-code-string","        \"contractStartDate\": \"<string>\","],["","\n"],["text-code-string","        \"productCode\": \"<string>\","],["","\n"],["text-code-string","        \"quantity\": 0,"],["","\n"],["text-code-string","        \"shippingPrice\": 0,"],["","\n"],["text-code-string","        \"subscriptionTerm\": 0"],["","\n"],["text-code-string","      }"],["","\n"],["text-code-string","    ],"],["","\n"],["text-code-string","    \"deleteLineIds\": ["],["","\n"],["text-code-string","      \"<string>\""],["","\n"],["text-code-string","    ],"],["","\n"],["text-code-string","    \"expectedLastModifiedDate\": \"<string>\","],["","\n"],["text-code-string","    \"quote\": {"],["","\n"],["text-code-string","      \"billAttentionTo\": \"<string>\","],["","\n"],["text-code-string","      \"billingCity\": \"<string>\","],["","\n"],["text-code-string","      \"billingCountry\": \"<string>\","],["","\n"],["text-code-string","      \"billingName\": \"<string>\","],["","\n"],["text-code-string","      \"billingPostalCode\": \"<string>\","],["","\n"],["text-code-string","      \"billingState\": \"<string>\","],["","\n"],["text-code-string","      \"billingStreet\": \"<string>\","],["","\n"],["text-code-string","      \"shipAttentionTo\": \"<string>\","],["","\n"],["text-code-string","      \"shippingCity\": \"<string>\","],["","\n"],["text-code-string","      \"shippingCountry\": \"<string>\","],["","\n"],["text-code-string","      \"shippingMethod\": \"<string>\","],["","\n"],["text-code-string","      \"shippingName\": \"<string>\","],["","\n"],["text-code-string","      \"shippingPostalCode\": \"<string>\","],["","\n"],["text-code-string","      \"shippingPriceOverride\": true,"],["","\n"],["text-code-string","      \"shippingState\": \"<string>\","],["","\n"],["text-code-string","      \"shippingStreet\": \"<string>\""],["","\n"],["text-code-string","    },"],["","\n"],["text-code-string","    \"quoteId\": \"<string>\","],["","\n"],["text-code-string","    \"updateLines\": ["],["","\n"],["text-code-string","      {"],["","\n"],["text-code-string","        \"contractStartDate\": \"<string>\","],["","\n"],["text-code-string","        \"quantity\": 0,"],["","\n"],["text-code-string","        \"quoteLineId\": \"<string>\","],["","\n"],["text-code-string","        \"shippingPrice\": 0,"],["","\n"],["text-code-string","        \"subscriptionTerm\": 0"],["","\n"],["text-code-string","      }"],["","\n"],["text-code-string","    ]"],["","\n"],["text-code-string","  }"],["text-code-punctuation","'"]],"Python":[["text-code-keyword","import"],[""," requests\n\nurl "],["text-code-punctuation","="],[""," "],["text-code-punctuation","\""],["text-code-string","https://api2.rhombussystems.com/api/partnerportal/updateQuote"],["text-code-punctuation","\""],["","\nheaders "],["text-code-punctuation","="],[""," "],["text-code-punctuation","{"],["","\n    "],["text-code-punctuation","\""],["text-code-string","x-auth-scheme"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","partner-api-token"],["text-code-punctuation","\","],["","\n    "],["text-code-punctuation","\""],["text-code-string","x-auth-apikey"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","YOUR_API_KEY"],["text-code-punctuation","\","],["","\n    "],["text-code-punctuation","\""],["text-code-string","Content-Type"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","application/json"],["text-code-punctuation","\","],["","\n"],["text-code-punctuation","}"],["","\npayload "],["text-code-punctuation","="],[""," "],["text-code-punctuation","{"],["","\n    "],["text-code-punctuation","\""],["text-code-string","addLines"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","["],["","\n        "],["text-code-punctuation","{"],["","\n            "],["text-code-punctuation","\""],["text-code-string","contractStartDate"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n            "],["text-code-punctuation","\""],["text-code-string","productCode"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n            "],["text-code-punctuation","\""],["text-code-string","quantity"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["text-code-punctuation",","],["","\n            "],["text-code-punctuation","\""],["text-code-string","shippingPrice"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["text-code-punctuation",","],["","\n            "],["text-code-punctuation","\""],["text-code-string","subscriptionTerm"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["","\n        "],["text-code-punctuation","}"],["","\n    "],["text-code-punctuation","],"],["","\n    "],["text-code-punctuation","\""],["text-code-string","deleteLineIds"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","["],["","\n        "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\""],["","\n    "],["text-code-punctuation","],"],["","\n    "],["text-code-punctuation","\""],["text-code-string","expectedLastModifiedDate"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n    "],["text-code-punctuation","\""],["text-code-string","quote"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","{"],["","\n        "],["text-code-punctuation","\""],["text-code-string","billAttentionTo"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","billingCity"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","billingCountry"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","billingName"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","billingPostalCode"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","billingState"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","billingStreet"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","shipAttentionTo"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","shippingCity"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","shippingCountry"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","shippingMethod"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","shippingName"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","shippingPostalCode"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","shippingPriceOverride"],["text-code-punctuation","\":"],[""," "],["text-code-number","True"],["text-code-punctuation",","],["","\n        "],["text-code-punctuation","\""],["text-code-string","shippingState"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","shippingStreet"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\""],["","\n    "],["text-code-punctuation","},"],["","\n    "],["text-code-punctuation","\""],["text-code-string","quoteId"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n    "],["text-code-punctuation","\""],["text-code-string","updateLines"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","["],["","\n        "],["text-code-punctuation","{"],["","\n            "],["text-code-punctuation","\""],["text-code-string","contractStartDate"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n            "],["text-code-punctuation","\""],["text-code-string","quantity"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["text-code-punctuation",","],["","\n            "],["text-code-punctuation","\""],["text-code-string","quoteLineId"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n            "],["text-code-punctuation","\""],["text-code-string","shippingPrice"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["text-code-punctuation",","],["","\n            "],["text-code-punctuation","\""],["text-code-string","subscriptionTerm"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["","\n        "],["text-code-punctuation","}"],["","\n    "],["text-code-punctuation","]"],["","\n"],["text-code-punctuation","}"],["","\n\nresponse "],["text-code-punctuation","="],[""," requests"],["text-code-punctuation","."],["text-code-function","post"],["text-code-punctuation","("],["text-code-function","url"],["text-code-punctuation",","],["text-code-function"," "],["","headers"],["text-code-punctuation","="],["text-code-function","headers"],["text-code-punctuation",","],["text-code-function"," "],["","json"],["text-code-punctuation","="],["text-code-function","payload"],["text-code-punctuation",")"],["","\nresponse"],["text-code-punctuation","."],["text-code-function","raise_for_status"],["text-code-punctuation","()"],["","\n"],["text-code-function","print"],["text-code-punctuation","("],["text-code-function","response"],["text-code-punctuation","."],["text-code-function","json"],["text-code-punctuation","())"]],"JavaScript":[["text-code-keyword","const"],[""," response "],["text-code-punctuation","="],[""," "],["text-code-keyword","await"],[""," "],["text-code-function","fetch"],["text-code-punctuation","('"],["text-code-string","https://api2.rhombussystems.com/api/partnerportal/updateQuote"],["text-code-punctuation","',"],[""," "],["text-code-punctuation","{"],["","\n  "],["text-code-property","method"],["text-code-punctuation",":"],[""," "],["text-code-punctuation","'"],["text-code-string","POST"],["text-code-punctuation","',"],["","\n  "],["text-code-property","headers"],["text-code-punctuation",":"],[""," "],["text-code-punctuation","{"],["","\n    "],["text-code-punctuation","'"],["text-code-string","x-auth-scheme"],["text-code-punctuation","':"],[""," "],["text-code-punctuation","'"],["text-code-string","partner-api-token"],["text-code-punctuation","',"],["","\n    "],["text-code-punctuation","'"],["text-code-string","x-auth-apikey"],["text-code-punctuation","':"],[""," "],["text-code-punctuation","'"],["text-code-string","YOUR_API_KEY"],["text-code-punctuation","',"],["","\n    "],["text-code-punctuation","'"],["text-code-string","Content-Type"],["text-code-punctuation","':"],[""," "],["text-code-punctuation","'"],["text-code-string","application/json"],["text-code-punctuation","',"],["","\n  "],["text-code-punctuation","},"],["","\n  "],["text-code-property","body"],["text-code-punctuation",":"],[""," JSON"],["text-code-punctuation","."],["text-code-function","stringify"],["text-code-punctuation","({"],["","\n    "],["text-code-punctuation","\""],["text-code-string","addLines"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","["],["","\n      "],["text-code-punctuation","{"],["","\n        "],["text-code-punctuation","\""],["text-code-string","contractStartDate"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","productCode"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","quantity"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["text-code-punctuation",","],["","\n        "],["text-code-punctuation","\""],["text-code-string","shippingPrice"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["text-code-punctuation",","],["","\n        "],["text-code-punctuation","\""],["text-code-string","subscriptionTerm"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["","\n      "],["text-code-punctuation","}"],["","\n    "],["text-code-punctuation","],"],["","\n    "],["text-code-punctuation","\""],["text-code-string","deleteLineIds"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","["],["","\n      "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\""],["","\n    "],["text-code-punctuation","],"],["","\n    "],["text-code-punctuation","\""],["text-code-string","expectedLastModifiedDate"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n    "],["text-code-punctuation","\""],["text-code-string","quote"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","{"],["","\n      "],["text-code-punctuation","\""],["text-code-string","billAttentionTo"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","billingCity"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","billingCountry"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","billingName"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","billingPostalCode"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","billingState"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","billingStreet"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","shipAttentionTo"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","shippingCity"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","shippingCountry"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","shippingMethod"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","shippingName"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","shippingPostalCode"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","shippingPriceOverride"],["text-code-punctuation","\":"],[""," "],["text-code-number","true"],["text-code-punctuation",","],["","\n      "],["text-code-punctuation","\""],["text-code-string","shippingState"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n      "],["text-code-punctuation","\""],["text-code-string","shippingStreet"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\""],["","\n    "],["text-code-punctuation","},"],["","\n    "],["text-code-punctuation","\""],["text-code-string","quoteId"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n    "],["text-code-punctuation","\""],["text-code-string","updateLines"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","["],["","\n      "],["text-code-punctuation","{"],["","\n        "],["text-code-punctuation","\""],["text-code-string","contractStartDate"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","quantity"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["text-code-punctuation",","],["","\n        "],["text-code-punctuation","\""],["text-code-string","quoteLineId"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n        "],["text-code-punctuation","\""],["text-code-string","shippingPrice"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["text-code-punctuation",","],["","\n        "],["text-code-punctuation","\""],["text-code-string","subscriptionTerm"],["text-code-punctuation","\":"],[""," "],["text-code-number","0"],["","\n      "],["text-code-punctuation","}"],["","\n    "],["text-code-punctuation","]"],["","\n  "],["text-code-punctuation","}),"],["","\n"],["text-code-punctuation","});"],["","\n"],["text-code-keyword","if"],[""," "],["text-code-punctuation","(!"],["","response"],["text-code-punctuation","."],["text-code-property","ok"],["text-code-punctuation",")"],[""," "],["text-code-keyword","throw"],[""," "],["text-code-keyword","new"],[""," "],["text-code-function","Error"],["text-code-punctuation","(`${"],["","response"],["text-code-punctuation","."],["text-code-property","status"],["text-code-punctuation","}"],["text-code-string",": "],["text-code-punctuation","${"],["text-code-keyword","await"],["text-code-string"," "],["","response"],["text-code-punctuation","."],["text-code-function","text"],["text-code-punctuation","()}`);"],["","\n\nconsole"],["text-code-punctuation","."],["text-code-function","log"],["text-code-punctuation","("],["text-code-keyword","await"],[""," response"],["text-code-punctuation","."],["text-code-function","json"],["text-code-punctuation","());"]],"Java":[["text-code-keyword","import"],[""," "],["text-code-keyword","java"],["text-code-punctuation","."],["text-code-keyword","net"],["text-code-punctuation","."],["text-code-keyword","URI"],["text-code-punctuation",";"],["","\n"],["text-code-keyword","import"],[""," "],["text-code-keyword","java"],["text-code-punctuation","."],["text-code-keyword","net"],["text-code-punctuation","."],["text-code-keyword","http"],["text-code-punctuation","."],["text-code-keyword","HttpClient"],["text-code-punctuation",";"],["","\n"],["text-code-keyword","import"],[""," "],["text-code-keyword","java"],["text-code-punctuation","."],["text-code-keyword","net"],["text-code-punctuation","."],["text-code-keyword","http"],["text-code-punctuation","."],["text-code-keyword","HttpRequest"],["text-code-punctuation",";"],["","\n"],["text-code-keyword","import"],[""," "],["text-code-keyword","java"],["text-code-punctuation","."],["text-code-keyword","net"],["text-code-punctuation","."],["text-code-keyword","http"],["text-code-punctuation","."],["text-code-keyword","HttpResponse"],["text-code-punctuation",";"],["","\n\n"],["text-code-keyword","public"],[""," "],["text-code-keyword","class"],[""," Example "],["text-code-punctuation","{"],["","\n    "],["text-code-keyword","public"],[""," "],["text-code-keyword","static"],[""," "],["text-code-keyword","void"],[""," "],["text-code-function","main"],["text-code-punctuation","("],["text-code-keyword","String"],["text-code-punctuation","[]"],[""," args"],["text-code-punctuation",")"],[""," "],["text-code-keyword","throws"],[""," "],["text-code-keyword","Exception"],[""," "],["text-code-punctuation","{"],["","\n        "],["text-code-keyword","String"],[""," body "],["text-code-punctuation","="],[""," "],["text-code-punctuation","\"\"\""],["","\n"],["text-code-string","            {"],["","\n"],["text-code-string","              \"addLines\": ["],["","\n"],["text-code-string","                {"],["","\n"],["text-code-string","                  \"contractStartDate\": \"<string>\","],["","\n"],["text-code-string","                  \"productCode\": \"<string>\","],["","\n"],["text-code-string","                  \"quantity\": 0,"],["","\n"],["text-code-string","                  \"shippingPrice\": 0,"],["","\n"],["text-code-string","                  \"subscriptionTerm\": 0"],["","\n"],["text-code-string","                }"],["","\n"],["text-code-string","              ],"],["","\n"],["text-code-string","              \"deleteLineIds\": ["],["","\n"],["text-code-string","                \"<string>\""],["","\n"],["text-code-string","              ],"],["","\n"],["text-code-string","              \"expectedLastModifiedDate\": \"<string>\","],["","\n"],["text-code-string","              \"quote\": {"],["","\n"],["text-code-string","                \"billAttentionTo\": \"<string>\","],["","\n"],["text-code-string","                \"billingCity\": \"<string>\","],["","\n"],["text-code-string","                \"billingCountry\": \"<string>\","],["","\n"],["text-code-string","                \"billingName\": \"<string>\","],["","\n"],["text-code-string","                \"billingPostalCode\": \"<string>\","],["","\n"],["text-code-string","                \"billingState\": \"<string>\","],["","\n"],["text-code-string","                \"billingStreet\": \"<string>\","],["","\n"],["text-code-string","                \"shipAttentionTo\": \"<string>\","],["","\n"],["text-code-string","                \"shippingCity\": \"<string>\","],["","\n"],["text-code-string","                \"shippingCountry\": \"<string>\","],["","\n"],["text-code-string","                \"shippingMethod\": \"<string>\","],["","\n"],["text-code-string","                \"shippingName\": \"<string>\","],["","\n"],["text-code-string","                \"shippingPostalCode\": \"<string>\","],["","\n"],["text-code-string","                \"shippingPriceOverride\": true,"],["","\n"],["text-code-string","                \"shippingState\": \"<string>\","],["","\n"],["text-code-string","                \"shippingStreet\": \"<string>\""],["","\n"],["text-code-string","              },"],["","\n"],["text-code-string","              \"quoteId\": \"<string>\","],["","\n"],["text-code-string","              \"updateLines\": ["],["","\n"],["text-code-string","                {"],["","\n"],["text-code-string","                  \"contractStartDate\": \"<string>\","],["","\n"],["text-code-string","                  \"quantity\": 0,"],["","\n"],["text-code-string","                  \"quoteLineId\": \"<string>\","],["","\n"],["text-code-string","                  \"shippingPrice\": 0,"],["","\n"],["text-code-string","                  \"subscriptionTerm\": 0"],["","\n"],["text-code-string","                }"],["","\n"],["text-code-string","              ]"],["","\n"],["text-code-string","            }"],["","\n"],["text-code-string","            "],["text-code-punctuation","\"\"\";"],["","\n        "],["text-code-keyword","HttpRequest"],[""," request "],["text-code-punctuation","="],[""," HttpRequest"],["text-code-punctuation","."],["text-code-function","newBuilder"],["text-code-punctuation","()"],["","\n            "],["text-code-punctuation","."],["text-code-function","uri"],["text-code-punctuation","("],["","URI"],["text-code-punctuation","."],["text-code-function","create"],["text-code-punctuation","(\""],["text-code-string","https://api2.rhombussystems.com/api/partnerportal/updateQuote"],["text-code-punctuation","\"))"],["","\n            "],["text-code-punctuation","."],["text-code-function","header"],["text-code-punctuation","(\""],["text-code-string","x-auth-scheme"],["text-code-punctuation","\","],[""," "],["text-code-punctuation","\""],["text-code-string","partner-api-token"],["text-code-punctuation","\")"],["","\n            "],["text-code-punctuation","."],["text-code-function","header"],["text-code-punctuation","(\""],["text-code-string","x-auth-apikey"],["text-code-punctuation","\","],[""," "],["text-code-punctuation","\""],["text-code-string","YOUR_API_KEY"],["text-code-punctuation","\")"],["","\n            "],["text-code-punctuation","."],["text-code-function","header"],["text-code-punctuation","(\""],["text-code-string","Content-Type"],["text-code-punctuation","\","],[""," "],["text-code-punctuation","\""],["text-code-string","application/json"],["text-code-punctuation","\")"],["","\n            "],["text-code-punctuation","."],["text-code-function","method"],["text-code-punctuation","(\""],["text-code-string","POST"],["text-code-punctuation","\","],[""," HttpRequest"],["text-code-punctuation","."],["","BodyPublishers"],["text-code-punctuation","."],["text-code-function","ofString"],["text-code-punctuation","("],["","body"],["text-code-punctuation","))"],["","\n            "],["text-code-punctuation","."],["text-code-function","build"],["text-code-punctuation","();"],["","\n        "],["text-code-keyword","HttpResponse"],["text-code-punctuation","<"],["text-code-keyword","String"],["text-code-punctuation",">"],[""," response "],["text-code-punctuation","="],[""," HttpClient"],["text-code-punctuation","."],["text-code-function","newHttpClient"],["text-code-punctuation","()"],["","\n            "],["text-code-punctuation","."],["text-code-function","send"],["text-code-punctuation","("],["","request"],["text-code-punctuation",","],[""," HttpResponse"],["text-code-punctuation","."],["","BodyHandlers"],["text-code-punctuation","."],["text-code-function","ofString"],["text-code-punctuation","());"],["","\n        System"],["text-code-punctuation","."],["","out"],["text-code-punctuation","."],["text-code-function","println"],["text-code-punctuation","("],["","response"],["text-code-punctuation","."],["text-code-function","statusCode"],["text-code-punctuation","()"],[""," "],["text-code-punctuation","+"],[""," "],["text-code-punctuation","\""],["text-code-string"," "],["text-code-punctuation","\""],[""," "],["text-code-punctuation","+"],[""," response"],["text-code-punctuation","."],["text-code-function","body"],["text-code-punctuation","());"],["","\n    "],["text-code-punctuation","}"],["","\n"],["text-code-punctuation","}"]]},"responses":{"200":[["text-code-punctuation","{"],["","\n  "],["text-code-punctuation","\""],["text-code-property","addedLineIds"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","["],["","\n    "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\""],["","\n  "],["text-code-punctuation","],"],["","\n  "],["text-code-punctuation","\""],["text-code-property","deletedLineIds"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","["],["","\n    "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\""],["","\n  "],["text-code-punctuation","],"],["","\n  "],["text-code-punctuation","\""],["text-code-property","error"],["text-code-punctuation","\":"],[""," "],["text-code-number","false"],["text-code-punctuation",","],["","\n  "],["text-code-punctuation","\""],["text-code-property","errorCode"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n  "],["text-code-punctuation","\""],["text-code-property","quoteId"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n  "],["text-code-punctuation","\""],["text-code-property","recalcQueued"],["text-code-punctuation","\":"],[""," "],["text-code-number","true"],["text-code-punctuation",","],["","\n  "],["text-code-punctuation","\""],["text-code-property","savedAt"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\","],["","\n  "],["text-code-punctuation","\""],["text-code-property","updatedLineIds"],["text-code-punctuation","\":"],[""," "],["text-code-punctuation","["],["","\n    "],["text-code-punctuation","\""],["text-code-string","<string>"],["text-code-punctuation","\""],["","\n  "],["text-code-punctuation","]"],["","\n"],["text-code-punctuation","}"]]}}}