{"info":{"_postman_id":"d3476832-53b6-4125-b1a3-90ec8b4d759e","name":"Uplisting API [Public]","description":"<html><head></head><body><h2 id=\"the-uplisting-api\">The Uplisting API</h2>\n<p><strong>Responses</strong></p>\n<p><em>401 Unauthorised</em></p>\n<p>If the API key is not recognised in any API calls, the response will be 401 Unauthorised</p>\n<p><em>200 OK</em></p>\n<p>For GET endpoints: If the request body is formatted correctly, the response will be a 200 OK.</p>\n<p><em>201 Created</em></p>\n<p>For most POST endpoints, the response will be 201 with the ID of the entity created</p>\n<p><em>202 Accepted</em></p>\n<p>For the calendar update endpoint: If the request body is formatted correctly, the response will be a 202 Accepted. Along with a request ID as a JSON response.</p>\n<p><strong>Rate limiting</strong></p>\n<p>The API is designed to provide a list of bookings/availability as a \"snapshot\" and then webhooks should be used to get up-to-date information on changes in the system.</p>\n<p>All calls to the Uplisting API are subject to rate limiting. If a partner exceeds the rate limits, a 429 Too Many Requests response is returned. We recommend to stagger requests througout a longer time frame to avoid hitting 429s.</p>\n<p>We allow up to 5 requests per second per IP address and no more than 100 requests per minute per IP address and no more than 15 requests per min per property.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"6655410","collectionId":"d3476832-53b6-4125-b1a3-90ec8b4d759e","publishedId":"2sBY4HSNpH","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2026-07-01T11:08:59.000Z"},"item":[{"name":"Webhook notifications","item":[{"name":"Webhook - Registering Hooks","id":"7cdc53ca-c95d-4bbe-9de3-c53dc1386fea","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Basic MATwZDQ0YjEtMTRmZS00MmJhLTg1OGEtNmM4MDBmNjBlMTNi","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"target_url\": \"https://hooks.zapier.com/hooks/catch/11700/osfupzi/\",\n  \"event\": \"booking_created\"\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/hooks","description":"<p>To receive push notifications when things change in Uplisting, register a webhook against an event. We will <code>POST</code> a JSON payload to your <code>target_url</code> whenever that event fires.</p>\n<p>Register a hook with <code>POST https://connect.uplisting.io/hooks</code> and a body of <code>{ \"target_url\": …, \"event\": … }</code>. The response contains an <code>id</code> and a <code>secret</code> — <strong>store the secret</strong>, you need it to verify signatures (see below).</p>\n<h2 id=\"available-events\">Available events</h2>\n<p><strong>Bookings</strong></p>\n<ul>\n<li><p><code>booking_created</code> — a new booking is imported from a channel or created in Uplisting.</p>\n</li>\n<li><p><code>booking_updated</code> — any change to a booking (including price changes and moves).</p>\n</li>\n<li><p><code>booking_removed</code> — a booking is cancelled or deleted.</p>\n</li>\n<li><p><code>booking_cancelled</code> — a booking is cancelled.</p>\n</li>\n<li><p><code>booking_request_approved</code> — a pending booking request is approved.</p>\n</li>\n<li><p><code>booking_request_declined</code> — a pending booking request is declined.</p>\n</li>\n</ul>\n<p><strong>Properties</strong></p>\n<ul>\n<li><code>property_created</code> · <code>property_updated</code> · <code>property_removed</code></li>\n</ul>\n<p><strong>Calendar &amp; pricing</strong></p>\n<ul>\n<li><p><code>prices_changed</code> — nightly prices or base rates changed.</p>\n</li>\n<li><p><code>restrictions_changed</code> — min-length-of-stay / closed-for-arrival / closed-for-departure changed.</p>\n</li>\n<li><p><code>availability_changed</code> — availability changed for a date range.</p>\n</li>\n</ul>\n<p><strong>Messaging</strong></p>\n<ul>\n<li><code>message_created</code> — an inbound or outbound guest message.</li>\n</ul>\n<p><strong>Payments</strong></p>\n<ul>\n<li><p><code>payment_status_changed</code> — a payment's status changed.</p>\n</li>\n<li><p><code>payment_refunded</code> — a payment was refunded.</p>\n</li>\n</ul>\n<p><strong>Reviews</strong></p>\n<ul>\n<li><code>review_created</code> — a new review was created.</li>\n</ul>\n<h2 id=\"delivery-envelope--signature-verification\">Delivery, envelope &amp; signature verification</h2>\n<p>Each delivery is a <code>POST</code> with <code>Content-Type: application/json</code> and these headers:</p>\n<ul>\n<li><p><code>X-Uplisting-Timestamp</code> — Unix time (seconds) when the request was signed.</p>\n</li>\n<li><p><code>X-Uplisting-Signature</code> — an HMAC-SHA256 hex digest.</p>\n</li>\n</ul>\n<p>The signature is computed as:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>X-Uplisting-Signature = HMAC_SHA256(secret, \"&lt;X-Uplisting-Timestamp&gt;.&lt;raw_request_body&gt;\")\n\n</code></pre><p>To verify, recompute the HMAC over <code>\".\"</code> using your stored <code>secret</code> and compare digests (constant-time). The timestamp lets you reject stale/replayed requests.</p>\n<p>Every payload body is <strong>flat</strong> — the event's fields are at the top level, plus two envelope fields added to every event:</p>\n<ul>\n<li><p><code>timestamp</code> — ISO 8601 string.</p>\n</li>\n<li><p><code>event_id</code> — a unique UUID for the delivery (use it to de-duplicate).</p>\n</li>\n</ul>\n<blockquote>\n<p>Note: the body does <strong>not</strong> contain an <code>event</code> field — you know which event fired from the <code>target_url</code> you registered for it. </p>\n</blockquote>\n<p>A hook is automatically disabled after 5 consecutive failed deliveries.</p>\n<h2 id=\"webhook-retries\">Webhook Retries</h2>\n<p>We <code>POST</code> each event to your endpoint and expect a <strong><code>2xx</code></strong> <strong>response within 5 seconds</strong>. Anything else — a non-<code>2xx</code> status, a timeout, or a connection error — is treated as a <strong>failed delivery</strong> and retried.</p>\n<p><strong>Retry schedule</strong></p>\n<ul>\n<li><p>Failed deliveries are retried on a <strong>growing backoff</strong>, up to <strong>21 attempts</strong> spanning roughly <strong>8.4 days</strong>.</p>\n</li>\n<li><p>Delays start at ~30 seconds and lengthen with each attempt (a few minutes after the first handful of tries, hours by the end of the window).</p>\n</li>\n<li><p>After the final attempt, the event is abandoned.</p>\n</li>\n</ul>\n<p><strong>What is and isn't retried</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Response at your endpoint</th>\n<th>Retried?</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>2xx</code></td>\n<td>Success — no retry</td>\n</tr>\n<tr>\n<td><code>408 Request Timeout</code>, <code>429 Too Many Requests</code></td>\n<td>✅ Yes</td>\n</tr>\n<tr>\n<td>Other <code>4xx</code> (<code>400</code>, <code>401</code>, <code>403</code>, <code>404</code>, <code>410</code>, <code>422</code>, …)</td>\n<td>❌ No — treated as permanent</td>\n</tr>\n<tr>\n<td><code>3xx</code> / <code>5xx</code></td>\n<td>✅ Yes</td>\n</tr>\n<tr>\n<td>Timeout or connection/TLS/DNS error</td>\n<td>✅ Yes</td>\n</tr>\n</tbody>\n</table>\n</div><p>Most <code>4xx</code> client errors are considered permanent — we assume the request will keep failing — so they are <strong>not</strong> retried.</p>\n<p><strong>Deduplication</strong></p>\n<p>Every retry re-sends the <strong>same</strong> <strong><code>event_id</code></strong>. Because retries mean your endpoint may receive the same event more than once, <strong>deduplicate on</strong> <strong><code>event_id</code></strong> and treat delivery as at-least-once.</p>\n<p><strong>Automatic disabling</strong></p>\n<p>If <strong>5 events fail terminally in a row</strong> — each either exhausting all retries or hitting a permanent error — <strong>with no successful delivery in between</strong>, the subscription is automatically disabled. A single successful delivery resets the counter, so this reflects a sustained outage rather than occasional failures.</p>\n<h2 id=\"booking-payload\">Booking payload</h2>\n<p><code>booking_created</code> and <code>booking_updated</code> deliver the full booking payload:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"id\": 1,\n  \"slug\": \"abc123\",\n  \"guest_name\": \"Jon Snow\",\n  \"preferred_guest_name\": \"King of the North\",\n  \"guest_email\": \"jon.snow@example.com\",\n  \"guest_phone\": \"+441234567890\",\n  \"channel\": \"airbnb_official\",\n  \"source\": null,\n  \"note\": \"Bringing the dragon\",\n  \"direct\": false,\n  \"automated_messages_enabled\": true,\n  \"automated_reviews_enabled\": false,\n  \"arrival_time\": \"15:00:00\",\n  \"booked_at\": \"2026-07-01T11:19:59Z\",\n  \"check_in\": \"2026-07-05\",\n  \"check_out\": \"2026-07-08\",\n  \"departure_time\": \"11:00:00\",\n  \"lock_code\": \"1234\",\n  \"manually_moved\": false,\n  \"number_of_nights\": 3,\n  \"property_name\": \"Mi Casa\",\n  \"property_id\": 2,\n  \"currency\": \"GBP\",\n  \"multi_unit_name\": null,\n  \"multi_unit_id\": null,\n  \"external_reservation_id\": \"ABC2DEF3YZ\",\n  \"number_of_guests\": 3,\n  \"cleaning_fee\": 40.0,\n  \"extra_guest_charges\": 0.0,\n  \"extra_charges\": 0.0,\n  \"discounts\": 0.0,\n  \"booking_taxes\": 0.0,\n  \"commission\": 14.0,\n  \"commission_vat\": 0.0,\n  \"other_charges\": null,\n  \"total_payout\": 388.0,\n  \"cancellation_fee\": 0.0,\n  \"gross_revenue\": 402.45,\n  \"accomodation_total\": 362.45,\n  \"accommodation_total\": 362.45,\n  \"accommodation_with_commission\": 376.45,\n  \"guest_price\": 402.45,\n  \"average_price_per_night\": 120.82,\n  \"subtotal\": 402.45,\n  \"host_edited\": false,\n  \"owner_payout\": 340.0,\n  \"payment_processing_fee\": 12.45,\n  \"net_revenue\": 390.0,\n  \"balance\": 0.0,\n  \"accommodation_management_fee\": 20.0,\n  \"cleaning_management_fee\": 4.0,\n  \"total_management_fee\": 48.0,\n  \"status\": \"confirmed\",\n  \"booking_tax_items\": [\n    {\n      \"name\": \"City tax\",\n      \"amount\": 5.0\n    }\n  ],\n  \"booking_discounts\": [\n    {\n      \"name\": \"Weekly\",\n      \"type\": \"weekly\",\n      \"amount\": 10.0\n    }\n  ],\n  \"booking_promotions\": [],\n  \"booking_upsells\": [\n    {\n      \"name\": \"Early check-in\",\n      \"type\": \"upsell\",\n      \"amount\": 15.0\n    }\n  ],\n  \"booking_adjustments\": [],\n  \"booking_fees\": [\n    {\n      \"name\": \"Cleaning fee\",\n      \"type\": \"cleaning_fee\",\n      \"amount\": 40.0\n    }\n  ],\n  \"booking_charges\": [],\n  \"booking_channel_fees\": [\n    {\n      \"name\": \"Airbnb host fee\",\n      \"type\": \"channel_fee\",\n      \"amount\": 14.0\n    }\n  ],\n  \"booking_cancellation_details\": [],\n  \"booking_payments\": [\n    {\n      \"id\": 900,\n      \"amount\": 402.45,\n      \"currency\": \"GBP\",\n      \"status\": \"paid\",\n      \"due_at\": \"2026-07-05T00:00:00Z\"\n    }\n  ],\n  \"booking_refunds\": [],\n  \"security_deposit\": {\n    \"id\": 12,\n    \"status\": \"authorized\",\n    \"amount\": 200.0,\n    \"charged_at\": null,\n    \"expires_at\": \"2026-07-09T00:00:00Z\"\n  },\n  \"timestamp\": \"2026-07-01T11:20:00Z\",\n  \"event_id\": \"0f9c2e2a-2b7a-4a1e-9c3d-1b2c3d4e5f60\"\n}\n\n</code></pre>\n<p>For <code>booking_updated</code> triggered by a status change, the payload additionally includes <code>previous_status</code> and <code>new_status</code>.</p>\n<p>For <code>booking_removed</code>, the payload is a reduced set of the base attributes plus a <code>reason</code>:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"id\": 163760,\n  \"slug\": \"def456\",\n  \"guest_name\": \"Jon Snow\",\n  \"channel\": \"uplisting\",\n  \"direct\": false,\n  \"automated_messages_enabled\": true,\n  \"automated_reviews_enabled\": false,\n  \"arrival_time\": \"15:00:00\",\n  \"booked_at\": \"2026-07-01T12:51:01Z\",\n  \"check_in\": \"2026-07-02\",\n  \"check_out\": \"2026-07-03\",\n  \"departure_time\": \"11:00:00\",\n  \"lock_code\": \"1234\",\n  \"manually_moved\": false,\n  \"number_of_nights\": 1,\n  \"property_name\": \"Mi Casa\",\n  \"property_id\": 2,\n  \"currency\": \"USD\",\n  \"number_of_guests\": 2,\n  \"reason\": \"cancelled\",\n  \"timestamp\": \"2026-07-01T12:52:00Z\",\n  \"event_id\": \"1a2b3c4d-5e6f-7081-9203-a4b5c6d7e8f9\"\n}\n\n</code></pre>\n<h2 id=\"property-payload\">Property payload</h2>\n<p><code>property_created</code> / <code>property_updated</code> / <code>property_removed</code>:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"id\": 12345,\n  \"name\": \"Beach House\",\n  \"nickname\": \"Mi Casa\",\n  \"time_zone\": \"Europe/London\",\n  \"timestamp\": \"2026-07-01T12:30:45Z\",\n  \"event_id\": \"\\u2026\"\n}\n\n</code></pre>\n<h2 id=\"message-payload\">Message payload</h2>\n<p><code>message_created</code>:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"id\": 789,\n  \"channel\": \"airbnb\",\n  \"direction\": \"inbound\",\n  \"context\": \"conversation\",\n  \"body\": \"Hi, what time is check-in?\",\n  \"status\": \"received\",\n  \"failure_reason\": null,\n  \"sender_reference_id\": null,\n  \"occasion_type\": \"booking\",\n  \"occasion_id\": 1,\n  \"property_id\": 2,\n  \"property_name\": \"Mi Casa\",\n  \"created_at\": \"2026-07-01T12:30:00Z\",\n  \"timestamp\": \"2026-07-01T12:30:45Z\",\n  \"event_id\": \"\\u2026\"\n}\n\n</code></pre>\n<h2 id=\"review-payload\">Review payload</h2>\n<p><code>review_created</code>:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"id\": 456,\n  \"airbnb_review_id\": \"987654\",\n  \"channel\": \"airbnb\",\n  \"reviewer_role\": \"guest\",\n  \"overall_rating\": 5,\n  \"review_text\": \"Great stay!\",\n  \"review_date\": \"2026-07-01T00:00:00Z\",\n  \"booking_id\": 1,\n  \"property_id\": 2,\n  \"property_name\": \"Mi Casa\",\n  \"timestamp\": \"2026-07-01T12:30:45Z\",\n  \"event_id\": \"\\u2026\"\n}\n\n</code></pre>\n<h2 id=\"payment-payload\">Payment payload</h2>\n<p><code>payment_status_changed</code>:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"id\": 999,\n  \"amount\": 1500.5,\n  \"currency\": \"USD\",\n  \"status\": \"paid\",\n  \"previous_status\": \"pending\",\n  \"due_at\": \"2026-07-05T00:00:00Z\",\n  \"booking_id\": 1,\n  \"property_id\": 2,\n  \"property_name\": \"Mi Casa\",\n  \"timestamp\": \"2026-07-01T12:30:45Z\",\n  \"event_id\": \"\\u2026\"\n}\n\n</code></pre>\n<p><code>payment_refunded</code>:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"payment_id\": 999,\n  \"booking_id\": 1,\n  \"property_id\": 2,\n  \"property_name\": \"Mi Casa\",\n  \"amount_refunded\": 500.25,\n  \"total_refunded\": 500.25,\n  \"payment_amount\": 1500.5,\n  \"currency\": \"USD\",\n  \"refunded_at\": \"2026-07-01T12:30:45Z\",\n  \"timestamp\": \"2026-07-01T12:30:45Z\",\n  \"event_id\": \"\\u2026\"\n}\n\n</code></pre>\n<h2 id=\"rate-restriction--availability-payloads\">Rate, restriction &amp; availability payloads</h2>\n<p><code>prices_changed</code> / <code>restrictions_changed</code>:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"property_id\": 12345,\n  \"property_name\": \"Mi Casa\",\n  \"rate_type\": \"price\",\n  \"start_date\": \"2026-08-01\",\n  \"end_date\": \"2026-08-31\",\n  \"timestamp\": \"2026-07-01T12:30:45Z\",\n  \"event_id\": \"\\u2026\"\n}\n\n</code></pre>\n<p><code>rate_type</code> is one of <code>price</code>/<code>base_rate</code> (for <code>prices_changed</code>) or <code>mlos</code>/<code>closed_for_arrival</code>/<code>closed_for_departure</code> (for <code>restrictions_changed</code>).</p>\n<p><code>availability_changed</code>:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"property_id\": 12345,\n  \"property_name\": \"Mi Casa\",\n  \"start_date\": \"2026-08-01\",\n  \"end_date\": \"2026-08-31\",\n  \"timestamp\": \"2026-07-01T12:30:45Z\",\n  \"event_id\": \"\\u2026\"\n}\n\n</code></pre>\n","urlObject":{"protocol":"https","path":["hooks"],"host":["connect","uplisting","io"],"query":[],"variable":[]}},"response":[{"id":"a1d1895f-f467-49b7-842b-54228a42733f","name":"Webhook - Registering Hooks","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Basic MATwZDQ0YjEtMTRmZS00MmJhLTg1OGEtNmM4MDBmNjBlMTNi","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"target_url\": \"https://hooks.zapier.com/hooks/catch/11700/osfupzi/\",\n  \"event\": \"booking_created\"\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/hooks"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Cowboy"},{"key":"Date","value":"Tue, 09 Jun 2020 23:07:18 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"DENY"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Xss-Protection","value":"1; mode=block"},{"key":"Content-Security-Policy","value":"form-action 'self'; frame-ancestors 'self'; base-uri 'self'; default-src 'none'; script-src 'self'; connect-src 'self'; img-src 'self' https: data:; style-src 'self' 'unsafe-inline' https:; font-src 'self'; object-src 'none'; plugin-types application/pdf; child-src 'self'; frame-src 'self'; media-src 'self'"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Vary","value":"Origin"},{"key":"Content-Length","value":"11"},{"key":"Via","value":"1.1 vegur"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 1269\n}"}],"_postman_id":"7cdc53ca-c95d-4bbe-9de3-c53dc1386fea"},{"name":"Webhook - Removing hooks","id":"f9c3b1b8-f39f-4fa2-8a5b-6b18ae3af21a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Basic Mat4N2QfZTAtMzA3My00NjBmLTllMTMtNTE5NDY2NDE4Zjdm","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/hooks/1837","description":"<p>If you wish to remove a hook (e.g. unsubscribe from further events) then send <code>DELETE</code> to <code>https://connect.uplisting.io/hooks/:id</code> where id is the ID you got back when first registering the hook.</p>\n","urlObject":{"protocol":"https","path":["hooks","1837"],"host":["connect","uplisting","io"],"query":[],"variable":[]}},"response":[{"id":"bf67276b-cd14-4a0f-a4e5-41321d273b51","name":"Webhook - Removing hooks","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","type":"text","value":"application/json"},{"key":"Authorization","type":"text","value":"Basic MAT7UUUN2Q4H3ZTAtMzA3M550NjBmLTllMTMtNTE5NDY2NDE4Zjdm"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/hooks/1837"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Cowboy"},{"key":"Date","value":"Tue, 08 Dec 2020 20:59:14 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"DENY"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Xss-Protection","value":"1; mode=block"},{"key":"Content-Security-Policy","value":"form-action 'self'; frame-ancestors 'self'; base-uri 'self'; default-src 'none'; script-src 'self'; connect-src 'self'; img-src 'self' https: data:; style-src 'self' 'unsafe-inline' https:; font-src 'self'; object-src 'none'; plugin-types application/pdf; child-src 'self'; frame-src 'self'; media-src 'self'"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Vary","value":"Origin"},{"key":"Content-Length","value":"22"},{"key":"Via","value":"1.1 vegur"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"destroyed\"\n}"}],"_postman_id":"f9c3b1b8-f39f-4fa2-8a5b-6b18ae3af21a"},{"name":"Webhooks","id":"98bd375b-0b46-46e6-bba2-e0b357e67ec1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Basic YzhlZGU3NDctNDUzNi00MGVmLWJkYWMtMzZjZjVlMGQxZDVk","type":"text"}],"url":"https://connect.uplisting.io/hooks","description":"<p>Retrieving details of registered webhooks</p>\n<p>To retrieve the details for all webhooks registered for a user, you should send a GET request to the endpoint above.</p>\n<p>The payload will be a list of webhooks for the partner account in JSON API format. </p>\n<p>For more info on JSON API format, visit <a href=\"https://jsonapi.org\">https://jsonapi.org</a>.</p>\n","urlObject":{"protocol":"https","path":["hooks"],"host":["connect","uplisting","io"],"query":[],"variable":[]}},"response":[{"id":"d9d30fcf-9907-4a33-83b3-7af761f5256d","name":"Hooks Index","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Basic YzhlZGU3NDctNDUzNi00MGVmLWJkYWMtMzZjZjVlMGQxZDVk","type":"text"}],"url":"https://connect.uplisting.io/hooks"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"nginx"},{"key":"Date","value":"Fri, 02 Jul 2021 16:55:30 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"41"},{"key":"X-Frame-Options","value":"DENY"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Xss-Protection","value":"1; mode=block"},{"key":"Content-Security-Policy","value":"form-action 'self'; frame-ancestors 'self'; base-uri 'self'; default-src 'none'; script-src 'self'; connect-src 'self'; img-src 'self' https: data:; style-src 'self' 'unsafe-inline' https:; font-src 'self'; object-src 'none'; plugin-types application/pdf; child-src 'self'; frame-src 'self'; media-src 'self'"},{"key":"Vary","value":"Origin"},{"key":"Via","value":"1.1 vegur, 1.1 vegur"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": \"305\",\n            \"type\": \"webhooks\",\n            \"attributes\": {\n                \"target_url\": \"https://uplisting.eu.ngrok.io/hook/booking_created_2\",\n                \"event\": \"booking_created\",\n                \"created_at\": \"2020-12-16T11:35:58Z\",\n                \"updated_at\": \"2020-12-16T11:35:58Z\"\n            }\n        },\n        {\n            \"id\": \"319\",\n            \"type\": \"webhooks\",\n            \"attributes\": {\n                \"target_url\": \"https://uplisting.eu.ngrok.io/hook/booking_created_4\",\n                \"event\": \"booking_created\",\n                \"created_at\": \"2020-12-16T14:40:12Z\",\n                \"updated_at\": \"2020-12-16T14:40:12Z\"\n            }\n        }\n    ]\n}"}],"_postman_id":"98bd375b-0b46-46e6-bba2-e0b357e67ec1"},{"name":"Webhook - Rotate secret","id":"80a40b6b-725b-46fc-bd9b-75d1fce613dd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/hooks/:id/rotate_secret","description":"<p>Rotate the signing secret for a registered webhook. <code>POST</code> to <code>https://connect.uplisting.io/hooks/:id/rotate_secret</code> where <code>:id</code> is the hook id.</p>\n<p>Returns the hook id and its <strong>new</strong> secret:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"id\": 123,\n  \"secret\": \"&lt;new-secret&gt;\"\n}\n</code></pre>\n<p>Update your signature-verification code to use the new secret immediately.</p>\n","urlObject":{"path":["hooks",":id","rotate_secret"],"host":["https://connect.uplisting.io"],"query":[],"variable":[{"id":"6388eac6-38d4-4be7-89f7-af47f81a6010","description":{"content":"<p>The hook id returned on registration</p>\n","type":"text/plain"},"type":"any","value":"","key":"id"}]}},"response":[],"_postman_id":"80a40b6b-725b-46fc-bd9b-75d1fce613dd"}],"id":"e77d6def-8c74-4777-91e4-e1ef0a4c2673","_postman_id":"e77d6def-8c74-4777-91e4-e1ef0a4c2673","description":""},{"name":"v2","item":[{"name":"Custom booking attributes","id":"5771a262-5f34-41bb-afc3-4ea1b64f9aea","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Basic ODM1ZjBjMTItNWM3Mi00ZDA2LWFkY2MtYzA3MjYwYTBjMDNh","type":"text"},{"key":"X-Uplisting-Client-Id","value":"8a818455-dbfb-4fc2-951b-6ff7e8b546ae","type":"text"}],"url":"https://connect.uplisting.io/v2/custom_booking_attributes","description":"<p><strong>Listing booking attributes that can be changed</strong></p>\n<p>There are only certain attributes that can be changed on any specific booking and those are listed under this endpoint.</p>\n<p>The use case here is to retrieve the list of attributes for a specific account using a host's API key. These can then be mapped to attributes on a partner's side and used with the `PATCH /v2/bookings/:id` endpoint to make changes to the booking.</p>\n<p>These values are then used in Uplisting in automated messaging by replacing special tags used in messaging templates.</p>\n<p>NOTE: This endpoint requires a partner client ID in the header under the <code>X-Uplisting-Client-ID</code> header. Contact Uplisting if you don't have a partner specific client ID on <a href=\"mailto:partner@uplisting.io\">partner@uplisting.io</a>.</p>\n","urlObject":{"protocol":"https","path":["v2","custom_booking_attributes"],"host":["connect","uplisting","io"],"query":[],"variable":[]}},"response":[{"id":"752b0670-7bd3-4c66-b545-5bb62ea3e4df","name":"Custom booking attributes","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Basic ODM1ZjBjMTItNWM3Mi00ZDA2LWFkY2MtYzA3MjYwYTBjMDNh","type":"text"},{"key":"X-Uplisting-Client-Id","value":"8a818455-dbfb-4fc2-951b-6ff7e8b546ae","type":"text"}],"url":"https://connect.uplisting.io/v2/custom_booking_attributes"},"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": \"1\",\n            \"type\": \"custom_booking_attributes\",\n            \"attributes\": {\n                \"name\": \"lock_code\",\n                \"description\": \"A customisable lock code\",\n                \"created_at\": \"2022-05-30T14:31:23Z\",\n                \"updated_at\": \"2022-05-30T14:31:23Z\"\n            }\n        }\n    ]\n}"}],"_postman_id":"5771a262-5f34-41bb-afc3-4ea1b64f9aea"},{"name":"Update booking attributes","id":"7fa8cd80-a032-4360-9af1-bfe07b996732","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Authorization","value":"Basic ODM1ZjBjMTItNWM3Mi00ZDA2LWFkY2MtYzA3MjYwYTBjMDNh","type":"text"},{"key":"X-Uplisting-Client-Id","value":"8a818455-dbfb-4fc2-951b-6ff7e8b546ae","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/v2/bookings/123456","description":"<p>Any attribute listed in the custom booking attributes endpoint can be updated via this endpoint and values set against a specific booking.</p>\n<p>Attribute values can be anything that is represented by a string, e.g.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"data\": {\n        \"attributes\": {\n            \"lock_code\": 1234567\n        }\n    }\n}\n\n</code></pre>\n<p>These attributes can then be used by the host in automated message tags.</p>\n<p>Values are accepted with an HTTP 201 response.</p>\n<p>NOTE: This endpoint requires a partner client ID in the header under the <code>X-Uplisting-Client-ID</code> header. Contact Uplisting if you don't have a partner specific client ID.</p>\n","urlObject":{"protocol":"https","path":["v2","bookings","123456"],"host":["connect","uplisting","io"],"query":[],"variable":[]}},"response":[],"_postman_id":"7fa8cd80-a032-4360-9af1-bfe07b996732"},{"name":"Create custom booking attributes","id":"83413177-0108-46c9-b9de-9e9322c584ba","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Basic ODM1ZjBjMTItNWM3Mi00ZDA2LWFkY2MtYzA3MjYwYTBjMDNh","type":"text"},{"key":"X-Uplisting-Client-Id","value":"8a818455-dbfb-4fc2-951b-6ff7e8b546ae","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"data\": {\n        \"attributes\": {\n            \"name\": \"partner_custom_attribute_name\",\n            \"description\": \"Describe the custom attribute here\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/v2/custom_booking_attributes","description":"<h4 id=\"description\"><strong>Description</strong></h4>\n<p>Creates a new custom booking attribute that can be used to store additional metadata for bookings.</p>\n<p>Each attribute is tied to the partner API client that created it and must follow specific naming conventions.</p>\n<h4 id=\"constraints\"><strong>Constraints</strong></h4>\n<ul>\n<li><p><strong>Maximum:</strong> 15 custom booking attributes per partner per account.</p>\n</li>\n<li><p><strong>Namespace Enforcement:</strong><br />  Attribute names must be namespaced (e.g., <code>partnername_attribute_name</code>).</p>\n</li>\n<li><p><strong>Naming Convention:</strong><br />  Only underscore-style (<code>snake_case</code>) names are allowed.</p>\n</li>\n</ul>\n<p>⚠️ <strong>Note:</strong> Partner clients must have their <code>custom_booking_attribute_prefix</code> set before they can create custom booking attributes. (Please contact our Partner team on <a href=\"https://mailto:partner@uplisting.io\">partner@uplisting.io</a> to have that configured)</p>\n<p>Values are accepted with an HTTP 201 response.</p>\n<p>NOTE: This endpoint requires a partner client ID in the header under the <code>X-Uplisting-Client-ID</code> header. Contact Uplisting if you don't have a partner specific client ID.</p>\n","urlObject":{"protocol":"https","path":["v2","custom_booking_attributes"],"host":["connect","uplisting","io"],"query":[],"variable":[]}},"response":[],"_postman_id":"83413177-0108-46c9-b9de-9e9322c584ba"},{"name":"Create booking","id":"10323161-c605-419c-903a-de9fc58ae995","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Basic ODM1ZjBjMTItNWM3Mi00ZDA2LWFkY2MtYzA3MjYwYTBjMDNh","type":"text"},{"key":"X-Uplisting-Client-Id","value":"8a818455-dbfb-4fc2-951b-6ff7e8b546ae","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"data\": {\n        \"attributes\": {\n            \"check_in\": \"2022-06-30\",\n            \"check_out\": \"2022-07-06\",\n            \"guest_name\": \"Jon Snow\",\n            \"guest_email\": \"jon@example.com\",\n            \"guest_phone\": \"+001122334455\",\n            \"number_of_guests\": 3\n        },\n        \"relationships\": {\n            \"property\": {\n                \"data\": {\n                    \"type\": \"properties\",\n                    \"id\": \"11780\"\n                }\n            }\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/v2/bookings","description":"<p>Endpoint allows creating confirmed bookings and accepts the following attributes:</p>\n<ul>\n<li><code>check_in</code> - required, date in ISO8601 format.</li>\n<li><code>check_out</code> - required, date in ISO8601 format, date must be after `check_in` date.</li>\n<li><code>property ID</code> - required.</li>\n</ul>\n<p>Optional attributes:</p>\n<ul>\n<li><code>guest_name</code> - optional, guest name shown on the booking calendar and used for automated messaging.</li>\n<li><code>guest_email</code> - optional, a valid email is required for any scheduled messages to be delivered to the guest.</li>\n<li><code>guest_phone</code> - optional.</li>\n<li><code>number_of_guests</code> - optional, used for price calculation.</li>\n</ul>\n<p>NOTE: This endpoint requires a partner client ID in the header under the <code>X-Uplisting-Client-ID</code> header. Contact Uplisting if you don't have a partner specific client ID.</p>\n","urlObject":{"protocol":"https","path":["v2","bookings"],"host":["connect","uplisting","io"],"query":[],"variable":[]}},"response":[{"id":"f1c375e9-454e-4060-b38f-972ea8a94b4c","name":"Create booking","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Basic ODM1ZjBjMTItNWM3Mi00ZDA2LWFkY2MtYzA3MjYwYTBjMDNh","type":"text"},{"key":"X-Uplisting-Client-Id","value":"8a818455-dbfb-4fc2-951b-6ff7e8b546ae","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"data\": {\n        \"attributes\": {\n            \"check_in\": \"2022-06-30\",\n            \"check_out\": \"2022-07-06\",\n            \"guest_name\": \"Jon Snow\",\n            \"guest_email\": \"jon@example.com\",\n            \"guest_phone\": \"+001122334455\",\n            \"number_of_guests\": 3\n        },\n        \"relationships\": {\n            \"property\": {\n                \"data\": {\n                    \"type\": \"properties\",\n                    \"id\": \"11780\"\n                }\n            }\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/v2/bookings"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": \"165003\",\n        \"type\": \"bookings\",\n        \"attributes\": {\n            \"check_in\": \"2022-06-30\",\n            \"check_out\": \"2022-07-06\",\n            \"guest_name\": \"Jon Snow\",\n            \"guest_email\": \"jon@example.com\",\n            \"guest_phone\": \"+001122334455\",\n            \"number_of_guests\": 3\n        },\n        \"relationships\": {\n            \"property\": {\n                \"data\": {\n                    \"id\": \"11780\",\n                    \"type\": \"properties\"\n                }\n            }\n        }\n    }\n}"}],"_postman_id":"10323161-c605-419c-903a-de9fc58ae995"}],"id":"0a562507-121e-43bd-ab69-112b39a083f8","_postman_id":"0a562507-121e-43bd-ab69-112b39a083f8","description":""},{"name":"OAuth API","item":[{"name":"Authentication","item":[{"name":"1. Authorize (browser step)","id":"e7517cab-99fc-4f36-88ea-24d24506274c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://auth.airdna.co/oauth2/authorize?client_id=<your-client-id>&redirect_uri=https://your-app.example.com/callback&response_type=code&scope=calendar:read calendar:write properties:read properties:write reviews:read bookings:read bookings:create bookings:update custom_booking_attributes:read custom_booking_attributes:write messaging:read messaging:write&state=<random-csrf-token>&code_challenge=<base64url(SHA256(code_verifier))>&code_challenge_method=S256","description":"<p><strong>Step 1 of the Authorization Code + PKCE flow.</strong></p>\n<p>Open this URL in a browser and log in. Before building it, generate a PKCE <code>code_verifier</code> (a random URL-safe string) and derive <code>code_challenge = base64url(SHA256(code_verifier))</code>. Keep the <code>code_verifier</code> for step 2.</p>\n<p>After you authenticate, the authorization server redirects to your <code>redirect_uri</code> with <code>?code=…&amp;state=…</code>. Verify <code>state</code> matches what you sent, then copy the <code>code</code> into the <strong>Exchange code for token</strong> request.</p>\n<p>This request is browser-driven and cannot be sent directly from Postman.</p>\n","urlObject":{"path":["oauth2","authorize"],"host":["https://auth.airdna.co"],"query":[{"key":"client_id","value":"<your-client-id>"},{"key":"redirect_uri","value":"https://your-app.example.com/callback"},{"key":"response_type","value":"code"},{"key":"scope","value":"calendar:read calendar:write properties:read properties:write reviews:read bookings:read bookings:create bookings:update custom_booking_attributes:read custom_booking_attributes:write messaging:read messaging:write"},{"description":{"content":"<p>Random value; verify it matches on redirect</p>\n","type":"text/plain"},"key":"state","value":"<random-csrf-token>"},{"description":{"content":"<p>PKCE S256 challenge</p>\n","type":"text/plain"},"key":"code_challenge","value":"<base64url(SHA256(code_verifier))>"},{"key":"code_challenge_method","value":"S256"}],"variable":[]}},"response":[],"_postman_id":"e7517cab-99fc-4f36-88ea-24d24506274c"},{"name":"2. Exchange code for token","event":[{"listen":"test","script":{"type":"text/javascript","exec":["// Persist tokens returned by the authorization server into collection variables.","const res = pm.response.json();","if (res.access_token) { pm.collectionVariables.set('accessToken', res.access_token); }","if (res.refresh_token) { pm.collectionVariables.set('refreshToken', res.refresh_token); }"],"id":"75a1b0bb-7dc4-4873-abcd-da2466f801a0"}}],"id":"d62730ba-5b6f-4b1d-9305-bd94cd850bc0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"grant_type","value":"authorization_code","type":"text"},{"key":"code","value":"<code-from-redirect>","type":"text"},{"key":"client_id","value":"<your-client-id>","type":"text"},{"key":"client_secret","value":"<your-client-secret>","type":"text"},{"key":"redirect_uri","value":"https://your-app.example.com/callback","type":"text"},{"key":"code_verifier","value":"<code-verifier-from-step-1>","type":"text"}]},"url":"https://auth.airdna.co/oauth2/token","description":"<p><strong>Step 2 of the Authorization Code + PKCE flow.</strong></p>\n<p>Exchanges the <code>code</code> from the redirect for tokens. Send the same <code>code_verifier</code> you generated in step 1.</p>\n<p><strong>Response</strong> (<code>200 OK</code>):</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"access_token\": \"&lt;JWT&gt;\",\n  \"refresh_token\": \"&lt;opaque&gt;\",\n  \"token_type\": \"Bearer\",\n  \"expires_in\": 3600,\n  \"scope\": \"properties:read bookings:read …\"\n}\n</code></pre>\n<p>The bundled test script stores <code>access_token</code> and <code>refresh_token</code> into the <code></code> / <code></code> collection variables automatically.</p>\n","urlObject":{"path":["oauth2","token"],"host":["https://auth.airdna.co"],"query":[],"variable":[]}},"response":[],"_postman_id":"d62730ba-5b6f-4b1d-9305-bd94cd850bc0"},{"name":"3. Refresh token","event":[{"listen":"test","script":{"id":"5f66ddaf-ad88-44a3-af34-962a9712e47f","exec":["// Persist tokens returned by the authorization server into collection variables.","const res = pm.response.json();","if (res.access_token) { pm.collectionVariables.set('accessToken', res.access_token); }","if (res.refresh_token) { pm.collectionVariables.set('refreshToken', res.refresh_token); }"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"e41abb78-6513-4664-b7a1-84e3c551e896","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"grant_type","value":"refresh_token","type":"text"},{"key":"refresh_token","value":"","type":"text"},{"key":"client_id","value":"<your-client-id>","type":"text"},{"key":"client_secret","value":"<your-client-secret>","type":"text"}]},"url":"https://auth.airdna.co/oauth2/token","description":"<p>Exchange a <code>refresh_token</code> for a fresh <code>access_token</code> once the current one expires. Returns the same response shape as the code-exchange request; the test script updates the stored tokens automatically.</p>\n<p>Note that <code>offline_access</code> scope is required to receive a <code>refresh_token</code></p>\n","urlObject":{"path":["oauth2","token"],"host":["https://auth.airdna.co"],"query":[],"variable":[]}},"response":[],"_postman_id":"e41abb78-6513-4664-b7a1-84e3c551e896"}],"id":"3c820ba8-2888-440c-a064-0d256d987749","description":"<p>Obtain a bearer access token from the Uplisting authorization server (<code>https://auth.airdna.co</code>) using the <strong>Authorization Code flow with PKCE</strong>.</p>\n<ol>\n<li><strong>Authorize</strong> — open the authorize URL in a browser, log in, capture the <code>code</code>.</li>\n<li><strong>Exchange code for token</strong> — swap the <code>code</code> (+ PKCE <code>code_verifier</code>) for an <code>access_token</code> and <code>refresh_token</code>.</li>\n<li><strong>Refresh token</strong> — renew the access token when it expires.</li>\n</ol>\n<p>Set the <code>clientId</code>, <code>clientSecret</code> and <code>redirectUri</code> collection variables to the values registered for your integration before running these.</p>\n","_postman_id":"3c820ba8-2888-440c-a064-0d256d987749","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}}},{"name":"Endpoints","item":[{"name":"Properties","item":[{"name":"List properties","id":"ff42497e-be4e-4e46-9de6-9d1cacb85b85","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/properties","description":"<p><strong>Required scope:</strong> <code>properties:read</code></p>\n<p>List all properties on the account (cursor-paginated, JSON:API).</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>include</code></td>\n<td>query</td>\n<td>string (CSV)</td>\n<td>No</td>\n<td>Comma-separated relationships to embed. Allowed: <code>address</code>, <code>amenities</code>, <code>channel_commissions</code>, <code>channels</code>, <code>discounts</code>, <code>fees</code>, <code>multi_units</code>, <code>photos</code>, <code>policy</code>, <code>protect_security_deposit_setting</code>, <code>suitability</code>, <code>taxes</code>. Unknown values are ignored.</td>\n</tr>\n<tr>\n<td><code>limit</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Page size for cursor pagination.</td>\n</tr>\n<tr>\n<td><code>cursor</code></td>\n<td>query</td>\n<td>string</td>\n<td>No</td>\n<td>Opaque cursor from the previous page's <code>meta</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["properties"],"host":["https://connect.uplisting.io"],"query":[{"disabled":true,"description":{"content":"<p>CSV of relationships to embed</p>\n","type":"text/plain"},"key":"include","value":"address,photos,amenities"},{"disabled":true,"key":"limit","value":"50"},{"disabled":true,"key":"cursor","value":""}],"variable":[]}},"response":[{"id":"a6a443c6-ee0b-4607-a93d-850fe291a4ca","name":"List properties — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://connect.uplisting.io/properties","host":["https://connect.uplisting.io"],"path":["properties"],"query":[{"key":"include","value":"address,photos,amenities","description":"CSV of relationships to embed","disabled":true},{"key":"limit","value":"50","disabled":true},{"key":"cursor","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": [\n    {\n      \"id\": \"1024\",\n      \"type\": \"properties\",\n      \"attributes\": {\n        \"name\": \"Riverside Loft\",\n        \"nickname\": \"Riverside\",\n        \"currency\": \"GBP\",\n        \"time_zone\": \"Europe/London\",\n        \"check_in_time\": \"15:00\",\n        \"check_out_time\": \"11:00\",\n        \"type\": \"apartment\",\n        \"maximum_capacity\": 4,\n        \"bedrooms\": 2,\n        \"beds\": 3,\n        \"bathrooms\": 1,\n        \"bed_types\": [\n          \"double\",\n          \"single\"\n        ],\n        \"description\": \"A bright riverside loft with skyline views, moments from the city centre.\",\n        \"created_at\": \"2025-03-12T09:24:31Z\",\n        \"uplisting_domain\": \"https://riverside.uplisting.io\",\n        \"property_slug\": \"riverside-loft\"\n      },\n      \"relationships\": {\n        \"address\": {\n          \"data\": {\n            \"type\": \"addresses\",\n            \"id\": \"3201\"\n          }\n        },\n        \"photos\": {\n          \"data\": [\n            {\n              \"type\": \"photos\",\n              \"id\": \"58011\"\n            },\n            {\n              \"type\": \"photos\",\n              \"id\": \"58012\"\n            }\n          ]\n        },\n        \"amenities\": {\n          \"data\": [\n            {\n              \"type\": \"amenities\",\n              \"id\": \"7\"\n            },\n            {\n              \"type\": \"amenities\",\n              \"id\": \"42\"\n            }\n          ]\n        }\n      }\n    }\n  ],\n  \"included\": [\n    {\n      \"id\": \"3201\",\n      \"type\": \"addresses\",\n      \"attributes\": {\n        \"street\": \"12 Wharf Road\",\n        \"suite\": \"Flat 4\",\n        \"city\": \"London\",\n        \"state\": \"England\",\n        \"zip_code\": \"N1 7GR\",\n        \"country\": \"GB\",\n        \"latitude\": 51.531,\n        \"longitude\": -0.0912\n      }\n    },\n    {\n      \"id\": \"58011\",\n      \"type\": \"photos\",\n      \"attributes\": {\n        \"order\": 0,\n        \"url\": \"https://d1234uplisting.cloudfront.net/photos/58011.jpg\"\n      }\n    },\n    {\n      \"id\": \"7\",\n      \"type\": \"amenities\",\n      \"attributes\": {\n        \"name\": \"Wifi\",\n        \"group\": \"Internet & Office\"\n      }\n    }\n  ],\n  \"meta\": {\n    \"cursor\": \"eyJjcmVhdGVkX2F0IjoiMjAyNS0wNS0wMVQxNDoxMDowMFoiLCJpZCI6MTAyNX0=\",\n    \"has_more\": true,\n    \"total_count\": 2\n  }\n}"}],"_postman_id":"ff42497e-be4e-4e46-9de6-9d1cacb85b85"},{"name":"Get property","id":"5367e3cb-286d-487c-bc44-6ce5dfdb8400","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/properties/:id","description":"<p><strong>Required scope:</strong> <code>properties:read</code></p>\n<p>Fetch a single property by ID.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Property ID.</td>\n</tr>\n<tr>\n<td><code>include</code></td>\n<td>query</td>\n<td>string (CSV)</td>\n<td>No</td>\n<td>Comma-separated relationships to embed. Allowed: <code>address</code>, <code>amenities</code>, <code>channel_commissions</code>, <code>channels</code>, <code>discounts</code>, <code>fees</code>, <code>multi_units</code>, <code>photos</code>, <code>policy</code>, <code>protect_security_deposit_setting</code>, <code>suitability</code>, <code>taxes</code>. Unknown values are ignored.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["properties",":id"],"host":["https://connect.uplisting.io"],"query":[{"disabled":true,"key":"include","value":"address,photos,amenities"}],"variable":[{"type":"any","key":"id"}]}},"response":[{"id":"c30a16d1-bde6-4f4f-b2ff-69b9d0600221","name":"Get property — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://connect.uplisting.io/properties/:id","host":["https://connect.uplisting.io"],"path":["properties",":id"],"query":[{"key":"include","value":"address,photos,amenities","disabled":true}],"variable":[{"key":"id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": {\n    \"id\": \"1024\",\n    \"type\": \"properties\",\n    \"attributes\": {\n      \"name\": \"Riverside Loft\",\n      \"nickname\": \"Riverside\",\n      \"currency\": \"GBP\",\n      \"time_zone\": \"Europe/London\",\n      \"check_in_time\": \"15:00\",\n      \"check_out_time\": \"11:00\",\n      \"type\": \"apartment\",\n      \"maximum_capacity\": 4,\n      \"bedrooms\": 2,\n      \"beds\": 3,\n      \"bathrooms\": 1,\n      \"bed_types\": [\n        \"double\",\n        \"single\"\n      ],\n      \"description\": \"A bright riverside loft with skyline views, moments from the city centre.\",\n      \"created_at\": \"2025-03-12T09:24:31Z\",\n      \"uplisting_domain\": \"https://riverside.uplisting.io\",\n      \"property_slug\": \"riverside-loft\"\n    },\n    \"relationships\": {\n      \"address\": {\n        \"data\": {\n          \"type\": \"addresses\",\n          \"id\": \"3201\"\n        }\n      },\n      \"photos\": {\n        \"data\": [\n          {\n            \"type\": \"photos\",\n            \"id\": \"58011\"\n          }\n        ]\n      },\n      \"amenities\": {\n        \"data\": [\n          {\n            \"type\": \"amenities\",\n            \"id\": \"42\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"3201\",\n      \"type\": \"addresses\",\n      \"attributes\": {\n        \"street\": \"12 Wharf Road\",\n        \"suite\": \"Flat 4\",\n        \"city\": \"London\",\n        \"state\": \"England\",\n        \"zip_code\": \"N1 7GR\",\n        \"country\": \"GB\",\n        \"latitude\": 51.531,\n        \"longitude\": -0.0912\n      }\n    },\n    {\n      \"id\": \"42\",\n      \"type\": \"amenities\",\n      \"attributes\": {\n        \"name\": \"Tennis\",\n        \"group\": \"Outdoor Features\"\n      }\n    }\n  ]\n}"}],"_postman_id":"5367e3cb-286d-487c-bc44-6ce5dfdb8400"},{"name":"Search availability","id":"5f51bc19-49ed-4db1-83ab-9363120e3529","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/availability","description":"<p><strong>Required scope:</strong> <code>properties:read</code></p>\n<p>Search available properties by date range, guest count, price and city.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>check_in</code></td>\n<td>query</td>\n<td>date (YYYY-MM-DD)</td>\n<td>No</td>\n<td>Cannot be earlier than yesterday.</td>\n</tr>\n<tr>\n<td><code>check_out</code></td>\n<td>query</td>\n<td>date (YYYY-MM-DD)</td>\n<td>No</td>\n<td>Must be after <code>check_in</code>.</td>\n</tr>\n<tr>\n<td><code>number_of_guests</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td></td>\n</tr>\n<tr>\n<td><code>min_price</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Minimum nightly price; must be less than <code>max_price</code>.</td>\n</tr>\n<tr>\n<td><code>max_price</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Maximum nightly price; must be greater than <code>min_price</code>.</td>\n</tr>\n<tr>\n<td><code>city</code></td>\n<td>query</td>\n<td>string</td>\n<td>No</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["availability"],"host":["https://connect.uplisting.io"],"query":[{"disabled":true,"key":"check_in","value":"2026-08-01"},{"disabled":true,"key":"check_out","value":"2026-08-05"},{"disabled":true,"key":"number_of_guests","value":"2"},{"disabled":true,"key":"min_price","value":"50"},{"disabled":true,"key":"max_price","value":"300"},{"disabled":true,"key":"city","value":"London"}],"variable":[]}},"response":[{"id":"29eabb5f-9784-4c7d-8a49-cc482b74929a","name":"Search availability — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://connect.uplisting.io/availability","host":["https://connect.uplisting.io"],"path":["availability"],"query":[{"key":"check_in","value":"2026-08-01","disabled":true},{"key":"check_out","value":"2026-08-05","disabled":true},{"key":"number_of_guests","value":"2","disabled":true},{"key":"min_price","value":"50","disabled":true},{"key":"max_price","value":"300","disabled":true},{"key":"city","value":"London","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": [\n    {\n      \"id\": \"1024\",\n      \"type\": \"properties\",\n      \"attributes\": {\n        \"name\": \"Riverside Loft\",\n        \"nickname\": \"Riverside\",\n        \"currency\": \"GBP\",\n        \"time_zone\": \"Europe/London\",\n        \"check_in_time\": \"15:00\",\n        \"check_out_time\": \"11:00\",\n        \"type\": \"apartment\",\n        \"maximum_capacity\": 4,\n        \"bedrooms\": 2,\n        \"beds\": 3,\n        \"bathrooms\": 1,\n        \"bed_types\": [\n          \"double\",\n          \"single\"\n        ],\n        \"description\": \"A bright riverside loft with skyline views, moments from the city centre.\",\n        \"created_at\": \"2025-03-12T09:24:31Z\",\n        \"uplisting_domain\": \"https://riverside.uplisting.io\",\n        \"property_slug\": \"riverside-loft\"\n      },\n      \"relationships\": {\n        \"address\": {\n          \"data\": {\n            \"type\": \"addresses\",\n            \"id\": \"3201\"\n          }\n        },\n        \"photos\": {\n          \"data\": [\n            {\n              \"type\": \"photos\",\n              \"id\": \"58011\"\n            }\n          ]\n        },\n        \"amenities\": {\n          \"data\": [\n            {\n              \"type\": \"amenities\",\n              \"id\": \"7\"\n            }\n          ]\n        }\n      }\n    }\n  ],\n  \"included\": [\n    {\n      \"id\": \"3201\",\n      \"type\": \"addresses\",\n      \"attributes\": {\n        \"street\": \"12 Wharf Road\",\n        \"suite\": \"Flat 4\",\n        \"city\": \"London\",\n        \"state\": \"England\",\n        \"zip_code\": \"N1 7GR\",\n        \"country\": \"GB\",\n        \"latitude\": 51.531,\n        \"longitude\": -0.0912\n      }\n    },\n    {\n      \"id\": \"58011\",\n      \"type\": \"photos\",\n      \"attributes\": {\n        \"order\": 0,\n        \"url\": \"https://d1234uplisting.cloudfront.net/photos/58011.jpg\"\n      }\n    },\n    {\n      \"id\": \"7\",\n      \"type\": \"amenities\",\n      \"attributes\": {\n        \"name\": \"Wifi\",\n        \"group\": \"Internet & Office\"\n      }\n    }\n  ]\n}"}],"_postman_id":"5f51bc19-49ed-4db1-83ab-9363120e3529"},{"name":"Update property fees","id":"c14327bf-e1f9-4324-b6e6-69455944f431","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": [\n    {\n      \"type\": \"property_fees\",\n      \"id\": \"123-cleaning_fee\",\n      \"attributes\": {\n        \"amount\": 45.0,\n        \"enabled\": true,\n        \"guests_included\": 2\n      }\n    },\n    {\n      \"type\": \"property_fees\",\n      \"id\": \"123-extra_guest_charge\",\n      \"attributes\": {\n        \"amount\": 20.0,\n        \"enabled\": true,\n        \"guests_included\": 1\n      }\n    }\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/property_fees/:property_id","description":"<p><strong>Required scope:</strong> <code>properties:write</code></p>\n<p>Bulk-update property fees. The <code>id</code> is the composite resource id returned on the property.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>property_id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Property ID.</td>\n</tr>\n<tr>\n<td><code>data</code></td>\n<td>body</td>\n<td>array of objects</td>\n<td>Yes</td>\n<td>JSON:API resource array.</td>\n</tr>\n<tr>\n<td><code>data[].type</code></td>\n<td>body</td>\n<td>string</td>\n<td>Yes</td>\n<td>Fee type. Allowed: <code>cleaning_fee</code>, <code>extra_guest_charge</code>.</td>\n</tr>\n<tr>\n<td><code>data[].id</code></td>\n<td>body</td>\n<td>string</td>\n<td>Yes</td>\n<td>Composite fee resource id.</td>\n</tr>\n<tr>\n<td><code>data[].attributes.amount</code></td>\n<td>body</td>\n<td>decimal</td>\n<td>No</td>\n<td></td>\n</tr>\n<tr>\n<td><code>data[].attributes.enabled</code></td>\n<td>body</td>\n<td>boolean</td>\n<td>No</td>\n<td></td>\n</tr>\n<tr>\n<td><code>data[].attributes.guests_included</code></td>\n<td>body</td>\n<td>integer</td>\n<td>No</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["property_fees",":property_id"],"host":["https://connect.uplisting.io"],"query":[],"variable":[{"type":"any","key":"property_id"}]}},"response":[{"id":"16b6a549-a9f4-4027-b4cf-870a9f65f8e1","name":"Update property fees — 200 OK","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": [\n    {\n      \"type\": \"property_fees\",\n      \"id\": \"123-cleaning_fee\",\n      \"attributes\": {\n        \"amount\": 45.0,\n        \"enabled\": true,\n        \"guests_included\": 2\n      }\n    },\n    {\n      \"type\": \"property_fees\",\n      \"id\": \"123-extra_guest_charge\",\n      \"attributes\": {\n        \"amount\": 20.0,\n        \"enabled\": true,\n        \"guests_included\": 1\n      }\n    }\n  ]\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://connect.uplisting.io/property_fees/:property_id","host":["https://connect.uplisting.io"],"path":["property_fees",":property_id"],"variable":[{"key":"property_id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": [\n    {\n      \"id\": \"501-cleaning_fee\",\n      \"type\": \"property_fees\",\n      \"attributes\": {\n        \"name\": \"Cleaning fee\",\n        \"label\": \"cleaning_fee\",\n        \"enabled\": null,\n        \"guests_included\": null,\n        \"amount\": 45.0\n      }\n    },\n    {\n      \"id\": \"501-extra_guest_charge\",\n      \"type\": \"property_fees\",\n      \"attributes\": {\n        \"name\": \"Extra guest charge\",\n        \"label\": \"extra_guest_charge\",\n        \"enabled\": true,\n        \"guests_included\": 3,\n        \"amount\": 12.0\n      }\n    }\n  ]\n}"}],"_postman_id":"c14327bf-e1f9-4324-b6e6-69455944f431"},{"name":"Update property discounts","id":"c666fe64-a109-4203-b8f1-340c7166badd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": [\n    {\n      \"type\": \"property_discounts\",\n      \"id\": \"123-weekly\",\n      \"attributes\": {\n        \"amount\": 10.0\n      }\n    },\n    {\n      \"type\": \"property_discounts\",\n      \"id\": \"123-monthly\",\n      \"attributes\": {\n        \"amount\": 25.0\n      }\n    }\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/property_discounts/:property_id","description":"<p><strong>Required scope:</strong> <code>properties:write</code></p>\n<p>Bulk-update property length-of-stay discounts.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>property_id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Property ID.</td>\n</tr>\n<tr>\n<td><code>data</code></td>\n<td>body</td>\n<td>array of objects</td>\n<td>Yes</td>\n<td>JSON:API resource array.</td>\n</tr>\n<tr>\n<td><code>data[].type</code></td>\n<td>body</td>\n<td>string</td>\n<td>Yes</td>\n<td>Discount type. Allowed: <code>weekly</code>, <code>monthly</code>.</td>\n</tr>\n<tr>\n<td><code>data[].id</code></td>\n<td>body</td>\n<td>string</td>\n<td>Yes</td>\n<td>Composite discount resource id.</td>\n</tr>\n<tr>\n<td><code>data[].attributes.amount</code></td>\n<td>body</td>\n<td>decimal</td>\n<td>Yes</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["property_discounts",":property_id"],"host":["https://connect.uplisting.io"],"query":[],"variable":[{"type":"any","key":"property_id"}]}},"response":[{"id":"64e9974f-791f-46d0-876a-3b91fcede92f","name":"Update property discounts — 200 OK","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": [\n    {\n      \"type\": \"property_discounts\",\n      \"id\": \"123-weekly\",\n      \"attributes\": {\n        \"amount\": 10.0\n      }\n    },\n    {\n      \"type\": \"property_discounts\",\n      \"id\": \"123-monthly\",\n      \"attributes\": {\n        \"amount\": 25.0\n      }\n    }\n  ]\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://connect.uplisting.io/property_discounts/:property_id","host":["https://connect.uplisting.io"],"path":["property_discounts",":property_id"],"variable":[{"key":"property_id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": [\n    {\n      \"id\": \"501-weekly\",\n      \"type\": \"property_discounts\",\n      \"attributes\": {\n        \"name\": \"Weekly discount\",\n        \"label\": \"weekly\",\n        \"type\": null,\n        \"days\": 7,\n        \"amount\": 15.0\n      }\n    },\n    {\n      \"id\": \"501-monthly\",\n      \"type\": \"property_discounts\",\n      \"attributes\": {\n        \"name\": \"Monthly discount\",\n        \"label\": \"monthly\",\n        \"type\": null,\n        \"days\": 28,\n        \"amount\": 25.0\n      }\n    }\n  ]\n}"}],"_postman_id":"c666fe64-a109-4203-b8f1-340c7166badd"}],"id":"c2f7cf7f-860f-4f5e-82d2-4b03e48d00f0","_postman_id":"c2f7cf7f-860f-4f5e-82d2-4b03e48d00f0","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}}},{"name":"Calendar","item":[{"name":"Get calendar","id":"48cf3ef0-a55c-4b53-bac1-3cae6472f0ae","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/calendar/:property_id","description":"<p><strong>Required scope:</strong> <code>calendar:read</code></p>\n<p>Get per-day availability and rates for a property.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>property_id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Property ID.</td>\n</tr>\n<tr>\n<td><code>from</code></td>\n<td>query</td>\n<td>date (YYYY-MM-DD)</td>\n<td>No</td>\n<td>Range start. Defaults to today.</td>\n</tr>\n<tr>\n<td><code>to</code></td>\n<td>query</td>\n<td>date (YYYY-MM-DD)</td>\n<td>No</td>\n<td>Range end. Defaults to <code>from</code> + 1 year; clamped to at most 730 days after <code>from</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["calendar",":property_id"],"host":["https://connect.uplisting.io"],"query":[{"disabled":true,"key":"from","value":"2026-08-01"},{"disabled":true,"key":"to","value":"2026-09-01"}],"variable":[{"type":"any","key":"property_id"}]}},"response":[{"id":"25ded7c1-5928-4d61-b2ac-b7c088159579","name":"Get calendar — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://connect.uplisting.io/calendar/:property_id","host":["https://connect.uplisting.io"],"path":["calendar",":property_id"],"query":[{"key":"from","value":"2026-08-01","disabled":true},{"key":"to","value":"2026-09-01","disabled":true}],"variable":[{"key":"property_id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": {\n    \"id\": \"1024\",\n    \"type\": \"calendars\",\n    \"attributes\": {\n      \"from\": \"2026-06-15\",\n      \"to\": \"2026-06-17\"\n    },\n    \"relationships\": {\n      \"days\": {\n        \"data\": [\n          {\n            \"type\": \"calendar_days\",\n            \"id\": \"2026-06-15\"\n          },\n          {\n            \"type\": \"calendar_days\",\n            \"id\": \"2026-06-16\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"2026-06-15\",\n      \"type\": \"calendar_days\",\n      \"attributes\": {\n        \"date\": \"2026-06-15\",\n        \"available\": true,\n        \"available_count\": 1,\n        \"day_rate\": 100.0,\n        \"minimum_length_of_stay\": 1,\n        \"maximum_available_nights\": 365,\n        \"closed_for_arrival\": false,\n        \"closed_for_departure\": false\n      }\n    },\n    {\n      \"id\": \"2026-06-16\",\n      \"type\": \"calendar_days\",\n      \"attributes\": {\n        \"date\": \"2026-06-16\",\n        \"available\": false,\n        \"available_count\": 0,\n        \"day_rate\": 100.0,\n        \"minimum_length_of_stay\": 2,\n        \"maximum_available_nights\": 0,\n        \"closed_for_arrival\": false,\n        \"closed_for_departure\": false\n      }\n    }\n  ]\n}"}],"_postman_id":"48cf3ef0-a55c-4b53-bac1-3cae6472f0ae"},{"name":"Update calendar","id":"4bb22768-acea-4fe9-b5d8-ee2a8f57d24c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"type\": \"calendars\",\n    \"attributes\": {\n      \"notification_url\": \"https://example.com/calendar-webhook\",\n      \"calendar_days\": [\n        {\n          \"date\": \"2026-08-01\",\n          \"available\": true,\n          \"day_rate\": 150.0,\n          \"minimum_length_of_stay\": 2,\n          \"closed_for_arrival\": false,\n          \"closed_for_departure\": false\n        },\n        {\n          \"from\": \"2026-08-02\",\n          \"to\": \"2026-08-07\",\n          \"available\": true,\n          \"day_rate\": 175.0\n        }\n      ]\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/calendar/:property_id","description":"<p><strong>Required scope:</strong> <code>calendar:write</code></p>\n<p>Bulk-update availability and rates. Each <code>calendar_days</code> entry uses either a single <code>date</code> <strong>or</strong> a <code>from</code>/<code>to</code> range. Returns <strong>202 Accepted</strong> with a <code>request_id</code>.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>property_id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Property ID.</td>\n</tr>\n<tr>\n<td><code>data.type</code></td>\n<td>body</td>\n<td>string</td>\n<td>No</td>\n<td>If present, must equal <code>\"calendars\"</code>.</td>\n</tr>\n<tr>\n<td><code>data.attributes.notification_url</code></td>\n<td>body</td>\n<td>string (URL)</td>\n<td>No</td>\n<td>Must be HTTPS. Receives async completion notification.</td>\n</tr>\n<tr>\n<td><code>data.attributes.calendar_days</code></td>\n<td>body</td>\n<td>array</td>\n<td>Yes</td>\n<td>Max 1095 entries.</td>\n</tr>\n<tr>\n<td><code>calendar_days[].date</code></td>\n<td>body</td>\n<td>date (YYYY-MM-DD)</td>\n<td>No</td>\n<td>Single day; mutually exclusive with <code>from</code>/<code>to</code>.</td>\n</tr>\n<tr>\n<td><code>calendar_days[].from</code></td>\n<td>body</td>\n<td>date (YYYY-MM-DD)</td>\n<td>No</td>\n<td>Range start; use with <code>to</code>.</td>\n</tr>\n<tr>\n<td><code>calendar_days[].to</code></td>\n<td>body</td>\n<td>date (YYYY-MM-DD)</td>\n<td>No</td>\n<td>Range end; use with <code>from</code>.</td>\n</tr>\n<tr>\n<td><code>calendar_days[].available</code></td>\n<td>body</td>\n<td>boolean</td>\n<td>No</td>\n<td></td>\n</tr>\n<tr>\n<td><code>calendar_days[].day_rate</code></td>\n<td>body</td>\n<td>decimal</td>\n<td>No</td>\n<td>Must be greater than 0.</td>\n</tr>\n<tr>\n<td><code>calendar_days[].minimum_length_of_stay</code></td>\n<td>body</td>\n<td>integer</td>\n<td>No</td>\n<td>Must be greater than 0.</td>\n</tr>\n<tr>\n<td><code>calendar_days[].closed_for_arrival</code></td>\n<td>body</td>\n<td>boolean</td>\n<td>No</td>\n<td></td>\n</tr>\n<tr>\n<td><code>calendar_days[].closed_for_departure</code></td>\n<td>body</td>\n<td>boolean</td>\n<td>No</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["calendar",":property_id"],"host":["https://connect.uplisting.io"],"query":[],"variable":[{"type":"any","key":"property_id"}]}},"response":[{"id":"d6474238-432d-4059-95e1-709aa845ac2b","name":"Update calendar — 202 Accepted","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"type\": \"calendars\",\n    \"attributes\": {\n      \"notification_url\": \"https://example.com/calendar-webhook\",\n      \"calendar_days\": [\n        {\n          \"date\": \"2026-08-01\",\n          \"available\": true,\n          \"day_rate\": 150.0,\n          \"minimum_length_of_stay\": 2,\n          \"closed_for_arrival\": false,\n          \"closed_for_departure\": false\n        },\n        {\n          \"from\": \"2026-08-02\",\n          \"to\": \"2026-08-07\",\n          \"available\": true,\n          \"day_rate\": 175.0\n        }\n      ]\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://connect.uplisting.io/calendar/:property_id","host":["https://connect.uplisting.io"],"path":["calendar",":property_id"],"variable":[{"key":"property_id"}]}},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"request_id\": \"3f2504e0-4f89-41d3-9a0c-0305e82c3301\"\n}"}],"_postman_id":"4bb22768-acea-4fe9-b5d8-ee2a8f57d24c"}],"id":"aaf63313-c86e-4330-87b9-e7391c23af35","_postman_id":"aaf63313-c86e-4330-87b9-e7391c23af35","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}}},{"name":"Bookings","item":[{"name":"List bookings","id":"ecb93c69-8ffc-42ab-9e87-50b30671913c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/bookings?property_id=123","description":"<p><strong>Required scope:</strong> <code>bookings:read</code></p>\n<p>List bookings for a property (cursor-paginated). Returns base booking attributes; to retrieve a booking's financial breakdown, use <strong>Get booking</strong> with <code>include</code>.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>property_id</code></td>\n<td>query</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Property whose bookings to list.</td>\n</tr>\n<tr>\n<td><code>from</code></td>\n<td>query</td>\n<td>date (YYYY-MM-DD)</td>\n<td>No</td>\n<td>Range start. Defaults to today.</td>\n</tr>\n<tr>\n<td><code>to</code></td>\n<td>query</td>\n<td>date (YYYY-MM-DD)</td>\n<td>No</td>\n<td>Range end. Defaults to <code>from</code> + 1 year.</td>\n</tr>\n<tr>\n<td><code>limit</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Page size for cursor pagination.</td>\n</tr>\n<tr>\n<td><code>cursor</code></td>\n<td>query</td>\n<td>string</td>\n<td>No</td>\n<td>Opaque cursor from the previous page's <code>meta</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["bookings"],"host":["https://connect.uplisting.io"],"query":[{"key":"property_id","value":"123"},{"disabled":true,"key":"from","value":"2026-08-01"},{"disabled":true,"key":"to","value":"2026-09-01"},{"disabled":true,"key":"limit","value":"50"},{"disabled":true,"key":"cursor","value":""}],"variable":[]}},"response":[{"id":"a1b60686-8b02-48c3-a89a-6d7769a9716b","name":"List bookings — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://connect.uplisting.io/bookings?property_id=123","host":["https://connect.uplisting.io"],"path":["bookings"],"query":[{"key":"property_id","value":"123"},{"key":"from","value":"2026-08-01","disabled":true},{"key":"to","value":"2026-09-01","disabled":true},{"key":"limit","value":"50","disabled":true},{"key":"cursor","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": [\n    {\n      \"id\": \"48210\",\n      \"type\": \"bookings\",\n      \"attributes\": {\n        \"slug\": \"a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d\",\n        \"preferred_guest_name\": \"King of the North\",\n        \"guest_email\": \"jon.snow@example.com\",\n        \"guest_phone\": \"+44797978889991\",\n        \"channel\": \"airbnb_official\",\n        \"source\": \"airbnb_official\",\n        \"note\": null,\n        \"direct\": false,\n        \"automated_messages_enabled\": true,\n        \"automated_reviews_enabled\": true,\n        \"guest_name\": \"Jon Snow\",\n        \"arrival_time\": \"14:00:00\",\n        \"departure_time\": \"08:00:00\",\n        \"booked_at\": \"2026-06-10T09:24:11Z\",\n        \"cancelled_dt\": null,\n        \"check_in\": \"2026-07-01\",\n        \"check_out\": \"2026-07-05\",\n        \"lock_code\": null,\n        \"manually_moved\": false,\n        \"number_of_nights\": 4,\n        \"property_name\": \"Seaside Apartment\",\n        \"property_id\": 3391,\n        \"multi_unit_name\": null,\n        \"multi_unit_id\": null,\n        \"external_reservation_id\": \"HMABCDEFGH\",\n        \"stripe_customer_id\": null,\n        \"currency\": \"GBP\",\n        \"number_of_guests\": 2,\n        \"accommodation_total\": 480.0,\n        \"accommodation_with_commission\": 480.0,\n        \"cleaning_fee\": 45.0,\n        \"extra_guest_charges\": 0,\n        \"extra_charges\": 0,\n        \"discounts\": 0,\n        \"booking_taxes\": 0,\n        \"commission\": 72.0,\n        \"commission_vat\": 0,\n        \"other_charges\": 0,\n        \"total_payout\": 453.0,\n        \"cancellation_fee\": 0,\n        \"gross_revenue\": 525.0,\n        \"accommodation_management_fee\": 0,\n        \"cleaning_management_fee\": 0,\n        \"total_management_fee\": 0,\n        \"owner_payout\": 453.0,\n        \"payment_processing_fee\": 0,\n        \"net_revenue\": 453.0,\n        \"balance\": 0,\n        \"guest_price\": 525.0,\n        \"average_price_per_night\": 120.0,\n        \"subtotal\": 525.0,\n        \"host_edited\": false,\n        \"status\": \"confirmed\"\n      }\n    }\n  ],\n  \"meta\": {\n    \"cursor\": null,\n    \"has_more\": false,\n    \"total_count\": 1\n  }\n}"}],"_postman_id":"ecb93c69-8ffc-42ab-9e87-50b30671913c"},{"name":"Get booking","id":"ae013082-a8c2-4e15-b9cc-55652a2e81a2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/bookings/:id","description":"<p><strong>Required scope:</strong> <code>bookings:read</code></p>\n<p>Fetch a single booking.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Booking ID.</td>\n</tr>\n<tr>\n<td><code>include</code></td>\n<td>query</td>\n<td>string (CSV)</td>\n<td>No</td>\n<td>Comma-separated financial relationships to embed. Allowed: <code>booking_tax_items</code>, <code>booking_discounts</code>, <code>booking_promotions</code>, <code>booking_upsells</code>, <code>booking_adjustments</code>, <code>booking_fees</code>, <code>booking_charges</code>, <code>booking_channel_fees</code>, <code>booking_cancellation_details</code>, <code>booking_payments</code>, <code>booking_refunds</code>, <code>security_deposit</code>. Unknown values are ignored.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["bookings",":id"],"host":["https://connect.uplisting.io"],"query":[{"disabled":true,"key":"include","value":"booking_payments,security_deposit"}],"variable":[{"type":"any","key":"id"}]}},"response":[{"id":"2ad111ec-45e4-475c-83c4-50955b7761d6","name":"Get booking — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://connect.uplisting.io/bookings/:id","host":["https://connect.uplisting.io"],"path":["bookings",":id"],"query":[{"key":"include","value":"booking_payments,security_deposit","disabled":true}],"variable":[{"key":"id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": {\n    \"id\": \"48210\",\n    \"type\": \"bookings\",\n    \"attributes\": {\n      \"slug\": \"a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d\",\n      \"preferred_guest_name\": null,\n      \"guest_email\": \"jon.snow@example.com\",\n      \"guest_phone\": \"+44797978889991\",\n      \"channel\": \"airbnb_official\",\n      \"source\": \"airbnb_official\",\n      \"note\": null,\n      \"direct\": false,\n      \"automated_messages_enabled\": true,\n      \"automated_reviews_enabled\": true,\n      \"guest_name\": \"Jon Snow\",\n      \"arrival_time\": \"14:00:00\",\n      \"departure_time\": \"08:00:00\",\n      \"booked_at\": \"2026-06-10T09:24:11Z\",\n      \"cancelled_dt\": null,\n      \"check_in\": \"2026-07-01\",\n      \"check_out\": \"2026-07-05\",\n      \"lock_code\": null,\n      \"manually_moved\": false,\n      \"number_of_nights\": 4,\n      \"property_name\": \"Seaside Apartment\",\n      \"property_id\": 3391,\n      \"multi_unit_name\": null,\n      \"multi_unit_id\": null,\n      \"external_reservation_id\": \"HMABCDEFGH\",\n      \"stripe_customer_id\": \"cus_Qabc123XYZ\",\n      \"currency\": \"GBP\",\n      \"number_of_guests\": 2,\n      \"accommodation_total\": 480.0,\n      \"accommodation_with_commission\": 480.0,\n      \"cleaning_fee\": 45.0,\n      \"extra_guest_charges\": 0,\n      \"extra_charges\": 0,\n      \"discounts\": 0,\n      \"booking_taxes\": 24.0,\n      \"commission\": 72.0,\n      \"commission_vat\": 0,\n      \"other_charges\": 0,\n      \"total_payout\": 453.0,\n      \"cancellation_fee\": 0,\n      \"gross_revenue\": 549.0,\n      \"accommodation_management_fee\": 0,\n      \"cleaning_management_fee\": 0,\n      \"total_management_fee\": 0,\n      \"owner_payout\": 453.0,\n      \"payment_processing_fee\": 0,\n      \"net_revenue\": 453.0,\n      \"balance\": 0,\n      \"guest_price\": 549.0,\n      \"average_price_per_night\": 120.0,\n      \"subtotal\": 525.0,\n      \"host_edited\": false,\n      \"status\": \"confirmed\"\n    },\n    \"relationships\": {\n      \"booking_tax_items\": {\n        \"data\": [\n          {\n            \"id\": \"48210-tax-0\",\n            \"type\": \"booking_tax_items\"\n          }\n        ]\n      },\n      \"booking_discounts\": {\n        \"data\": []\n      },\n      \"booking_promotions\": {\n        \"data\": []\n      },\n      \"booking_upsells\": {\n        \"data\": [\n          {\n            \"id\": \"48210-upsell-771\",\n            \"type\": \"booking_upsells\"\n          }\n        ]\n      },\n      \"booking_adjustments\": {\n        \"data\": [\n          {\n            \"id\": \"48210-adjustment-902\",\n            \"type\": \"booking_adjustments\"\n          }\n        ]\n      },\n      \"booking_fees\": {\n        \"data\": [\n          {\n            \"id\": \"48210-fee-0\",\n            \"type\": \"booking_fees\"\n          }\n        ]\n      },\n      \"booking_charges\": {\n        \"data\": [\n          {\n            \"id\": \"48210-charge-0\",\n            \"type\": \"booking_charges\"\n          }\n        ]\n      },\n      \"booking_channel_fees\": {\n        \"data\": [\n          {\n            \"id\": \"48210-channel-fee-0\",\n            \"type\": \"booking_channel_fees\"\n          }\n        ]\n      },\n      \"booking_cancellation_details\": {\n        \"data\": []\n      },\n      \"booking_payments\": {\n        \"data\": [\n          {\n            \"id\": \"15501\",\n            \"type\": \"booking_payments\"\n          }\n        ]\n      },\n      \"booking_refunds\": {\n        \"data\": [\n          {\n            \"id\": \"6602\",\n            \"type\": \"booking_refunds\"\n          }\n        ]\n      },\n      \"security_deposit\": {\n        \"data\": {\n          \"id\": \"3301\",\n          \"type\": \"security_deposits\"\n        }\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"48210-tax-0\",\n      \"type\": \"booking_tax_items\",\n      \"attributes\": {\n        \"name\": \"VAT\",\n        \"amount\": 24.0\n      }\n    },\n    {\n      \"id\": \"48210-upsell-771\",\n      \"type\": \"booking_upsells\",\n      \"attributes\": {\n        \"name\": \"Early check-in\",\n        \"type\": \"upsell\",\n        \"amount\": 30.0\n      }\n    },\n    {\n      \"id\": \"48210-adjustment-902\",\n      \"type\": \"booking_adjustments\",\n      \"attributes\": {\n        \"type\": \"credit\",\n        \"note\": \"Compensation for late check-in\",\n        \"amount\": 25.0\n      }\n    },\n    {\n      \"id\": \"48210-fee-0\",\n      \"type\": \"booking_fees\",\n      \"attributes\": {\n        \"name\": \"Cleaning fee\",\n        \"type\": \"cleaning\",\n        \"amount\": 45.0\n      }\n    },\n    {\n      \"id\": \"48210-charge-0\",\n      \"type\": \"booking_charges\",\n      \"attributes\": {\n        \"name\": \"Accommodation\",\n        \"type\": \"accommodation\",\n        \"amount\": 480.0\n      }\n    },\n    {\n      \"id\": \"48210-channel-fee-0\",\n      \"type\": \"booking_channel_fees\",\n      \"attributes\": {\n        \"name\": \"Host service fee\",\n        \"type\": \"channel_host_fee\",\n        \"amount\": 72.0\n      }\n    },\n    {\n      \"id\": \"15501\",\n      \"type\": \"booking_payments\",\n      \"attributes\": {\n        \"currency\": \"GBP\",\n        \"status\": \"charged\",\n        \"amount\": 200.0,\n        \"due_at\": \"2026-06-30T10:00:00Z\"\n      }\n    },\n    {\n      \"id\": \"6602\",\n      \"type\": \"booking_refunds\",\n      \"attributes\": {\n        \"amount\": 50.0\n      }\n    },\n    {\n      \"id\": \"3301\",\n      \"type\": \"security_deposits\",\n      \"attributes\": {\n        \"status\": \"authorized\",\n        \"amount\": 250.0,\n        \"charged_at\": null,\n        \"expires_at\": \"2026-07-06T11:00:00Z\"\n      }\n    }\n  ]\n}"}],"_postman_id":"ae013082-a8c2-4e15-b9cc-55652a2e81a2"},{"name":"Create booking","id":"8a972b65-1459-41e2-aaa5-33c4c9ce9e3e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"attributes\": {\n      \"check_in\": \"2026-08-01\",\n      \"check_out\": \"2026-08-05\",\n      \"guest_name\": \"Jon Snow\",\n      \"guest_email\": \"jon.snow@example.com\",\n      \"guest_phone\": \"+441234567890\",\n      \"number_of_guests\": 2,\n      \"status\": \"confirmed\"\n    },\n    \"relationships\": {\n      \"property\": {\n        \"data\": {\n          \"id\": 123\n        }\n      }\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/bookings","description":"<p><strong>Required scope:</strong> <code>bookings:create</code></p>\n<p>Create a booking on a property (JSON:API). Returns <strong>201</strong>.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>data.attributes.check_in</code></td>\n<td>body</td>\n<td>date (YYYY-MM-DD)</td>\n<td>Yes</td>\n<td></td>\n</tr>\n<tr>\n<td><code>data.attributes.check_out</code></td>\n<td>body</td>\n<td>date (YYYY-MM-DD)</td>\n<td>Yes</td>\n<td></td>\n</tr>\n<tr>\n<td><code>data.attributes.guest_name</code></td>\n<td>body</td>\n<td>string</td>\n<td>No</td>\n<td></td>\n</tr>\n<tr>\n<td><code>data.attributes.guest_phone</code></td>\n<td>body</td>\n<td>string</td>\n<td>No</td>\n<td></td>\n</tr>\n<tr>\n<td><code>data.attributes.guest_email</code></td>\n<td>body</td>\n<td>string</td>\n<td>No</td>\n<td></td>\n</tr>\n<tr>\n<td><code>data.attributes.number_of_guests</code></td>\n<td>body</td>\n<td>integer</td>\n<td>No</td>\n<td></td>\n</tr>\n<tr>\n<td><code>data.attributes.status</code></td>\n<td>body</td>\n<td>string</td>\n<td>No</td>\n<td>Allowed: <code>pending</code>, <code>confirmed</code>. Defaults to <code>pending</code>.</td>\n</tr>\n<tr>\n<td><code>data.relationships.property.data.id</code></td>\n<td>body</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Target property ID.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["bookings"],"host":["https://connect.uplisting.io"],"query":[],"variable":[]}},"response":[{"id":"55140356-a25a-4f43-b1bd-51171d40f83d","name":"Create booking — 201 Created","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"attributes\": {\n      \"check_in\": \"2026-08-01\",\n      \"check_out\": \"2026-08-05\",\n      \"guest_name\": \"Jon Snow\",\n      \"guest_email\": \"jon.snow@example.com\",\n      \"guest_phone\": \"+441234567890\",\n      \"number_of_guests\": 2,\n      \"status\": \"confirmed\"\n    },\n    \"relationships\": {\n      \"property\": {\n        \"data\": {\n          \"id\": 123\n        }\n      }\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/bookings"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": {\n    \"id\": \"48211\",\n    \"type\": \"bookings\",\n    \"attributes\": {\n      \"slug\": \"f9e8d7c6-b5a4-4938-8271-6f5e4d3c2b1a\",\n      \"preferred_guest_name\": null,\n      \"guest_email\": \"jon.snow@example.com\",\n      \"guest_phone\": \"+441234567890\",\n      \"channel\": \"uplisting\",\n      \"source\": \"uplisting\",\n      \"note\": null,\n      \"direct\": false,\n      \"automated_messages_enabled\": true,\n      \"automated_reviews_enabled\": true,\n      \"guest_name\": \"Jon Snow\",\n      \"arrival_time\": \"\",\n      \"departure_time\": \"\",\n      \"booked_at\": \"2026-06-01T00:00:00Z\",\n      \"cancelled_dt\": null,\n      \"check_in\": \"2026-08-01\",\n      \"check_out\": \"2026-08-05\",\n      \"lock_code\": null,\n      \"manually_moved\": false,\n      \"number_of_nights\": 4,\n      \"property_name\": \"Seaside Apartment\",\n      \"property_id\": 3391,\n      \"multi_unit_name\": null,\n      \"multi_unit_id\": null,\n      \"external_reservation_id\": null,\n      \"stripe_customer_id\": null,\n      \"currency\": \"GBP\",\n      \"number_of_guests\": 2,\n      \"accommodation_total\": 480.0,\n      \"accommodation_with_commission\": 480.0,\n      \"cleaning_fee\": 45.0,\n      \"extra_guest_charges\": 0,\n      \"extra_charges\": 0,\n      \"discounts\": 0,\n      \"booking_taxes\": 0,\n      \"commission\": 0,\n      \"commission_vat\": 0,\n      \"other_charges\": 0,\n      \"total_payout\": 525.0,\n      \"cancellation_fee\": 0,\n      \"gross_revenue\": 525.0,\n      \"accommodation_management_fee\": 0,\n      \"cleaning_management_fee\": 0,\n      \"total_management_fee\": 0,\n      \"owner_payout\": 525.0,\n      \"payment_processing_fee\": 0,\n      \"net_revenue\": 525.0,\n      \"balance\": 0,\n      \"guest_price\": 525.0,\n      \"average_price_per_night\": 120.0,\n      \"subtotal\": 525.0,\n      \"host_edited\": false,\n      \"status\": \"confirmed\"\n    }\n  }\n}"}],"_postman_id":"8a972b65-1459-41e2-aaa5-33c4c9ce9e3e"},{"name":"Update booking","id":"bd9a23cc-9e55-4bf1-be66-1ec8442ee92c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"attributes\": {\n      \"number_of_guests\": 3,\n      \"note\": \"Late arrival\",\n      \"status\": \"confirmed\"\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/bookings/:id","description":"<p><strong>Required scope:</strong> <code>bookings:update</code></p>\n<p>Update an existing booking's attributes (JSON:API). Editable fields include <code>check_in</code>, <code>check_out</code>, <code>guest_name</code>, <code>guest_email</code>, <code>guest_phone</code>, <code>number_of_guests</code>, <code>status</code>, <code>note</code>. New dates must be available and status transitions must be valid.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Booking ID.</td>\n</tr>\n<tr>\n<td><code>data.attributes</code></td>\n<td>body</td>\n<td>object</td>\n<td>Yes</td>\n<td>Non-empty hash of fields to update.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["bookings",":id"],"host":["https://connect.uplisting.io"],"query":[],"variable":[{"type":"any","value":"","key":"id"}]}},"response":[{"id":"c3350ed9-3bd8-48c0-ad8d-ebbaf94d67de","name":"Update booking — 200 OK","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"attributes\": {\n      \"number_of_guests\": 3,\n      \"note\": \"Late arrival\",\n      \"status\": \"confirmed\"\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://connect.uplisting.io/bookings/:id","host":["https://connect.uplisting.io"],"path":["bookings",":id"],"variable":[{"key":"id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": {\n    \"id\": \"48210\",\n    \"type\": \"bookings\",\n    \"attributes\": {\n      \"slug\": \"a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d\",\n      \"preferred_guest_name\": null,\n      \"guest_email\": \"jon@example.com\",\n      \"guest_phone\": \"+447900000000\",\n      \"channel\": \"uplisting\",\n      \"source\": \"uplisting\",\n      \"note\": \"Updated note\",\n      \"direct\": false,\n      \"automated_messages_enabled\": true,\n      \"automated_reviews_enabled\": true,\n      \"guest_name\": \"Jon Snow\",\n      \"arrival_time\": \"\",\n      \"departure_time\": \"\",\n      \"booked_at\": \"2026-06-10T09:24:11Z\",\n      \"cancelled_dt\": null,\n      \"check_in\": \"2026-07-01\",\n      \"check_out\": \"2026-07-05\",\n      \"lock_code\": null,\n      \"manually_moved\": false,\n      \"number_of_nights\": 4,\n      \"property_name\": \"Seaside Apartment\",\n      \"property_id\": 3391,\n      \"multi_unit_name\": null,\n      \"multi_unit_id\": null,\n      \"external_reservation_id\": null,\n      \"stripe_customer_id\": null,\n      \"currency\": \"GBP\",\n      \"number_of_guests\": 3,\n      \"accommodation_total\": 480.0,\n      \"accommodation_with_commission\": 480.0,\n      \"cleaning_fee\": 45.0,\n      \"extra_guest_charges\": 0,\n      \"extra_charges\": 0,\n      \"discounts\": 0,\n      \"booking_taxes\": 0,\n      \"commission\": 0,\n      \"commission_vat\": 0,\n      \"other_charges\": 0,\n      \"total_payout\": 525.0,\n      \"cancellation_fee\": 0,\n      \"gross_revenue\": 525.0,\n      \"accommodation_management_fee\": 0,\n      \"cleaning_management_fee\": 0,\n      \"total_management_fee\": 0,\n      \"owner_payout\": 525.0,\n      \"payment_processing_fee\": 0,\n      \"net_revenue\": 525.0,\n      \"balance\": 0,\n      \"guest_price\": 525.0,\n      \"average_price_per_night\": 120.0,\n      \"subtotal\": 525.0,\n      \"host_edited\": false,\n      \"status\": \"confirmed\"\n    }\n  }\n}"}],"_postman_id":"bd9a23cc-9e55-4bf1-be66-1ec8442ee92c"},{"name":"Cancel booking","id":"c02a4c4d-d29a-416c-9a0c-2bd4d8f1e686","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/bookings/:id/cancellation","description":"<p><strong>Required scope:</strong> <code>bookings:update</code></p>\n<p>Cancel a booking. No request body.</p>\n<p>Note: Cancelling a booking does not automatically issue a refund to the guest. It only changes the booking's status to cancelled. Any refund must be handled separately.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Booking ID.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["bookings",":id","cancellation"],"host":["https://connect.uplisting.io"],"query":[],"variable":[{"type":"any","value":"","key":"id"}]}},"response":[{"id":"0021f950-fe70-4035-9e9e-32f6fdd680f6","name":"Cancel booking — 200 OK","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://connect.uplisting.io/bookings/:id/cancellation","host":["https://connect.uplisting.io"],"path":["bookings",":id","cancellation"],"variable":[{"key":"id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": {\n    \"id\": \"48210\",\n    \"type\": \"bookings\",\n    \"attributes\": {\n      \"slug\": \"a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d\",\n      \"preferred_guest_name\": null,\n      \"guest_email\": \"jon@example.com\",\n      \"guest_phone\": null,\n      \"channel\": \"uplisting\",\n      \"source\": \"uplisting\",\n      \"note\": null,\n      \"direct\": false,\n      \"automated_messages_enabled\": true,\n      \"automated_reviews_enabled\": true,\n      \"guest_name\": \"Jon Snow\",\n      \"arrival_time\": \"\",\n      \"departure_time\": \"\",\n      \"booked_at\": \"2026-06-10T09:24:11Z\",\n      \"cancelled_dt\": \"2026-06-15T12:00:00Z\",\n      \"check_in\": \"2026-07-01\",\n      \"check_out\": \"2026-07-05\",\n      \"lock_code\": null,\n      \"manually_moved\": false,\n      \"number_of_nights\": 4,\n      \"property_name\": \"Seaside Apartment\",\n      \"property_id\": 3391,\n      \"multi_unit_name\": null,\n      \"multi_unit_id\": null,\n      \"external_reservation_id\": null,\n      \"stripe_customer_id\": null,\n      \"currency\": \"GBP\",\n      \"number_of_guests\": 2,\n      \"accommodation_total\": 480.0,\n      \"accommodation_with_commission\": 480.0,\n      \"cleaning_fee\": 45.0,\n      \"extra_guest_charges\": 0,\n      \"extra_charges\": 0,\n      \"discounts\": 0,\n      \"booking_taxes\": 0,\n      \"commission\": 0,\n      \"commission_vat\": 0,\n      \"other_charges\": 0,\n      \"total_payout\": 0,\n      \"cancellation_fee\": 0,\n      \"gross_revenue\": 525.0,\n      \"accommodation_management_fee\": 0,\n      \"cleaning_management_fee\": 0,\n      \"total_management_fee\": 0,\n      \"owner_payout\": 0,\n      \"payment_processing_fee\": 0,\n      \"net_revenue\": 0,\n      \"balance\": 0,\n      \"guest_price\": 525.0,\n      \"average_price_per_night\": 120.0,\n      \"subtotal\": 525.0,\n      \"host_edited\": false,\n      \"status\": \"cancelled\"\n    }\n  }\n}"}],"_postman_id":"c02a4c4d-d29a-416c-9a0c-2bd4d8f1e686"},{"name":"Get quote","id":"d1e560a9-f585-43d0-a20c-78c661ad00f5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/quotes?property_id=123&check_in=2026-08-01&check_out=2026-08-05&number_of_guests=2","description":"<p><strong>Required scope:</strong> <code>bookings:create</code></p>\n<p>Generate a price quote for a prospective stay.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>property_id</code></td>\n<td>query</td>\n<td>integer</td>\n<td>Yes</td>\n<td></td>\n</tr>\n<tr>\n<td><code>check_in</code></td>\n<td>query</td>\n<td>date (YYYY-MM-DD)</td>\n<td>Yes</td>\n<td></td>\n</tr>\n<tr>\n<td><code>check_out</code></td>\n<td>query</td>\n<td>date (YYYY-MM-DD)</td>\n<td>Yes</td>\n<td></td>\n</tr>\n<tr>\n<td><code>number_of_guests</code></td>\n<td>query</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Must be greater than 0.</td>\n</tr>\n<tr>\n<td><code>promotion_code</code></td>\n<td>query</td>\n<td>string</td>\n<td>No</td>\n<td>Optional promotion code to apply.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["quotes"],"host":["https://connect.uplisting.io"],"query":[{"key":"property_id","value":"123"},{"key":"check_in","value":"2026-08-01"},{"key":"check_out","value":"2026-08-05"},{"key":"number_of_guests","value":"2"},{"disabled":true,"key":"promotion_code","value":""}],"variable":[]}},"response":[{"id":"61494cb7-7c62-428d-8f0d-e756f2ea5805","name":"Get quote — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://connect.uplisting.io/quotes?property_id=123&check_in=2026-08-01&check_out=2026-08-05&number_of_guests=2","host":["https://connect.uplisting.io"],"path":["quotes"],"query":[{"key":"property_id","value":"123"},{"key":"check_in","value":"2026-08-01"},{"key":"check_out","value":"2026-08-05"},{"key":"number_of_guests","value":"2"},{"key":"promotion_code","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": {\n    \"id\": \"5f3a1c9e-2b7d-4e6a-9f8c-1d0e2b3a4c5d\",\n    \"type\": \"quotes\",\n    \"attributes\": {\n      \"property_id\": 3391,\n      \"check_in\": \"2026-08-01\",\n      \"check_out\": \"2026-08-06\",\n      \"number_of_nights\": 5,\n      \"number_of_guests\": 2,\n      \"currency\": \"GBP\",\n      \"has_promotions\": false,\n      \"promotion_code_invalid\": false,\n      \"security_deposit\": {\n        \"amount\": 0.0,\n        \"waiver_amount\": 0.0\n      },\n      \"nightly_rates\": [\n        {\n          \"date\": \"2026-08-01\",\n          \"amount\": 120.0\n        },\n        {\n          \"date\": \"2026-08-02\",\n          \"amount\": 120.0\n        },\n        {\n          \"date\": \"2026-08-03\",\n          \"amount\": 120.0\n        },\n        {\n          \"date\": \"2026-08-04\",\n          \"amount\": 120.0\n        },\n        {\n          \"date\": \"2026-08-05\",\n          \"amount\": 120.0\n        }\n      ],\n      \"average_price_per_night\": 120.0,\n      \"cleaning_fee\": 45.0,\n      \"extra_guest_charge\": 0,\n      \"accommodation_total\": 600.0,\n      \"total\": 645.0\n    },\n    \"relationships\": {\n      \"booking_tax_items\": {\n        \"data\": []\n      },\n      \"booking_fees\": {\n        \"data\": [\n          {\n            \"id\": \"5f3a1c9e-2b7d-4e6a-9f8c-1d0e2b3a4c5d-fee-0\",\n            \"type\": \"booking_fees\"\n          }\n        ]\n      },\n      \"booking_charges\": {\n        \"data\": [\n          {\n            \"id\": \"5f3a1c9e-2b7d-4e6a-9f8c-1d0e2b3a4c5d-charge-0\",\n            \"type\": \"booking_charges\"\n          }\n        ]\n      },\n      \"booking_discounts\": {\n        \"data\": []\n      },\n      \"booking_promotions\": {\n        \"data\": []\n      }\n    }\n  }\n}"}],"_postman_id":"d1e560a9-f585-43d0-a20c-78c661ad00f5"},{"name":"Approve/decline booking request","id":"358d3501-f54d-4b85-a922-3c215f85a3c8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"attributes\": {\n      \"status\": \"approved\",\n      \"reason\": null,\n      \"message\": \"See you soon!\"\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/booking_requests/:id","description":"<p><strong>Required scope:</strong> <code>bookings:update</code></p>\n<p>Approve or decline a pending booking request.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Booking request ID.</td>\n</tr>\n<tr>\n<td><code>data.attributes.status</code></td>\n<td>body</td>\n<td>string</td>\n<td>Yes</td>\n<td>Allowed: <code>approved</code>, <code>rejected</code>.</td>\n</tr>\n<tr>\n<td><code>data.attributes.reason</code></td>\n<td>body</td>\n<td>string</td>\n<td>No</td>\n<td>Optional decline reason.</td>\n</tr>\n<tr>\n<td><code>data.attributes.message</code></td>\n<td>body</td>\n<td>string</td>\n<td>No</td>\n<td>Optional message to the guest.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["booking_requests",":id"],"host":["https://connect.uplisting.io"],"query":[],"variable":[{"type":"any","key":"id"}]}},"response":[{"id":"bc8de381-3cbf-41d1-9c1d-6d574c798cd0","name":"Approve/decline booking request — 200 OK","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"attributes\": {\n      \"status\": \"approved\",\n      \"reason\": null,\n      \"message\": \"See you soon!\"\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://connect.uplisting.io/booking_requests/:id","host":["https://connect.uplisting.io"],"path":["booking_requests",":id"],"variable":[{"key":"id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": {\n    \"id\": \"7742\",\n    \"type\": \"booking_requests\",\n    \"attributes\": {\n      \"channel\": \"uplisting\",\n      \"status\": \"approved\",\n      \"slug\": \"c1d2e3f4-a5b6-4778-89ab-cdef01234567\",\n      \"guest_name\": \"Jon Snow\",\n      \"guest_email\": \"jon@example.com\",\n      \"guest_phone\": null,\n      \"number_of_guests\": 2,\n      \"rejection_reason\": null,\n      \"rejection_message\": null,\n      \"check_in\": \"2026-07-01\",\n      \"check_out\": \"2026-07-05\",\n      \"number_of_nights\": 4,\n      \"property_id\": 3391,\n      \"multi_unit_id\": 812,\n      \"booking_id\": 48212,\n      \"created_at\": \"2026-06-12T08:15:00Z\",\n      \"expires_at\": \"2026-06-13T08:15:00Z\",\n      \"external_reservation_id\": null\n    }\n  }\n}"}],"_postman_id":"358d3501-f54d-4b85-a922-3c215f85a3c8"}],"id":"d4495d96-80d1-4ed6-abde-a25ad659a1de","_postman_id":"d4495d96-80d1-4ed6-abde-a25ad659a1de","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}}},{"name":"Custom booking attributes","item":[{"name":"List custom booking attributes","id":"c67a8569-c851-45fd-a654-09b0b6563fca","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/custom_booking_attributes","description":"<p><strong>Required scope:</strong> <code>custom_booking_attributes:read</code></p>\n<p>List the custom booking attributes defined for your partner integration. No parameters.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["custom_booking_attributes"],"host":["https://connect.uplisting.io"],"query":[],"variable":[]}},"response":[{"id":"0e1efb37-834a-40fa-a81d-d88924ee8f84","name":"List custom booking attributes — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/custom_booking_attributes"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": [\n    {\n      \"id\": \"3001\",\n      \"type\": \"custom_booking_attributes\",\n      \"attributes\": {\n        \"name\": \"acme_lock_code\",\n        \"description\": \"Lock code\",\n        \"created_at\": \"2026-06-15T12:00:00Z\",\n        \"updated_at\": \"2026-06-15T12:00:00Z\"\n      }\n    },\n    {\n      \"id\": \"3002\",\n      \"type\": \"custom_booking_attributes\",\n      \"attributes\": {\n        \"name\": \"acme_client_status\",\n        \"description\": \"Client status\",\n        \"created_at\": \"2026-06-15T12:00:00Z\",\n        \"updated_at\": \"2026-06-15T12:00:00Z\"\n      }\n    }\n  ],\n  \"meta\": {\n    \"cursor\": null,\n    \"has_more\": false,\n    \"total_count\": 2\n  }\n}"}],"_postman_id":"c67a8569-c851-45fd-a654-09b0b6563fca"},{"name":"Create custom booking attribute","id":"ac8b3f72-bbaf-4b16-8f27-e5613ec31197","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"attributes\": {\n      \"name\": \"acme_channel_ref\",\n      \"description\": \"Partner channel reference\"\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/custom_booking_attributes","description":"<p><strong>Required scope:</strong> <code>custom_booking_attributes:write</code></p>\n<p>Create a custom booking attribute. Returns <strong>201</strong>.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>data.attributes.name</code></td>\n<td>body</td>\n<td>string</td>\n<td>Yes</td>\n<td>snake_case; must start with your partner prefix. Max 15 attributes per account.</td>\n</tr>\n<tr>\n<td><code>data.attributes.description</code></td>\n<td>body</td>\n<td>string</td>\n<td>Yes</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["custom_booking_attributes"],"host":["https://connect.uplisting.io"],"query":[],"variable":[]}},"response":[{"id":"8830875e-9a53-49aa-b66b-90c3ef7e0c6a","name":"Create custom booking attribute — 201 Created","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"attributes\": {\n      \"name\": \"acme_channel_ref\",\n      \"description\": \"Partner channel reference\"\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/custom_booking_attributes"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": {\n    \"id\": \"3003\",\n    \"type\": \"custom_booking_attributes\",\n    \"attributes\": {\n      \"name\": \"acme_channel_ref\",\n      \"description\": \"Partner channel reference\",\n      \"created_at\": \"2026-06-15T12:00:00Z\",\n      \"updated_at\": \"2026-06-15T12:00:00Z\"\n    }\n  }\n}"}],"_postman_id":"ac8b3f72-bbaf-4b16-8f27-e5613ec31197"}],"id":"385c803c-b402-4d34-9013-d2ee89a3f28e","_postman_id":"385c803c-b402-4d34-9013-d2ee89a3f28e","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}}},{"name":"Reviews","item":[{"name":"List reviews","id":"79688d76-1489-4bf2-9063-0c13a02a265e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/reviews/:property_id","description":"<p><strong>Required scope:</strong> <code>reviews:read</code></p>\n<p>List reviews for a property (cursor-paginated).</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>property_id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Property ID.</td>\n</tr>\n<tr>\n<td><code>limit</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Page size for cursor pagination.</td>\n</tr>\n<tr>\n<td><code>cursor</code></td>\n<td>query</td>\n<td>string</td>\n<td>No</td>\n<td>Opaque cursor from the previous page's <code>meta</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["reviews",":property_id"],"host":["https://connect.uplisting.io"],"query":[{"disabled":true,"key":"limit","value":"50"},{"disabled":true,"key":"cursor","value":""}],"variable":[{"type":"any","key":"property_id"}]}},"response":[{"id":"e5209d20-d47c-439a-8eea-05857833d919","name":"List reviews — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://connect.uplisting.io/reviews/:property_id","host":["https://connect.uplisting.io"],"path":["reviews",":property_id"],"query":[{"key":"limit","value":"50","disabled":true},{"key":"cursor","value":"","disabled":true}],"variable":[{"key":"property_id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": [\n    {\n      \"id\": \"90\",\n      \"type\": \"reviews\",\n      \"attributes\": {\n        \"confirmation_code\": \"HMABCDEFGH\",\n        \"reviewer_name\": \"Jane Guest\",\n        \"reviewer_id\": 555,\n        \"reviewer_role\": \"guest\",\n        \"property_id\": 501,\n        \"airbnb_listing_id\": 111,\n        \"overall_rating\": 4,\n        \"category_ratings\": [\n          {\n            \"rating\": 5,\n            \"category\": \"cleanliness\",\n            \"review_category_tags\": []\n          },\n          {\n            \"rating\": 4,\n            \"category\": \"accuracy\",\n            \"review_category_tags\": []\n          },\n          {\n            \"rating\": 3,\n            \"category\": \"checkin\",\n            \"review_category_tags\": []\n          }\n        ],\n        \"airbnb_review_id\": 90,\n        \"review_text\": \"Wonderful stay, would book again.\",\n        \"review_date\": \"2026-06-15T12:00:00Z\"\n      }\n    }\n  ],\n  \"meta\": {\n    \"cursor\": null,\n    \"has_more\": false,\n    \"total_count\": 1\n  }\n}"}],"_postman_id":"79688d76-1489-4bf2-9063-0c13a02a265e"}],"id":"94bc4753-9397-420b-be15-9325bc2067a3","_postman_id":"94bc4753-9397-420b-be15-9325bc2067a3","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}}},{"name":"Messaging","item":[{"name":"List threads","id":"4df856ac-c4b2-4804-9d4c-ef7678bcd3eb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/threads","description":"<p><strong>Required scope:</strong> <code>messaging:read</code></p>\n<p>List message threads (cursor-paginated). All filters are optional. The <code>channel</code> field is one of: <code>sms</code>, <code>email</code>, <code>airbnb</code>, <code>booking_dot_com</code>, <code>home_away</code>.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>booking_id</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Filter by booking.</td>\n</tr>\n<tr>\n<td><code>booking_request_id</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Filter by booking request.</td>\n</tr>\n<tr>\n<td><code>enquiry_id</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Filter by enquiry.</td>\n</tr>\n<tr>\n<td><code>property_id</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Filter by property.</td>\n</tr>\n<tr>\n<td><code>guest_id</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Filter by guest.</td>\n</tr>\n<tr>\n<td><code>limit</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Page size for cursor pagination.</td>\n</tr>\n<tr>\n<td><code>cursor</code></td>\n<td>query</td>\n<td>string</td>\n<td>No</td>\n<td>Opaque cursor from the previous page's <code>meta</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["threads"],"host":["https://connect.uplisting.io"],"query":[{"disabled":true,"key":"booking_id","value":""},{"disabled":true,"key":"booking_request_id","value":""},{"disabled":true,"key":"enquiry_id","value":""},{"disabled":true,"key":"property_id","value":""},{"disabled":true,"key":"guest_id","value":""},{"disabled":true,"key":"limit","value":"50"},{"disabled":true,"key":"cursor","value":""}],"variable":[]}},"response":[{"id":"909ec7ce-5d1e-4557-a10f-ac6776e2882f","name":"List threads — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://connect.uplisting.io/threads","host":["https://connect.uplisting.io"],"path":["threads"],"query":[{"key":"booking_id","value":"","disabled":true},{"key":"booking_request_id","value":"","disabled":true},{"key":"enquiry_id","value":"","disabled":true},{"key":"property_id","value":"","disabled":true},{"key":"guest_id","value":"","disabled":true},{"key":"limit","value":"50","disabled":true},{"key":"cursor","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": [\n    {\n      \"id\": \"7003\",\n      \"type\": \"threads\",\n      \"attributes\": {\n        \"channel\": \"sms\",\n        \"unread\": true,\n        \"content\": \"Hello there\",\n        \"last_message_at\": \"2026-06-14T09:00:00Z\"\n      },\n      \"relationships\": {\n        \"booking\": {\n          \"data\": null\n        },\n        \"booking_request\": {\n          \"data\": null\n        },\n        \"enquiry\": {\n          \"data\": {\n            \"type\": \"enquiries\",\n            \"id\": \"8003\"\n          }\n        },\n        \"property\": {\n          \"data\": {\n            \"type\": \"properties\",\n            \"id\": \"501\"\n          }\n        }\n      }\n    },\n    {\n      \"id\": \"7001\",\n      \"type\": \"threads\",\n      \"attributes\": {\n        \"channel\": \"airbnb\",\n        \"unread\": true,\n        \"content\": \"What time is check-in?\",\n        \"last_message_at\": \"2026-06-10T09:00:00Z\"\n      },\n      \"relationships\": {\n        \"booking\": {\n          \"data\": {\n            \"type\": \"bookings\",\n            \"id\": \"8001\"\n          }\n        },\n        \"booking_request\": {\n          \"data\": null\n        },\n        \"enquiry\": {\n          \"data\": null\n        },\n        \"property\": {\n          \"data\": {\n            \"type\": \"properties\",\n            \"id\": \"501\"\n          }\n        }\n      }\n    }\n  ],\n  \"meta\": {\n    \"cursor\": null,\n    \"has_more\": false,\n    \"total_count\": 2,\n    \"unread_count\": 2\n  }\n}"}],"_postman_id":"4df856ac-c4b2-4804-9d4c-ef7678bcd3eb"},{"name":"Get thread messages","id":"93db7213-8542-4d2a-8893-55f2ec35053e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/threads/:id/messages","description":"<p><strong>Required scope:</strong> <code>messaging:read</code></p>\n<p>List messages in a thread (cursor-paginated). The <code>channel</code> field is one of: <code>sms</code>, <code>email</code>, <code>airbnb</code>, <code>booking_dot_com</code>, <code>home_away</code>.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Thread ID.</td>\n</tr>\n<tr>\n<td><code>limit</code></td>\n<td>query</td>\n<td>integer</td>\n<td>No</td>\n<td>Page size for cursor pagination.</td>\n</tr>\n<tr>\n<td><code>cursor</code></td>\n<td>query</td>\n<td>string</td>\n<td>No</td>\n<td>Opaque cursor from the previous page's <code>meta</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["threads",":id","messages"],"host":["https://connect.uplisting.io"],"query":[{"disabled":true,"key":"limit","value":"50"},{"disabled":true,"key":"cursor","value":""}],"variable":[{"type":"any","key":"id"}]}},"response":[{"id":"ff423904-b169-4ae3-8415-078268599238","name":"Get thread messages — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://connect.uplisting.io/threads/:id/messages","host":["https://connect.uplisting.io"],"path":["threads",":id","messages"],"query":[{"key":"limit","value":"50","disabled":true},{"key":"cursor","value":"","disabled":true}],"variable":[{"key":"id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": [\n    {\n      \"id\": \"9003\",\n      \"type\": \"messages\",\n      \"attributes\": {\n        \"body\": \"Check-in is from 3pm.\",\n        \"channel\": \"airbnb\",\n        \"direction\": \"outbound\",\n        \"sender_reference_id\": \"+447700900123\",\n        \"status\": \"delivered\",\n        \"failure_reason\": null,\n        \"translated_body\": null,\n        \"language\": \"en\",\n        \"timestamp\": \"2026-06-13T10:00:00Z\"\n      }\n    },\n    {\n      \"id\": \"9001\",\n      \"type\": \"messages\",\n      \"attributes\": {\n        \"body\": \"What time is check-in?\",\n        \"channel\": \"airbnb\",\n        \"direction\": \"inbound\",\n        \"sender_reference_id\": null,\n        \"status\": null,\n        \"failure_reason\": null,\n        \"translated_body\": null,\n        \"language\": null,\n        \"timestamp\": \"2026-06-13T08:00:00Z\"\n      }\n    }\n  ],\n  \"meta\": {\n    \"cursor\": null,\n    \"has_more\": false,\n    \"total_count\": 2\n  }\n}"}],"_postman_id":"93db7213-8542-4d2a-8893-55f2ec35053e"},{"name":"Send message","id":"2abb57da-3360-4a8b-8ed3-12f79102904e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"type\": \"messages\",\n    \"attributes\": {\n      \"channel\": \"airbnb\",\n      \"body\": \"Hi! Your check-in details are\\u2026\"\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":"https://connect.uplisting.io/threads/:id/messages","description":"<p><strong>Required scope:</strong> <code>messaging:write</code></p>\n<p>Send a message on a thread. Returns <strong>201</strong>.</p>\n<p><strong>Parameters</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>In</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>path</td>\n<td>integer</td>\n<td>Yes</td>\n<td>Thread ID.</td>\n</tr>\n<tr>\n<td><code>data.type</code></td>\n<td>body</td>\n<td>string</td>\n<td>No</td>\n<td>If present, must equal <code>\"messages\"</code>.</td>\n</tr>\n<tr>\n<td><code>data.attributes.channel</code></td>\n<td>body</td>\n<td>string</td>\n<td>Yes</td>\n<td>Allowed: <code>sms</code>, <code>email</code>, <code>airbnb</code>, <code>booking_dot_com</code>, <code>home_away</code>. Must be enabled for the thread.</td>\n</tr>\n<tr>\n<td><code>data.attributes.body</code></td>\n<td>body</td>\n<td>string</td>\n<td>Yes</td>\n<td>Message text. SMS is length-limited.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["threads",":id","messages"],"host":["https://connect.uplisting.io"],"query":[],"variable":[{"type":"any","key":"id"}]}},"response":[{"id":"107a422f-4ca5-4371-871f-d23492e83172","name":"Send message — 201 Created","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"data\": {\n    \"type\": \"messages\",\n    \"attributes\": {\n      \"channel\": \"airbnb\",\n      \"body\": \"Hi! Your check-in details are\\u2026\"\n    }\n  }\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://connect.uplisting.io/threads/:id/messages","host":["https://connect.uplisting.io"],"path":["threads",":id","messages"],"variable":[{"key":"id"}]}},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"data\": {\n    \"id\": \"4242\",\n    \"type\": \"messages\",\n    \"attributes\": {\n      \"body\": \"Hi! Your check-in details are\\u2026\",\n      \"channel\": \"airbnb\",\n      \"direction\": \"outbound\",\n      \"sender_reference_id\": null,\n      \"status\": \"sent\",\n      \"failure_reason\": null,\n      \"translated_body\": null,\n      \"language\": null,\n      \"timestamp\": \"2026-06-15T12:00:00Z\"\n    }\n  }\n}"}],"_postman_id":"2abb57da-3360-4a8b-8ed3-12f79102904e"}],"id":"5e2fc251-e379-4cbb-bceb-ad900b0b89a2","_postman_id":"5e2fc251-e379-4cbb-bceb-ad900b0b89a2","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}}},{"name":"Utility","item":[{"name":"Ping (verify token)","id":"55cc130a-d4a9-4f3c-ac43-c80da7aeb358","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/ping","description":"<p>Authentication-only health check. Returns your user name, email and account id — use it to confirm <code></code> is valid. No parameters.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"status\": \"pong\",\n  \"user\": \"Jane Doe\",\n  \"email\": \"jane@example.com\",\n  \"account_id\": 42\n}\n</code></pre>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}},"urlObject":{"path":["ping"],"host":["https://connect.uplisting.io"],"query":[],"variable":[]}},"response":[{"id":"cd008fea-2f86-465f-8d66-6b57ebc13f14","name":"Ping (verify token) — 200 OK","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/ping"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"status\": \"pong\",\n  \"user\": \"Jane Host\",\n  \"email\": \"jane.host@example.com\",\n  \"account_id\": 1001\n}"}],"_postman_id":"55cc130a-d4a9-4f3c-ac43-c80da7aeb358"}],"id":"fa069b0a-665b-44a6-8931-fe4a0d9bff4f","_postman_id":"fa069b0a-665b-44a6-8931-fe4a0d9bff4f","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}}}],"id":"700c28ce-3b59-4a3e-9c95-d0a194541680","_postman_id":"700c28ce-3b59-4a3e-9c95-d0a194541680","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","name":"OAuth API","type":"folder"}}}],"id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb","description":"<h1 id=\"oauth-api\">OAuth API</h1>\n<p>The <strong>OAuth API</strong> is Uplisting's modern partner API. Unlike the legacy public API (which uses a Base64-encoded API key in a <code>Basic</code> <code>Authorization</code> header), every request here is authenticated with an <strong>OAuth 2.0 bearer JWT</strong> issued by the Uplisting authorization server (<code>https://auth.airdna.co</code>).</p>\n<h2 id=\"getting-started\">Getting started</h2>\n<ol>\n<li><p>Use the requests in <strong>Authentication</strong> to obtain an <code>access_token</code> via the Authorization Code + PKCE flow. The token-exchange request automatically stores the token in the <code></code> collection variable.</p>\n</li>\n<li><p>Every request under <strong>Endpoints</strong> inherits <code>Authorization: Bearer </code> from this folder.</p>\n</li>\n<li><p>Call <code>GET https://connect.uplisting.io/ping</code> to confirm your token works.</p>\n</li>\n</ol>\n<h2 id=\"scopes\">Scopes</h2>\n<p>Each endpoint requires one or more OAuth scopes, granted at authorization time via the <code>scope</code> parameter. The required scope is documented on every request. Available scopes: <code>offline_access</code>, <code>properties:read</code>, <code>properties:write</code>, <code>bookings:read</code>, <code>bookings:create</code>, <code>bookings:update</code>, <code>calendar:read</code>, <code>calendar:write</code>, <code>reviews:read</code>, <code>custom_booking_attributes:read</code>, <code>custom_booking_attributes:write</code>, <code>messaging:read</code>, <code>messaging:write</code>.</p>\n<h2 id=\"error-responses\">Error responses</h2>\n<p>Errors use a consistent JSON:API-style envelope:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"errors\": [\n    {\n      \"status\": \"400\",\n      \"code\": \"VALIDATION_ERROR\",\n      \"title\": \"The request was invalid\",\n      \"detail\": \"check_out must be after check_in\",\n      \"source\": { \"pointer\": \"/check_out\" }\n    }\n  ],\n  \"meta\": { \"request_id\": \"…\", \"retryable\": false }\n}\n\n</code></pre>\n<p>Codes: <code>VALIDATION_ERROR</code> (400/422), <code>UNAUTHORIZED</code> (401), <code>FORBIDDEN</code> (403 — missing scope/permission), <code>NOT_FOUND</code> (404), <code>CONFLICT</code> (409), <code>RATE_LIMITED</code> (429), <code>INTERNAL_ERROR</code> (500). <code>meta.retryable</code> indicates whether retrying may succeed.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"_postman_id":"7bbb9627-9a46-46a8-ad6e-04edd4e82feb"},{"name":"Verify API key","id":"8d1c70ea-132f-4a5a-a429-fba2c1b7908d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Basic NDA3Y2U5NTktOTI1MS00ZWM2LTkxMjQtZjFjOWFmZDBjYWYy","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/users/me","description":"<p>Initially, you need to verify that your API key is correct and that you are using the correct authentication header.<br />To do so, <code>GET</code> the following URL: <a href=\"https://connect.uplisting.io/users/me\">https://connect.uplisting.io/users/me</a> with an authorisation header that is your <strong>API key encoded with Base64</strong> with application/json content-type.</p>\n<p>For example, in Ruby, these are the headers you need to pass.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>Hash[\"HTTP_AUTHORIZATION\" =&gt; \"Basic #{Base64.encode64(api_key)}\", \"CONTENT_TYPE\" =&gt; \"application/json\"]\n\n</code></pre><p>If successful, you should get back the name of your account and a unique ID for the user.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n    \"name\": \"Uplisting\",\n    \"uid\": \"7005ddf20990ceaac970415da5eb86cd29c4c7323f527c66f18978f8e36edd7a\"\n}\n\n</code></pre><p>This proves that you have the correct authorisation header, which should be used for all future communication.</p>\n<p>If you receive an error that states \"Your API key does not appear to be valid\" please first check you have Base64 encoded the key. Otherwise please reach out to <a href=\"https://mailto:partner@uplisting.io\">partner@uplisting.io</a> for further assistance including the email address of the Account owner.</p>\n","urlObject":{"protocol":"https","path":["users","me"],"host":["connect","uplisting","io"],"query":[],"variable":[]}},"response":[{"id":"bea645c6-d3a9-4339-85c8-02cf3a4d7372","name":"Verify API key","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Basic MAIwZ44FFQ0YjEtMTRmZS00MmJhLTg1OGEtNmM4MDBmNjBlMTNi","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://connect.uplisting.io/users/me"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Cowboy"},{"key":"Date","value":"Tue, 09 Jun 2020 22:54:16 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"DENY"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Xss-Protection","value":"1; mode=block"},{"key":"Content-Security-Policy","value":"form-action 'self'; frame-ancestors 'self'; base-uri 'self'; default-src 'none'; script-src 'self'; connect-src 'self'; img-src 'self' https: data:; style-src 'self' 'unsafe-inline' https:; font-src 'self'; object-src 'none'; plugin-types application/pdf; child-src 'self'; frame-src 'self'; media-src 'self'"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Vary","value":"Origin"},{"key":"Content-Length","value":"15"},{"key":"Via","value":"1.1 vegur"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"Uplisting\",\n    \"uid\": \"7005ddf20990ceaac970415da5eb86cd29c4c7323f527c66f18978f8e36edd7a\"\n}"}],"_postman_id":"8d1c70ea-132f-4a5a-a429-fba2c1b7908d"},{"name":"Properties","id":"fb8b9c76-ddd4-4bc5-bd91-05394a03fd51","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Basic YzhlZGU3NDctNDUzNi00MGVmLWJkYWMtMzZjZjVlMGQxZDVk","description":"<p>Base64 encoded API key</p>\n","type":"text"}],"url":"https://connect.uplisting.io/properties","description":"<p><strong>Retrieving details for all properties</strong></p>\n<p>To retrieve the details for all properties on an Uplisting account, you should send a GET request to the endpoint above.</p>\n<p>The payload will be a list of properties for the partner account in JSON API format. It will also include the property address, photos, multi-units, fees, taxes, discounts, suitabilities and amenities in the included data.</p>\n<p><strong>For a full example of the JSON response, see the property endpoint. This endpoint will return an array of properties with the same format as a single property</strong></p>\n<p>For more info on JSON API format, visit <a href=\"https://jsonapi.org\">https://jsonapi.org</a>.</p>\n<h2 id=\"relationships\">Relationships</h2>\n<p>Properties have relationships which include address, photos, multi-units, fees, taxes, discounts, suitabilities, policies, channel commissions and amenities types. Each individual relationship references the relevant resource in the included section of the API response, per the JSON API format.</p>\n<h3 id=\"addresses\">Addresses</h3>\n<p>Our example property's address relationship is provided as follows:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"address\": {\n  \"data\": {\n    \"id\": \"15111\",\n    \"type\": \"addresses\"\n  }\n}\n\n</code></pre><p>And the included data has the relevant address.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"id\": \"15111\",\n  \"type\": \"addresses\",\n  \"attributes\": {\n   \"street\": \"3503 B Street\",\n   \"suite\": null,\n   \"city\": \"Philadelphia\",\n   \"state\": \"PA\",\n   \"zip_code\": \"19134\",\n   \"country\": \"United States\",\n   \"latitude\": 40.003384,\n   \"longitude\": -75.123993\n  }\n},\n\n</code></pre><h3 id=\"channel-commissions\">Channel commissions</h3>\n<p>Our example of channel commissions relationship is provided as follows:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"channel_commissions\": {\n  \"data\": [\n    {\n        \"id\": \"7775\",\n      \"type\": \"channel_commissions\"\n    },\n    {\n      \"id\": \"7776\",\n      \"type\": \"channel_commissions\"\n    },\n    {\n      \"id\": \"7777\",\n      \"type\": \"channel_commissions\"\n    },\n    {\n      \"id\": \"7778\",\n      \"type\": \"channel_commissions\"\n    },\n    {\n      \"id\": \"7779\",\n      \"type\": \"channel_commissions\"\n    }\n  ]\n}\n\n</code></pre><p>And the included data has the relevant channel commissions.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>[\n  {\n    \"id\": \"7775\",\n    \"type\": \"channel_commissions\",\n    \"attributes\": {\n      \"channel\": \"airbnb_official\",\n      \"amount\": 18.34\n    }\n  },\n  {\n    \"id\": \"7776\",\n    \"type\": \"channel_commissions\",\n    \"attributes\": {\n      \"channel\": \"booking_dot_com\",\n      \"amount\": 15.0\n    }\n  },\n  {\n    \"id\": \"7777\",\n    \"type\": \"channel_commissions\",\n    \"attributes\": {\n      \"channel\": \"home_away\",\n      \"amount\": 8.0\n    }\n  },\n  {\n    \"id\": \"7778\",\n    \"type\": \"channel_commissions\",\n    \"attributes\": {\n      \"channel\": \"google\",\n      \"amount\": 6.0\n    }\n  },\n  {\n    \"id\": \"7779\",\n    \"type\": \"channel_commissions\",\n    \"attributes\": {\n      \"channel\": \"direct\",\n      \"amount\": 0.0\n    }\n  }\n]\n\n</code></pre><h3 id=\"photos\">Photos</h3>\n<p>For example our a property's photo relationship is provided as follows:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"photos\": {\n   \"data\": [\n     {\n       \"id\": \"159361\",\n       \"type\": \"photos\"\n     }\n   ]\n}\n\n</code></pre><p>And the included data has the relevant photo.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"id\": \"159361\",\n  \"type\": \"photos\",\n  \"attributes\": {\n    \"url\": \"https://cdn.filestackcontent.com/yEswEYOzRaiOBsk90s3w\",\n    \"order\": 1,\n    \"created_at\": \"2020-01-16T21:55:50Z\",\n    \"updated_at\": \"2020-01-16T21:55:50Z\"\n  }\n},\n\n</code></pre><h3 id=\"multi-units\">Multi units</h3>\n<p>If a property has associated multi-units, these will be included in the JSON API response.</p>\n<p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"multi_units\": {\n  \"data\": [\n    {\n      \"id\": \"68\",\n      \"type\": \"multi_units\"\n    },\n    {\n      \"id\": \"69\",\n      \"type\": \"multi_units\"\n    }\n  ]\n}\n\n</code></pre><p>And the included data has the relevant multi_unit:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"id\": \"68\",\n  \"type\": \"multi_units\",\n  \"attributes\": {\n    \"name\": \"5G\"\n  }\n}\n\n</code></pre><h3 id=\"taxes\">Taxes</h3>\n<p>All taxes for a property are included, even if those taxes are zero.</p>\n<p>The taxes have a <code>type</code> of <code>fixed</code> for a specific amount and <code>percentage</code> for percentages.</p>\n<p>They also have a field called <code>per</code> which indicates whether the tax applies per <code>booking</code> (e.g. for the whole stay), per <code>night</code> (e.g. for each night of the stay) or per <code>person_per_night</code> (e.g. per person for each night of the stay).</p>\n<p>The <code>amount</code> field indicates the fixed amount, or the percentage amount to apply.</p>\n<p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"taxes\": {\n  \"data\": [\n    {\n      \"id\": \"11033-per_booking_amount\",\n      \"type\": \"property_taxes\"\n    },\n    {\n      \"id\": \"11033-per_booking_percentage\",\n      \"type\": \"property_taxes\"\n    },\n    {\n      \"id\": \"11033-per_night\",\n      \"type\": \"property_taxes\"\n    },\n    {\n      \"id\": \"11033-per_person_per_night\",\n      \"type\": \"property_taxes\"\n    }\n  ]\n}\n\n</code></pre><p>And the included taxes have the relevant data:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"id\": \"11033-per_booking_percentage\",\n  \"type\": \"property_taxes\",\n  \"attributes\": {\n    \"name\": \"Per booking percentage\",\n    \"label\": \"per_booking_percentage\",\n    \"type\": \"percentage\",\n    \"per\": \"booking\",\n    \"amount\": 25.25\n  }\n}\n\n</code></pre><h3 id=\"fees\">Fees</h3>\n<p>All fees - e.g. cleaning fee and/or extra guest charge - for a property are included, if they are setup.</p>\n<p>The fees have a field of <code>enabled</code> which indicates if they should be applied.</p>\n<p>They also have a field called <code>amount</code> that indicates the actual fee that should be applied.</p>\n<p>There's a field named <code>guests_included</code> that indicates, for the extra guest charge fee, how many guests should be included <em>before</em> the fee applies. For example, guests_included 2 means that the guest fee only applies for guests 3 and 4 (for a booking with 4 guests).</p>\n<p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"fees\": {\n  \"data\": [\n    {\n      \"id\": \"11033-cleaning_fee\",\n      \"type\": \"property_fees\"\n    },\n    {\n      \"id\": \"11033-extra_guest_charge\",\n      \"type\": \"property_fees\"\n    }\n  ]\n},\n\n</code></pre><p>And the included fees have the relevant data:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"id\": \"11033-cleaning_fee\",\n  \"type\": \"property_fees\",\n  \"attributes\": {\n    \"name\": \"Cleaning fee\",\n    \"label\": \"cleaning_fee\",\n    \"enabled\": true,\n    \"guests_included\": null,\n    \"amount\": 100.0\n  }\n},\n\n</code></pre><h3 id=\"discounts\">Discounts</h3>\n<p>All discounts for a property are included, even if those discounts are zero.</p>\n<p>The discounts have a <code>type</code> of <code>percentage</code> for percentages. (The only type currently supported).</p>\n<p>They also have a field called <code>days</code> which indicates how many days the discount applies for (e.g. 7 for a week long stay or 28 for a monthly long stay)</p>\n<p>The <code>amount</code> field indicates the percentage amount to apply.</p>\n<p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"discounts\": {\n  \"data\": [\n    {\n      \"id\": \"11033-weekly\",\n      \"type\": \"property_discounts\"\n    },\n    {\n      \"id\": \"11033-monthly\",\n      \"type\": \"property_discounts\"\n    }\n  ]\n}\n\n</code></pre><p>And the included discounts have the relevant data:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"id\": \"11033-weekly\",\n  \"type\": \"property_discounts\",\n  \"attributes\": {\n    \"name\": \"Weekly discount\",\n    \"label\": \"weekly\",\n    \"type\": \"percentage\",\n    \"days\": 7,\n    \"amount\": 5.0\n  }\n}\n\n</code></pre><h3 id=\"suitabilities\">Suitabilities</h3>\n<p>This section indicates whether a property is suitable for <code>pets</code>, <code>children</code>, <code>events</code> or <code>smoking</code>.</p>\n<p>Each property will have this section:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"suitability\": {\n  \"data\": {\n    \"id\": \"3428\",\n    \"type\": \"suitabilities\"\n  }\n}\n\n</code></pre><p>And the included data:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"id\": \"3428\",\n  \"type\": \"suitabilities\",\n  \"attributes\": {\n    \"children\": true,\n    \"pets\": false,\n    \"events\": false,\n    \"smoking\": false\n  }\n}\n\n</code></pre><h3 id=\"policy\">Policy</h3>\n<p>This section indicates what cancellation policy a property has.</p>\n<p>Each property will have this section:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"policy\": {\n  \"data\": {\n    \"id\": \"1234\",\n    \"type\": \"policies\"\n  }\n}\n\n</code></pre><p>And the included data:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"id\": \"3428\",\n  \"type\": \"policies\",\n  \"attributes\": {\n    \"type\": \"Strict cancellation policy\",\n    \"description\": \"Cancel any time before check-in and no refund is provided\"\n  }\n}\n\n</code></pre><h3 id=\"protect-security-deposit\">Protect Security Deposit:</h3>\n<p>This section indicates whether the Uplisting Protect (security deposit) feature is turned on for the property.</p>\n<p>Each property will have this section if Uplisting Protect has been enabled for the account.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"protect_security_deposit_setting\": {\n  \"data\": {\n    \"id\": \"1234\",\n    \"type\": \"protect_security_deposit_settings\"\n  }\n}\n\n</code></pre><p>And the included data:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"id\": \"3428\",\n  \"type\": \"protect_security_deposit_settings\",\n  \"attributes\": {\n    \"amount\": 200.0,\n    \"enabled\": true\n  }\n}\n\n</code></pre><h3 id=\"amenities\">Amenities</h3>\n<p>The Properties Index endpoint contains amenities for each property. The full list of amenities Uplisting supports are listed below.</p>\n<p>In our example the amenity relationship is provided as:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"amenities\": {\n   \"data\": [\n      {\n        \"id\": \"1\",\n        \"type\": \"amenities\"\n      }\n   ]\n}\n\n</code></pre><p>And the included data has the relevant amenity:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"id\": \"1\",\n  \"type\": \"amenities\",\n  attributes\": {\n    \"name\": \"Oven\",\n    \"group\": \"Kitchen &amp; Dining\"\n  }\n}\n\n</code></pre><h4 id=\"full-list-of-amenities-supported-on-uplisting\">Full list of amenities supported on Uplisting</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>| *Amenity Name*            | *Amenity Group*       |\n-----------------------------------------------------\n| Satellite / Cable         | Entertainment         |\n| Games                     | Entertainment         |\n| Foosball                  | Entertainment         |\n| DVD Player                | Entertainment         |\n| Books                     | Entertainment         |\n| Ping Pong Table           | Entertainment         |\n| Pool Table                | Entertainment         |\n| Game Room                 | Entertainment         |\n| Music Library             | Entertainment         |\n| Video Library             | Entertainment         |\n| Television                | Entertainment         |\n| Video Games               | Entertainment         |\n| Toys                      | Entertainment         |\n| Stereo                    | Entertainment         |\n| Oven                      | Kitchen &amp; Dining      |\n| Microwave                 | Kitchen &amp; Dining      |\n| Toaster                   | Kitchen &amp; Dining      |\n| Coffee Maker              | Kitchen &amp; Dining      |\n| Dishes &amp; Utensils         | Kitchen &amp; Dining      |\n| Dishwasher                | Kitchen &amp; Dining      |\n| Kitchen                   | Kitchen &amp; Dining      |\n| Kitchenette               | Kitchen &amp; Dining      |\n| Pantry Items              | Kitchen &amp; Dining      |\n| Refrigerator              | Kitchen &amp; Dining      |\n| Stove                     | Kitchen &amp; Dining      |\n| Deck / Patio              | Outdoor Features      |\n| Golf                      | Outdoor Features      |\n| Lanai / Gazebo            | Outdoor Features      |\n| Lawn / Garden             | Outdoor Features      |\n| Outdoor Grill             | Outdoor Features      |\n| Ski &amp; Snowboard           | Outdoor Features      |\n| Tennis                    | Outdoor Features      |\n| Water Sports Gear         | Outdoor Features      |\n| Balcony                   | Outdoor Features      |\n| Kayak / Canoe             | Outdoor Features      |\n| Boat                      | Outdoor Features      |\n| Private Pool              | Pool &amp; Spa Facilities |\n| Sauna                     | Pool &amp; Spa Facilities |\n| Indoor Pool               | Pool &amp; Spa Facilities |\n| Heated Pool               | Pool &amp; Spa Facilities |\n| Communal Pool             | Pool &amp; Spa Facilities |\n| Jacuzzi                   | Pool &amp; Spa Facilities |\n| Spa Whirlpool             | Pool &amp; Spa Facilities |\n| Whirlpool                 | Pool &amp; Spa Facilities |\n| Hot Tub                   | Pool &amp; Spa Facilities |\n| Air Conditioning          | Popular Amenities     |\n| Fitness Room / Equipment  | Popular Amenities     |\n| Fax                       | Popular Amenities     |\n| Internet                  | Popular Amenities     |\n| Fireplace                 | Popular Amenities     |\n| Fireplace guards          | Popular Amenities     |\n| Wood Stove                | Popular Amenities     |\n| Garage                    | Popular Amenities     |\n| Elevator                  | Popular Amenities     |\n| Living Room               | Popular Amenities     |\n| Telephone                 | Popular Amenities     |\n| Iron &amp; Board              | Popular Amenities     |\n| Hair Dryer                | Popular Amenities     |\n| Paid parking on premises  | Popular Amenities     |\n| Paid parking off premises | Popular Amenities     |\n| Free street parking       | Popular Amenities     |\n| Free parking on premises  | Popular Amenities     |\n| Parking                   | Popular Amenities     |\n| Towels Provided           | Popular Amenities     |\n| Linens Provided           | Popular Amenities     |\n| Clothes Dryer             | Popular Amenities     |\n| Washing Machine           | Popular Amenities     |\n| Heating                   | Popular Amenities     |\n\n</code></pre>","urlObject":{"protocol":"https","path":["properties"],"host":["connect","uplisting","io"],"query":[],"variable":[]}},"response":[],"_postman_id":"fb8b9c76-ddd4-4bc5-bd91-05394a03fd51"},{"name":"Property","id":"1fc19b46-f7d2-4d63-8343-6163fbdafff9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Basic YzhlZGU3NDctNDUzNi00MGVmLWJkYWMtMzZjZjVlMGQxZDVk","description":"<p>Base64 encoded API key</p>\n","type":"text"}],"url":"https://connect.uplisting.io/properties/:id","description":"<p><strong>Retrieving details for a single property</strong></p>\n<p>To retrieve the details for a property on an Uplisting account, you should send a GET request to the endpoint above.</p>\n<p>The payload will be a single property for the partner account in JSON API format. It will also include the property's address, photos, multi-unit, fees, taxes, suitabilities, channel commissions and amenities in the included data.</p>\n<p>For more info on JSON API format, visit <a href=\"https://jsonapi.org\">https://jsonapi.org</a>.</p>\n<h2 id=\"relationships\">Relationships</h2>\n<p>Properties have relationships which include address, photos, multi-unit, fees, taxes, suitabilities and amenities types. Each individual relationship references the relevant resource in the included section of the API response, per the JSON API format.</p>\n<p>For a full breakdown, review the documentation for the <code>GET /properties</code> endpoint</p>\n","urlObject":{"protocol":"https","path":["properties",":id"],"host":["connect","uplisting","io"],"query":[],"variable":[{"id":"2819dcac-4810-425a-8978-3b379b0df44d","type":"any","value":"","key":"id"}]}},"response":[{"id":"f7c8441b-3a82-4823-8dc0-1cebcc7fcc58","name":"GET property","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"","description":"Base64 encoded API key","type":"text"}],"url":"https://connect.uplisting.io/properties"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"nginx"},{"key":"Date","value":"Wed, 31 Mar 2021 22:52:04 GMT"},{"key":"Content-Type","value":"application/vnd.api+json; charset=utf-8"},{"key":"Content-Length","value":"3998"},{"key":"X-Frame-Options","value":"DENY"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Xss-Protection","value":"1; mode=block"},{"key":"Content-Security-Policy","value":"form-action 'self'; frame-ancestors 'self'; base-uri 'self'; default-src 'none'; script-src 'self'; connect-src 'self'; img-src 'self' https: data:; style-src 'self' 'unsafe-inline' https:; font-src 'self'; object-src 'none'; plugin-types application/pdf; child-src 'self'; frame-src 'self'; media-src 'self'"},{"key":"Vary","value":"Accept-Encoding, Origin"},{"key":"Content-Encoding","value":"gzip"},{"key":"Via","value":"1.1 vegur, 1.1 vegur"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": \"11033\",\n        \"type\": \"properties\",\n        \"attributes\": {\n            \"name\": \"Chic apt with Garden in the Heart of East London (b)\",\n            \"nickname\": \"BDC Double (London)\",\n            \"currency\": \"GBP\",\n            \"time_zone\": \"America/New_York\",\n            \"check_in_time\": 20,\n            \"check_out_time\": 11,\n            \"type\": \"Apartment\",\n            \"maximum_capacity\": 5,\n            \"bedrooms\": 2,\n            \"beds\": 2,\n            \"bathrooms\": 1.0,\n            \"bed_types\": [\n                \"king\",\n                \"child_bed\"\n            ],\n            \"description\": \"You will not be disappointed staying here. This flat is perfect for exploring London and relaxing with friends. With Victoria Park, funky Roman Road and trendy Hackney Wick close by. Bethnal Green and Shoreditch are within a 15-minute walk, tube or bus ride away, you won't find a better location to experience what East London has to offer. You can enjoy major attractions such as Box Park, Brick Lane, Broadway Market (Saturdays), Columbia Road flower market (Sundays) or even Hackney City Farm!\\n\\nThe main bedroom has a super kingsize bed. If you need your space at night then this is the bed for you. The second bed is just a bit larger than a king. Plenty of room!\\n\\nAmenities: \\n-24/7 guest support\\n- Professionally cleaned\\n- Hotel-quality bed linen and towels\\n- 24/7 check-in as there is a lockbox with the keys\\n\\nKitchen:\\n- Fully equipped\\n- Oven\\n-Microwave\\n-Coffee maker\\n- Stove\\n- Refrigerator\\n\\nLiving Room:\\n-Flat screen TV\\n-Comfy sofa\\n-Arm chair\\n-Dining table and chairs\\n\\nBedroom 1:\\n-Super King size bed \\n-Storage space\\n\\nBedroom 2:\\n- King size bed\\n- Desk\\n-Storage space\\n\\nBathroom: \\n-Bath with power shower\\n-Sink\\n-Toilet\\n\\nGuests will have access to the entire property during their stay.\\n\\nMy support team or I will be contactable by email or telephone during your stay.\\n\\nWe're in a perfect location in London. Right beside the stunning Victoria Park, 2 seconds from Roman Road market, a hop skip and jump from the uber cool Hackney Wick or less trendy but great for shopping Stratford and the Olympic Village. The no. 8 goes from right outside our door to Shoreditch and central London. Alternatively you can jump on the Central Line at Mile End, or the District/Paddington and Hammersmith lines at Bow Road.\\n\\nThe Morpeth pub a few minutes down Old Ford road is great for craft beer, and does a mean sourdough pizza. Muxima a few seconds away on Roman Road is a really trendy coffee, lunch, dinner spot. Oh and the fish and chip shop next door is excellent too.\\n\\nThe no. 8 goes from right outside our door to Shoreditch and central London. Alternatively you can jump on the Central Line at Mile End, or the District/Paddington and Hammersmith lines at Bow Road.\\n\\nPlease make your yourselves at home, and feel free to use anything in the kitchen!\",\n            \"created_at\": \"2019-11-20T19:35:26Z\",\n            \"uplisting_domain\": \"https://book.vincentbreslin.com\",\n            \"property_slug\": \"cb8cad\"\n        },\n        \"relationships\": {\n            \"address\": {\n                \"data\": {\n                    \"id\": \"7666\",\n                    \"type\": \"addresses\"\n                }\n            },\n            \"photos\": {\n                \"data\": [\n                    {\n                        \"id\": \"3478\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3479\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3480\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3482\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3483\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3484\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3485\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3486\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3487\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3488\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3489\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3490\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3491\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3492\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3493\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3494\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3495\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3496\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3497\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3498\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3499\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3500\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3501\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"3503\",\n                        \"type\": \"photos\"\n                    },\n                    {\n                        \"id\": \"6011\",\n                        \"type\": \"photos\"\n                    }\n                ]\n            },\n            \"amenities\": {\n                \"data\": [\n                    {\n                        \"id\": \"9\",\n                        \"type\": \"amenities\"\n                    },\n                    {\n                        \"id\": \"10\",\n                        \"type\": \"amenities\"\n                    },\n                    {\n                        \"id\": \"26\",\n                        \"type\": \"amenities\"\n                    },\n                    {\n                        \"id\": \"27\",\n                        \"type\": \"amenities\"\n                    },\n                    {\n                        \"id\": \"28\",\n                        \"type\": \"amenities\"\n                    },\n                    {\n                        \"id\": \"54\",\n                        \"type\": \"amenities\"\n                    },\n                    {\n                        \"id\": \"62\",\n                        \"type\": \"amenities\"\n                    },\n                    {\n                        \"id\": \"63\",\n                        \"type\": \"amenities\"\n                    }\n                ]\n            },\n            \"multi_units\": {\n                \"data\": [\n                    {\n                        \"id\": \"3\",\n                        \"type\": \"multi_units\"\n                    },\n                    {\n                        \"id\": \"4\",\n                        \"type\": \"multi_units\"\n                    },\n                    {\n                        \"id\": \"339\",\n                        \"type\": \"multi_units\"\n                    }\n                ]\n            },\n            \"fees\": {\n                \"data\": [\n                    {\n                        \"id\": \"11033-cleaning_fee\",\n                        \"type\": \"property_fees\"\n                    },\n                    {\n                        \"id\": \"11033-extra_guest_charge\",\n                        \"type\": \"property_fees\"\n                    }\n                ]\n            },\n            \"taxes\": {\n                \"data\": [\n                    {\n                        \"id\": \"11033-per_booking_amount\",\n                        \"type\": \"property_taxes\"\n                    },\n                    {\n                        \"id\": \"11033-per_booking_percentage\",\n                        \"type\": \"property_taxes\"\n                    },\n                    {\n                        \"id\": \"11033-per_night\",\n                        \"type\": \"property_taxes\"\n                    },\n                    {\n                        \"id\": \"11033-per_person_per_night\",\n                        \"type\": \"property_taxes\"\n                    }\n                ]\n            },\n            \"channel_commissions\": {\n                \"data\": [\n                    {\n                      \"id\": \"7775\",\n                      \"type\": \"channel_commissions\"\n                    },\n                    {\n                      \"id\": \"7776\",\n                      \"type\": \"channel_commissions\"\n                    },\n                    {\n                      \"id\": \"7777\",\n                      \"type\": \"channel_commissions\"\n                    },\n                    {\n                      \"id\": \"7778\",\n                      \"type\": \"channel_commissions\"\n                    },\n                    {\n                      \"id\": \"7779\",\n                      \"type\": \"channel_commissions\"\n                    }\n                ]\n            },\n            \"discounts\": {\n                \"data\": [\n                    {\n                        \"id\": \"11033-weekly\",\n                        \"type\": \"property_discounts\"\n                    },\n                    {\n                        \"id\": \"11033-monthly\",\n                        \"type\": \"property_discounts\"\n                    }\n                ]\n            },\n            \"suitability\": {\n                \"data\": {\n                    \"id\": \"3428\",\n                    \"type\": \"suitabilities\"\n                }\n            },\n            \"policy\": {\n                \"data\": {\n                    \"id\": \"5935\",\n                    \"type\": \"policies\"\n                }\n            },\n            \"protect_security_deposit_setting\": {\n                \"data\": {\n                    \"id\": \"5990\",\n                    \"type\": \"protect_security_deposit_settings\"\n                }\n            }\n        }\n    },\n    \"included\": [\n        {\n            \"id\": \"7666\",\n            \"type\": \"addresses\",\n            \"attributes\": {\n                \"street\": \"North Milwaukee Avenues\",\n                \"suite\": \"15\",\n                \"city\": \"Los Angeles\",\n                \"state\": \"California\",\n                \"zip_code\": \"60647\",\n                \"country\": \"United States\",\n                \"latitude\": 41.925285,\n                \"longitude\": -87.7007686\n            }\n        },\n        {\n            \"id\": \"3478\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/nHBvAqRrTouchlsUhzIQ\",\n                \"order\": 3,\n                \"created_at\": \"2019-11-20T19:35:30Z\",\n                \"updated_at\": \"2021-10-15T07:47:03Z\"\n            }\n        },\n        {\n            \"id\": \"3479\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/qGtwdKr9QJ6xtyXhG9NP\",\n                \"order\": 5,\n                \"created_at\": \"2019-11-20T19:35:30Z\",\n                \"updated_at\": \"2021-10-15T07:47:03Z\"\n            }\n        },\n        {\n            \"id\": \"3480\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/IUczE4e3QTmR3bsdkGkk\",\n                \"order\": 6,\n                \"created_at\": \"2019-11-20T19:35:30Z\",\n                \"updated_at\": \"2021-10-15T07:47:03Z\"\n            }\n        },\n        {\n            \"id\": \"3482\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/qZ2632akTfql8FCZTs5c\",\n                \"order\": 2,\n                \"created_at\": \"2019-11-20T19:35:32Z\",\n                \"updated_at\": \"2021-10-15T07:47:04Z\"\n            }\n        },\n        {\n            \"id\": \"3483\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/NZ1xpl6PTQSr5tMjQFIV\",\n                \"order\": 4,\n                \"created_at\": \"2019-11-20T19:35:32Z\",\n                \"updated_at\": \"2021-10-15T07:47:04Z\"\n            }\n        },\n        {\n            \"id\": \"3484\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/kVDdyAGZTPChe8ZiAlY4\",\n                \"order\": 7,\n                \"created_at\": \"2019-11-20T19:35:32Z\",\n                \"updated_at\": \"2021-10-15T07:47:04Z\"\n            }\n        },\n        {\n            \"id\": \"3485\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/w55xcrcQgKKNIlTDNcwc\",\n                \"order\": 8,\n                \"created_at\": \"2019-11-20T19:35:33Z\",\n                \"updated_at\": \"2021-10-15T07:47:05Z\"\n            }\n        },\n        {\n            \"id\": \"3486\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/tG9Y9YgOSjDVjvnm0XV9\",\n                \"order\": 9,\n                \"created_at\": \"2019-11-20T19:35:33Z\",\n                \"updated_at\": \"2021-10-15T07:47:05Z\"\n            }\n        },\n        {\n            \"id\": \"3487\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/YUHaixgvQouRdxema2ze\",\n                \"order\": 10,\n                \"created_at\": \"2019-11-20T19:35:34Z\",\n                \"updated_at\": \"2021-10-15T07:47:05Z\"\n            }\n        },\n        {\n            \"id\": \"3488\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/0Yje4PXRgyerKoYAv7tA\",\n                \"order\": 11,\n                \"created_at\": \"2019-11-20T19:35:34Z\",\n                \"updated_at\": \"2021-10-15T07:47:05Z\"\n            }\n        },\n        {\n            \"id\": \"3489\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/yPSwjsZhSJCUk9A5VX1E\",\n                \"order\": 12,\n                \"created_at\": \"2019-11-20T19:35:34Z\",\n                \"updated_at\": \"2021-10-15T07:47:06Z\"\n            }\n        },\n        {\n            \"id\": \"3490\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/j0psd9wxQ1CccCo4TD9x\",\n                \"order\": 13,\n                \"created_at\": \"2019-11-20T19:35:35Z\",\n                \"updated_at\": \"2021-10-15T07:47:06Z\"\n            }\n        },\n        {\n            \"id\": \"3491\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/blVyFD8ZShexqOyJwfEO\",\n                \"order\": 14,\n                \"created_at\": \"2019-11-20T19:35:35Z\",\n                \"updated_at\": \"2021-10-15T07:47:06Z\"\n            }\n        },\n        {\n            \"id\": \"3492\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/xrp6bxuSAaq2hEJLy8ig\",\n                \"order\": 15,\n                \"created_at\": \"2019-11-20T19:35:36Z\",\n                \"updated_at\": \"2021-10-15T07:47:07Z\"\n            }\n        },\n        {\n            \"id\": \"3493\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/1R98YBYLR8yhISoyhTeY\",\n                \"order\": 16,\n                \"created_at\": \"2019-11-20T19:35:36Z\",\n                \"updated_at\": \"2021-10-15T07:47:07Z\"\n            }\n        },\n        {\n            \"id\": \"3494\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/97xMTusiQoGtxzEJp0eF\",\n                \"order\": 17,\n                \"created_at\": \"2019-11-20T19:35:36Z\",\n                \"updated_at\": \"2021-10-15T07:47:08Z\"\n            }\n        },\n        {\n            \"id\": \"3495\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/EbKy1RbTEG58d8XqJIEg\",\n                \"order\": 18,\n                \"created_at\": \"2019-11-20T19:35:37Z\",\n                \"updated_at\": \"2021-10-15T07:47:08Z\"\n            }\n        },\n        {\n            \"id\": \"3496\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/UvRT2n6vRzyWPsfEDeBw\",\n                \"order\": 19,\n                \"created_at\": \"2019-11-20T19:35:37Z\",\n                \"updated_at\": \"2021-10-15T07:47:08Z\"\n            }\n        },\n        {\n            \"id\": \"3497\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/zAYpdjNeRn3ZvpqXCcj5\",\n                \"order\": 20,\n                \"created_at\": \"2019-11-20T19:35:38Z\",\n                \"updated_at\": \"2021-10-15T07:47:08Z\"\n            }\n        },\n        {\n            \"id\": \"3498\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/6cvwUDKwTLWZnuWvqiC2\",\n                \"order\": 23,\n                \"created_at\": \"2019-11-20T19:35:38Z\",\n                \"updated_at\": \"2021-10-15T07:47:09Z\"\n            }\n        },\n        {\n            \"id\": \"3499\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/7wDHl59TKWpmX5Ihb4WW\",\n                \"order\": 22,\n                \"created_at\": \"2019-11-20T19:35:38Z\",\n                \"updated_at\": \"2021-10-15T07:47:09Z\"\n            }\n        },\n        {\n            \"id\": \"3500\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/snSqU1eSX28rZDkKxOx4\",\n                \"order\": 24,\n                \"created_at\": \"2019-11-20T19:35:39Z\",\n                \"updated_at\": \"2021-10-15T07:47:09Z\"\n            }\n        },\n        {\n            \"id\": \"3501\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/JBOIuzUBTdmLx8ZW7lTP\",\n                \"order\": 21,\n                \"created_at\": \"2019-11-20T19:35:40Z\",\n                \"updated_at\": \"2021-10-15T07:47:10Z\"\n            }\n        },\n        {\n            \"id\": \"3503\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/wSH4OyBhROioG2VdAiRT\",\n                \"order\": 25,\n                \"created_at\": \"2019-11-20T19:35:40Z\",\n                \"updated_at\": \"2021-10-15T07:47:10Z\"\n            }\n        },\n        {\n            \"id\": \"6011\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/gOZyTBC5Tk2FmTC1ZfGJ\",\n                \"order\": 26,\n                \"created_at\": \"2020-07-25T09:14:19Z\",\n                \"updated_at\": \"2021-10-15T07:47:14Z\"\n            }\n        },\n        {\n            \"id\": \"9\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Pantry Items\",\n                \"group\": \"Kitchen & Dining\"\n            }\n        },\n        {\n            \"id\": \"10\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Refrigerator\",\n                \"group\": \"Kitchen & Dining\"\n            }\n        },\n        {\n            \"id\": \"26\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Fitness Room / Equipment\",\n                \"group\": \"Popular Amenities\"\n            }\n        },\n        {\n            \"id\": \"27\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Fireplace\",\n                \"group\": \"Popular Amenities\"\n            }\n        },\n        {\n            \"id\": \"28\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Fireplace guards\",\n                \"group\": \"Popular Amenities\"\n            }\n        },\n        {\n            \"id\": \"54\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Communal Pool\",\n                \"group\": \"Pool & Spa Facilities\"\n            }\n        },\n        {\n            \"id\": \"62\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Golf\",\n                \"group\": \"Outdoor Features\"\n            }\n        },\n        {\n            \"id\": \"63\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Lanai / Gazebo\",\n                \"group\": \"Outdoor Features\"\n            }\n        },\n        {\n            \"id\": \"3\",\n            \"type\": \"multi_units\",\n            \"attributes\": {\n                \"name\": \"Unit 2\"\n            }\n        },\n        {\n            \"id\": \"4\",\n            \"type\": \"multi_units\",\n            \"attributes\": {\n                \"name\": \"Unit 1\"\n            }\n        },\n        {\n            \"id\": \"339\",\n            \"type\": \"multi_units\",\n            \"attributes\": {\n                \"name\": \"Unit 3\"\n            }\n        },\n        {\n            \"id\": \"11033-cleaning_fee\",\n            \"type\": \"property_fees\",\n            \"attributes\": {\n                \"name\": \"Cleaning fee\",\n                \"label\": \"cleaning_fee\",\n                \"enabled\": true,\n                \"guests_included\": null,\n                \"amount\": 119.0\n            }\n        },\n        {\n            \"id\": \"11033-extra_guest_charge\",\n            \"type\": \"property_fees\",\n            \"attributes\": {\n                \"name\": \"Extra guest charge\",\n                \"label\": \"extra_guest_charge\",\n                \"enabled\": true,\n                \"guests_included\": 1,\n                \"amount\": 25.0\n            }\n        },\n        {\n            \"id\": \"11033-per_booking_amount\",\n            \"type\": \"property_taxes\",\n            \"attributes\": {\n                \"name\": \"Per booking amount\",\n                \"label\": \"per_booking_amount\",\n                \"type\": \"fixed\",\n                \"per\": \"booking\",\n                \"amount\": 20.0\n            }\n        },\n        {\n            \"id\": \"11033-per_booking_percentage\",\n            \"type\": \"property_taxes\",\n            \"attributes\": {\n                \"name\": \"Per booking percentage\",\n                \"label\": \"per_booking_percentage\",\n                \"type\": \"percentage\",\n                \"per\": \"booking\",\n                \"amount\": 25.25\n            }\n        },\n        {\n            \"id\": \"11033-per_night\",\n            \"type\": \"property_taxes\",\n            \"attributes\": {\n                \"name\": \"Per night\",\n                \"label\": \"per_night\",\n                \"type\": \"fixed\",\n                \"per\": \"night\",\n                \"amount\": 40.0\n            }\n        },\n        {\n            \"id\": \"11033-per_person_per_night\",\n            \"type\": \"property_taxes\",\n            \"attributes\": {\n                \"name\": \"Per person per night\",\n                \"label\": \"per_person_per_night\",\n                \"type\": \"fixed\",\n                \"per\": \"person_per_night\",\n                \"amount\": 30.0\n            }\n        },\n        {\n            \"id\": \"11033-weekly\",\n            \"type\": \"property_discounts\",\n            \"attributes\": {\n                \"name\": \"Weekly discount\",\n                \"label\": \"weekly\",\n                \"type\": \"percentage\",\n                \"days\": 7,\n                \"amount\": 5.0\n            }\n        },\n        {\n            \"id\": \"11033-monthly\",\n            \"type\": \"property_discounts\",\n            \"attributes\": {\n                \"name\": \"Monthly discount\",\n                \"label\": \"monthly\",\n                \"type\": \"percentage\",\n                \"days\": 28,\n                \"amount\": 30.0\n            }\n        },\n        {\n            \"id\": \"3428\",\n            \"type\": \"suitabilities\",\n            \"attributes\": {\n                \"children\": true,\n                \"pets\": false,\n                \"events\": false,\n                \"smoking\": false\n            }\n        },\n        {\n            \"id\": \"5935\",\n            \"type\": \"policies\",\n            \"attributes\": {\n                \"type\": \"Strict cancellation policy\",\n                \"description\": \"Strict cancellation policy. Bookings cancelled at least 60 days before the start of stay will receive 100% refund.\"\n            }\n        },\n        {\n            \"id\": \"5990\",\n            \"type\": \"protect_security_deposit_settings\",\n            \"attributes\": {\n                \"amount\": 134.0,\n                \"enabled\": true\n            }\n        },\n        {\n          \"id\": \"7775\",\n          \"type\": \"channel_commissions\",\n          \"attributes\": {\n            \"channel\": \"airbnb_official\",\n            \"amount\": 18.34\n          }\n        },\n        {\n          \"id\": \"7776\",\n          \"type\": \"channel_commissions\",\n          \"attributes\": {\n            \"channel\": \"booking_dot_com\",\n            \"amount\": 15.0\n          }\n        },\n        {\n          \"id\": \"7777\",\n          \"type\": \"channel_commissions\",\n          \"attributes\": {\n            \"channel\": \"home_away\",\n            \"amount\": 8.0\n          }\n        },\n        {\n          \"id\": \"7778\",\n          \"type\": \"channel_commissions\",\n          \"attributes\": {\n            \"channel\": \"google\",\n            \"amount\": 6.0\n          }\n        },\n        {\n          \"id\": \"7779\",\n          \"type\": \"channel_commissions\",\n          \"attributes\": {\n            \"channel\": \"direct\",\n            \"amount\": 0.0\n          }\n        }\n    ]\n}"}],"_postman_id":"1fc19b46-f7d2-4d63-8343-6163fbdafff9"},{"name":"Availability","id":"9b8d0e57-9a3c-4ceb-82a0-bf5e5b4a3ac9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Basic MAIwZ44FFQ0YjEtMTRmZS00MmJhLTg1OGEtNmM4MDBmNjBlMTNi","type":"text"}],"url":"https://connect.uplisting.io/availability?min_price=50&check_in=2021-07-30&check_out=2021-08-04&number_of_guests=2&max_price=4000&city=London","description":"<p><strong>Retrieving availability for properties</strong></p>\n<p>To retrieve the availability of properties on an Uplisting account, you should send a GET request to the endpoint above.</p>\n<p>The payload will be a list of properties that meet the search criteria entered in the query string, in JSON API format. It will also include the property addresses, photos and amenities in the included data. (for a fuller explanation, see the properties endpoint)</p>\n<p><strong>Search criteria</strong></p>\n<p>You can choose to search by any, or all, of these criteria via the query string on the request.</p>\n<ol>\n<li><code>check_in</code> - the date of check in.</li>\n<li><code>check_out</code> - the date of check out (note this is the <em>morning</em> of check out)</li>\n<li><code>number_of_guests</code> - the number of guests for the booking</li>\n<li><code>max_price</code> - the maximum price allowed for the booking</li>\n<li><code>min_price</code> - the minimum price expected for a booking</li>\n<li><code>city</code> - scope the properties by a specific city location</li>\n</ol>\n","urlObject":{"protocol":"https","path":["availability"],"host":["connect","uplisting","io"],"query":[{"key":"min_price","value":"50"},{"key":"check_in","value":"2021-07-30"},{"key":"check_out","value":"2021-08-04"},{"key":"number_of_guests","value":"2"},{"key":"max_price","value":"4000"},{"key":"city","value":"London"}],"variable":[]}},"response":[{"id":"d6bc1a0f-e764-46ec-b45e-429c05fd6765","name":"Availability response","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Basic MAIwZ44FFQ0YjEtMTRmZS00MmJhLTg1OGEtNmM4MDBmNjBlMTNi","type":"text"}],"url":{"raw":"https://connect.uplisting.io/availability?min_price=50&check_in=2021-07-30&check_out=2021-08-04&number_of_guests=2&max_price=4000&city=London","protocol":"https","host":["connect","uplisting","io"],"path":["availability"],"query":[{"key":"min_price","value":"50"},{"key":"check_in","value":"2021-07-30"},{"key":"check_out","value":"2021-08-04"},{"key":"number_of_guests","value":"2"},{"key":"max_price","value":"4000"},{"key":"city","value":"London"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"nginx"},{"key":"Date","value":"Thu, 08 Jul 2021 17:27:26 GMT"},{"key":"Content-Type","value":"application/vnd.api+json; charset=utf-8"},{"key":"Content-Length","value":"5376"},{"key":"X-Frame-Options","value":"DENY"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Xss-Protection","value":"1; mode=block"},{"key":"Content-Security-Policy","value":"form-action 'self'; frame-ancestors 'self'; base-uri 'self'; default-src 'none'; script-src 'self'; connect-src 'self'; img-src 'self' https: data:; style-src 'self' 'unsafe-inline' https:; font-src 'self'; object-src 'none'; plugin-types application/pdf; child-src 'self'; frame-src 'self'; media-src 'self'"},{"key":"Vary","value":"Accept-Encoding, Origin"},{"key":"Content-Encoding","value":"gzip"},{"key":"Via","value":"1.1 vegur, 1.1 vegur"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": \"18475\",\n            \"type\": \"properties\",\n            \"attributes\": {\n                \"name\": \"Chic apt with Garden in the Heart of East London\",\n                \"nickname\": \"Chic apt with Garden in the Heart of East London\",\n                \"currency\": \"GBP\",\n                \"time_zone\": \"America/New_York\",\n                \"check_in_time\": 20,\n                \"check_out_time\": 11,\n                \"type\": \"Apartment\",\n                \"maximum_capacity\": 4,\n                \"description\": \"You will not be disappointed staying here. This flat is perfect for exploring London and relaxing with friends. With Victoria Park, funky Roman Road and trendy Hackney Wick close by. Bethnal Green and Shoreditch are within a 15-minute walk, tube or bus ride away, you won't find a better location to experience what East London has to offer. You can enjoy major attractions such as Box Park, Brick Lane, Broadway Market (Saturdays), Columbia Road flower market (Sundays) or even Hackney City Farm!\\n\\nThe main bedroom has a super kingsize bed. If you need your space at night then this is the bed for you. The second bed is just a bit larger than a king. Plenty of room!\\n\\nAmenities: \\n-24/7 guest support\\n- Professionally cleaned\\n- Hotel-quality bed linen and towels\\n- 24/7 check-in as there is a lockbox with the keys\\n\\nKitchen:\\n- Fully equipped\\n- Oven\\n-Microwave\\n-Coffee maker\\n- Stove\\n- Refrigerator\\n\\nLiving Room:\\n-Flat screen TV\\n-Comfy sofa\\n-Arm chair\\n-Dining table and chairs\\n\\nBedroom 1:\\n-Super King size bed \\n-Storage space\\n\\nBedroom 2:\\n- King size bed\\n- Desk\\n-Storage space\\n\\nBathroom: \\n-Bath with power shower\\n-Sink\\n-Toilet\\n\\nGuests will have access to the entire property during their stay.\\n\\nMy support team or I will be contactable by email or telephone during your stay.\\n\\nWe're in a perfect location in London. Right beside the stunning Victoria Park, 2 seconds from Roman Road market, a hop skip and jump from the uber cool Hackney Wick or less trendy but great for shopping Stratford and the Olympic Village. The no. 8 goes from right outside our door to Shoreditch and central London. Alternatively you can jump on the Central Line at Mile End, or the District/Paddington and Hammersmith lines at Bow Road.\\n\\nThe Morpeth pub a few minutes down Old Ford road is great for craft beer, and does a mean sourdough pizza. Muxima a few seconds away on Roman Road is a really trendy coffee, lunch, dinner spot. Oh and the fish and chip shop next door is excellent too.\\n\\nThe no. 8 goes from right outside our door to Shoreditch and central London. Alternatively you can jump on the Central Line at Mile End, or the District/Paddington and Hammersmith lines at Bow Road.\\n\\nPlease make your yourselves at home, and feel free to use anything in the kitchen!\",\n                \"bedrooms\": 2,\n                \"beds\": 2,\n                \"bathrooms\": 1,\n                \"created_at\": \"2020-01-16T21:55:07Z\",\n                \"uplisting_domain\": \"https://vincent.bookeddirectly.com\",\n                \"property_slug\": \"fcb5b0\"\n            },\n            \"relationships\": {\n                \"address\": {\n                    \"data\": {\n                        \"id\": \"14694\",\n                        \"type\": \"addresses\"\n                    }\n                },\n                \"photos\": {\n                    \"data\": [\n                        {\n                            \"id\": \"159354\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159355\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159356\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159357\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159358\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159359\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159360\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159361\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159362\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159363\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159364\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159365\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159366\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159367\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159368\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159369\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159370\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159371\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159372\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159373\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159374\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159375\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159376\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159377\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159378\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"159379\",\n                            \"type\": \"photos\"\n                        }\n                    ]\n                },\n                \"amenities\": {\n                    \"data\": [\n                        {\n                            \"id\": \"1\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"2\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"4\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"7\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"9\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"10\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"11\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"14\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"15\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"17\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"18\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"24\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"25\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"35\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"64\",\n                            \"type\": \"amenities\"\n                        }\n                    ]\n                },\n                \"multi_units\": {\n                    \"data\": [\n                        {\n                            \"id\": \"179\",\n                            \"type\": \"multi_units\"\n                        },\n                        {\n                            \"id\": \"180\",\n                            \"type\": \"multi_units\"\n                        },\n                        {\n                            \"id\": \"181\",\n                            \"type\": \"multi_units\"\n                        },\n                        {\n                            \"id\": \"182\",\n                            \"type\": \"multi_units\"\n                        }\n                    ]\n                }\n            }\n        },\n        {\n            \"id\": \"18967\",\n            \"type\": \"properties\",\n            \"attributes\": {\n                \"name\": \"Art Museum Area Stunning Studio\",\n                \"nickname\": \"Art Museum Area Stunning Studio\",\n                \"currency\": \"USD\",\n                \"time_zone\": \"America/New_York\",\n                \"check_in_time\": 15,\n                \"check_out_time\": 11,\n                \"type\": \"Earth house\",\n                \"maximum_capacity\": 4,\n                \"description\": \"Beautiful Art Museum area studio –sunny and spacious with king-size bed, 2 futon sofa beds (full-size), mirrored wall, private bath, shower, mini-fridge, microwave, and outdoor patio with table/chairs. Just a few blocks from many great attractions including museums, restaurants, parks, and much more! Easy access to public transportation. Fantastic location!\",\n                \"bedrooms\": 2,\n                \"beds\": 2,\n                \"bathrooms\": 1,\n                \"created_at\": \"2020-02-14T01:05:23Z\",\n                \"uplisting_domain\": \"https://vincent.bookeddirectly.com\",\n                \"property_slug\": \"2956da\"\n            },\n            \"relationships\": {\n                \"address\": {\n                    \"data\": {\n                        \"id\": \"15111\",\n                        \"type\": \"addresses\"\n                    }\n                },\n                \"photos\": {\n                    \"data\": [\n                        {\n                            \"id\": \"169717\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"169718\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"169719\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"169720\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"169721\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"169722\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"169723\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"169724\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"169725\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"169726\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"169727\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"169728\",\n                            \"type\": \"photos\"\n                        }\n                    ]\n                },\n                \"amenities\": {\n                    \"data\": [\n                        {\n                            \"id\": \"15\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"17\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"18\",\n                            \"type\": \"amenities\"\n                        }\n                    ]\n                },\n                \"multi_units\": {\n                    \"data\": []\n                }\n            }\n        },\n        {\n            \"id\": \"27162\",\n            \"type\": \"properties\",\n            \"attributes\": {\n                \"name\": \"Artist's Retreat in Copenhagen's French Quarter\",\n                \"nickname\": \"Artist's Retreat in Copenhagen's French Quarter\",\n                \"currency\": \"GBP\",\n                \"time_zone\": \"Europe/London\",\n                \"check_in_time\": 15,\n                \"check_out_time\": 1,\n                \"type\": \"House\",\n                \"maximum_capacity\": 4,\n                \"description\": \"Private & relaxing loft off one of Copenhagen's favourite avenues. Located in a quiet back garden meaning sleep will come easy even as the city buzzes beyond the gate. Botanicals, artwork, craftmanship, and designer furniture provide interior inspiration while the kitchen comes fully equipped for culinary forays. Large bathroom allows space for grooming and bathing. A perfect walkscore of 99 means you can coffee, cocktail, and culture within steps. Walking distance to many attractions.\",\n                \"bedrooms\": 20,\n                \"beds\": 9,\n                \"bathrooms\": 2,\n                \"created_at\": \"2021-04-28T12:54:56Z\",\n                \"uplisting_domain\": \"https://vincent.bookeddirectly.com\",\n                \"property_slug\": \"d9b8bb\"\n            },\n            \"relationships\": {\n                \"address\": {\n                    \"data\": {\n                        \"id\": \"22887\",\n                        \"type\": \"addresses\"\n                    }\n                },\n                \"photos\": {\n                    \"data\": [\n                        {\n                            \"id\": \"368276\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368277\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368278\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368279\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368281\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368284\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368285\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368286\",\n                            \"type\": \"photos\"\n                        }\n                    ]\n                },\n                \"amenities\": {\n                    \"data\": [\n                        {\n                            \"id\": \"7\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"15\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"17\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"18\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"20\",\n                            \"type\": \"amenities\"\n                        }\n                    ]\n                },\n                \"multi_units\": {\n                    \"data\": []\n                }\n            }\n        },\n        {\n            \"id\": \"27163\",\n            \"type\": \"properties\",\n            \"attributes\": {\n                \"name\": \"palm springs · PERFECT Palm Springs condo in PERFECT location!\",\n                \"nickname\": \"palm springs · PERFECT Palm Springs condo in PERFECT location!\",\n                \"currency\": \"GBP\",\n                \"time_zone\": \"Europe/London\",\n                \"check_in_time\": 11,\n                \"check_out_time\": 4,\n                \"type\": \"Apartment\",\n                \"maximum_capacity\": 4,\n                \"description\": \"NEWly remodeled luxury condo with NEW A/C unit (4/19) at the coveted Biarritz in the heart of PS! Beautifully furnished, new carpet, paint, SS appliances, granite counters. Quiet corner unit, large bedroom w/ king bed, 2 TVs, full bath, 2 terraces, mountain views, all amenities, secure parking. Huge pool, 2 spas, tennis, gorgeous grounds, dog friendly, on-site laundry. Best downtown location. Walk to virtually everything in PS Village! 1 block to Buzz Trolley & Palm Canyon Dr. Perfect getaway!\\n\\nThe condo is bright and airy with mostly white finishes and furniture. There are 2 terraces on opposite ends of the unit, so you almost always have the choice of sun or shade. It is in the quietest corner of the complex and the space has a great flow and great light. You can walk everywhere in the village of Palm Springs and don't even need a car (a rarity in PS!). The pool area is large and quiet and there are plenty of chaises. The 2 huge spas and 2 tennis courts are rarely occupied. Very friendly people and very dog friendly!\\n\\nYou will have access to the entire condominium, including 2 terraces, and all the amenities on the beautiful, manicured grounds of the Biarritz, including the private secured heated pool, hot tubs, BBQ, and tennis courts. Convenient on site laundry too.\\n\\nThe condo is bright and airy with mostly white finishes and furniture. There are 2 terraces on opposite ends of the unit, so you almost always have the choice of sun or shade. It is in the quietest corner of the complex and the space has a great flow and great light. You can walk everywhere in the village of Palm Springs and don't even need a car (a rarity in PS!). The pool area is large and quiet and there are plenty of chaises. The 2 huge spas and 2 tennis courts are rarely occupied. Very friendly people and very dog friendly!\\n\\nThe condo is bright and airy with mostly white finishes and furniture. There are 2 terraces on opposite ends of the unit, so you almost always have the choice of sun or shade. It is in the quietest corner of the complex and the space has a great flow and great light. You can walk everywhere in the village of Palm Springs and don't even need a car (a rarity in PS!). The pool area is large and quiet and there are plenty of chaises. The 2 huge spas and 2 tennis courts are rarely occupied. Very friendly people and very dog friendly!\\n\\nThe condo is bright and airy with mostly white finishes and furniture. There are 2 terraces on opposite ends of the unit, so you almost always have the choice of sun or shade. It is in the quietest corner of the complex and the space has a great flow and great light. You can walk everywhere in the village of Palm Springs and don't even need a car (a rarity in PS!). The pool area is large and quiet and there are plenty of chaises. The 2 huge spas and 2 tennis courts are rarely occupied. Very friendly people and very dog friendly!\\n\\nThe condo is bright and airy with mostly white finishes and furniture. There are 2 terraces on opposite ends of the unit, so you almost always have the choice of sun or shade. It is in the quietest corner of the complex and the space has a great flow and great light. You can walk everywhere in the village of Palm Springs and don't even need a car (a rarity in PS!). The pool area is large and quiet and there are plenty of chaises. The 2 huge spas and 2 tennis courts are rarely occupied. Very friendly people and very dog friendly!\",\n                \"bedrooms\": 2,\n                \"beds\": 1,\n                \"bathrooms\": 2,\n                \"created_at\": \"2021-04-28T12:54:56Z\",\n                \"uplisting_domain\": \"https://vincent.bookeddirectly.com\",\n                \"property_slug\": \"e6d957\"\n            },\n            \"relationships\": {\n                \"address\": {\n                    \"data\": {\n                        \"id\": \"22888\",\n                        \"type\": \"addresses\"\n                    }\n                },\n                \"photos\": {\n                    \"data\": [\n                        {\n                            \"id\": \"368280\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368282\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368283\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368287\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368290\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368291\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368295\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368296\",\n                            \"type\": \"photos\"\n                        },\n                        {\n                            \"id\": \"368301\",\n                            \"type\": \"photos\"\n                        }\n                    ]\n                },\n                \"amenities\": {\n                    \"data\": [\n                        {\n                            \"id\": \"7\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"15\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"17\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"18\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"20\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"24\",\n                            \"type\": \"amenities\"\n                        },\n                        {\n                            \"id\": \"35\",\n                            \"type\": \"amenities\"\n                        }\n                    ]\n                },\n                \"multi_units\": {\n                    \"data\": []\n                }\n            }\n        }\n    ],\n    \"included\": [\n        {\n            \"id\": \"14694\",\n            \"type\": \"addresses\",\n            \"attributes\": {\n                \"street\": \"Ermine House, 104 Parnell Road\",\n                \"suite\": null,\n                \"city\": \"London\",\n                \"state\": \"England\",\n                \"zip_code\": \"E3 2QQ\",\n                \"country\": \"United Kingdom\",\n                \"latitude\": 51.535862,\n                \"longitude\": -0.02806\n            }\n        },\n        {\n            \"id\": \"159354\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/mzN2l6UdT3iAk73pOnO7\",\n                \"order\": 2,\n                \"created_at\": \"2020-01-16T21:55:50Z\",\n                \"updated_at\": \"2020-01-16T21:55:50Z\"\n            }\n        },\n        {\n            \"id\": \"159355\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/l2Y7kSpCS4WCYdiRTiEo\",\n                \"order\": 6,\n                \"created_at\": \"2020-01-16T21:55:50Z\",\n                \"updated_at\": \"2020-01-16T21:55:50Z\"\n            }\n        },\n        {\n            \"id\": \"159356\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/bBqllQaBQSaSLIeoT7CO\",\n                \"order\": 8,\n                \"created_at\": \"2020-01-16T21:55:50Z\",\n                \"updated_at\": \"2020-01-16T21:55:50Z\"\n            }\n        },\n        {\n            \"id\": \"159357\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/Kwo8Vw81QcihuXlZZwcF\",\n                \"order\": 9,\n                \"created_at\": \"2020-01-16T21:55:50Z\",\n                \"updated_at\": \"2020-01-16T21:55:50Z\"\n            }\n        },\n        {\n            \"id\": \"159358\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/AjBVRLBRTGAeB2KOXKA4\",\n                \"order\": 10,\n                \"created_at\": \"2020-01-16T21:55:50Z\",\n                \"updated_at\": \"2020-01-16T21:55:50Z\"\n            }\n        },\n        {\n            \"id\": \"159359\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/hE36L2EXTCSexpmFtAcr\",\n                \"order\": 7,\n                \"created_at\": \"2020-01-16T21:55:50Z\",\n                \"updated_at\": \"2020-01-16T21:55:50Z\"\n            }\n        },\n        {\n            \"id\": \"159360\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/8EnMs0ZSeeef1Pdz6jEE\",\n                \"order\": 5,\n                \"created_at\": \"2020-01-16T21:55:50Z\",\n                \"updated_at\": \"2020-01-16T21:55:50Z\"\n            }\n        },\n        {\n            \"id\": \"159361\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/yEswEYOzRaiOBsk90s3w\",\n                \"order\": 1,\n                \"created_at\": \"2020-01-16T21:55:50Z\",\n                \"updated_at\": \"2020-01-16T21:55:50Z\"\n            }\n        },\n        {\n            \"id\": \"159362\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/35gNrn8AQRORHMpAa9XZ\",\n                \"order\": 3,\n                \"created_at\": \"2020-01-16T21:55:50Z\",\n                \"updated_at\": \"2020-01-16T21:55:50Z\"\n            }\n        },\n        {\n            \"id\": \"159363\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/92ArLFyDQGSB4NDiQfvX\",\n                \"order\": 4,\n                \"created_at\": \"2020-01-16T21:55:50Z\",\n                \"updated_at\": \"2020-01-16T21:55:50Z\"\n            }\n        },\n        {\n            \"id\": \"159364\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/7qaahVoQ0aMB4lRWHeiw\",\n                \"order\": 11,\n                \"created_at\": \"2020-01-16T21:55:52Z\",\n                \"updated_at\": \"2020-01-16T21:55:52Z\"\n            }\n        },\n        {\n            \"id\": \"159365\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/t4QwI6GTxixNBpiZuztS\",\n                \"order\": 15,\n                \"created_at\": \"2020-01-16T21:55:52Z\",\n                \"updated_at\": \"2020-01-16T21:55:52Z\"\n            }\n        },\n        {\n            \"id\": \"159366\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/oCkIwU7RnapT5ZCtKkQ6\",\n                \"order\": 13,\n                \"created_at\": \"2020-01-16T21:55:52Z\",\n                \"updated_at\": \"2020-01-16T21:55:52Z\"\n            }\n        },\n        {\n            \"id\": \"159367\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/hm6xv4EoRNaVMZXFMmNk\",\n                \"order\": 18,\n                \"created_at\": \"2020-01-16T21:55:52Z\",\n                \"updated_at\": \"2020-01-16T21:55:52Z\"\n            }\n        },\n        {\n            \"id\": \"159368\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/8SEduoETjm8995dERwTw\",\n                \"order\": 14,\n                \"created_at\": \"2020-01-16T21:55:52Z\",\n                \"updated_at\": \"2020-01-16T21:55:52Z\"\n            }\n        },\n        {\n            \"id\": \"159369\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/WmvYnbSkSAJviyveOVDm\",\n                \"order\": 16,\n                \"created_at\": \"2020-01-16T21:55:52Z\",\n                \"updated_at\": \"2020-01-16T21:55:52Z\"\n            }\n        },\n        {\n            \"id\": \"159370\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/Vl7ul0pmTOS6qMrf2316\",\n                \"order\": 12,\n                \"created_at\": \"2020-01-16T21:55:52Z\",\n                \"updated_at\": \"2020-01-16T21:55:52Z\"\n            }\n        },\n        {\n            \"id\": \"159371\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/T3DK5SdCTqOC9Q50SmMX\",\n                \"order\": 19,\n                \"created_at\": \"2020-01-16T21:55:52Z\",\n                \"updated_at\": \"2020-01-16T21:55:52Z\"\n            }\n        },\n        {\n            \"id\": \"159372\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/CZABtJh3SMJsl2KLb1UY\",\n                \"order\": 20,\n                \"created_at\": \"2020-01-16T21:55:52Z\",\n                \"updated_at\": \"2020-01-16T21:55:52Z\"\n            }\n        },\n        {\n            \"id\": \"159373\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/YLQ9mfp5RRa9BvED1mFo\",\n                \"order\": 17,\n                \"created_at\": \"2020-01-16T21:55:54Z\",\n                \"updated_at\": \"2020-01-16T21:55:54Z\"\n            }\n        },\n        {\n            \"id\": \"159374\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/tsp0k9uxT3OxUmGNbL7W\",\n                \"order\": 23,\n                \"created_at\": \"2020-01-16T21:55:54Z\",\n                \"updated_at\": \"2020-01-16T21:55:54Z\"\n            }\n        },\n        {\n            \"id\": \"159375\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/5DxjHvvcSluO8T4YKraG\",\n                \"order\": 21,\n                \"created_at\": \"2020-01-16T21:55:54Z\",\n                \"updated_at\": \"2020-01-16T21:55:54Z\"\n            }\n        },\n        {\n            \"id\": \"159376\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/0L1iXMcRCmFwwC42oOdw\",\n                \"order\": 24,\n                \"created_at\": \"2020-01-16T21:55:54Z\",\n                \"updated_at\": \"2020-01-16T21:55:54Z\"\n            }\n        },\n        {\n            \"id\": \"159377\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/tj1AFg7ZRZnMhpVqqjDp\",\n                \"order\": 26,\n                \"created_at\": \"2020-01-16T21:55:54Z\",\n                \"updated_at\": \"2020-01-16T21:55:54Z\"\n            }\n        },\n        {\n            \"id\": \"159378\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/iz5qygNvR9iJKROhj6F8\",\n                \"order\": 22,\n                \"created_at\": \"2020-01-16T21:55:54Z\",\n                \"updated_at\": \"2020-01-16T21:55:54Z\"\n            }\n        },\n        {\n            \"id\": \"159379\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/94O3CfpoRfCnGdYWsf6b\",\n                \"order\": 25,\n                \"created_at\": \"2020-01-16T21:55:54Z\",\n                \"updated_at\": \"2020-01-16T21:55:54Z\"\n            }\n        },\n        {\n            \"id\": \"1\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Oven\",\n                \"group\": \"Kitchen & Dining\"\n            }\n        },\n        {\n            \"id\": \"2\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Microwave\",\n                \"group\": \"Kitchen & Dining\"\n            }\n        },\n        {\n            \"id\": \"4\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Coffee Maker\",\n                \"group\": \"Kitchen & Dining\"\n            }\n        },\n        {\n            \"id\": \"7\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Kitchen\",\n                \"group\": \"Kitchen & Dining\"\n            }\n        },\n        {\n            \"id\": \"9\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Pantry Items\",\n                \"group\": \"Kitchen & Dining\"\n            }\n        },\n        {\n            \"id\": \"10\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Refrigerator\",\n                \"group\": \"Kitchen & Dining\"\n            }\n        },\n        {\n            \"id\": \"11\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Stove\",\n                \"group\": \"Kitchen & Dining\"\n            }\n        },\n        {\n            \"id\": \"14\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Heating\",\n                \"group\": \"Popular Amenities\"\n            }\n        },\n        {\n            \"id\": \"15\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Washing Machine\",\n                \"group\": \"Popular Amenities\"\n            }\n        },\n        {\n            \"id\": \"17\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Linens Provided\",\n                \"group\": \"Popular Amenities\"\n            }\n        },\n        {\n            \"id\": \"18\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Towels Provided\",\n                \"group\": \"Popular Amenities\"\n            }\n        },\n        {\n            \"id\": \"24\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Hair Dryer\",\n                \"group\": \"Popular Amenities\"\n            }\n        },\n        {\n            \"id\": \"25\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Iron & Board\",\n                \"group\": \"Popular Amenities\"\n            }\n        },\n        {\n            \"id\": \"35\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Television\",\n                \"group\": \"Entertainment\"\n            }\n        },\n        {\n            \"id\": \"64\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Lawn / Garden\",\n                \"group\": \"Outdoor Features\"\n            }\n        },\n        {\n            \"id\": \"15111\",\n            \"type\": \"addresses\",\n            \"attributes\": {\n                \"street\": \"3503 B Street\",\n                \"suite\": null,\n                \"city\": \"London\",\n                \"state\": \"PA\",\n                \"zip_code\": \"19134\",\n                \"country\": \"United States\",\n                \"latitude\": 40.003384,\n                \"longitude\": -75.123993\n            }\n        },\n        {\n            \"id\": \"169717\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/troqnMHvRBuSYz0cB1Wb\",\n                \"order\": 10,\n                \"created_at\": \"2020-02-14T01:06:57Z\",\n                \"updated_at\": \"2020-02-14T01:06:57Z\"\n            }\n        },\n        {\n            \"id\": \"169718\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/oQGL8nVTFeJRHGqLVzXz\",\n                \"order\": 3,\n                \"created_at\": \"2020-02-14T01:06:57Z\",\n                \"updated_at\": \"2020-02-14T01:06:57Z\"\n            }\n        },\n        {\n            \"id\": \"169719\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/0Xmlo0RkO89vKQOy8miQ\",\n                \"order\": 5,\n                \"created_at\": \"2020-02-14T01:06:57Z\",\n                \"updated_at\": \"2020-02-14T01:06:57Z\"\n            }\n        },\n        {\n            \"id\": \"169720\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/DJaEox52TEKYZvYkccwJ\",\n                \"order\": 2,\n                \"created_at\": \"2020-02-14T01:06:57Z\",\n                \"updated_at\": \"2020-02-14T01:06:57Z\"\n            }\n        },\n        {\n            \"id\": \"169721\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/7LqkXS4wQU2iT1bFdcRl\",\n                \"order\": 6,\n                \"created_at\": \"2020-02-14T01:06:57Z\",\n                \"updated_at\": \"2020-02-14T01:06:57Z\"\n            }\n        },\n        {\n            \"id\": \"169722\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/CRbwy0KVR5ie4eneiQAS\",\n                \"order\": 7,\n                \"created_at\": \"2020-02-14T01:06:57Z\",\n                \"updated_at\": \"2020-02-14T01:06:57Z\"\n            }\n        },\n        {\n            \"id\": \"169723\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/Wdth3lZARFasdB2R4b8r\",\n                \"order\": 4,\n                \"created_at\": \"2020-02-14T01:06:57Z\",\n                \"updated_at\": \"2020-02-14T01:06:57Z\"\n            }\n        },\n        {\n            \"id\": \"169724\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/mPi14Z2QpCex6svaLBTA\",\n                \"order\": 9,\n                \"created_at\": \"2020-02-14T01:06:57Z\",\n                \"updated_at\": \"2020-02-14T01:06:57Z\"\n            }\n        },\n        {\n            \"id\": \"169725\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/925K6DMTKSpM5SSiZ11h\",\n                \"order\": 1,\n                \"created_at\": \"2020-02-14T01:06:57Z\",\n                \"updated_at\": \"2020-02-14T01:06:57Z\"\n            }\n        },\n        {\n            \"id\": \"169726\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/R2W9sdEIQcWSs5VU4F9s\",\n                \"order\": 8,\n                \"created_at\": \"2020-02-14T01:06:57Z\",\n                \"updated_at\": \"2020-02-14T01:06:57Z\"\n            }\n        },\n        {\n            \"id\": \"169727\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/1e2WKdxfTGyBOAoUbpDs\",\n                \"order\": 11,\n                \"created_at\": \"2020-02-14T01:06:59Z\",\n                \"updated_at\": \"2020-02-14T01:06:59Z\"\n            }\n        },\n        {\n            \"id\": \"169728\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/rdMc82sLRd2mEepr4znX\",\n                \"order\": 12,\n                \"created_at\": \"2020-02-14T01:06:59Z\",\n                \"updated_at\": \"2020-02-14T01:06:59Z\"\n            }\n        },\n        {\n            \"id\": \"22887\",\n            \"type\": \"addresses\",\n            \"attributes\": {\n                \"street\": \"Albion Street\",\n                \"suite\": null,\n                \"city\": \"London\",\n                \"state\": \"England\",\n                \"zip_code\": \"E32QQ\",\n                \"country\": \"United Kingdom\",\n                \"latitude\": 53.798321,\n                \"longitude\": -1.54506\n            }\n        },\n        {\n            \"id\": \"368276\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/F1uRfIQpWXN55QHDlDfw\",\n                \"order\": 4,\n                \"created_at\": \"2021-04-28T12:54:57Z\",\n                \"updated_at\": \"2021-04-28T12:54:57Z\"\n            }\n        },\n        {\n            \"id\": \"368277\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/G7hx7A1sSyKuFkdKyDTQ\",\n                \"order\": 1,\n                \"created_at\": \"2021-04-28T12:54:57Z\",\n                \"updated_at\": \"2021-04-28T12:54:57Z\"\n            }\n        },\n        {\n            \"id\": \"368278\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/DZKK2aVxSSWtvVhR4nra\",\n                \"order\": 5,\n                \"created_at\": \"2021-04-28T12:54:58Z\",\n                \"updated_at\": \"2021-04-28T12:54:58Z\"\n            }\n        },\n        {\n            \"id\": \"368279\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/9nEJGiu1QWZxS4c6Rz2R\",\n                \"order\": 6,\n                \"created_at\": \"2021-04-28T12:54:58Z\",\n                \"updated_at\": \"2021-04-28T12:54:58Z\"\n            }\n        },\n        {\n            \"id\": \"368281\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/hvCLiSvYS1GTzD8cZWrT\",\n                \"order\": 3,\n                \"created_at\": \"2021-04-28T12:54:58Z\",\n                \"updated_at\": \"2021-04-28T12:54:58Z\"\n            }\n        },\n        {\n            \"id\": \"368284\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/nM2WN5DR3itbXpnzDP3O\",\n                \"order\": 2,\n                \"created_at\": \"2021-04-28T12:54:59Z\",\n                \"updated_at\": \"2021-04-28T12:54:59Z\"\n            }\n        },\n        {\n            \"id\": \"368285\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/gmdd026YQY23ANNpOTQq\",\n                \"order\": 7,\n                \"created_at\": \"2021-04-28T12:54:59Z\",\n                \"updated_at\": \"2021-04-28T12:54:59Z\"\n            }\n        },\n        {\n            \"id\": \"368286\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/YeFLj49KSYifOR82ugYl\",\n                \"order\": 8,\n                \"created_at\": \"2021-04-28T12:54:59Z\",\n                \"updated_at\": \"2021-04-28T12:54:59Z\"\n            }\n        },\n        {\n            \"id\": \"20\",\n            \"type\": \"amenities\",\n            \"attributes\": {\n                \"name\": \"Free parking on premises\",\n                \"group\": \"Popular Amenities\"\n            }\n        },\n        {\n            \"id\": \"22888\",\n            \"type\": \"addresses\",\n            \"attributes\": {\n                \"street\": \"Ermine House, 104 Parnell Road\",\n                \"suite\": null,\n                \"city\": \"London\",\n                \"state\": \"England\",\n                \"zip_code\": \"E3 2QQ\",\n                \"country\": \"United Kingdom\",\n                \"latitude\": 51.535862,\n                \"longitude\": -0.02806\n            }\n        },\n        {\n            \"id\": \"368280\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/xYVVzM60QKydash35jbH\",\n                \"order\": 3,\n                \"created_at\": \"2021-04-28T12:54:58Z\",\n                \"updated_at\": \"2021-04-28T12:54:58Z\"\n            }\n        },\n        {\n            \"id\": \"368282\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/PP4MMTo2SCKIsHmUwZV6\",\n                \"order\": 4,\n                \"created_at\": \"2021-04-28T12:54:58Z\",\n                \"updated_at\": \"2021-04-28T12:54:58Z\"\n            }\n        },\n        {\n            \"id\": \"368283\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/yoBdtjGJRVytKpWBqRRq\",\n                \"order\": 6,\n                \"created_at\": \"2021-04-28T12:54:59Z\",\n                \"updated_at\": \"2021-04-28T12:54:59Z\"\n            }\n        },\n        {\n            \"id\": \"368287\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/c5Nv0gJtTvWoyoY48tCs\",\n                \"order\": 7,\n                \"created_at\": \"2021-04-28T12:54:59Z\",\n                \"updated_at\": \"2021-04-28T12:54:59Z\"\n            }\n        },\n        {\n            \"id\": \"368290\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/TLXuGlqeTaOxgP97cNog\",\n                \"order\": 2,\n                \"created_at\": \"2021-04-28T12:55:00Z\",\n                \"updated_at\": \"2021-04-28T12:55:00Z\"\n            }\n        },\n        {\n            \"id\": \"368291\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/aj4FZ6ISWy6jQWNTeKjh\",\n                \"order\": 1,\n                \"created_at\": \"2021-04-28T12:55:00Z\",\n                \"updated_at\": \"2021-04-28T12:55:00Z\"\n            }\n        },\n        {\n            \"id\": \"368295\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/tLYWLgUzQGWbBGyI10vz\",\n                \"order\": 9,\n                \"created_at\": \"2021-04-28T12:55:01Z\",\n                \"updated_at\": \"2021-04-28T12:55:01Z\"\n            }\n        },\n        {\n            \"id\": \"368296\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/FZv1GErS6OZLEolfUrlD\",\n                \"order\": 5,\n                \"created_at\": \"2021-04-28T12:55:01Z\",\n                \"updated_at\": \"2021-04-28T12:55:01Z\"\n            }\n        },\n        {\n            \"id\": \"368301\",\n            \"type\": \"photos\",\n            \"attributes\": {\n                \"url\": \"https://cdn.filestackcontent.com/6KzI0OpQQyKcpUxHJIQe\",\n                \"order\": 8,\n                \"created_at\": \"2021-04-28T12:55:01Z\",\n                \"updated_at\": \"2021-04-28T12:55:01Z\"\n            }\n        }\n    ]\n}"}],"_postman_id":"9b8d0e57-9a3c-4ceb-82a0-bf5e5b4a3ac9"},{"name":"Bookings","id":"860dbcee-0324-440a-8f74-d47d1b214ac9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Basic YzhlZGU3NDctNDUzNi00MGVmLWJkYWMtMzZjZjVlMGQxZDVk","description":"<p>Base64 encoded API key</p>\n","type":"text"}],"url":"https://connect.uplisting.io/bookings/:listing_id?from=2020-12-10&to=2020-12-20","description":"<p>To retrieve the bookings for a property, you should GET the above endpoint.</p>\n<p>The response is limited to a maximum of 50 bookings at a time but is paginated so more bookings can be retrieved, as required.</p>\n<p><strong>Date range options</strong></p>\n<ul>\n<li>Specify neither <code>from</code> or <code>to</code> and get a year from today (UTC based)<br />  <code>https://connect.uplisting.io/bookings/:listing_id</code></li>\n<li>Specify a <code>from</code> only to get 12 months worth of data from that point<br />  <code>https://connect.uplisting.io/bookings/:listing_id?from=2020-02-01</code></li>\n<li>Specify <code>from</code> and <code>to</code> and get paginated bookings within that date range</li>\n<li><code>https://connect.uplisting.io/bookings/:listing_id?from=2020-02-01&amp;to=2021-12-01</code></li>\n</ul>\n<p><strong>Pagination options</strong></p>\n<ul>\n<li>Specify <code>page=X</code> to get a 0-based page of results.</li>\n<li>Specify <code>per_page=X</code> to retrieve less than the default of 50 in each page</li>\n<li>There's <code>meta</code> information included in the response that tells you <code>total</code> bookings and <code>total_pages</code> so you can paginate through as required.</li>\n</ul>\n<p><strong>Booking statuses</strong><br />Bookings can have the following statuses.</p>\n<ul>\n<li><code>confirmed</code> [all bookings are in a confirmed state until one of the below statuses takes affect]</li>\n<li><code>checked_in</code> [a confirmed booking which has been marked as checked-in by the host]</li>\n<li><code>checked_out</code> [a confirmed booking which has been marked as checked-out by the host]</li>\n<li><code>needs_check_in</code> [a confirmed booking which is waiting to be checked-in by the host. The host may not mark this booking as checked-in]</li>\n<li><code>needs_check_out</code> [a confirmed booking which is waiting to be checked-out by the host. The host may not mark this booking as checked-out]</li>\n<li><code>cancelled</code> [a booking which is now cancelled, ie. the booking is not longer active]</li>\n</ul>\n<h3 id=\"response\">Response</h3>\n<p>The response is the same payload as for a <code>booking_updated</code> webhook repeated for each booking retrieved. All bookings are available, including <code>cancelled</code> bookings. See the example for more info.</p>\n","urlObject":{"protocol":"https","path":["bookings",":listing_id"],"host":["connect","uplisting","io"],"query":[{"key":"from","value":"2020-12-10"},{"key":"to","value":"2020-12-20"}],"variable":[{"id":"d60a5218-6259-4089-b6f4-8295dcef433b","type":"any","value":"","key":"listing_id"}]}},"response":[{"id":"fee029f0-68f8-4306-938c-a04a985bdbc6","name":"Bookings response","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Basic YzhlZGU3NDctNDUzNi00MGVmLWJkYWMtMzZjZjVlMGQxZDVk","description":"Base64 encoded API key","type":"text"}],"url":{"raw":"https://connect.uplisting.io/bookings/:listing_id?from=2020-12-10&to=2020-12-20","protocol":"https","host":["connect","uplisting","io"],"path":["bookings",":listing_id"],"query":[{"key":"from","value":"2020-12-10"},{"key":"to","value":"2020-12-20"}],"variable":[{"key":"listing_id","value":""}]}},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n    \"bookings\": [\n        {\n            \"id\": 162354,\n            \"currency\": \"GBP\",\n            \"property_name\": \"BDC Double (London)\",\n            \"property_id\": 11033,\n            \"check_in\": \"2020-12-04\",\n            \"check_out\": \"2020-12-09\",\n            \"arrival_time\": \"15:00:00\",\n            \"departure_time\": \"11:00:00\",\n            \"number_of_nights\": 5,\n            \"guest_name\": \"Stefan\",\n            \"guest_email\": \"stefan@uplisting.io\",\n            \"guest_phone\": \"432\",\n            \"lock_code\": \"1234\",\n            \"status\": \"checked_out\",\n            \"channel\": \"uplisting\",\n            \"external_reservation_id\": null,\n            \"number_of_guests\": 1,\n            \"accomodation_total\": 645.0,\n            \"cleaning_fee\": 100.0,\n            \"commission\": null,\n            \"other_charges\": null,\n            \"total_payout\": 700.49,\n            \"accommodation_management_fee\": 206.4,\n            \"cleaning_management_fee\": 50.0,\n            \"total_management_fee\": 256.4,\n            \"booked_at\": \"2020-10-29T16:48:07Z\"\n        },\n        {\n            \"id\": 162569,\n            \"currency\": \"GBP\",\n            \"property_name\": \"BDC Double (London)\",\n            \"property_id\": 11033,\n            \"check_in\": \"2020-12-10\",\n            \"check_out\": \"2020-12-13\",\n            \"arrival_time\": \"14:00:00\",\n            \"departure_time\": \"11:00:00\",\n            \"number_of_nights\": 3,\n            \"guest_name\": \"James Jones\",\n            \"guest_email\": null,\n            \"guest_phone\": null,\n            \"lock_code\": null,\n            \"status\": \"needs_check_out\",\n            \"channel\": \"uplisting\",\n            \"external_reservation_id\": null,\n            \"number_of_guests\": 1,\n            \"accomodation_total\": 113.0,\n            \"cleaning_fee\": 100.0,\n            \"commission\": null,\n            \"other_charges\": null,\n            \"total_payout\": 307.73,\n            \"accommodation_management_fee\": 56.5,\n            \"cleaning_management_fee\": 50.0,\n            \"total_management_fee\": 106.5,\n            \"booked_at\": \"2020-12-09T16:44:23Z\"\n        }\n    ],\n    \"meta\": {\n        \"total_pages\": 1,\n        \"total\": 2\n    }\n}"}],"_postman_id":"860dbcee-0324-440a-8f74-d47d1b214ac9"},{"name":"Calendar","id":"3a8735fb-d35b-4980-a65b-ab42d09a33dd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Basic YzhlZGU3NDctNDUzNi00MGVmLWJkYWMtMzZjZjVlMGQxZDVk","description":"<p>Base64 encoded API key</p>\n","type":"text"}],"url":"https://connect.uplisting.io/calendar/:listing_id?from=2020-12-10&to=2020-12-20","description":"<p>To retrieve the calendar for a property, you should GET to the above endpoint.</p>\n<p>The response is limited to 12 months at one time.</p>\n<p><strong>Date range options</strong></p>\n<ul>\n<li><p>Specify neither <code>from</code> or <code>to</code> and get a year from today<br />  <code>https://connect.uplisting.io/calendar/:listing_id</code></p>\n</li>\n<li><p>Specify a <code>from</code> only to get 12 months worth of data from that point<br />  <code>https://connect.uplisting.io/calendar/:listing_id?from=2020-02-01</code></p>\n</li>\n<li><p>Specify <code>from</code> and <code>to</code> and get up up to 12 months worth of data within that date range</p>\n</li>\n<li><p><code>https://connect.uplisting.io/calendar/:listing_id?from=2020-02-01&amp;to=2021-12-01</code></p>\n</li>\n</ul>\n<h3 id=\"response\">Response</h3>\n<p>Included in the response is the price, and restrictions such as availability, minimum length of stay and closed for arrival, e.g:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"available\": true,\n\"available_count: 1,\n\"date\": \"2020-12-10\",\n\"day_rate\": 150,\n\"minimum_length_of_stay\": 5,\n\"maximum_nights_available\": 15,\n\"closed_for_arrival\": false,\n\"closed_for_departure\": false\n\n</code></pre><p><code>available</code>: this is a simple true/false as to whether the property is available on the date listed.</p>\n<p><code>available_count</code>: this indicates how many properties are available on that date. It will be 1 unless a property has multi-units attached to it. For multi-units, it indicates how many units are available on that date.</p>\n<p><code>date</code>: the day the details are for</p>\n<p><code>day_rate</code>: the price (in the property's currency)</p>\n<p><code>minimum_length_of_stay</code>: The minimum length for any booking that starts on this date.</p>\n<p><code>maximum_nights_available</code>: How many nights can be booking in a contiguous block. Note that this may actually be <em>less</em> than the <code>minimum_length_of_stay</code> because the MLOS is a property-specific restriction and is not date-specific.</p>\n<p><code>closed_for_arrival</code>: true/false as to whether a booking can check-in on this date.</p>\n<p><code>closed_for_departure</code>: true/false as to whether a booking can check-out on this date.</p>\n","urlObject":{"protocol":"https","path":["calendar",":listing_id"],"host":["connect","uplisting","io"],"query":[{"key":"from","value":"2020-12-10"},{"key":"to","value":"2020-12-20"}],"variable":[{"id":"d494c8c7-11f1-4c0b-abdc-d1ffed4d7b0b","type":"any","value":"","key":"listing_id"}]}},"response":[{"id":"d3e42c5c-281b-4b40-bb80-34f4c6ff1dc0","name":"Calendar response","originalRequest":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Basic API KEY","description":"Base64 encoded API key","type":"text"}],"url":{"raw":"https://connect.uplisting.io/calendar/18475?from=2020-12-10&to=2020-12-20","protocol":"https","host":["connect","uplisting","io"],"path":["calendar","18475"],"query":[{"key":"from","value":"2020-12-10"},{"key":"to","value":"2020-12-20"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Cowboy"},{"key":"Date","value":"Thu, 10 Dec 2020 19:32:51 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"DENY"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Xss-Protection","value":"1; mode=block"},{"key":"Content-Security-Policy","value":"form-action 'self'; frame-ancestors 'self'; base-uri 'self'; default-src 'none'; script-src 'self'; connect-src 'self'; img-src 'self' https: data:; style-src 'self' 'unsafe-inline' https:; font-src 'self'; object-src 'none'; plugin-types application/pdf; child-src 'self'; frame-src 'self'; media-src 'self'"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Vary","value":"Accept-Encoding, Origin"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Length","value":"211"},{"key":"Via","value":"1.1 vegur"}],"cookie":[],"responseTime":null,"body":"{\n    \"calendar\": {\n        \"days\": [\n            {\n                \"available\": true,\n                \"available_count\": 1,\n                \"date\": \"2021-08-27\",\n                \"day_rate\": 131.0,\n                \"minimum_length_of_stay\": 4,\n                \"maximum_available_nights\": 343,\n                \"closed_for_arrival\": false,\n                \"closed_for_departure\": false\n            },\n            {\n                \"available\": true,\n                \"available_count\": 1,\n                \"date\": \"2021-08-28\",\n                \"day_rate\": 131.0,\n                \"minimum_length_of_stay\": 4,\n                \"maximum_available_nights\": 342,\n                \"closed_for_arrival\": false,\n                \"closed_for_departure\": false\n            },\n            {\n                \"available\": true,\n                \"available_count\": 1,\n                \"date\": \"2021-08-29\",\n                \"day_rate\": 131.0,\n                \"minimum_length_of_stay\": 4,\n                \"maximum_available_nights\": 341,\n                \"closed_for_arrival\": false,\n                \"closed_for_departure\": false\n            },\n            {\n                \"available\": true,\n                \"available_count\": 1,\n                \"date\": \"2021-08-30\",\n                \"day_rate\": 131.0,\n                \"minimum_length_of_stay\": 4,\n                \"maximum_available_nights\": 340,\n                \"closed_for_arrival\": false,\n                \"closed_for_departure\": false\n            }\n        ]\n    }\n}"}],"_postman_id":"3a8735fb-d35b-4980-a65b-ab42d09a33dd"},{"name":"Update calendar","id":"ba561fd4-02d4-4c40-9d21-6e0066b65a4b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Basic YzhlZGU3NDctNDUzNi00MGVmLWJkYWMtMzZjZjVlMGQxZDVk","description":"<p>Base64 encoded API key</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"notification_url\": \"https://yourdomain.eu.ngrok.io/notification\",\n\t\"calendar\": {\n\t\t\"days\": [\n            {\n               \"available\": true,\n                \"date\": \"2020-12-13\",\n                \"day_rate\": 170.0,\n                \"minimum_length_of_stay\": 2,\n                \"closed_for_arrival\": false,\n                \"closed_for_departure\": true\n            },\n            {\n              \"available\": false,\n              \"from\": \"2021-01-01\",\n              \"to\": \"2021-02-01\"\n            }\n\t\t]\n\t}\n}"},"url":"https://connect.uplisting.io/calendar/:listing_id","description":"<p>Uplisting provides calendar-based endpoints for updating rates, availability and minimum length of stay for a specific date range. Any updates made via the API are broadcast to all channels the property is connected to on Uplisting.</p>\n<p><strong>Notification</strong></p>\n<p>This POST results in an asynchronous response to the server listed at the notification_url with a payload indicating success/failure of the changes requested and including that request ID so the response can be matched to the initial POST.</p>\n<p>The notification URL is not required. If no URL is provided, no notifications will be sent.</p>\n<p>We recommend using ngrok (<a href=\"https://ngrok.com\">https://ngrok.com</a>) to create a publicly accessible URL that tunnels back to your development server for testing purposes. They have a free tier that will enable you to test the Uplisting API.</p>\n<p><strong>Delay</strong></p>\n<p>The changes received in the payload to this POST call are not applied immediately to the property. Instead, the payload is scheduled for processing by Uplisting and will be applied to the property asynchronously. The payload contains a notification_url that is used to provide a response to the partner indicating success or failure of the relevant updates.</p>\n<p>This delay is typically less than 1 minute.</p>\n<p><strong>Note</strong></p>\n<ul>\n<li><p>If the property ID is not part of the account specified by the API key, the notification URL will not receive a response.</p>\n</li>\n<li><p>If the payload is considered invalid, the response will be <code>400 Bad Request</code> with human readable errors indicating why the payload is considered invalid.</p>\n</li>\n<li><p>The date the rate, availability, MLOS update can either be a single day, specified as <code>date</code> or as a date range using <code>from</code> and <code>to</code>. Note that the night of the to date is always excluded, as it’s considered the morning only. So, to include a range <em>including</em> all nights from <code>2020-12-01</code> to the night of <code>2020-12-10</code>, the to should be set to <code>2020-12-11</code>.</p>\n</li>\n<li><p>All attributes can be set for up to 3 years in advance. <strong>Any dates before “today” in UTC will be ignored</strong>.</p>\n</li>\n<li><p>Availability is specified either as <code>true</code> if the property can be booked or <code>false</code> if the property is not available to be booked. The availability specified here is for the night of the date specified, or as above to the night before the <code>to</code> date.</p>\n</li>\n<li><p>The rate for the date, or date range, is specified in the currency of the property that is set on Uplisting. It should be a “commission-free” rate as appropriate markup will be applied to this rate when syncing prices to connected channels.</p>\n</li>\n<li><p><code>available</code>, <code>minimum_length_of_stay</code>, <code>day_rate</code>, <code>closed_for_arrival,</code> and <code>closed_for_departure</code> are all optional attributes, meaning you can set a rate and/or availability and/or minimum length of stay and/or closed for arrival and departure restrictions.</p>\n</li>\n<li><p>Any other attributes added to the payload will be ignored.</p>\n</li>\n</ul>\n<p><strong>Notification URL response</strong></p>\n<p>The notification URL is specified by the partner and can have any valid format. It must be an HTTPS endpoint.</p>\n<p>A Base64 encoded partner API key will be included in the <code>HTTP_AUTHORIZATION</code> header to confirm that the response is from Uplisting.</p>\n<p>The response will be a list of the correctly applied rate and/or availability and/or MLOS as listed below:</p>\n<p><code>{   \"request_id\": \"fe845d4e-9fa2-4f85-b6ee-680d7f97803e\"   \"calendar\": {   \"days\": [   {   \"available\": true,   \"day_rate\": 66,   \"date\": \"2019-12-20\",   \"minimum_length_of_stay\":1,   \"closed_for_arrival\": false,   \"closed_for_departure\": true   },   {   \"available\": false,   \"from\": \"2019-12-31\",   \"to\": \"2020-01-31\"   }   ]   }   }</code></p>\n","urlObject":{"protocol":"https","path":["calendar",":listing_id"],"host":["connect","uplisting","io"],"query":[],"variable":[{"id":"eff4f1ac-a871-4573-8bb8-821179756579","type":"any","value":"","key":"listing_id"}]}},"response":[{"id":"3c503053-fdc1-4819-afc9-4cb159e8c28f","name":"Update calendar","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Basic YzhlZGU3NDctNDUzNi00MGVmLWJkYWMtMzZjZjVlMGQxZDVk","description":"Base64 encoded API key","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"notification_url\": \"https://yourdomain.eu.ngrok.io/notification\",\n\t\"calendar\": {\n\t\t\"days\": [\n            {\n               \"available\": true,\n                \"date\": \"2020-12-13\",\n                \"day_rate\": 170.0,\n                \"minimum_length_of_stay\": 2,\n                \"closed_for_arrival\": false,\n                \"closed_for_departure\": true\n            },\n            {\n              \"available\": false,\n              \"from\": \"2021-01-01\",\n              \"to\": \"2021-02-01\"\n            }\n\t\t]\n\t}\n}"},"url":{"raw":"https://connect.uplisting.io/calendar/:listing_id","protocol":"https","host":["connect","uplisting","io"],"path":["calendar",":listing_id"],"variable":[{"key":"listing_id","value":""}]}},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Cowboy"},{"key":"Date","value":"Thu, 10 Dec 2020 19:38:35 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Vary","value":"Accept-Encoding"},{"key":"Content-Encoding","value":"gzip"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Via","value":"1.1 vegur"}],"cookie":[],"responseTime":null,"body":"{\n    \"request_id\": \"6a20706e-cd4e-4fe2-a40a-caae48b474a5\"\n}"}],"_postman_id":"ba561fd4-02d4-4c40-9d21-6e0066b65a4b"}],"event":[{"listen":"prerequest","script":{"type":"text/javascript","exec":[""],"id":"60b7502d-b887-4b7e-a77b-f84a92002e5d"}},{"listen":"test","script":{"type":"text/javascript","exec":[""],"id":"3ea1ebbd-82c4-454b-a3bd-3fb3ca2f76da"}}],"variable":[{"key":"baseUrl","value":"https://connect.uplisting.io"},{"key":"authBaseUrl","value":"https://auth.airdna.co"},{"key":"clientId","value":"<your-client-id>"},{"key":"clientSecret","value":"<your-client-secret>"},{"key":"redirectUri","value":"https://your-app.example.com/callback"},{"key":"scope","value":"calendar:read calendar:write properties:read properties:write reviews:read bookings:read bookings:create bookings:update custom_booking_attributes:read custom_booking_attributes:write messaging:read messaging:write"},{"key":"accessToken","value":""},{"key":"refreshToken","value":""}]}