AppResellerOpportunities

Update required fields

Changed on

Update required fields for all products from the same vendor on an opportunity, with identical required field values.

When a vendor requires the same required fields for all products (also known as vendor 'cart level' required fields), the required field values must be identical for all the vendor's products on an opportunity. To ensure all values remain identical, always include the itemIds for all the vendor's products on the opportunity in the array, even if required field values are already saved for some items.

Warning: Previously saved required field values for the items in the array will be removed.

Required: Accept-Language header with Locale format. For example: en-US

put/assistedSales/v1/opportunities/{opportunityId}/items/requiredFields

Request

Path parameters

opportunityIdstring required

Opportunity ID

Request body

itemIdsstring[] required

IDs of the items to be updated

requiredFieldsobject required

The required fields and required field values, listed as custom attribute key-value pairs. Values must be a string array.

Example request

{
  "itemIds": [
    "a11b60a8-a16a-4aaf-8696-dadb738496fa",
    "eb690c8d-1c57-497c-82bf-a4194362d954"
  ],
  "requiredFields": {
    "SubDomain": [
      "acme.entertainment.com"
    ],
    "UserPrincipleName": [
      "john.smith"
    ],
    "AlternateEmail": [
      "secondary@acme.com"
    ],
    "FirstName": [
      "John"
    ],
    "LastName": [
      "Smith"
    ],
    "BusinessName": [
      "Acme Corp"
    ],
    "Address/ISO3Country": [
      "USA"
    ],
    "Address/Line1": [
      "Main Street 465"
    ],
    "Address/Line2": [
      ""
    ],
    "Address/City": [
      "Greenbow"
    ],
    "Address/State": [
      "AL"
    ],
    "Address/PostalCode": [
      "50505"
    ],
    "Address/PhoneNumber": [
      "5417543010"
    ],
    "ConsentUser/FirstName": [
      "John"
    ],
    "ConsentUser/LastName": [
      "Smith"
    ],
    "ConsentUser/Email": [
      "john.smith@acme.com"
    ],
    "ConsentUser/PhoneNumber": [
      "5417543010"
    ],
    "DateConsentConfirmed": [
      "2021-06-02T00:00:00Z"
    ]
  }
}

Response

Required fields updated successfully

idstring

Item ID

parentItemIdstring

The parent product's Product ID. Only relevant to and required for add-on products.

pricingPlanIdstring

Pricing plan ID

productIdstring

Product ID

subscriptionCustomAttributesobject

Custom attributes related to the subscription

vendorRequiredFieldsobject

Custom attributes related to vendor required fields for the subscription

Example response

[
  {
    "id": "37f56046-2cec-4bf4-a4e2-5a733dc849a9",
    "pricingPlanId": "a22c03e9-9e27-4e85-8433-78f246345685",
    "units": [
      {
        "quantity": "8",
        "unit": "USER"
      }
    ],
    "subscriptionCustomAttributes": {
      "intended_os": [
        "other",
        "ios",
        "macos"
      ],
      "sales_agent_id": [
        "R353113R"
      ]
    },
    "vendorRequiredFields": {
      "name": [
        "john"
      ],
      "lastname": [
        "doe"
      ],
      "email": [
        "john.doe@acme.com"
      ]
    },
    "provisioningConfiguration": {
      "date": "1546300800000",
      "strategy": "CUSTOM"
    },
    "billingConfiguration": {
      "date": "1546300800000",
      "strategy": "CUSTOM"
    }
  }
]

Changes

    • breaking

      added the new required request property

    • breaking

      added the new required request property

    • breaking

      the request's body type changed from no type to object

    • breaking

      the response's body type changed from no type to object for status

    • breaking

      the response's body type changed from no type to object for status

    • breaking

      the response's body type changed from no type to object for status

    • breaking

      the response's body type changed from no type to object for status

    • breaking

      the response's property type changed from no type to object for status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status