curl --request GET \
--url https://api.pricenow.dev/api/booking/products/{productId}/journey/unified-view/form \
--header 'accept-language: <accept-language>' \
--header 'pratiq-channel-uuid: <pratiq-channel-uuid>'{
"data": {
"title": "<string>",
"description": [
{
"children": [
{
"_type": "<string>",
"_key": "<string>"
}
],
"markDefs": [
{
"_type": "<string>",
"_key": "<string>"
}
],
"style": "<string>",
"listItem": "<string>",
"level": 123
}
],
"media": [
{
"kind": "image",
"url": "<string>",
"alt": "<string>"
}
],
"currency": "<string>",
"banner": {
"text": "<string>",
"color": "<string>",
"icon": "<string>",
"cta": {
"title": "<string>",
"color": "default",
"variant": "link",
"product": {
"slug": "<string>"
},
"link": "<string>",
"page": {
"slug": "<string>"
},
"newTab": true
}
},
"formElements": [
{
"id": "<string>",
"hasPaginatedOptions": true,
"explanation": "<string>",
"isValid": true,
"error": "<unknown>",
"kind": "datepicker",
"paginationType": "date",
"value": {
"from": "<string>",
"to": "<string>"
}
}
],
"items": [
{
"id": 123,
"productVariantId": 123,
"personId": 123,
"validity": {
"from": "<string>",
"to": "<string>"
},
"parentItemId": 123,
"originatedItemId": 123
}
],
"isValid": true,
"formErrors": {},
"debugHints": [
"<string>"
],
"formState": {
"attributes": {},
"allocation": {},
"validity": {
"from": "2023-11-07T05:31:56Z",
"to": "2023-11-07T05:31:56Z"
}
},
"totals": {
"listPrice": 123,
"discountedPrice": 123
},
"formBase": {
"proceedButton": {
"color": "<unknown>",
"variant": "<unknown>",
"label": "<string>"
}
}
}
}Fetch the unified form view for a specific product based on the provided form state. The form state must be stored client side and provided with every request. Further, if the returned form state in the request response differs from the sent from state, the client must update its persisted form state accordingly.
curl --request GET \
--url https://api.pricenow.dev/api/booking/products/{productId}/journey/unified-view/form \
--header 'accept-language: <accept-language>' \
--header 'pratiq-channel-uuid: <pratiq-channel-uuid>'{
"data": {
"title": "<string>",
"description": [
{
"children": [
{
"_type": "<string>",
"_key": "<string>"
}
],
"markDefs": [
{
"_type": "<string>",
"_key": "<string>"
}
],
"style": "<string>",
"listItem": "<string>",
"level": 123
}
],
"media": [
{
"kind": "image",
"url": "<string>",
"alt": "<string>"
}
],
"currency": "<string>",
"banner": {
"text": "<string>",
"color": "<string>",
"icon": "<string>",
"cta": {
"title": "<string>",
"color": "default",
"variant": "link",
"product": {
"slug": "<string>"
},
"link": "<string>",
"page": {
"slug": "<string>"
},
"newTab": true
}
},
"formElements": [
{
"id": "<string>",
"hasPaginatedOptions": true,
"explanation": "<string>",
"isValid": true,
"error": "<unknown>",
"kind": "datepicker",
"paginationType": "date",
"value": {
"from": "<string>",
"to": "<string>"
}
}
],
"items": [
{
"id": 123,
"productVariantId": 123,
"personId": 123,
"validity": {
"from": "<string>",
"to": "<string>"
},
"parentItemId": 123,
"originatedItemId": 123
}
],
"isValid": true,
"formErrors": {},
"debugHints": [
"<string>"
],
"formState": {
"attributes": {},
"allocation": {},
"validity": {
"from": "2023-11-07T05:31:56Z",
"to": "2023-11-07T05:31:56Z"
}
},
"totals": {
"listPrice": 123,
"discountedPrice": 123
},
"formBase": {
"proceedButton": {
"color": "<unknown>",
"variant": "<unknown>",
"label": "<string>"
}
}
}
}Language of the response
en, de, fr, it UUID of the sales channel
Show child attributes
Successful response
Show child attributes