@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Checkout API
@base https://apiexamples.vtexcommercestable.com.br
@version 1.0
@auth ApiKey X-VTEX-API-AppKey in header | ApiKey X-VTEX-API-AppToken in header | ApiKey VtexIdclientAutCookie in header
@common_fields {Content-Type: str=application/json, Accept: str=application/json, individualShippingEstimates: bool}
@endpoints 44
@hint download_for_search
@toc api(43), checkout(1)

@group api
@endpoint POST /api/checkout/pub/orderForms/simulation
@optional {RnbBehavior: int, sc: int, items: [map{id!: str, quantity!: int(int32), seller!: str}], country: str, postalCode: str, geoCoordinates: [num], allowedOutdatedData: [str]}
@returns(200) {items: [map], ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, paymentData: map{installmentOptions: [map], paymentSystems: [map], payments: [map], giftCards: [str], giftCardMessages: [str], availableAccounts: [str], availableTokens: [str], availableAssociations: map}, selectableGifts: [str], marketingData: map?, postalCode: str?, country: str, logisticsInfo: [map]}

@endpoint GET /api/checkout/pub/orderForm
@optional {forceNewCart: bool}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint GET /api/checkout/pub/orderForm/{orderFormId}
@required {orderFormId: str}
@optional {refreshOutdatedData: bool}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/items/removeAll
@required {orderFormId: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endgroup

@group checkout
@endpoint GET /checkout/changeToAnonymousUser/{orderFormId}
@required {orderFormId: str}
@returns(200)

@endgroup

@group api
@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/items/update
@required {orderFormId: str}
@optional {allowedOutdatedData: [str], orderItems: [map{quantity: int(int32), index: int}]}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/items
@required {orderFormId: str}
@optional {allowedOutdatedData: [str], orderItems: [map{quantity!: int(int32), seller!: str, id!: str, index!: int, price: int}]}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint PATCH /api/checkout/pub/orderForm/{orderFormId}/items
@required {orderFormId: str}
@optional {orderItems: [map{id!: str, quantity!: int(int32), seller!: str, index: int, price: int, attachments: [map], noSplitItem: bool, allowedOutdatedData: [str]}]}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint PUT /api/checkout/pub/orderForm/{orderFormId}/items/{itemIndex}/price
@required {orderFormId: str, itemIndex: str, price: int(int32)}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint DELETE /api/checkout/pub/orderForm/{orderFormId}/items/{itemIndex}/price
@required {orderFormId: str, itemIndex: str}
@returns(200)

@endpoint PATCH /api/checkout/pub/orderForm/{orderFormId}/profile
@required {orderFormId: str}
@optional {ignoreProfileData: bool}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint GET /api/checkout/pub/profiles
@required {email: str}
@optional {ensureComplete: bool}
@returns(200) {userProfileId: str, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userProfile: map{email: str?, firstName: str?, lastName: str, document: str, documentType: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool?, profileErrorOnLoading: bool?, customerClass: str?}, isComplete: bool}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/attachments/clientProfileData
@required {orderFormId: str, email: str, firstName: str, lastName: str, documentType: str, document: str}
@optional {phone: str, corporateName: str, tradeName: str, corporateDocument: str, stateInscription: str, corporatePhone: str, isCorporate: bool}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/attachments/shippingData
@required {orderFormId: str}
@optional {clearAddressIfPostalCodeNotFound: bool, selectedAddresses: [map{addressType: str, receiverName: str, addressId: str, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}], logisticsInfo: [map{itemIndex: int, selectedDeliveryChannel: str, selectedSla: str}]}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/attachments/clientPreferencesData
@required {orderFormId: str}
@optional {locale: str, optinNewsLetter: bool}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/attachments/marketingData
@required {orderFormId: str}
@optional {coupon: str, marketingTags: [str], utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str, utmiPart: str, utmiCampaign: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/attachments/paymentData
@required {orderFormId: str}
@optional {payments: [map{paymentSystem: int, paymentSystemName: str, group: str, installments: int, installmentsInterestRate: num, installmentsValue: int, value: int, referenceValue: int, hasDefaultBillingAddress: bool}]}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/items/{itemIndex}/attachments/{attachmentName}
@required {orderFormId: str, itemIndex: str, attachmentName: str, content: map}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint DELETE /api/checkout/pub/orderForm/{orderFormId}/items/{itemIndex}/attachments/{attachmentName}
@required {orderFormId: str, itemIndex: str, attachmentName: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/attachments/subscriptionData
@required {orderFormId: str, subscriptions: [map{itemIndex!: int, plan!: map}]}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint DELETE /api/checkout/pub/orderForm/{orderFormId}/attachments/subscriptionData
@required {orderFormId: str, subscriptions: [map]}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/attachments/merchantContextData
@required {orderFormId: str, salesAssociateData: map{salesAssociateId: str}}
@returns(200) {salesAssociateId: str}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/attachments/invoiceData
@required {orderFormId: str, address: map{addressType: str, city: str, complement: str, country: str, geoCoordinates!: [num], neighborhood: str, number: str, postalCode!: str, reference: str, state: str, street: str}}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint PUT /api/checkout/pub/orderForm/{orderFormId}/customData/{appId}
@required {orderFormId: str, appId: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint PUT /api/checkout/pub/orderForm/{orderFormId}/customData/{appId}/{appFieldName}
@required {orderFormId: str, appId: str, appFieldName: str, value: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint DELETE /api/checkout/pub/orderForm/{orderFormId}/customData/{appId}/{appFieldName}
@required {orderFormId: str, appId: str, appFieldName: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint PUT /api/checkout/pub/orderForm/{orderFormId}/customFields
@required {orderFormId: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint PUT /api/checkout/pub/orderForm/{orderFormId}/customFields/order
@required {orderFormId: str, name: str, value: str}
@optional {refId: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint PUT /api/checkout/pub/orderForm/{orderFormId}/customFields/item/{itemId}
@required {orderFormId: str, itemId: str, name: str, value: str}
@optional {refId: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint DELETE /api/checkout/pub/orderForm/{orderFormId}/customFields/item/{itemId}
@required {orderFormId: str, itemId: str, fieldName: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint PUT /api/checkout/pub/orderForm/{orderFormId}/customFields/address/{addressId}
@required {orderFormId: str, addressId: str, name: str, value: str}
@optional {refId: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint GET /api/checkout/pvt/configuration/orderForm
@returns(200) {paymentConfiguration: map{requiresAuthenticationForPreAuthorizedPaymentOption: bool, allowInstallmentsMerge: bool}, taxConfiguration: map?{url: str?, authorizationHeader: str?, appId: str, isMarketplaceResponsibleForTaxes: bool}, minimumQuantityAccumulatedForItems: int, decimalDigitsPrecision: int, minimumValueAccumulated: int?, apps: [map]?, allowMultipleDeliveries: bool?, allowManualPrice: bool?, savePersonalDataAsOptIn: bool?, maxNumberOfWhiteLabelSellers: int?, maskFirstPurchaseData: bool?, recaptchaValidation: str}

@endpoint POST /api/checkout/pvt/configuration/orderForm
@required {paymentConfiguration: map{requiresAuthenticationForPreAuthorizedPaymentOption!: bool, allowInstallmentsMerge: bool, blockPaymentSession: bool}, taxConfiguration: map{url: str, authorizationHeader: str, appId: str, isMarketplaceResponsibleForTaxes: any}, minimumQuantityAccumulatedForItems: int(int32), decimalDigitsPrecision: int(int32), minimumValueAccumulated: int, apps: [map{id: str, fields: [str], major: int}], allowMultipleDeliveries: bool, allowManualPrice: bool}
@optional {maxNumberOfWhiteLabelSellers: int, maskFirstPurchaseData: bool, maskStateOnAddress: bool=true, recaptchaValidation: str, paymentSystemToCheckFirstInstallment: str}
@returns(204)

@endpoint GET /api/checkout/pvt/configuration/window-to-change-seller
@returns(200)

@endpoint POST /api/checkout/pvt/configuration/window-to-change-seller
@required {waitingTime: int}
@returns(201)

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/messages/clear
@required {orderFormId: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?, customData: map?, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map{criteria: str, ascending: bool}}

@endpoint GET /api/checkout/pub/orderForm/{orderFormId}/installments
@required {orderFormId: str, paymentSystem: int}
@returns(200) {bin: str?, installments: [map], paymentSystem: int, value: int, paymentName: str?, paymentGroupName: str?}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/coupons
@required {orderFormId: str}
@optional {text: str}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map{addressType: str, receiverName: str, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str?, utmMedium: str?, utmCampaign: str?, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map{criteria: str, ascending: bool}}

@endpoint GET /api/checkout/pub/pickup-points
@optional {geoCoordinates: str, postalCode: str, countryCode: str}
@returns(200) {paging: map{page: int, pageSize: int, total: int, pages: int}, items: [map]}

@endpoint GET /api/checkout/pub/postal-code/{countryCode}/{postalCode}
@required {countryCode: str, postalCode: str}
@returns(200) {postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str, geoCoordinates: [int]}

@endpoint POST /api/checkout/pub/orderForm/{orderFormId}/transaction
@required {orderFormId: str, referenceId: str, value: int, referenceValue: int, interestValue: int}
@optional {savePersonalData: bool, optinNewsLetter: bool}
@returns(200) {orderFormId: str, salesChannel: str, loggedIn: bool, isCheckedIn: bool, storeId: str?, allowManualPrice: bool, canEditData: bool, userProfileId: str?, profileProvider: str, availableAccounts: [str], availableAddresses: [map], userType: str?, ignoreProfileData: bool, value: int, messages: [str], items: [map], selectableGifts: [str], totalizers: [map], shippingData: map?{address: map?{addressType: str, receiverName: str?, addressId: str?, isDisposable: bool, postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str?, reference: str?, geoCoordinates: [num]}, logisticsInfo: [map], selectedAddresses: [map], availableAddresses: [map]}, clientProfileData: map?{email: str?, firstName: str?, lastName: str, documentType: str, document: str, phone: str, corporateName: str?, tradeName: str?, corporateDocument: str?, stateInscription: str?, corporatePhone: str?, isCorporate: bool, profileCompleteOnLoading: bool, profileErrorOnLoading: bool?, customerClass: str?}, paymentData: map{giftCards: [map], transactions: [map]}, marketingData: map?{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str?, utmiPart: str?, utmiCampaign: str?}, sellers: [map], clientPreferencesData: map{locale: str, optinNewsLetter: bool?}, commercialConditionData: map?, storePreferencesData: map, giftRegistryData: map?, openTextField: str?, invoiceData: map?{address: map{postalCode: str, city: str, state: str, country: str, street: str, number: str, neighborhood: str, complement: str, reference: str, geoCoordinates: [num]}}, customData: map?{customApps: [map]?, customFields: [map]?}, itemMetadata: map{items: [map]}, hooksData: map?, ratesAndBenefitsData: map{rateAndBenefitsIdentifiers: [str], teaser: [str]}, subscriptionData: map?, itemsOrdination: map?{criteria: str, ascending: bool}}

@endpoint PUT /api/checkout/pub/orders
@required {items: [map{id!: str, quantity!: int(int32), seller!: str, commission: int, freightCommission: int, price: int, bundleItems: [map], itemAttachment: map, attachments: [str], priceTags: [map], measurementUnit: str, unitMultiplier: int, isGift: bool}], clientProfileData: map{email!: str, firstName: str, lastName: str, documentType: str, document: str, phone: str, corporateName: str, tradeName: str, corporateDocument: str, stateInscription: str, corporatePhone: str, isCorporate: bool}, shippingData: map{address: map, logisticsInfo: [map], updateStatus: str}, paymentData: map{giftCards: [map], giftCardMessages: [str], paymentSystems: [map], payments!: [map], updateStatus: str}}
@optional {sc: int, marketingData: map{coupon: str, utmSource: str, utmMedium: str, utmCampaign: str, utmiPage: str, utmiPart: str, utmiCampaign: str}, openTextField: str, salesAssociateData: map{salesAssociateId: str}}
@returns(200) {orderForm: str?, transactionData: map{merchantTransactions: [map], receiverUri: str, gatewayCallbackTemplatePath: str}, orders: [map]}

@endpoint POST /api/checkout/pub/gatewayCallback/{orderGroup}
@required {orderGroup: str, Cookie: str}
@returns(200)
@errors {428, 500}

@endpoint GET /api/checkout/pub/regions/{regionId}
@required {regionId: str, country: str}
@optional {postalCode: str, geoCoordinates: [num]}
@returns(200) {id: str, sellers: [map]}

@endgroup

@end
