repull 0.2.10 → 0.2.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/lib/repull/api/airbnb_api.rb +332 -99
- data/lib/repull/api/atlas_api.rb +5 -5
- data/lib/repull/api/availability_api.rb +145 -3
- data/lib/repull/api/billing_api.rb +7 -7
- data/lib/repull/api/booking_com_api.rb +210 -54
- data/lib/repull/api/connect_api.rb +761 -8
- data/lib/repull/api/conversations_api.rb +92 -11
- data/lib/repull/api/guests_api.rb +82 -7
- data/lib/repull/api/health_api.rb +318 -0
- data/lib/repull/api/kv_api.rb +1 -1
- data/lib/repull/api/listings_api.rb +303 -24
- data/lib/repull/api/markets_api.rb +3 -3
- data/lib/repull/api/plumguide_api.rb +19 -11
- data/lib/repull/api/pricing_api.rb +15 -15
- data/lib/repull/api/properties_api.rb +12 -9
- data/lib/repull/api/quotes_api.rb +109 -0
- data/lib/repull/api/reservations_api.rb +166 -7
- data/lib/repull/api/reviews_api.rb +81 -7
- data/lib/repull/api/schema_api.rb +1 -1
- data/lib/repull/api/system_api.rb +1 -1
- data/lib/repull/api/vrbo_api.rb +10 -10
- data/lib/repull/api/webhooks_api.rb +11 -9
- data/lib/repull/api_client.rb +1 -1
- data/lib/repull/api_error.rb +1 -1
- data/lib/repull/api_model_base.rb +1 -1
- data/lib/repull/configuration.rb +1 -1
- data/lib/repull/models/account_created_event.rb +1 -1
- data/lib/repull/models/account_created_payload.rb +1 -1
- data/lib/repull/models/account_disconnected_event.rb +1 -1
- data/lib/repull/models/account_disconnected_payload.rb +1 -1
- data/lib/repull/models/acknowledge_booking_reservations_request.rb +1 -1
- data/lib/repull/models/ai_operation.rb +1 -1
- data/lib/repull/models/ai_operation_completed_event.rb +1 -1
- data/lib/repull/models/ai_operation_completed_payload.rb +1 -1
- data/lib/repull/models/ai_operation_failed_event.rb +1 -1
- data/lib/repull/models/ai_operation_failed_payload.rb +1 -1
- data/lib/repull/models/ai_operation_failed_payload_error.rb +1 -1
- data/lib/repull/models/airbnb_alteration.rb +154 -10
- data/lib/repull/models/airbnb_amenity.rb +1 -1
- data/lib/repull/models/airbnb_availability_write_request.rb +20 -1
- data/lib/repull/models/airbnb_calendar_operation.rb +97 -8
- data/lib/repull/models/airbnb_connection.rb +4 -4
- data/lib/repull/models/airbnb_connection_accessibility_amenities_inner.rb +1 -1
- data/lib/repull/models/airbnb_connection_amenities_inner.rb +1 -1
- data/lib/repull/models/airbnb_connection_host.rb +1 -1
- data/lib/repull/models/airbnb_connection_response.rb +1 -1
- data/lib/repull/models/airbnb_connection_summary.rb +1 -1
- data/lib/repull/models/airbnb_data_freshness.rb +3 -3
- data/lib/repull/models/airbnb_listing.rb +2 -2
- data/lib/repull/models/airbnb_listing_action_request.rb +1 -1
- data/lib/repull/models/airbnb_listing_list_response.rb +2 -2
- data/lib/repull/models/airbnb_pricing_write_request.rb +54 -3
- data/lib/repull/models/airbnb_pricing_write_request_records_inner.rb +236 -0
- data/lib/repull/models/airbnb_reservation.rb +1 -1
- data/lib/repull/models/airbnb_reservation_list_response.rb +2 -2
- data/lib/repull/models/airbnb_review.rb +1 -1
- data/lib/repull/models/airbnb_review_list_response.rb +1 -1
- data/lib/repull/models/airbnb_thread.rb +1 -1
- data/lib/repull/models/airbnb_thread_list_response.rb +1 -1
- data/lib/repull/models/airbnb_transaction.rb +502 -0
- data/lib/repull/models/airbnb_transaction_guest_breakdown.rb +171 -0
- data/lib/repull/models/airbnb_transaction_host_breakdown.rb +246 -0
- data/lib/repull/models/airbnb_transaction_payout.rb +175 -0
- data/lib/repull/models/{booking_conversation_list_response.rb → alteration_change.rb} +22 -19
- data/lib/repull/models/alteration_webhook_object.rb +296 -0
- data/lib/repull/models/availability_batch_write_request.rb +296 -0
- data/lib/repull/models/availability_write_request.rb +259 -0
- data/lib/repull/models/availability_write_result.rb +178 -0
- data/lib/repull/models/availability_write_result_synced.rb +176 -0
- data/lib/repull/models/availability_write_settings.rb +215 -0
- data/lib/repull/models/booking_availability_state_response.rb +149 -0
- data/lib/repull/models/booking_availability_update.rb +1 -1
- data/lib/repull/models/booking_availability_update_request.rb +1 -1
- data/lib/repull/models/booking_availability_update_request_property_id.rb +1 -1
- data/lib/repull/models/booking_availability_update_request_updates_inner.rb +1 -1
- data/lib/repull/models/booking_connect_listing_option.rb +1 -1
- data/lib/repull/models/booking_connect_room.rb +1 -1
- data/lib/repull/models/booking_connect_rooms_response.rb +39 -5
- data/lib/repull/models/booking_conversation.rb +1 -1
- data/lib/repull/models/booking_pricing_rate_update.rb +1 -1
- data/lib/repull/models/booking_pricing_rate_update_date_range.rb +1 -1
- data/lib/repull/models/booking_pricing_rate_update_restrictions.rb +1 -1
- data/lib/repull/models/booking_pricing_response.rb +1 -1
- data/lib/repull/models/booking_pricing_update_request.rb +1 -1
- data/lib/repull/models/booking_pricing_update_response.rb +1 -1
- data/lib/repull/models/booking_property.rb +1 -1
- data/lib/repull/models/booking_reservation.rb +277 -0
- data/lib/repull/models/booking_reservation_room.rb +271 -0
- data/lib/repull/models/booking_room_mapping.rb +18 -8
- data/lib/repull/models/booking_rooms_rates_response.rb +170 -0
- data/lib/repull/models/booking_rooms_rates_response_rooms_inner.rb +170 -0
- data/lib/repull/models/booking_rooms_rates_response_rooms_inner_rates_inner.rb +212 -0
- data/lib/repull/models/booking_setup_request.rb +1 -1
- data/lib/repull/models/booking_verify_hotel_request.rb +1 -1
- data/lib/repull/models/booking_verify_hotel_response.rb +40 -6
- data/lib/repull/models/bulk_pricing_failure.rb +1 -1
- data/lib/repull/models/bulk_pricing_item.rb +1 -1
- data/lib/repull/models/bulk_pricing_request.rb +1 -1
- data/lib/repull/models/bulk_pricing_response.rb +1 -1
- data/lib/repull/models/calendar_day.rb +1 -1
- data/lib/repull/models/calendar_response.rb +1 -1
- data/lib/repull/models/calendar_updated_event.rb +1 -1
- data/lib/repull/models/calendar_updated_payload.rb +1 -1
- data/lib/repull/models/calendar_updated_payload_range.rb +1 -1
- data/lib/repull/models/clear_kv200_response.rb +1 -1
- data/lib/repull/models/connect_host.rb +1 -1
- data/lib/repull/models/connect_provider.rb +1 -1
- data/lib/repull/models/connect_provider_list_response.rb +1 -1
- data/lib/repull/models/connect_session.rb +1 -1
- data/lib/repull/models/connect_status.rb +18 -6
- data/lib/repull/models/connect_status_accounts_inner.rb +188 -0
- data/lib/repull/models/connection.rb +1 -1
- data/lib/repull/models/connection_list_response.rb +1 -1
- data/lib/repull/models/conversation.rb +13 -2
- data/lib/repull/models/conversation_detail.rb +13 -2
- data/lib/repull/models/conversation_guest.rb +1 -1
- data/lib/repull/models/conversation_guest_contact.rb +1 -1
- data/lib/repull/models/conversation_host.rb +1 -1
- data/lib/repull/models/conversation_list_response.rb +1 -1
- data/lib/repull/models/conversation_message_attachment.rb +1 -1
- data/lib/repull/models/create_airbnb_alteration_request.rb +1 -1
- data/lib/repull/models/create_airbnb_offer_request.rb +1 -1
- data/lib/repull/models/create_billing_checkout_request.rb +1 -1
- data/lib/repull/models/create_booking_webhook_request.rb +1 -1
- data/lib/repull/models/create_connect_session_request.rb +1 -1
- data/lib/repull/models/create_connection_request.rb +2 -2
- data/lib/repull/models/create_webhook_request.rb +1 -1
- data/lib/repull/models/custom_schema.rb +1 -1
- data/lib/repull/models/custom_schema_create.rb +1 -1
- data/lib/repull/models/custom_schema_create_response.rb +1 -1
- data/lib/repull/models/custom_schema_delete_response.rb +1 -1
- data/lib/repull/models/custom_schema_list_response.rb +1 -1
- data/lib/repull/models/custom_schema_summary.rb +1 -1
- data/lib/repull/models/custom_schema_update.rb +1 -1
- data/lib/repull/models/delete_airbnb_listing_photo200_response.rb +1 -1
- data/lib/repull/models/delete_connection200_response.rb +234 -0
- data/lib/repull/models/delete_kv200_response.rb +1 -1
- data/lib/repull/models/error.rb +1 -1
- data/lib/repull/models/error_error.rb +14 -2
- data/lib/repull/models/error_error_support.rb +1 -1
- data/lib/repull/models/get_airbnb_alteration200_response.rb +2 -2
- data/lib/repull/models/get_airbnb_checkin_guide200_response.rb +192 -0
- data/lib/repull/models/get_airbnb_listing_quality200_response.rb +2 -2
- data/lib/repull/models/get_airbnb_listing_settings200_response.rb +2 -2
- data/lib/repull/models/get_airbnb_thread200_response.rb +2 -2
- data/lib/repull/models/get_health200_response.rb +1 -1
- data/lib/repull/models/get_usage_logs200_response.rb +1 -1
- data/lib/repull/models/get_usage_logs200_response_data_inner.rb +1 -1
- data/lib/repull/models/get_usage_logs200_response_pagination.rb +3 -3
- data/lib/repull/models/get_usage_summary200_response.rb +2 -2
- data/lib/repull/models/get_usage_summary200_response_breakdown_inner.rb +1 -1
- data/lib/repull/models/get_usage_summary200_response_limits.rb +3 -3
- data/lib/repull/models/get_usage_summary200_response_remaining.rb +2 -2
- data/lib/repull/models/get_usage_summary200_response_status_distribution.rb +1 -1
- data/lib/repull/models/get_usage_summary200_response_timeline_inner.rb +1 -1
- data/lib/repull/models/get_usage_summary200_response_totals.rb +1 -1
- data/lib/repull/models/get_usage_summary200_response_used.rb +2 -2
- data/lib/repull/models/get_usage_tier200_response.rb +2 -2
- data/lib/repull/models/get_usage_tier200_response_limits.rb +4 -4
- data/lib/repull/models/get_usage_tier200_response_remaining.rb +3 -3
- data/lib/repull/models/get_usage_tier200_response_used.rb +3 -3
- data/lib/repull/models/guest.rb +1 -1
- data/lib/repull/models/guest_contact.rb +1 -1
- data/lib/repull/models/guest_create_request.rb +250 -0
- data/lib/repull/models/guest_create_response.rb +227 -0
- data/lib/repull/models/guest_create_response_contacts_inner.rb +199 -0
- data/lib/repull/models/guest_flag.rb +1 -1
- data/lib/repull/models/guest_list_response.rb +1 -1
- data/lib/repull/models/guest_note.rb +1 -1
- data/lib/repull/models/guest_profile.rb +1 -1
- data/lib/repull/models/guest_reservations_summary.rb +1 -1
- data/lib/repull/models/list_airbnb_alterations200_response.rb +2 -2
- data/lib/repull/models/list_airbnb_listing_amenities200_response.rb +2 -2
- data/lib/repull/models/list_airbnb_listing_amenities200_response_data.rb +1 -1
- data/lib/repull/models/list_airbnb_transactions200_response.rb +3 -3
- data/lib/repull/models/list_booking_reservations200_response.rb +104 -0
- data/lib/repull/models/list_kv200_response.rb +1 -1
- data/lib/repull/models/list_kv200_response_data_inner.rb +1 -1
- data/lib/repull/models/list_kv200_response_pagination.rb +2 -2
- data/lib/repull/models/listing.rb +2 -2
- data/lib/repull/models/listing_active_request.rb +2 -2
- data/lib/repull/models/listing_active_response.rb +1 -1
- data/lib/repull/models/listing_address.rb +1 -1
- data/lib/repull/models/listing_amenity.rb +1 -1
- data/lib/repull/models/listing_channel.rb +1 -1
- data/lib/repull/models/listing_comp.rb +1 -1
- data/lib/repull/models/listing_comp_nightly.rb +1 -1
- data/lib/repull/models/listing_comp_ratings.rb +1 -1
- data/lib/repull/models/listing_comps_response.rb +1 -1
- data/lib/repull/models/listing_content.rb +1 -1
- data/lib/repull/models/listing_content_update_request.rb +1 -1
- data/lib/repull/models/listing_content_update_request_address.rb +1 -1
- data/lib/repull/models/listing_content_update_request_amenities.rb +1 -1
- data/lib/repull/models/listing_content_update_request_amenities_one_of_inner.rb +1 -1
- data/lib/repull/models/listing_content_update_request_occupancy.rb +1 -1
- data/lib/repull/models/listing_content_update_request_photos_inner.rb +1 -1
- data/lib/repull/models/listing_content_update_request_photos_inner_one_of.rb +1 -1
- data/lib/repull/models/listing_content_update_request_policies.rb +1 -1
- data/lib/repull/models/listing_content_update_response.rb +1 -1
- data/lib/repull/models/listing_create_request.rb +1 -1
- data/lib/repull/models/listing_create_response.rb +1 -1
- data/lib/repull/models/listing_created_event.rb +1 -1
- data/lib/repull/models/listing_created_payload.rb +1 -1
- data/lib/repull/models/listing_created_payload_address.rb +1 -1
- data/lib/repull/models/listing_deleted_event.rb +1 -1
- data/lib/repull/models/listing_deleted_payload.rb +1 -1
- data/lib/repull/models/listing_details.rb +1 -1
- data/lib/repull/models/listing_generate_content_request.rb +1 -1
- data/lib/repull/models/listing_generate_content_response.rb +1 -1
- data/lib/repull/models/listing_list_response.rb +1 -1
- data/lib/repull/models/{studio_file.rb → listing_photo.rb} +23 -34
- data/lib/repull/models/listing_photo_delete_request.rb +165 -0
- data/lib/repull/models/{studio_error.rb → listing_photo_delete_response.rb} +20 -12
- data/lib/repull/models/listing_photo_upload_url_request.rb +203 -0
- data/lib/repull/models/listing_photo_upload_url_response.rb +198 -0
- data/lib/repull/models/{vrbo_listing_list_response.rb → listing_photos_response.rb} +19 -19
- data/lib/repull/models/listing_pricing_apply_request.rb +1 -1
- data/lib/repull/models/listing_pricing_apply_response.rb +1 -1
- data/lib/repull/models/listing_pricing_history_entry.rb +2 -2
- data/lib/repull/models/listing_pricing_history_response.rb +1 -1
- data/lib/repull/models/listing_pricing_recommendation.rb +1 -1
- data/lib/repull/models/listing_pricing_response.rb +1 -1
- data/lib/repull/models/listing_pricing_response_comp_summary.rb +1 -1
- data/lib/repull/models/listing_pricing_response_date_range.rb +1 -1
- data/lib/repull/models/listing_pricing_response_listing.rb +1 -1
- data/lib/repull/models/listing_pricing_strategy.rb +1 -1
- data/lib/repull/models/listing_pricing_strategy_input.rb +1 -1
- data/lib/repull/models/listing_publish_airbnb_request.rb +1 -1
- data/lib/repull/models/listing_publish_response.rb +1 -1
- data/lib/repull/models/listing_publish_status_channel.rb +1 -1
- data/lib/repull/models/listing_publish_status_connection.rb +1 -1
- data/lib/repull/models/listing_publish_status_response.rb +1 -1
- data/lib/repull/models/listing_quality_tier.rb +1 -1
- data/lib/repull/models/listing_segment.rb +1 -1
- data/lib/repull/models/listing_segment_recommendation.rb +1 -1
- data/lib/repull/models/listing_segments_response.rb +1 -1
- data/lib/repull/models/listing_segments_response_scope.rb +1 -1
- data/lib/repull/models/listing_status_batch_request.rb +212 -0
- data/lib/repull/models/listing_status_batch_response.rb +223 -0
- data/lib/repull/models/listing_updated_event.rb +1 -1
- data/lib/repull/models/listing_updated_payload.rb +1 -1
- data/lib/repull/models/map_airbnb_listing_request.rb +1 -1
- data/lib/repull/models/map_airbnb_listing_response.rb +1 -1
- data/lib/repull/models/map_connect_booking_rooms_request.rb +1 -1
- data/lib/repull/models/map_connect_booking_rooms_response.rb +16 -5
- data/lib/repull/models/market_browse_category.rb +1 -1
- data/lib/repull/models/market_browse_entry.rb +1 -1
- data/lib/repull/models/market_browse_featured.rb +1 -1
- data/lib/repull/models/market_browse_response.rb +1 -1
- data/lib/repull/models/market_calendar_day.rb +1 -1
- data/lib/repull/models/market_calendar_day_events_inner.rb +1 -1
- data/lib/repull/models/market_calendar_response.rb +1 -1
- data/lib/repull/models/market_detail_response.rb +1 -1
- data/lib/repull/models/market_detail_response_price_distribution_inner.rb +1 -1
- data/lib/repull/models/market_detail_response_property_type_mix_inner.rb +1 -1
- data/lib/repull/models/market_detail_response_supply_trend_inner.rb +1 -1
- data/lib/repull/models/market_detail_response_top_comps.rb +1 -1
- data/lib/repull/models/market_event.rb +1 -1
- data/lib/repull/models/market_my_listing.rb +1 -1
- data/lib/repull/models/market_summary.rb +1 -1
- data/lib/repull/models/market_top_comp.rb +1 -1
- data/lib/repull/models/markets_overview_response.rb +1 -1
- data/lib/repull/models/markets_overview_response_browse.rb +1 -1
- data/lib/repull/models/markets_overview_response_subscriptions.rb +1 -1
- data/lib/repull/models/markets_overview_response_totals.rb +1 -1
- data/lib/repull/models/message.rb +1 -1
- data/lib/repull/models/message_list_response.rb +1 -1
- data/lib/repull/models/pagination.rb +1 -1
- data/lib/repull/models/payment_completed_event.rb +1 -1
- data/lib/repull/models/payment_completed_payload.rb +1 -1
- data/lib/repull/models/payment_refunded_event.rb +1 -1
- data/lib/repull/models/payment_refunded_payload.rb +1 -1
- data/lib/repull/models/plumguide_listing.rb +1 -1
- data/lib/repull/models/plumguide_listing_list_response.rb +1 -1
- data/lib/repull/models/property.rb +17 -7
- data/lib/repull/models/property_availability.rb +33 -7
- data/lib/repull/models/property_availability_coverage.rb +222 -0
- data/lib/repull/models/property_availability_day.rb +4 -4
- data/lib/repull/models/property_list_response.rb +1 -1
- data/lib/repull/models/quote.rb +240 -0
- data/lib/repull/models/quote_pricing.rb +218 -0
- data/lib/repull/models/reply_booking_review200_response.rb +1 -1
- data/lib/repull/models/reply_booking_review_request.rb +1 -1
- data/lib/repull/models/reply_to_review201_response.rb +165 -0
- data/lib/repull/models/reply_to_review_request.rb +165 -0
- data/lib/repull/models/repull_ping_event.rb +1 -1
- data/lib/repull/models/repull_ping_payload.rb +1 -1
- data/lib/repull/models/reservation.rb +1 -1
- data/lib/repull/models/{studio_deployment.rb → reservation_alteration_created_event.rb} +67 -57
- data/lib/repull/models/reservation_alteration_created_payload.rb +177 -0
- data/lib/repull/models/reservation_alteration_responded_event.rb +217 -0
- data/lib/repull/models/reservation_alteration_responded_payload.rb +175 -0
- data/lib/repull/models/reservation_cancelled_event.rb +1 -1
- data/lib/repull/models/reservation_cancelled_payload.rb +1 -1
- data/lib/repull/models/reservation_create_request.rb +403 -0
- data/lib/repull/models/reservation_create_response.rb +233 -0
- data/lib/repull/models/reservation_created_event.rb +1 -1
- data/lib/repull/models/reservation_created_payload.rb +1 -1
- data/lib/repull/models/reservation_financials.rb +36 -8
- data/lib/repull/models/reservation_guest_financials.rb +173 -0
- data/lib/repull/models/reservation_guest_input.rb +193 -0
- data/lib/repull/models/reservation_host_financials.rb +207 -0
- data/lib/repull/models/reservation_list_response.rb +1 -1
- data/lib/repull/models/reservation_message_received_event.rb +1 -1
- data/lib/repull/models/reservation_message_received_payload.rb +1 -1
- data/lib/repull/models/reservation_message_received_payload_from.rb +1 -1
- data/lib/repull/models/reservation_money_line.rb +216 -0
- data/lib/repull/models/reservation_occupancy.rb +1 -1
- data/lib/repull/models/reservation_primary_guest.rb +1 -1
- data/lib/repull/models/reservation_update_request.rb +255 -0
- data/lib/repull/models/reservation_update_response.rb +240 -0
- data/lib/repull/models/reservation_updated_event.rb +1 -1
- data/lib/repull/models/reservation_updated_payload.rb +1 -1
- data/lib/repull/models/reservation_webhook_object.rb +1 -1
- data/lib/repull/models/respond_airbnb_review_request.rb +1 -1
- data/lib/repull/models/review.rb +14 -3
- data/lib/repull/models/review_category.rb +1 -1
- data/lib/repull/models/{sandbox_reset_result.rb → review_created_event.rb} +59 -59
- data/lib/repull/models/review_created_payload.rb +165 -0
- data/lib/repull/models/review_list_response.rb +1 -1
- data/lib/repull/models/review_responded_event.rb +217 -0
- data/lib/repull/models/review_responded_payload.rb +175 -0
- data/lib/repull/models/review_response.rb +1 -1
- data/lib/repull/models/review_webhook_object.rb +277 -0
- data/lib/repull/models/rotate_webhook_secret200_response.rb +1 -1
- data/lib/repull/models/select_connect_provider_request.rb +1 -1
- data/lib/repull/models/select_provider_response.rb +1 -1
- data/lib/repull/models/send_airbnb_message_request.rb +187 -0
- data/lib/repull/models/{sandbox_reset_result_deleted.rb → send_booking_message_request.rb} +53 -50
- data/lib/repull/models/{studio_error_error.rb → send_message_request.rb} +31 -50
- data/lib/repull/models/send_message_response.rb +241 -0
- data/lib/repull/models/set_kv_request.rb +1 -1
- data/lib/repull/models/{booking_property_list_response.rb → submit_beds24_credentials200_response.rb} +19 -19
- data/lib/repull/models/submit_beds24_credentials_request.rb +177 -0
- data/lib/repull/models/submit_bookingsync_credentials_request.rb +177 -0
- data/lib/repull/models/submit_guesty_credentials_request.rb +177 -0
- data/lib/repull/models/submit_hospitable_credentials_request.rb +177 -0
- data/lib/repull/models/submit_hostaway_credentials_request.rb +177 -0
- data/lib/repull/models/submit_igms_credentials_request.rb +177 -0
- data/lib/repull/models/submit_lodgify_credentials_request.rb +177 -0
- data/lib/repull/models/submit_ownerrez_credentials_request.rb +177 -0
- data/lib/repull/models/submit_smoobu_credentials_request.rb +177 -0
- data/lib/repull/models/submit_vrbo_credentials_request.rb +177 -0
- data/lib/repull/models/{sandbox_fixture_ref.rb → sync_airbnb_transactions200_response.rb} +36 -38
- data/lib/repull/models/sync_airbnb_transactions_request.rb +201 -0
- data/lib/repull/models/test_webhook_request.rb +1 -1
- data/lib/repull/models/update_airbnb_message_request.rb +1 -1
- data/lib/repull/models/update_booking_charges_request.rb +1 -1
- data/lib/repull/models/update_listing_pricing_strategy200_response.rb +1 -1
- data/lib/repull/models/update_webhook_request.rb +1 -1
- data/lib/repull/models/vrbo_listing.rb +1 -1
- data/lib/repull/models/vrbo_reservation.rb +1 -1
- data/lib/repull/models/vrbo_reservation_list_response.rb +1 -1
- data/lib/repull/models/webhook_delivery.rb +1 -1
- data/lib/repull/models/webhook_delivery_detail.rb +1 -1
- data/lib/repull/models/webhook_delivery_list_response.rb +1 -1
- data/lib/repull/models/webhook_event.rb +12 -4
- data/lib/repull/models/webhook_event_catalog.rb +1 -1
- data/lib/repull/models/webhook_event_catalog_domains_inner.rb +1 -1
- data/lib/repull/models/webhook_event_catalog_entry.rb +1 -1
- data/lib/repull/models/webhook_event_type.rb +6 -2
- data/lib/repull/models/webhook_list_response.rb +1 -1
- data/lib/repull/models/webhook_subscription.rb +1 -1
- data/lib/repull/version.rb +2 -2
- data/lib/repull.rb +75 -15
- data/openapi/v1.json +6119 -2021
- data/scripts/check-spec-freshness.py +399 -0
- data/scripts/regen.sh +32 -3
- metadata +77 -18
- data/lib/repull/api/sandbox_api.rb +0 -136
- data/lib/repull/models/sandbox_seed_result.rb +0 -278
- data/lib/repull/models/studio_generation.rb +0 -215
- data/lib/repull/models/studio_project.rb +0 -241
- data/spec/api/ai_api_spec.rb +0 -47
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
=begin
|
|
2
2
|
#Repull API
|
|
3
3
|
|
|
4
|
-
#The unified API for vacation rental tech. Connect to 50+ PMS platforms and 4 OTA channels through one REST API. Built-in AI operations for guest communication, pricing, and listing optimization. ## Designed for AI agents Every error response on this API includes machine-parseable fields so an LLM (Claude in MCP, Cursor, Cline, GPT, etc.) can self-recover without escalating to a human: - `error.code` — stable string identifier (e.g. `invalid_params`, `rate_limit_exceeded`) - `error.message` — human-readable cause - `error.fix` — exact recovery steps (e.g. \"Pass `check_in_after` as ISO 8601: `?check_in_after=2026-01-15`\") - `error.docs_url` — link to the canonical write-up at `https://repull.dev/docs/errors/{code}` - `error.request_id` — id to correlate with server-side logs - `error.field` / `error.value_received` / `error.valid_values` / `error.did_you_mean` — when the error is parameter-specific - `error.retry_after` — seconds to wait before retrying (rate-limit + transient upstream) `Access-Control-Expose-Headers` lists `x-request-id` and the `X-RateLimit-*` family so browsers can read them on cross-origin responses. ## Quick Start 1. Get an API key at https://repull.dev/dashboard 2. Connect a PMS: `POST /v1/connect/{provider}` 3. List properties: `GET /v1/properties` 4. Get reservations: `GET /v1/reservations` ## Authentication All requests require a Bearer token: ``` Authorization: Bearer
|
|
4
|
+
#The unified API for vacation rental tech. Connect to 50+ PMS platforms and 4 OTA channels through one REST API. Built-in AI operations for guest communication, pricing, and listing optimization. ## Designed for AI agents Every error response on this API includes machine-parseable fields so an LLM (Claude in MCP, Cursor, Cline, GPT, etc.) can self-recover without escalating to a human: - `error.code` — stable string identifier (e.g. `invalid_params`, `rate_limit_exceeded`) - `error.message` — human-readable cause - `error.fix` — exact recovery steps (e.g. \"Pass `check_in_after` as ISO 8601: `?check_in_after=2026-01-15`\") - `error.docs_url` — link to the canonical write-up at `https://repull.dev/docs/errors/{code}` - `error.request_id` — id to correlate with server-side logs - `error.field` / `error.value_received` / `error.valid_values` / `error.did_you_mean` — when the error is parameter-specific - `error.retry_after` — seconds to wait before retrying (rate-limit + transient upstream) `Access-Control-Expose-Headers` lists `x-request-id` and the `X-RateLimit-*` family so browsers can read them on cross-origin responses. ## Quick Start 1. Get an API key at https://repull.dev/dashboard 2. Connect a PMS: `POST /v1/connect/{provider}` 3. List properties: `GET /v1/properties` 4. Get reservations: `GET /v1/reservations` ## Authentication All requests require a Bearer token: ``` Authorization: Bearer sk_live_YOUR_API_KEY ``` ## Request Correlation (X-Request-ID) Every response carries an `X-Request-ID` header, e.g. `X-Request-ID: req_01HXY...`. Include this id in support tickets and bug reports — we can trace the full request lifecycle (auth, rate limit, handler, downstream calls, log row) from a single id. You may set the header on the inbound request to forward your own trace id; we will echo it back instead of generating a new one. Accepted format: `^[\\\\w.-]{1,128}$`. The id is also embedded in error envelopes as `request_id` so server-side log diffs work even when the response headers are stripped by an intermediate proxy. ## Rate Limits The public API enforces a per-API-key sliding-window rate limit on top of the per-tier monthly + daily-AI quotas. **Default policy:** 600 requests per 60 seconds, per API key. Sliding window — there is no fixed-minute boundary you can burst across. Every response includes: | Header | Meaning | |---|---| | `X-RateLimit-Limit` | Requests permitted in the current window. | | `X-RateLimit-Remaining` | Requests left in the current window after this call. | | `X-RateLimit-Reset` | Unix epoch (seconds) when the next slot opens. | | `X-RateLimit-Policy` | Machine-readable policy descriptor, e.g. `600;w=60`. | | `Retry-After` | Seconds to wait before retrying. **Only present on 429 responses.** | **On 429 (rate_limit_exceeded):** the response body matches the standard error envelope with `code: \"rate_limit_exceeded\"`, plus `limit`, `window_seconds`, `retry_after`, and `request_id` fields. SDKs MUST honor `Retry-After` and use exponential backoff with jitter on subsequent retries — never a tight loop. Recommended backoff: ``` sleep_ms = (Retry-After * 1000) + random(0..250) ``` Monthly + daily-AI tier quotas (`free`, `starter`, `custom`) are enforced separately and also surface as 429s; they include `tier`, `scope`, and `resetsAt` fields. ## Plan Limits (402 — `listings_limit_exceeded`) The Repull API also enforces a per-tier cap on **active listings**: | Tier | Active listings cap | |---|---| | `free` | 3 | | `starter` | 50 | | `custom` | unlimited | When a customer's active-listing count is above their tier cap, the API returns **`402 Payment Required`** with `error.code = \"listings_limit_exceeded\"` on every route EXCEPT: - `/v1/health` — uptime probes are never gated. - `/v1/usage/*` — so dashboards can render the over-cap state. - Any `DELETE` — so the customer can trim listings to get back under the cap without paying. Unlike 429, 402 is NOT a \"wait and retry\" condition — `Retry-After` is not set. The only paths back to 200 are: 1. `DELETE` enough listings to come back under the cap, or 2. Upgrade at `https://repull.dev/dashboard/billing`. The server-side usage cache is 60s, so the first 200 after an upgrade may take up to a minute. The envelope mirrors `rate_limit_exceeded` for SDK ergonomics: `tier`, `limit`, `active_listings`, `upgrade_url`, plus the standard `code` / `message` / `fix` / `docs_url` / `request_id`.
|
|
5
5
|
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
|
7
7
|
Contact: ivan@vanio.ai
|
|
@@ -19,8 +19,78 @@ module Repull
|
|
|
19
19
|
def initialize(api_client = ApiClient.default)
|
|
20
20
|
@api_client = api_client
|
|
21
21
|
end
|
|
22
|
+
# Accept Airbnb alteration
|
|
23
|
+
# Accept a pending Airbnb reservation alteration. **Write-side** — calls Airbnb upstream (`respondToAlteration`) to approve the proposed date / guest-count / price change. Requires a connected Airbnb host for the workspace (else `404 no_connection`) and that the alteration id belongs to a reservation in your workspace (else `404 not_found`). No request body is required. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
24
|
+
# @param id [String] Airbnb alteration id (the `alterationId` from a `GET /v1/channels/airbnb/alterations` row).
|
|
25
|
+
# @param [Hash] opts the optional parameters
|
|
26
|
+
# @option opts [Object] :body
|
|
27
|
+
# @return [nil]
|
|
28
|
+
def accept_airbnb_alteration(id, opts = {})
|
|
29
|
+
accept_airbnb_alteration_with_http_info(id, opts)
|
|
30
|
+
nil
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# Accept Airbnb alteration
|
|
34
|
+
# Accept a pending Airbnb reservation alteration. **Write-side** — calls Airbnb upstream (`respondToAlteration`) to approve the proposed date / guest-count / price change. Requires a connected Airbnb host for the workspace (else `404 no_connection`) and that the alteration id belongs to a reservation in your workspace (else `404 not_found`). No request body is required. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
35
|
+
# @param id [String] Airbnb alteration id (the `alterationId` from a `GET /v1/channels/airbnb/alterations` row).
|
|
36
|
+
# @param [Hash] opts the optional parameters
|
|
37
|
+
# @option opts [Object] :body
|
|
38
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
39
|
+
def accept_airbnb_alteration_with_http_info(id, opts = {})
|
|
40
|
+
if @api_client.config.debugging
|
|
41
|
+
@api_client.config.logger.debug 'Calling API: AirbnbApi.accept_airbnb_alteration ...'
|
|
42
|
+
end
|
|
43
|
+
# verify the required parameter 'id' is set
|
|
44
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
45
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling AirbnbApi.accept_airbnb_alteration"
|
|
46
|
+
end
|
|
47
|
+
# resource path
|
|
48
|
+
local_var_path = '/v1/channels/airbnb/alterations/{id}/accept'.sub('{id}', CGI.escape(id.to_s))
|
|
49
|
+
|
|
50
|
+
# query parameters
|
|
51
|
+
query_params = opts[:query_params] || {}
|
|
52
|
+
|
|
53
|
+
# header parameters
|
|
54
|
+
header_params = opts[:header_params] || {}
|
|
55
|
+
# HTTP header 'Accept' (if needed)
|
|
56
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
57
|
+
# HTTP header 'Content-Type'
|
|
58
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
59
|
+
if !content_type.nil?
|
|
60
|
+
header_params['Content-Type'] = content_type
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
# form parameters
|
|
64
|
+
form_params = opts[:form_params] || {}
|
|
65
|
+
|
|
66
|
+
# http body (model)
|
|
67
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'body'])
|
|
68
|
+
|
|
69
|
+
# return_type
|
|
70
|
+
return_type = opts[:debug_return_type]
|
|
71
|
+
|
|
72
|
+
# auth_names
|
|
73
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
74
|
+
|
|
75
|
+
new_options = opts.merge(
|
|
76
|
+
:operation => :"AirbnbApi.accept_airbnb_alteration",
|
|
77
|
+
:header_params => header_params,
|
|
78
|
+
:query_params => query_params,
|
|
79
|
+
:form_params => form_params,
|
|
80
|
+
:body => post_body,
|
|
81
|
+
:auth_names => auth_names,
|
|
82
|
+
:return_type => return_type
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
86
|
+
if @api_client.config.debugging
|
|
87
|
+
@api_client.config.logger.debug "API called: AirbnbApi#accept_airbnb_alteration\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
88
|
+
end
|
|
89
|
+
return data, status_code, headers
|
|
90
|
+
end
|
|
91
|
+
|
|
22
92
|
# Listing action (delete/push/publish)
|
|
23
|
-
# Apply a state action to a listing by id. The path `id` is the canonical Repull listing id. `delete` is a **deactivate of the Repull record only** — it sets the listing inactive and KEEPS the row; it does NOT touch the upstream Airbnb listing (Repull never deletes or deactivates on Airbnb's side). Use it to exclude a listing / trim back under the plan-listings cap; reactivate via `PATCH /v1/listings/{id}` with `{ \"active\": true }`. Idempotent. `push` / `publish` push the listing's content to Airbnb via the same host-side sync orchestrator as `POST /v1/listings/{id}/publish/airbnb` — pass `airbnbConnectionId` to update an already-mapped Airbnb listing, or `hostId` to create + publish a new one under that host. `force` re-pushes every field, ignoring dirty-field tracking. Any other action (e.g. `pull`, `unlist`) returns a structured 422 naming the supported actions.
|
|
93
|
+
# Apply a state action to a listing by id. The path `id` is the canonical Repull listing id. `delete` is a **deactivate of the Repull record only** — it sets the listing inactive and KEEPS the row; it does NOT touch the upstream Airbnb listing (Repull never deletes or deactivates on Airbnb's side). Use it to exclude a listing / trim back under the plan-listings cap; reactivate via `PATCH /v1/listings/{id}` with `{ \"active\": true }`. Idempotent. `push` / `publish` push the listing's content to Airbnb via the same host-side sync orchestrator as `POST /v1/listings/{id}/publish/airbnb` — pass `airbnbConnectionId` to update an already-mapped Airbnb listing, or `hostId` to create + publish a new one under that host. `force` re-pushes every field, ignoring dirty-field tracking. Any other action (e.g. `pull`, `unlist`) returns a structured 422 naming the supported actions. Returns `403 listing_inactive` for `push`/`publish` when the listing is inactive. `delete` (deactivation) is always accepted.
|
|
24
94
|
# @param id [String]
|
|
25
95
|
# @param [Hash] opts the optional parameters
|
|
26
96
|
# @option opts [AirbnbListingActionRequest] :airbnb_listing_action_request
|
|
@@ -31,7 +101,7 @@ module Repull
|
|
|
31
101
|
end
|
|
32
102
|
|
|
33
103
|
# Listing action (delete/push/publish)
|
|
34
|
-
# Apply a state action to a listing by id. The path `id` is the canonical Repull listing id. `delete` is a **deactivate of the Repull record only** — it sets the listing inactive and KEEPS the row; it does NOT touch the upstream Airbnb listing (Repull never deletes or deactivates on Airbnb's side). Use it to exclude a listing / trim back under the plan-listings cap; reactivate via `PATCH /v1/listings/{id}` with `{ \"active\": true }`. Idempotent. `push` / `publish` push the listing's content to Airbnb via the same host-side sync orchestrator as `POST /v1/listings/{id}/publish/airbnb` — pass `airbnbConnectionId` to update an already-mapped Airbnb listing, or `hostId` to create + publish a new one under that host. `force` re-pushes every field, ignoring dirty-field tracking. Any other action (e.g. `pull`, `unlist`) returns a structured 422 naming the supported actions.
|
|
104
|
+
# Apply a state action to a listing by id. The path `id` is the canonical Repull listing id. `delete` is a **deactivate of the Repull record only** — it sets the listing inactive and KEEPS the row; it does NOT touch the upstream Airbnb listing (Repull never deletes or deactivates on Airbnb's side). Use it to exclude a listing / trim back under the plan-listings cap; reactivate via `PATCH /v1/listings/{id}` with `{ \"active\": true }`. Idempotent. `push` / `publish` push the listing's content to Airbnb via the same host-side sync orchestrator as `POST /v1/listings/{id}/publish/airbnb` — pass `airbnbConnectionId` to update an already-mapped Airbnb listing, or `hostId` to create + publish a new one under that host. `force` re-pushes every field, ignoring dirty-field tracking. Any other action (e.g. `pull`, `unlist`) returns a structured 422 naming the supported actions. Returns `403 listing_inactive` for `push`/`publish` when the listing is inactive. `delete` (deactivation) is always accepted.
|
|
35
105
|
# @param id [String]
|
|
36
106
|
# @param [Hash] opts the optional parameters
|
|
37
107
|
# @option opts [AirbnbListingActionRequest] :airbnb_listing_action_request
|
|
@@ -90,7 +160,7 @@ module Repull
|
|
|
90
160
|
end
|
|
91
161
|
|
|
92
162
|
# Accept/decline/cancel Airbnb reservation
|
|
93
|
-
# Apply a state action to an Airbnb reservation — `accept` / `decline` (for inquiries and reservation requests), `cancel` (host cancellation, carries penalties), `pre-approve` (for inquiries).
|
|
163
|
+
# Apply a state action to an Airbnb reservation — `accept` / `decline` (for inquiries and reservation requests), `cancel` (host cancellation, carries penalties), `pre-approve` (for inquiries). Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
94
164
|
# @param code [String]
|
|
95
165
|
# @param [Hash] opts the optional parameters
|
|
96
166
|
# @return [nil]
|
|
@@ -100,7 +170,7 @@ module Repull
|
|
|
100
170
|
end
|
|
101
171
|
|
|
102
172
|
# Accept/decline/cancel Airbnb reservation
|
|
103
|
-
# Apply a state action to an Airbnb reservation — `accept` / `decline` (for inquiries and reservation requests), `cancel` (host cancellation, carries penalties), `pre-approve` (for inquiries).
|
|
173
|
+
# Apply a state action to an Airbnb reservation — `accept` / `decline` (for inquiries and reservation requests), `cancel` (host cancellation, carries penalties), `pre-approve` (for inquiries). Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
104
174
|
# @param code [String]
|
|
105
175
|
# @param [Hash] opts the optional parameters
|
|
106
176
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
@@ -120,6 +190,8 @@ module Repull
|
|
|
120
190
|
|
|
121
191
|
# header parameters
|
|
122
192
|
header_params = opts[:header_params] || {}
|
|
193
|
+
# HTTP header 'Accept' (if needed)
|
|
194
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
123
195
|
|
|
124
196
|
# form parameters
|
|
125
197
|
form_params = opts[:form_params] || {}
|
|
@@ -151,7 +223,7 @@ module Repull
|
|
|
151
223
|
end
|
|
152
224
|
|
|
153
225
|
# Create Airbnb alteration
|
|
154
|
-
# Create a reservation alteration request (change dates, guest count, or price) on Airbnb. **Write-side** — calls Airbnb upstream. Requires a connected Airbnb host for the workspace, else `404 no_connection`.
|
|
226
|
+
# Create a reservation alteration request (change dates, guest count, or price) on Airbnb. **Write-side** — calls Airbnb upstream. Requires a connected Airbnb host for the workspace, else `404 no_connection`. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
155
227
|
# @param create_airbnb_alteration_request [CreateAirbnbAlterationRequest]
|
|
156
228
|
# @param [Hash] opts the optional parameters
|
|
157
229
|
# @return [nil]
|
|
@@ -161,7 +233,7 @@ module Repull
|
|
|
161
233
|
end
|
|
162
234
|
|
|
163
235
|
# Create Airbnb alteration
|
|
164
|
-
# Create a reservation alteration request (change dates, guest count, or price) on Airbnb. **Write-side** — calls Airbnb upstream. Requires a connected Airbnb host for the workspace, else `404 no_connection`.
|
|
236
|
+
# Create a reservation alteration request (change dates, guest count, or price) on Airbnb. **Write-side** — calls Airbnb upstream. Requires a connected Airbnb host for the workspace, else `404 no_connection`. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
165
237
|
# @param create_airbnb_alteration_request [CreateAirbnbAlterationRequest]
|
|
166
238
|
# @param [Hash] opts the optional parameters
|
|
167
239
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
@@ -219,7 +291,7 @@ module Repull
|
|
|
219
291
|
end
|
|
220
292
|
|
|
221
293
|
# Create an Airbnb room
|
|
222
|
-
# Create a new room on an Airbnb listing. **Write-side** — calls Airbnb upstream. Body is the full room object minus `room_id`. Requires a connected Airbnb host, else `404 no_connection`.
|
|
294
|
+
# Create a new room on an Airbnb listing. **Write-side** — calls Airbnb upstream. Body is the full room object minus `room_id`. Requires a connected Airbnb host, else `404 no_connection`. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
223
295
|
# @param id [String] Repull listing id (numeric string).
|
|
224
296
|
# @param request_body [Hash<String, Object>]
|
|
225
297
|
# @param [Hash] opts the optional parameters
|
|
@@ -230,7 +302,7 @@ module Repull
|
|
|
230
302
|
end
|
|
231
303
|
|
|
232
304
|
# Create an Airbnb room
|
|
233
|
-
# Create a new room on an Airbnb listing. **Write-side** — calls Airbnb upstream. Body is the full room object minus `room_id`. Requires a connected Airbnb host, else `404 no_connection`.
|
|
305
|
+
# Create a new room on an Airbnb listing. **Write-side** — calls Airbnb upstream. Body is the full room object minus `room_id`. Requires a connected Airbnb host, else `404 no_connection`. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
234
306
|
# @param id [String] Repull listing id (numeric string).
|
|
235
307
|
# @param request_body [Hash<String, Object>]
|
|
236
308
|
# @param [Hash] opts the optional parameters
|
|
@@ -293,7 +365,7 @@ module Repull
|
|
|
293
365
|
end
|
|
294
366
|
|
|
295
367
|
# Create Airbnb special offer or pre-approval
|
|
296
|
-
# Create a special offer or a pre-approval on Airbnb. **Write-side** — calls Airbnb upstream. The `type` discriminator selects the flavour: - `offer` — a special offer with custom terms (the remaining body fields are the offer params). - `preapproval` — pre-approve an inquiry thread (requires `threadId`; optional `blockInstantBooking`). Requires a connected Airbnb host, else `404 no_connection`.
|
|
368
|
+
# Create a special offer or a pre-approval on Airbnb. **Write-side** — calls Airbnb upstream. The `type` discriminator selects the flavour: - `offer` — a special offer with custom terms (the remaining body fields are the offer params). - `preapproval` — pre-approve an inquiry thread (requires `threadId`; optional `blockInstantBooking`). Requires a connected Airbnb host, else `404 no_connection`. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
297
369
|
# @param create_airbnb_offer_request [CreateAirbnbOfferRequest]
|
|
298
370
|
# @param [Hash] opts the optional parameters
|
|
299
371
|
# @return [nil]
|
|
@@ -303,7 +375,7 @@ module Repull
|
|
|
303
375
|
end
|
|
304
376
|
|
|
305
377
|
# Create Airbnb special offer or pre-approval
|
|
306
|
-
# Create a special offer or a pre-approval on Airbnb. **Write-side** — calls Airbnb upstream. The `type` discriminator selects the flavour: - `offer` — a special offer with custom terms (the remaining body fields are the offer params). - `preapproval` — pre-approve an inquiry thread (requires `threadId`; optional `blockInstantBooking`). Requires a connected Airbnb host, else `404 no_connection`.
|
|
378
|
+
# Create a special offer or a pre-approval on Airbnb. **Write-side** — calls Airbnb upstream. The `type` discriminator selects the flavour: - `offer` — a special offer with custom terms (the remaining body fields are the offer params). - `preapproval` — pre-approve an inquiry thread (requires `threadId`; optional `blockInstantBooking`). Requires a connected Airbnb host, else `404 no_connection`. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
307
379
|
# @param create_airbnb_offer_request [CreateAirbnbOfferRequest]
|
|
308
380
|
# @param [Hash] opts the optional parameters
|
|
309
381
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
@@ -360,8 +432,78 @@ module Repull
|
|
|
360
432
|
return data, status_code, headers
|
|
361
433
|
end
|
|
362
434
|
|
|
435
|
+
# Decline Airbnb alteration
|
|
436
|
+
# Decline a pending Airbnb reservation alteration. **Write-side** — calls Airbnb upstream (`respondToAlteration`) to reject the proposed change. Requires a connected Airbnb host for the workspace (else `404 no_connection`) and that the alteration id belongs to a reservation in your workspace (else `404 not_found`). No request body is required. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
437
|
+
# @param id [String] Airbnb alteration id (the `alterationId` from a `GET /v1/channels/airbnb/alterations` row).
|
|
438
|
+
# @param [Hash] opts the optional parameters
|
|
439
|
+
# @option opts [Object] :body
|
|
440
|
+
# @return [nil]
|
|
441
|
+
def decline_airbnb_alteration(id, opts = {})
|
|
442
|
+
decline_airbnb_alteration_with_http_info(id, opts)
|
|
443
|
+
nil
|
|
444
|
+
end
|
|
445
|
+
|
|
446
|
+
# Decline Airbnb alteration
|
|
447
|
+
# Decline a pending Airbnb reservation alteration. **Write-side** — calls Airbnb upstream (`respondToAlteration`) to reject the proposed change. Requires a connected Airbnb host for the workspace (else `404 no_connection`) and that the alteration id belongs to a reservation in your workspace (else `404 not_found`). No request body is required. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
448
|
+
# @param id [String] Airbnb alteration id (the `alterationId` from a `GET /v1/channels/airbnb/alterations` row).
|
|
449
|
+
# @param [Hash] opts the optional parameters
|
|
450
|
+
# @option opts [Object] :body
|
|
451
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
452
|
+
def decline_airbnb_alteration_with_http_info(id, opts = {})
|
|
453
|
+
if @api_client.config.debugging
|
|
454
|
+
@api_client.config.logger.debug 'Calling API: AirbnbApi.decline_airbnb_alteration ...'
|
|
455
|
+
end
|
|
456
|
+
# verify the required parameter 'id' is set
|
|
457
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
458
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling AirbnbApi.decline_airbnb_alteration"
|
|
459
|
+
end
|
|
460
|
+
# resource path
|
|
461
|
+
local_var_path = '/v1/channels/airbnb/alterations/{id}/decline'.sub('{id}', CGI.escape(id.to_s))
|
|
462
|
+
|
|
463
|
+
# query parameters
|
|
464
|
+
query_params = opts[:query_params] || {}
|
|
465
|
+
|
|
466
|
+
# header parameters
|
|
467
|
+
header_params = opts[:header_params] || {}
|
|
468
|
+
# HTTP header 'Accept' (if needed)
|
|
469
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
470
|
+
# HTTP header 'Content-Type'
|
|
471
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
472
|
+
if !content_type.nil?
|
|
473
|
+
header_params['Content-Type'] = content_type
|
|
474
|
+
end
|
|
475
|
+
|
|
476
|
+
# form parameters
|
|
477
|
+
form_params = opts[:form_params] || {}
|
|
478
|
+
|
|
479
|
+
# http body (model)
|
|
480
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'body'])
|
|
481
|
+
|
|
482
|
+
# return_type
|
|
483
|
+
return_type = opts[:debug_return_type]
|
|
484
|
+
|
|
485
|
+
# auth_names
|
|
486
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
487
|
+
|
|
488
|
+
new_options = opts.merge(
|
|
489
|
+
:operation => :"AirbnbApi.decline_airbnb_alteration",
|
|
490
|
+
:header_params => header_params,
|
|
491
|
+
:query_params => query_params,
|
|
492
|
+
:form_params => form_params,
|
|
493
|
+
:body => post_body,
|
|
494
|
+
:auth_names => auth_names,
|
|
495
|
+
:return_type => return_type
|
|
496
|
+
)
|
|
497
|
+
|
|
498
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
499
|
+
if @api_client.config.debugging
|
|
500
|
+
@api_client.config.logger.debug "API called: AirbnbApi#decline_airbnb_alteration\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
501
|
+
end
|
|
502
|
+
return data, status_code, headers
|
|
503
|
+
end
|
|
504
|
+
|
|
363
505
|
# Delete an Airbnb photo
|
|
364
|
-
# Remove a single photo from an Airbnb listing. Pass the Airbnb-side photo id as `?photoId=`. Write-side — calls Airbnb upstream; the local photo cache is reconciled by the sync worker afterwards.
|
|
506
|
+
# Remove a single photo from an Airbnb listing. Pass the Airbnb-side photo id as `?photoId=`. Write-side — calls Airbnb upstream; the local photo cache is reconciled by the sync worker afterwards. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
365
507
|
# @param id [String]
|
|
366
508
|
# @param photo_id [String] Airbnb-side photo id to delete.
|
|
367
509
|
# @param [Hash] opts the optional parameters
|
|
@@ -372,7 +514,7 @@ module Repull
|
|
|
372
514
|
end
|
|
373
515
|
|
|
374
516
|
# Delete an Airbnb photo
|
|
375
|
-
# Remove a single photo from an Airbnb listing. Pass the Airbnb-side photo id as `?photoId=`. Write-side — calls Airbnb upstream; the local photo cache is reconciled by the sync worker afterwards.
|
|
517
|
+
# Remove a single photo from an Airbnb listing. Pass the Airbnb-side photo id as `?photoId=`. Write-side — calls Airbnb upstream; the local photo cache is reconciled by the sync worker afterwards. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
376
518
|
# @param id [String]
|
|
377
519
|
# @param photo_id [String] Airbnb-side photo id to delete.
|
|
378
520
|
# @param [Hash] opts the optional parameters
|
|
@@ -431,7 +573,7 @@ module Repull
|
|
|
431
573
|
end
|
|
432
574
|
|
|
433
575
|
# Delete an Airbnb room
|
|
434
|
-
# Delete a room from an Airbnb listing. **Write-side** — calls Airbnb upstream. Pass the Airbnb-side room id as `?roomId=`. Requires a connected Airbnb host, else `404 no_connection`.
|
|
576
|
+
# Delete a room from an Airbnb listing. **Write-side** — calls Airbnb upstream. Pass the Airbnb-side room id as `?roomId=`. Requires a connected Airbnb host, else `404 no_connection`. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
435
577
|
# @param id [String] Repull listing id (numeric string).
|
|
436
578
|
# @param room_id [String] Airbnb-side room id to delete.
|
|
437
579
|
# @param [Hash] opts the optional parameters
|
|
@@ -442,7 +584,7 @@ module Repull
|
|
|
442
584
|
end
|
|
443
585
|
|
|
444
586
|
# Delete an Airbnb room
|
|
445
|
-
# Delete a room from an Airbnb listing. **Write-side** — calls Airbnb upstream. Pass the Airbnb-side room id as `?roomId=`. Requires a connected Airbnb host, else `404 no_connection`.
|
|
587
|
+
# Delete a room from an Airbnb listing. **Write-side** — calls Airbnb upstream. Pass the Airbnb-side room id as `?roomId=`. Requires a connected Airbnb host, else `404 no_connection`. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
446
588
|
# @param id [String] Repull listing id (numeric string).
|
|
447
589
|
# @param room_id [String] Airbnb-side room id to delete.
|
|
448
590
|
# @param [Hash] opts the optional parameters
|
|
@@ -501,7 +643,7 @@ module Repull
|
|
|
501
643
|
end
|
|
502
644
|
|
|
503
645
|
# Edit Airbnb host review
|
|
504
|
-
# Edit a host-side review for an Airbnb stay. Airbnb collapses POST + PUT into the same upstream call (`PUT /v2/listing_reviews/{id}`), so this endpoint covers both initial submit and subsequent edits while the review window is open. Body is a partial `AirbnbReview` — pass the fields you want to change (rating, public review, private feedback, category ratings).
|
|
646
|
+
# Edit a host-side review for an Airbnb stay. Airbnb collapses POST + PUT into the same upstream call (`PUT /v2/listing_reviews/{id}`), so this endpoint covers both initial submit and subsequent edits while the review window is open. Body is a partial `AirbnbReview` — pass the fields you want to change (rating, public review, private feedback, category ratings). Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
505
647
|
# @param id [String] Airbnb review id (`HRabc123` style).
|
|
506
648
|
# @param airbnb_review [AirbnbReview]
|
|
507
649
|
# @param [Hash] opts the optional parameters
|
|
@@ -512,7 +654,7 @@ module Repull
|
|
|
512
654
|
end
|
|
513
655
|
|
|
514
656
|
# Edit Airbnb host review
|
|
515
|
-
# Edit a host-side review for an Airbnb stay. Airbnb collapses POST + PUT into the same upstream call (`PUT /v2/listing_reviews/{id}`), so this endpoint covers both initial submit and subsequent edits while the review window is open. Body is a partial `AirbnbReview` — pass the fields you want to change (rating, public review, private feedback, category ratings).
|
|
657
|
+
# Edit a host-side review for an Airbnb stay. Airbnb collapses POST + PUT into the same upstream call (`PUT /v2/listing_reviews/{id}`), so this endpoint covers both initial submit and subsequent edits while the review window is open. Body is a partial `AirbnbReview` — pass the fields you want to change (rating, public review, private feedback, category ratings). Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
516
658
|
# @param id [String] Airbnb review id (`HRabc123` style).
|
|
517
659
|
# @param airbnb_review [AirbnbReview]
|
|
518
660
|
# @param [Hash] opts the optional parameters
|
|
@@ -575,7 +717,7 @@ module Repull
|
|
|
575
717
|
end
|
|
576
718
|
|
|
577
719
|
# Get Airbnb alteration
|
|
578
|
-
# Fetch a single Airbnb reservation alteration by its Airbnb alteration id. **Pure DB read**, workspace-scoped via the reservations join. Returns `404 not_found` when no alteration matches the id in your workspace.
|
|
720
|
+
# Fetch a single Airbnb reservation alteration by its Airbnb alteration id. **Pure DB read**, workspace-scoped via the reservations join. Returns `404 not_found` when no alteration matches the id in your workspace. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
579
721
|
# @param id [String] Airbnb alteration id.
|
|
580
722
|
# @param [Hash] opts the optional parameters
|
|
581
723
|
# @return [GetAirbnbAlteration200Response]
|
|
@@ -585,7 +727,7 @@ module Repull
|
|
|
585
727
|
end
|
|
586
728
|
|
|
587
729
|
# Get Airbnb alteration
|
|
588
|
-
# Fetch a single Airbnb reservation alteration by its Airbnb alteration id. **Pure DB read**, workspace-scoped via the reservations join. Returns `404 not_found` when no alteration matches the id in your workspace.
|
|
730
|
+
# Fetch a single Airbnb reservation alteration by its Airbnb alteration id. **Pure DB read**, workspace-scoped via the reservations join. Returns `404 not_found` when no alteration matches the id in your workspace. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
589
731
|
# @param id [String] Airbnb alteration id.
|
|
590
732
|
# @param [Hash] opts the optional parameters
|
|
591
733
|
# @return [Array<(GetAirbnbAlteration200Response, Integer, Hash)>] GetAirbnbAlteration200Response data, response status code and response headers
|
|
@@ -638,22 +780,22 @@ module Repull
|
|
|
638
780
|
end
|
|
639
781
|
|
|
640
782
|
# Get Airbnb check-in guide
|
|
641
|
-
# Return every published locale variant of an Airbnb listing's check-in guide. **Pure DB read** from `listings_airbnb_check_in_guides`. Pass `?locale=en` to filter to one locale (prefix match). Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
783
|
+
# Return every published locale variant of an Airbnb listing's check-in guide. **Pure DB read** from `listings_airbnb_check_in_guides`. Pass `?locale=en` to filter to one locale (prefix match). Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
642
784
|
# @param id [String] Repull listing id (numeric string).
|
|
643
785
|
# @param [Hash] opts the optional parameters
|
|
644
786
|
# @option opts [String] :locale Filter to a single locale (prefix match, case-insensitive).
|
|
645
|
-
# @return [
|
|
787
|
+
# @return [GetAirbnbCheckinGuide200Response]
|
|
646
788
|
def get_airbnb_checkin_guide(id, opts = {})
|
|
647
789
|
data, _status_code, _headers = get_airbnb_checkin_guide_with_http_info(id, opts)
|
|
648
790
|
data
|
|
649
791
|
end
|
|
650
792
|
|
|
651
793
|
# Get Airbnb check-in guide
|
|
652
|
-
# Return every published locale variant of an Airbnb listing's check-in guide. **Pure DB read** from `listings_airbnb_check_in_guides`. Pass `?locale=en` to filter to one locale (prefix match). Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
794
|
+
# Return every published locale variant of an Airbnb listing's check-in guide. **Pure DB read** from `listings_airbnb_check_in_guides`. Pass `?locale=en` to filter to one locale (prefix match). Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
653
795
|
# @param id [String] Repull listing id (numeric string).
|
|
654
796
|
# @param [Hash] opts the optional parameters
|
|
655
797
|
# @option opts [String] :locale Filter to a single locale (prefix match, case-insensitive).
|
|
656
|
-
# @return [Array<(
|
|
798
|
+
# @return [Array<(GetAirbnbCheckinGuide200Response, Integer, Hash)>] GetAirbnbCheckinGuide200Response data, response status code and response headers
|
|
657
799
|
def get_airbnb_checkin_guide_with_http_info(id, opts = {})
|
|
658
800
|
if @api_client.config.debugging
|
|
659
801
|
@api_client.config.logger.debug 'Calling API: AirbnbApi.get_airbnb_checkin_guide ...'
|
|
@@ -681,7 +823,7 @@ module Repull
|
|
|
681
823
|
post_body = opts[:debug_body]
|
|
682
824
|
|
|
683
825
|
# return_type
|
|
684
|
-
return_type = opts[:debug_return_type] || '
|
|
826
|
+
return_type = opts[:debug_return_type] || 'GetAirbnbCheckinGuide200Response'
|
|
685
827
|
|
|
686
828
|
# auth_names
|
|
687
829
|
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
@@ -704,20 +846,20 @@ module Repull
|
|
|
704
846
|
end
|
|
705
847
|
|
|
706
848
|
# Get Airbnb checkout guide
|
|
707
|
-
# Return the checkout tasks an Airbnb listing shows guests at departure. **Pure DB read** from `listings_airbnb_checkout_tasks`. Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
849
|
+
# Return the checkout tasks an Airbnb listing shows guests at departure. **Pure DB read** from `listings_airbnb_checkout_tasks`. Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
708
850
|
# @param id [String] Repull listing id (numeric string).
|
|
709
851
|
# @param [Hash] opts the optional parameters
|
|
710
|
-
# @return [
|
|
852
|
+
# @return [GetAirbnbCheckinGuide200Response]
|
|
711
853
|
def get_airbnb_checkout_guide(id, opts = {})
|
|
712
854
|
data, _status_code, _headers = get_airbnb_checkout_guide_with_http_info(id, opts)
|
|
713
855
|
data
|
|
714
856
|
end
|
|
715
857
|
|
|
716
858
|
# Get Airbnb checkout guide
|
|
717
|
-
# Return the checkout tasks an Airbnb listing shows guests at departure. **Pure DB read** from `listings_airbnb_checkout_tasks`. Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
859
|
+
# Return the checkout tasks an Airbnb listing shows guests at departure. **Pure DB read** from `listings_airbnb_checkout_tasks`. Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
718
860
|
# @param id [String] Repull listing id (numeric string).
|
|
719
861
|
# @param [Hash] opts the optional parameters
|
|
720
|
-
# @return [Array<(
|
|
862
|
+
# @return [Array<(GetAirbnbCheckinGuide200Response, Integer, Hash)>] GetAirbnbCheckinGuide200Response data, response status code and response headers
|
|
721
863
|
def get_airbnb_checkout_guide_with_http_info(id, opts = {})
|
|
722
864
|
if @api_client.config.debugging
|
|
723
865
|
@api_client.config.logger.debug 'Calling API: AirbnbApi.get_airbnb_checkout_guide ...'
|
|
@@ -744,7 +886,7 @@ module Repull
|
|
|
744
886
|
post_body = opts[:debug_body]
|
|
745
887
|
|
|
746
888
|
# return_type
|
|
747
|
-
return_type = opts[:debug_return_type] || '
|
|
889
|
+
return_type = opts[:debug_return_type] || 'GetAirbnbCheckinGuide200Response'
|
|
748
890
|
|
|
749
891
|
# auth_names
|
|
750
892
|
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
@@ -824,7 +966,7 @@ module Repull
|
|
|
824
966
|
end
|
|
825
967
|
|
|
826
968
|
# Get Airbnb listing
|
|
827
|
-
# Fetch all Airbnb connection rows for a single Vanio listing id. A property may be linked from multiple Airbnb hosts — every match is returned. Pass `?include=amenities` to enrich each row with its current Airbnb amenities.
|
|
969
|
+
# Fetch all Airbnb connection rows for a single Vanio listing id. A property may be linked from multiple Airbnb hosts — every match is returned. Pass `?include=amenities` to enrich each row with its current Airbnb amenities. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
828
970
|
# @param id [String]
|
|
829
971
|
# @param [Hash] opts the optional parameters
|
|
830
972
|
# @option opts [String] :include Comma-separated expansions. Currently supported: `amenities`.
|
|
@@ -835,7 +977,7 @@ module Repull
|
|
|
835
977
|
end
|
|
836
978
|
|
|
837
979
|
# Get Airbnb listing
|
|
838
|
-
# Fetch all Airbnb connection rows for a single Vanio listing id. A property may be linked from multiple Airbnb hosts — every match is returned. Pass `?include=amenities` to enrich each row with its current Airbnb amenities.
|
|
980
|
+
# Fetch all Airbnb connection rows for a single Vanio listing id. A property may be linked from multiple Airbnb hosts — every match is returned. Pass `?include=amenities` to enrich each row with its current Airbnb amenities. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
839
981
|
# @param id [String]
|
|
840
982
|
# @param [Hash] opts the optional parameters
|
|
841
983
|
# @option opts [String] :include Comma-separated expansions. Currently supported: `amenities`.
|
|
@@ -890,7 +1032,7 @@ module Repull
|
|
|
890
1032
|
end
|
|
891
1033
|
|
|
892
1034
|
# Get Airbnb availability
|
|
893
|
-
# Read the per-day availability calendar for an Airbnb listing. Returns one row per day including price overrides, min-stay, and blocked status.
|
|
1035
|
+
# Read the per-day availability calendar for an Airbnb listing. Returns one row per day including price overrides, min-stay, and blocked status. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
894
1036
|
# @param id [String]
|
|
895
1037
|
# @param [Hash] opts the optional parameters
|
|
896
1038
|
# @return [nil]
|
|
@@ -900,7 +1042,7 @@ module Repull
|
|
|
900
1042
|
end
|
|
901
1043
|
|
|
902
1044
|
# Get Airbnb availability
|
|
903
|
-
# Read the per-day availability calendar for an Airbnb listing. Returns one row per day including price overrides, min-stay, and blocked status.
|
|
1045
|
+
# Read the per-day availability calendar for an Airbnb listing. Returns one row per day including price overrides, min-stay, and blocked status. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
904
1046
|
# @param id [String]
|
|
905
1047
|
# @param [Hash] opts the optional parameters
|
|
906
1048
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
@@ -920,6 +1062,8 @@ module Repull
|
|
|
920
1062
|
|
|
921
1063
|
# header parameters
|
|
922
1064
|
header_params = opts[:header_params] || {}
|
|
1065
|
+
# HTTP header 'Accept' (if needed)
|
|
1066
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
923
1067
|
|
|
924
1068
|
# form parameters
|
|
925
1069
|
form_params = opts[:form_params] || {}
|
|
@@ -951,7 +1095,7 @@ module Repull
|
|
|
951
1095
|
end
|
|
952
1096
|
|
|
953
1097
|
# Get Airbnb pricing
|
|
954
|
-
# Read the current pricing config (base price, weekend uplift, length-of-stay discounts, smart-pricing bounds) for an Airbnb listing.
|
|
1098
|
+
# Read the current pricing config (base price, weekend uplift, length-of-stay discounts, smart-pricing bounds) for an Airbnb listing. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
955
1099
|
# @param id [String]
|
|
956
1100
|
# @param [Hash] opts the optional parameters
|
|
957
1101
|
# @return [nil]
|
|
@@ -961,7 +1105,7 @@ module Repull
|
|
|
961
1105
|
end
|
|
962
1106
|
|
|
963
1107
|
# Get Airbnb pricing
|
|
964
|
-
# Read the current pricing config (base price, weekend uplift, length-of-stay discounts, smart-pricing bounds) for an Airbnb listing.
|
|
1108
|
+
# Read the current pricing config (base price, weekend uplift, length-of-stay discounts, smart-pricing bounds) for an Airbnb listing. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
965
1109
|
# @param id [String]
|
|
966
1110
|
# @param [Hash] opts the optional parameters
|
|
967
1111
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
@@ -981,6 +1125,8 @@ module Repull
|
|
|
981
1125
|
|
|
982
1126
|
# header parameters
|
|
983
1127
|
header_params = opts[:header_params] || {}
|
|
1128
|
+
# HTTP header 'Accept' (if needed)
|
|
1129
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
984
1130
|
|
|
985
1131
|
# form parameters
|
|
986
1132
|
form_params = opts[:form_params] || {}
|
|
@@ -1012,7 +1158,7 @@ module Repull
|
|
|
1012
1158
|
end
|
|
1013
1159
|
|
|
1014
1160
|
# Get Airbnb listing quality
|
|
1015
|
-
# Return an Airbnb listing's quality signals — standards, reservation issues, and monthly quality stats. **Pure DB read** from the local quality mirrors. Scope the response with `?type=all|standards|issues|stats` (default `all`, which returns `{ standards, issues }`). Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
1161
|
+
# Return an Airbnb listing's quality signals — standards, reservation issues, and monthly quality stats. **Pure DB read** from the local quality mirrors. Scope the response with `?type=all|standards|issues|stats` (default `all`, which returns `{ standards, issues }`). Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1016
1162
|
# @param id [String] Repull listing id (numeric string).
|
|
1017
1163
|
# @param [Hash] opts the optional parameters
|
|
1018
1164
|
# @option opts [String] :type Which quality slice to return. `all` returns `{ standards, issues }`. (default to 'all')
|
|
@@ -1023,7 +1169,7 @@ module Repull
|
|
|
1023
1169
|
end
|
|
1024
1170
|
|
|
1025
1171
|
# Get Airbnb listing quality
|
|
1026
|
-
# Return an Airbnb listing's quality signals — standards, reservation issues, and monthly quality stats. **Pure DB read** from the local quality mirrors. Scope the response with `?type=all|standards|issues|stats` (default `all`, which returns `{ standards, issues }`). Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
1172
|
+
# Return an Airbnb listing's quality signals — standards, reservation issues, and monthly quality stats. **Pure DB read** from the local quality mirrors. Scope the response with `?type=all|standards|issues|stats` (default `all`, which returns `{ standards, issues }`). Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1027
1173
|
# @param id [String] Repull listing id (numeric string).
|
|
1028
1174
|
# @param [Hash] opts the optional parameters
|
|
1029
1175
|
# @option opts [String] :type Which quality slice to return. `all` returns `{ standards, issues }`. (default to 'all')
|
|
@@ -1082,7 +1228,7 @@ module Repull
|
|
|
1082
1228
|
end
|
|
1083
1229
|
|
|
1084
1230
|
# Get Airbnb listing settings
|
|
1085
|
-
# Return an Airbnb listing's host roles, published locales, and regulatory permits. **Pure DB read** — host roles from `listings_airbnb_details.host_roles`, locales from distinct `listings_airbnb_descriptions.locale`, permits from `listings_airbnb_permits`. Scope with `?type=all|hosts|permits|locales` (default `all`, which returns `{ hosts, locales }`). Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
1231
|
+
# Return an Airbnb listing's host roles, published locales, and regulatory permits. **Pure DB read** — host roles from `listings_airbnb_details.host_roles`, locales from distinct `listings_airbnb_descriptions.locale`, permits from `listings_airbnb_permits`. Scope with `?type=all|hosts|permits|locales` (default `all`, which returns `{ hosts, locales }`). Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1086
1232
|
# @param id [String] Repull listing id (numeric string).
|
|
1087
1233
|
# @param [Hash] opts the optional parameters
|
|
1088
1234
|
# @option opts [String] :type Which settings slice to return. `all` returns `{ hosts, locales }`. (default to 'all')
|
|
@@ -1093,7 +1239,7 @@ module Repull
|
|
|
1093
1239
|
end
|
|
1094
1240
|
|
|
1095
1241
|
# Get Airbnb listing settings
|
|
1096
|
-
# Return an Airbnb listing's host roles, published locales, and regulatory permits. **Pure DB read** — host roles from `listings_airbnb_details.host_roles`, locales from distinct `listings_airbnb_descriptions.locale`, permits from `listings_airbnb_permits`. Scope with `?type=all|hosts|permits|locales` (default `all`, which returns `{ hosts, locales }`). Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
1242
|
+
# Return an Airbnb listing's host roles, published locales, and regulatory permits. **Pure DB read** — host roles from `listings_airbnb_details.host_roles`, locales from distinct `listings_airbnb_descriptions.locale`, permits from `listings_airbnb_permits`. Scope with `?type=all|hosts|permits|locales` (default `all`, which returns `{ hosts, locales }`). Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1097
1243
|
# @param id [String] Repull listing id (numeric string).
|
|
1098
1244
|
# @param [Hash] opts the optional parameters
|
|
1099
1245
|
# @option opts [String] :type Which settings slice to return. `all` returns `{ hosts, locales }`. (default to 'all')
|
|
@@ -1152,7 +1298,7 @@ module Repull
|
|
|
1152
1298
|
end
|
|
1153
1299
|
|
|
1154
1300
|
# Get Airbnb reservation
|
|
1155
|
-
# Fetch a single Airbnb reservation by Airbnb confirmation code (e.g. `HMABCDEF12`).
|
|
1301
|
+
# Fetch a single Airbnb reservation by Airbnb confirmation code (e.g. `HMABCDEF12`). Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1156
1302
|
# @param code [String]
|
|
1157
1303
|
# @param [Hash] opts the optional parameters
|
|
1158
1304
|
# @return [AirbnbReservation]
|
|
@@ -1162,7 +1308,7 @@ module Repull
|
|
|
1162
1308
|
end
|
|
1163
1309
|
|
|
1164
1310
|
# Get Airbnb reservation
|
|
1165
|
-
# Fetch a single Airbnb reservation by Airbnb confirmation code (e.g. `HMABCDEF12`).
|
|
1311
|
+
# Fetch a single Airbnb reservation by Airbnb confirmation code (e.g. `HMABCDEF12`). Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1166
1312
|
# @param code [String]
|
|
1167
1313
|
# @param [Hash] opts the optional parameters
|
|
1168
1314
|
# @return [Array<(AirbnbReservation, Integer, Hash)>] AirbnbReservation data, response status code and response headers
|
|
@@ -1215,7 +1361,7 @@ module Repull
|
|
|
1215
1361
|
end
|
|
1216
1362
|
|
|
1217
1363
|
# Get Airbnb thread
|
|
1218
|
-
# Fetch a single Airbnb message thread by its Airbnb thread id. **Pure DB read** from the local `message_threads` mirror, workspace-scoped. Returns `404 not_found` when no thread matches. For the messages within a thread use `GET /v1/channels/airbnb/messaging/{threadId}/messages`.
|
|
1364
|
+
# Fetch a single Airbnb message thread by its Airbnb thread id. **Pure DB read** from the local `message_threads` mirror, workspace-scoped. Returns `404 not_found` when no thread matches. For the messages within a thread use `GET /v1/channels/airbnb/messaging/{threadId}/messages`. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1219
1365
|
# @param thread_id [String] Airbnb thread id (matches the external thread id).
|
|
1220
1366
|
# @param [Hash] opts the optional parameters
|
|
1221
1367
|
# @return [GetAirbnbThread200Response]
|
|
@@ -1225,7 +1371,7 @@ module Repull
|
|
|
1225
1371
|
end
|
|
1226
1372
|
|
|
1227
1373
|
# Get Airbnb thread
|
|
1228
|
-
# Fetch a single Airbnb message thread by its Airbnb thread id. **Pure DB read** from the local `message_threads` mirror, workspace-scoped. Returns `404 not_found` when no thread matches. For the messages within a thread use `GET /v1/channels/airbnb/messaging/{threadId}/messages`.
|
|
1374
|
+
# Fetch a single Airbnb message thread by its Airbnb thread id. **Pure DB read** from the local `message_threads` mirror, workspace-scoped. Returns `404 not_found` when no thread matches. For the messages within a thread use `GET /v1/channels/airbnb/messaging/{threadId}/messages`. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1229
1375
|
# @param thread_id [String] Airbnb thread id (matches the external thread id).
|
|
1230
1376
|
# @param [Hash] opts the optional parameters
|
|
1231
1377
|
# @return [Array<(GetAirbnbThread200Response, Integer, Hash)>] GetAirbnbThread200Response data, response status code and response headers
|
|
@@ -1278,7 +1424,7 @@ module Repull
|
|
|
1278
1424
|
end
|
|
1279
1425
|
|
|
1280
1426
|
# List Airbnb alterations
|
|
1281
|
-
# List reservation alteration requests for Airbnb reservations in this workspace. **Pure DB read** from the local `reservation_alterations` mirror — never calls Airbnb upstream — scoped to your workspace via the reservations join. Default returns only pending alterations; pass `?type=all` for the full history. Filter to a single reservation with `?reservation_code=<confirmation code>`. Every response carries the `
|
|
1427
|
+
# List reservation alteration requests for Airbnb reservations in this workspace. **Pure DB read** from the local `reservation_alterations` mirror — never calls Airbnb upstream — scoped to your workspace via the reservations join. Default returns only pending alterations; pass `?type=all` for the full history. Filter to a single reservation with `?reservation_code=<confirmation code>`. Every response carries the `dataFreshness` envelope. Alterations of reservations on inactive listings are left out. Filtering by a reservation on an inactive listing (`reservation_code`) returns `403 listing_inactive`.
|
|
1282
1428
|
# @param [Hash] opts the optional parameters
|
|
1283
1429
|
# @option opts [String] :type Scope: `pending` (default) returns only alterations awaiting a decision; `all` returns every alteration. (default to 'pending')
|
|
1284
1430
|
# @option opts [String] :reservation_code Airbnb confirmation code — restricts results to a single reservation. Returns an empty array when no reservation matches within your workspace.
|
|
@@ -1289,7 +1435,7 @@ module Repull
|
|
|
1289
1435
|
end
|
|
1290
1436
|
|
|
1291
1437
|
# List Airbnb alterations
|
|
1292
|
-
# List reservation alteration requests for Airbnb reservations in this workspace. **Pure DB read** from the local `reservation_alterations` mirror — never calls Airbnb upstream — scoped to your workspace via the reservations join. Default returns only pending alterations; pass `?type=all` for the full history. Filter to a single reservation with `?reservation_code=<confirmation code>`. Every response carries the `
|
|
1438
|
+
# List reservation alteration requests for Airbnb reservations in this workspace. **Pure DB read** from the local `reservation_alterations` mirror — never calls Airbnb upstream — scoped to your workspace via the reservations join. Default returns only pending alterations; pass `?type=all` for the full history. Filter to a single reservation with `?reservation_code=<confirmation code>`. Every response carries the `dataFreshness` envelope. Alterations of reservations on inactive listings are left out. Filtering by a reservation on an inactive listing (`reservation_code`) returns `403 listing_inactive`.
|
|
1293
1439
|
# @param [Hash] opts the optional parameters
|
|
1294
1440
|
# @option opts [String] :type Scope: `pending` (default) returns only alterations awaiting a decision; `all` returns every alteration. (default to 'pending')
|
|
1295
1441
|
# @option opts [String] :reservation_code Airbnb confirmation code — restricts results to a single reservation. Returns an empty array when no reservation matches within your workspace.
|
|
@@ -1345,7 +1491,7 @@ module Repull
|
|
|
1345
1491
|
end
|
|
1346
1492
|
|
|
1347
1493
|
# List Airbnb amenities
|
|
1348
|
-
# List an Airbnb listing's amenities. **Pure DB read** from the local `listings_airbnb_amenities` cache — never calls Airbnb upstream. The response splits amenities into `amenities` (regular) and `accessibility_amenities` (step-free access, wide doorways, grab rails, disabled parking, wheelchair, accessible-height fixtures, hoists, etc). Both are arrays (`[]` when none). Consult `
|
|
1494
|
+
# List an Airbnb listing's amenities. **Pure DB read** from the local `listings_airbnb_amenities` cache — never calls Airbnb upstream. The response splits amenities into `amenities` (regular) and `accessibility_amenities` (step-free access, wide doorways, grab rails, disabled parking, wheelchair, accessible-height fixtures, hoists, etc). Both are arrays (`[]` when none). Consult `dataFreshness` to disambiguate \"never synced\" from \"fresh and genuinely empty\". Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1349
1495
|
# @param id [String] Repull listing id (numeric string).
|
|
1350
1496
|
# @param [Hash] opts the optional parameters
|
|
1351
1497
|
# @return [ListAirbnbListingAmenities200Response]
|
|
@@ -1355,7 +1501,7 @@ module Repull
|
|
|
1355
1501
|
end
|
|
1356
1502
|
|
|
1357
1503
|
# List Airbnb amenities
|
|
1358
|
-
# List an Airbnb listing's amenities. **Pure DB read** from the local `listings_airbnb_amenities` cache — never calls Airbnb upstream. The response splits amenities into `amenities` (regular) and `accessibility_amenities` (step-free access, wide doorways, grab rails, disabled parking, wheelchair, accessible-height fixtures, hoists, etc). Both are arrays (`[]` when none). Consult `
|
|
1504
|
+
# List an Airbnb listing's amenities. **Pure DB read** from the local `listings_airbnb_amenities` cache — never calls Airbnb upstream. The response splits amenities into `amenities` (regular) and `accessibility_amenities` (step-free access, wide doorways, grab rails, disabled parking, wheelchair, accessible-height fixtures, hoists, etc). Both are arrays (`[]` when none). Consult `dataFreshness` to disambiguate \"never synced\" from \"fresh and genuinely empty\". Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1359
1505
|
# @param id [String] Repull listing id (numeric string).
|
|
1360
1506
|
# @param [Hash] opts the optional parameters
|
|
1361
1507
|
# @return [Array<(ListAirbnbListingAmenities200Response, Integer, Hash)>] ListAirbnbListingAmenities200Response data, response status code and response headers
|
|
@@ -1408,24 +1554,24 @@ module Repull
|
|
|
1408
1554
|
end
|
|
1409
1555
|
|
|
1410
1556
|
# List Airbnb descriptions
|
|
1411
|
-
# List an Airbnb listing's per-locale content (name, summary, house rules, etc). **Pure DB read** from `listings_airbnb_descriptions`. Filter to one locale with `?locale=en` (the legacy `?country=` param is accepted as a soft alias). Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
1557
|
+
# List an Airbnb listing's per-locale content (name, summary, house rules, etc). **Pure DB read** from `listings_airbnb_descriptions`. Filter to one locale with `?locale=en` (the legacy `?country=` param is accepted as a soft alias). Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1412
1558
|
# @param id [String] Repull listing id (numeric string).
|
|
1413
1559
|
# @param [Hash] opts the optional parameters
|
|
1414
1560
|
# @option opts [String] :locale Filter to a single locale (prefix match, case-insensitive).
|
|
1415
1561
|
# @option opts [String] :country Legacy alias for `locale`. Prefer `locale`.
|
|
1416
|
-
# @return [
|
|
1562
|
+
# @return [GetAirbnbCheckinGuide200Response]
|
|
1417
1563
|
def list_airbnb_listing_descriptions(id, opts = {})
|
|
1418
1564
|
data, _status_code, _headers = list_airbnb_listing_descriptions_with_http_info(id, opts)
|
|
1419
1565
|
data
|
|
1420
1566
|
end
|
|
1421
1567
|
|
|
1422
1568
|
# List Airbnb descriptions
|
|
1423
|
-
# List an Airbnb listing's per-locale content (name, summary, house rules, etc). **Pure DB read** from `listings_airbnb_descriptions`. Filter to one locale with `?locale=en` (the legacy `?country=` param is accepted as a soft alias). Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
1569
|
+
# List an Airbnb listing's per-locale content (name, summary, house rules, etc). **Pure DB read** from `listings_airbnb_descriptions`. Filter to one locale with `?locale=en` (the legacy `?country=` param is accepted as a soft alias). Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1424
1570
|
# @param id [String] Repull listing id (numeric string).
|
|
1425
1571
|
# @param [Hash] opts the optional parameters
|
|
1426
1572
|
# @option opts [String] :locale Filter to a single locale (prefix match, case-insensitive).
|
|
1427
1573
|
# @option opts [String] :country Legacy alias for `locale`. Prefer `locale`.
|
|
1428
|
-
# @return [Array<(
|
|
1574
|
+
# @return [Array<(GetAirbnbCheckinGuide200Response, Integer, Hash)>] GetAirbnbCheckinGuide200Response data, response status code and response headers
|
|
1429
1575
|
def list_airbnb_listing_descriptions_with_http_info(id, opts = {})
|
|
1430
1576
|
if @api_client.config.debugging
|
|
1431
1577
|
@api_client.config.logger.debug 'Calling API: AirbnbApi.list_airbnb_listing_descriptions ...'
|
|
@@ -1454,7 +1600,7 @@ module Repull
|
|
|
1454
1600
|
post_body = opts[:debug_body]
|
|
1455
1601
|
|
|
1456
1602
|
# return_type
|
|
1457
|
-
return_type = opts[:debug_return_type] || '
|
|
1603
|
+
return_type = opts[:debug_return_type] || 'GetAirbnbCheckinGuide200Response'
|
|
1458
1604
|
|
|
1459
1605
|
# auth_names
|
|
1460
1606
|
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
@@ -1477,7 +1623,7 @@ module Repull
|
|
|
1477
1623
|
end
|
|
1478
1624
|
|
|
1479
1625
|
# List Airbnb photos
|
|
1480
|
-
# List photos attached to an Airbnb listing in display order. Returns the public CDN URL plus Airbnb-side metadata (id, caption, room).
|
|
1626
|
+
# List photos attached to an Airbnb listing in display order. Returns the public CDN URL plus Airbnb-side metadata (id, caption, room). Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1481
1627
|
# @param id [String]
|
|
1482
1628
|
# @param [Hash] opts the optional parameters
|
|
1483
1629
|
# @return [nil]
|
|
@@ -1487,7 +1633,7 @@ module Repull
|
|
|
1487
1633
|
end
|
|
1488
1634
|
|
|
1489
1635
|
# List Airbnb photos
|
|
1490
|
-
# List photos attached to an Airbnb listing in display order. Returns the public CDN URL plus Airbnb-side metadata (id, caption, room).
|
|
1636
|
+
# List photos attached to an Airbnb listing in display order. Returns the public CDN URL plus Airbnb-side metadata (id, caption, room). Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1491
1637
|
# @param id [String]
|
|
1492
1638
|
# @param [Hash] opts the optional parameters
|
|
1493
1639
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
@@ -1507,6 +1653,8 @@ module Repull
|
|
|
1507
1653
|
|
|
1508
1654
|
# header parameters
|
|
1509
1655
|
header_params = opts[:header_params] || {}
|
|
1656
|
+
# HTTP header 'Accept' (if needed)
|
|
1657
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1510
1658
|
|
|
1511
1659
|
# form parameters
|
|
1512
1660
|
form_params = opts[:form_params] || {}
|
|
@@ -1538,20 +1686,20 @@ module Repull
|
|
|
1538
1686
|
end
|
|
1539
1687
|
|
|
1540
1688
|
# List Airbnb rooms
|
|
1541
|
-
# List the rooms configured on an Airbnb listing, ordered by room number. **Pure DB read** from `listings_airbnb_rooms`. Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
1689
|
+
# List the rooms configured on an Airbnb listing, ordered by room number. **Pure DB read** from `listings_airbnb_rooms`. Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1542
1690
|
# @param id [String] Repull listing id (numeric string).
|
|
1543
1691
|
# @param [Hash] opts the optional parameters
|
|
1544
|
-
# @return [
|
|
1692
|
+
# @return [GetAirbnbCheckinGuide200Response]
|
|
1545
1693
|
def list_airbnb_listing_rooms(id, opts = {})
|
|
1546
1694
|
data, _status_code, _headers = list_airbnb_listing_rooms_with_http_info(id, opts)
|
|
1547
1695
|
data
|
|
1548
1696
|
end
|
|
1549
1697
|
|
|
1550
1698
|
# List Airbnb rooms
|
|
1551
|
-
# List the rooms configured on an Airbnb listing, ordered by room number. **Pure DB read** from `listings_airbnb_rooms`. Returns `404` when the listing has no Airbnb connection in this workspace.
|
|
1699
|
+
# List the rooms configured on an Airbnb listing, ordered by room number. **Pure DB read** from `listings_airbnb_rooms`. Returns `404` when the listing has no Airbnb connection in this workspace. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1552
1700
|
# @param id [String] Repull listing id (numeric string).
|
|
1553
1701
|
# @param [Hash] opts the optional parameters
|
|
1554
|
-
# @return [Array<(
|
|
1702
|
+
# @return [Array<(GetAirbnbCheckinGuide200Response, Integer, Hash)>] GetAirbnbCheckinGuide200Response data, response status code and response headers
|
|
1555
1703
|
def list_airbnb_listing_rooms_with_http_info(id, opts = {})
|
|
1556
1704
|
if @api_client.config.debugging
|
|
1557
1705
|
@api_client.config.logger.debug 'Calling API: AirbnbApi.list_airbnb_listing_rooms ...'
|
|
@@ -1578,7 +1726,7 @@ module Repull
|
|
|
1578
1726
|
post_body = opts[:debug_body]
|
|
1579
1727
|
|
|
1580
1728
|
# return_type
|
|
1581
|
-
return_type = opts[:debug_return_type] || '
|
|
1729
|
+
return_type = opts[:debug_return_type] || 'GetAirbnbCheckinGuide200Response'
|
|
1582
1730
|
|
|
1583
1731
|
# auth_names
|
|
1584
1732
|
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
@@ -1601,7 +1749,7 @@ module Repull
|
|
|
1601
1749
|
end
|
|
1602
1750
|
|
|
1603
1751
|
# List Airbnb listings
|
|
1604
|
-
# List every Airbnb listing this workspace has access to via the connected Airbnb account. **Pure DB read — never calls Airbnb upstream.** The connect flow is what populates the local cache; the API serves what's already there. Customers with a disconnected host still see their last-synced data, with the top-level `
|
|
1752
|
+
# List every Airbnb listing this workspace has access to via the connected Airbnb account. **Pure DB read — never calls Airbnb upstream.** The connect flow is what populates the local cache; the API serves what's already there. Customers with a disconnected host still see their last-synced data, with the top-level `dataFreshness` envelope flagging the staleness and pointing at the reconnect URL. Pass `?include=amenities` to enrich each connection with its locally-cached amenity set. Returns `null` per connection when the cache is empty. Inactive listings are left out; they keep syncing and reappear once activated. Use `GET /v1/listings?status=inactive` to find them.
|
|
1605
1753
|
# @param [Hash] opts the optional parameters
|
|
1606
1754
|
# @option opts [String] :include Comma-separated expansions. Currently supported: `amenities` (adds `amenities` and `accessibility_amenities` arrays to each connection, sourced from the local `listings_airbnb_amenities` cache).
|
|
1607
1755
|
# @return [AirbnbListingListResponse]
|
|
@@ -1611,7 +1759,7 @@ module Repull
|
|
|
1611
1759
|
end
|
|
1612
1760
|
|
|
1613
1761
|
# List Airbnb listings
|
|
1614
|
-
# List every Airbnb listing this workspace has access to via the connected Airbnb account. **Pure DB read — never calls Airbnb upstream.** The connect flow is what populates the local cache; the API serves what's already there. Customers with a disconnected host still see their last-synced data, with the top-level `
|
|
1762
|
+
# List every Airbnb listing this workspace has access to via the connected Airbnb account. **Pure DB read — never calls Airbnb upstream.** The connect flow is what populates the local cache; the API serves what's already there. Customers with a disconnected host still see their last-synced data, with the top-level `dataFreshness` envelope flagging the staleness and pointing at the reconnect URL. Pass `?include=amenities` to enrich each connection with its locally-cached amenity set. Returns `null` per connection when the cache is empty. Inactive listings are left out; they keep syncing and reappear once activated. Use `GET /v1/listings?status=inactive` to find them.
|
|
1615
1763
|
# @param [Hash] opts the optional parameters
|
|
1616
1764
|
# @option opts [String] :include Comma-separated expansions. Currently supported: `amenities` (adds `amenities` and `accessibility_amenities` arrays to each connection, sourced from the local `listings_airbnb_amenities` cache).
|
|
1617
1765
|
# @return [Array<(AirbnbListingListResponse, Integer, Hash)>] AirbnbListingListResponse data, response status code and response headers
|
|
@@ -1661,10 +1809,10 @@ module Repull
|
|
|
1661
1809
|
end
|
|
1662
1810
|
|
|
1663
1811
|
# List Airbnb reservations
|
|
1664
|
-
# Cursor-paginated list of reservations sourced directly from Airbnb. Use this when you need Airbnb-specific fields (guest payout split, cancellation policy snapshot) that the unified `/v1/reservations` endpoint flattens away. Walk pages with `?cursor=<pagination.
|
|
1812
|
+
# Cursor-paginated list of reservations sourced directly from Airbnb. Use this when you need Airbnb-specific fields (guest payout split, cancellation policy snapshot) that the unified `/v1/reservations` endpoint flattens away. Walk pages with `?cursor=<pagination.nextCursor>` until `pagination.hasMore` is `false`. The cursor is opaque — never construct or parse it client-side. `?offset=` is also accepted as a first-class alias for shallow paging (0..10000) — see the `offset` parameter below. Mutually exclusive with `cursor`. Internally this walks upstream Airbnb cursor pages to skip rows, so deep offsets cost N/limit upstream round-trips; cursor remains the better choice for deep pagination. When `status` is omitted, all statuses are returned (Airbnb defaults to `accepted` only on its own surface, but this endpoint normalises to \"all\"). Pass `?status=accepted` to scope. Reservations on inactive listings are left out (counts and cursors included); they keep syncing and reappear once the listing is activated. Filtering by an inactive listing (`listing_id`) returns `403 listing_inactive`.
|
|
1665
1813
|
# @param [Hash] opts the optional parameters
|
|
1666
|
-
# @option opts [String] :cursor Opaque cursor returned by the previous response's `pagination.
|
|
1667
|
-
# @option opts [Integer] :offset First-class alias for cursor-based pagination. Mutually exclusive with `cursor` — passing both returns 422. Accepts integers in `[0, 10000]`; deeper walks must use `cursor` (constant per-page cost). The response always includes `pagination.
|
|
1814
|
+
# @option opts [String] :cursor Opaque cursor returned by the previous response's `pagination.nextCursor`. Omit to fetch the first page.
|
|
1815
|
+
# @option opts [Integer] :offset First-class alias for cursor-based pagination. Mutually exclusive with `cursor` — passing both returns 422. Accepts integers in `[0, 10000]`; deeper walks must use `cursor` (constant per-page cost). The response always includes `pagination.nextCursor` so consumers can switch from offset → cursor mid-walk for deep pagination without re-keying. (default to 0)
|
|
1668
1816
|
# @option opts [Integer] :limit Max items per page. Hard cap is 100. (default to 50)
|
|
1669
1817
|
# @option opts [String] :listing_id Filter to one Airbnb listing id (numeric string).
|
|
1670
1818
|
# @option opts [String] :status Filter by reservation status. Omit to receive all statuses.
|
|
@@ -1678,10 +1826,10 @@ module Repull
|
|
|
1678
1826
|
end
|
|
1679
1827
|
|
|
1680
1828
|
# List Airbnb reservations
|
|
1681
|
-
# Cursor-paginated list of reservations sourced directly from Airbnb. Use this when you need Airbnb-specific fields (guest payout split, cancellation policy snapshot) that the unified `/v1/reservations` endpoint flattens away. Walk pages with `?cursor=<pagination.
|
|
1829
|
+
# Cursor-paginated list of reservations sourced directly from Airbnb. Use this when you need Airbnb-specific fields (guest payout split, cancellation policy snapshot) that the unified `/v1/reservations` endpoint flattens away. Walk pages with `?cursor=<pagination.nextCursor>` until `pagination.hasMore` is `false`. The cursor is opaque — never construct or parse it client-side. `?offset=` is also accepted as a first-class alias for shallow paging (0..10000) — see the `offset` parameter below. Mutually exclusive with `cursor`. Internally this walks upstream Airbnb cursor pages to skip rows, so deep offsets cost N/limit upstream round-trips; cursor remains the better choice for deep pagination. When `status` is omitted, all statuses are returned (Airbnb defaults to `accepted` only on its own surface, but this endpoint normalises to \"all\"). Pass `?status=accepted` to scope. Reservations on inactive listings are left out (counts and cursors included); they keep syncing and reappear once the listing is activated. Filtering by an inactive listing (`listing_id`) returns `403 listing_inactive`.
|
|
1682
1830
|
# @param [Hash] opts the optional parameters
|
|
1683
|
-
# @option opts [String] :cursor Opaque cursor returned by the previous response's `pagination.
|
|
1684
|
-
# @option opts [Integer] :offset First-class alias for cursor-based pagination. Mutually exclusive with `cursor` — passing both returns 422. Accepts integers in `[0, 10000]`; deeper walks must use `cursor` (constant per-page cost). The response always includes `pagination.
|
|
1831
|
+
# @option opts [String] :cursor Opaque cursor returned by the previous response's `pagination.nextCursor`. Omit to fetch the first page.
|
|
1832
|
+
# @option opts [Integer] :offset First-class alias for cursor-based pagination. Mutually exclusive with `cursor` — passing both returns 422. Accepts integers in `[0, 10000]`; deeper walks must use `cursor` (constant per-page cost). The response always includes `pagination.nextCursor` so consumers can switch from offset → cursor mid-walk for deep pagination without re-keying. (default to 0)
|
|
1685
1833
|
# @option opts [Integer] :limit Max items per page. Hard cap is 100. (default to 50)
|
|
1686
1834
|
# @option opts [String] :listing_id Filter to one Airbnb listing id (numeric string).
|
|
1687
1835
|
# @option opts [String] :status Filter by reservation status. Omit to receive all statuses.
|
|
@@ -1762,7 +1910,7 @@ module Repull
|
|
|
1762
1910
|
end
|
|
1763
1911
|
|
|
1764
1912
|
# List Airbnb reviews
|
|
1765
|
-
# List reviews left by guests on Airbnb listings in this workspace. Includes both reviews of the host and reviews of the guest (where the host has not yet submitted theirs).
|
|
1913
|
+
# List reviews left by guests on Airbnb listings in this workspace. Includes both reviews of the host and reviews of the guest (where the host has not yet submitted theirs). Reviews of inactive listings are left out; they keep syncing and reappear once the listing is activated. Filtering by an inactive listing (`listing_id`) returns `403 listing_inactive`.
|
|
1766
1914
|
# @param [Hash] opts the optional parameters
|
|
1767
1915
|
# @return [AirbnbReviewListResponse]
|
|
1768
1916
|
def list_airbnb_reviews(opts = {})
|
|
@@ -1771,7 +1919,7 @@ module Repull
|
|
|
1771
1919
|
end
|
|
1772
1920
|
|
|
1773
1921
|
# List Airbnb reviews
|
|
1774
|
-
# List reviews left by guests on Airbnb listings in this workspace. Includes both reviews of the host and reviews of the guest (where the host has not yet submitted theirs).
|
|
1922
|
+
# List reviews left by guests on Airbnb listings in this workspace. Includes both reviews of the host and reviews of the guest (where the host has not yet submitted theirs). Reviews of inactive listings are left out; they keep syncing and reappear once the listing is activated. Filtering by an inactive listing (`listing_id`) returns `403 listing_inactive`.
|
|
1775
1923
|
# @param [Hash] opts the optional parameters
|
|
1776
1924
|
# @return [Array<(AirbnbReviewListResponse, Integer, Hash)>] AirbnbReviewListResponse data, response status code and response headers
|
|
1777
1925
|
def list_airbnb_reviews_with_http_info(opts = {})
|
|
@@ -1819,7 +1967,7 @@ module Repull
|
|
|
1819
1967
|
end
|
|
1820
1968
|
|
|
1821
1969
|
# Get Airbnb messages
|
|
1822
|
-
# Fetch the full message log for an Airbnb thread, ordered oldest-to-newest. Walk pages with `?cursor=` until `pagination.hasMore` is `false`.
|
|
1970
|
+
# Fetch the full message log for an Airbnb thread, ordered oldest-to-newest. Walk pages with `?cursor=` until `pagination.hasMore` is `false`. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1823
1971
|
# @param thread_id [String]
|
|
1824
1972
|
# @param [Hash] opts the optional parameters
|
|
1825
1973
|
# @return [MessageListResponse]
|
|
@@ -1829,7 +1977,7 @@ module Repull
|
|
|
1829
1977
|
end
|
|
1830
1978
|
|
|
1831
1979
|
# Get Airbnb messages
|
|
1832
|
-
# Fetch the full message log for an Airbnb thread, ordered oldest-to-newest. Walk pages with `?cursor=` until `pagination.hasMore` is `false`.
|
|
1980
|
+
# Fetch the full message log for an Airbnb thread, ordered oldest-to-newest. Walk pages with `?cursor=` until `pagination.hasMore` is `false`. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
1833
1981
|
# @param thread_id [String]
|
|
1834
1982
|
# @param [Hash] opts the optional parameters
|
|
1835
1983
|
# @return [Array<(MessageListResponse, Integer, Hash)>] MessageListResponse data, response status code and response headers
|
|
@@ -1882,7 +2030,7 @@ module Repull
|
|
|
1882
2030
|
end
|
|
1883
2031
|
|
|
1884
2032
|
# List Airbnb message threads
|
|
1885
|
-
# List Airbnb message threads (one per guest conversation). Cursor-paginated. Each thread includes a preview of the latest message.
|
|
2033
|
+
# List Airbnb message threads (one per guest conversation). Cursor-paginated. Each thread includes a preview of the latest message. Threads on inactive listings are left out; they keep syncing and reappear once the listing is activated. Filtering by an inactive listing (`listing_id`) returns `403 listing_inactive`.
|
|
1886
2034
|
# @param [Hash] opts the optional parameters
|
|
1887
2035
|
# @return [AirbnbThreadListResponse]
|
|
1888
2036
|
def list_airbnb_threads(opts = {})
|
|
@@ -1891,7 +2039,7 @@ module Repull
|
|
|
1891
2039
|
end
|
|
1892
2040
|
|
|
1893
2041
|
# List Airbnb message threads
|
|
1894
|
-
# List Airbnb message threads (one per guest conversation). Cursor-paginated. Each thread includes a preview of the latest message.
|
|
2042
|
+
# List Airbnb message threads (one per guest conversation). Cursor-paginated. Each thread includes a preview of the latest message. Threads on inactive listings are left out; they keep syncing and reappear once the listing is activated. Filtering by an inactive listing (`listing_id`) returns `403 listing_inactive`.
|
|
1895
2043
|
# @param [Hash] opts the optional parameters
|
|
1896
2044
|
# @return [Array<(AirbnbThreadListResponse, Integer, Hash)>] AirbnbThreadListResponse data, response status code and response headers
|
|
1897
2045
|
def list_airbnb_threads_with_http_info(opts = {})
|
|
@@ -1939,7 +2087,7 @@ module Repull
|
|
|
1939
2087
|
end
|
|
1940
2088
|
|
|
1941
2089
|
# List Airbnb transactions
|
|
1942
|
-
# List Airbnb host transactions (payouts, adjustments
|
|
2090
|
+
# List Airbnb host transactions (reservation earnings, payouts, resolution adjustments) for this workspace, newest first. **Pure DB read** — customer-facing reads never call Airbnb upstream; they serve the `airbnb_transactions` mirror. Each row carries the genuine host- and guest-side financial breakdown (accommodation subtotal, cleaning fee, host + guest service fees split base/VAT, tax buckets, expected/actual host payout with settlement status). Trigger a refresh with `POST` on this path. When the mirror is empty or the host disconnected, `dataFreshness.stale = true` with a `reason` (`never_synced`, `host_disconnected_<iso>`, `sync_lag_>_24h`). Transactions of reservations on inactive listings are left out; payout rows, which belong to no listing, are always included.
|
|
1943
2091
|
# @param [Hash] opts the optional parameters
|
|
1944
2092
|
# @return [ListAirbnbTransactions200Response]
|
|
1945
2093
|
def list_airbnb_transactions(opts = {})
|
|
@@ -1948,7 +2096,7 @@ module Repull
|
|
|
1948
2096
|
end
|
|
1949
2097
|
|
|
1950
2098
|
# List Airbnb transactions
|
|
1951
|
-
# List Airbnb host transactions (payouts, adjustments
|
|
2099
|
+
# List Airbnb host transactions (reservation earnings, payouts, resolution adjustments) for this workspace, newest first. **Pure DB read** — customer-facing reads never call Airbnb upstream; they serve the `airbnb_transactions` mirror. Each row carries the genuine host- and guest-side financial breakdown (accommodation subtotal, cleaning fee, host + guest service fees split base/VAT, tax buckets, expected/actual host payout with settlement status). Trigger a refresh with `POST` on this path. When the mirror is empty or the host disconnected, `dataFreshness.stale = true` with a `reason` (`never_synced`, `host_disconnected_<iso>`, `sync_lag_>_24h`). Transactions of reservations on inactive listings are left out; payout rows, which belong to no listing, are always included.
|
|
1952
2100
|
# @param [Hash] opts the optional parameters
|
|
1953
2101
|
# @return [Array<(ListAirbnbTransactions200Response, Integer, Hash)>] ListAirbnbTransactions200Response data, response status code and response headers
|
|
1954
2102
|
def list_airbnb_transactions_with_http_info(opts = {})
|
|
@@ -1996,7 +2144,7 @@ module Repull
|
|
|
1996
2144
|
end
|
|
1997
2145
|
|
|
1998
2146
|
# Map an Airbnb listing to a Repull listing
|
|
1999
|
-
# Link an existing Airbnb listing to a canonical Repull listing/property. **API-key-scoped** (unlike the Booking room mapping, which is Connect-session-scoped). Discover the `airbnbId` (+ `hostId`) via `GET /v1/channels/airbnb/listings`, then re-point it at the `listingId` of your choice — the dedup / consolidation case where the Airbnb sync auto-created its own listing but you want the inventory under an existing property. Repoints both the Airbnb record and its platform link to the target listing in one transaction. Idempotent — re-mapping to the same listing is a 200 no-op (`alreadyMapped: true`). Scope is enforced against your workspace on both the target listing and the existing Airbnb record; a listing that already links a different Airbnb listing returns 409.
|
|
2147
|
+
# Link an existing Airbnb listing to a canonical Repull listing/property. **API-key-scoped** (unlike the Booking room mapping, which is Connect-session-scoped). Discover the `airbnbId` (+ `hostId`) via `GET /v1/channels/airbnb/listings`, then re-point it at the `listingId` of your choice — the dedup / consolidation case where the Airbnb sync auto-created its own listing but you want the inventory under an existing property. Repoints both the Airbnb record and its platform link to the target listing in one transaction. Idempotent — re-mapping to the same listing is a 200 no-op (`alreadyMapped: true`). Scope is enforced against your workspace on both the target listing and the existing Airbnb record; a listing that already links a different Airbnb listing returns 409. Returns `403 listing_inactive` when the target listing, or the listing the Airbnb listing is mapped to now, is inactive; nothing is changed.
|
|
2000
2148
|
# @param map_airbnb_listing_request [MapAirbnbListingRequest]
|
|
2001
2149
|
# @param [Hash] opts the optional parameters
|
|
2002
2150
|
# @return [MapAirbnbListingResponse]
|
|
@@ -2006,7 +2154,7 @@ module Repull
|
|
|
2006
2154
|
end
|
|
2007
2155
|
|
|
2008
2156
|
# Map an Airbnb listing to a Repull listing
|
|
2009
|
-
# Link an existing Airbnb listing to a canonical Repull listing/property. **API-key-scoped** (unlike the Booking room mapping, which is Connect-session-scoped). Discover the `airbnbId` (+ `hostId`) via `GET /v1/channels/airbnb/listings`, then re-point it at the `listingId` of your choice — the dedup / consolidation case where the Airbnb sync auto-created its own listing but you want the inventory under an existing property. Repoints both the Airbnb record and its platform link to the target listing in one transaction. Idempotent — re-mapping to the same listing is a 200 no-op (`alreadyMapped: true`). Scope is enforced against your workspace on both the target listing and the existing Airbnb record; a listing that already links a different Airbnb listing returns 409.
|
|
2157
|
+
# Link an existing Airbnb listing to a canonical Repull listing/property. **API-key-scoped** (unlike the Booking room mapping, which is Connect-session-scoped). Discover the `airbnbId` (+ `hostId`) via `GET /v1/channels/airbnb/listings`, then re-point it at the `listingId` of your choice — the dedup / consolidation case where the Airbnb sync auto-created its own listing but you want the inventory under an existing property. Repoints both the Airbnb record and its platform link to the target listing in one transaction. Idempotent — re-mapping to the same listing is a 200 no-op (`alreadyMapped: true`). Scope is enforced against your workspace on both the target listing and the existing Airbnb record; a listing that already links a different Airbnb listing returns 409. Returns `403 listing_inactive` when the target listing, or the listing the Airbnb listing is mapped to now, is inactive; nothing is changed.
|
|
2010
2158
|
# @param map_airbnb_listing_request [MapAirbnbListingRequest]
|
|
2011
2159
|
# @param [Hash] opts the optional parameters
|
|
2012
2160
|
# @return [Array<(MapAirbnbListingResponse, Integer, Hash)>] MapAirbnbListingResponse data, response status code and response headers
|
|
@@ -2064,7 +2212,7 @@ module Repull
|
|
|
2064
2212
|
end
|
|
2065
2213
|
|
|
2066
2214
|
# Respond to Airbnb review
|
|
2067
|
-
# Post a public host response to a guest review. Airbnb allows one response per review — repeated POSTs return 409. Response text is capped at 1000 characters.
|
|
2215
|
+
# Post a public host response to a guest review. Airbnb allows one response per review — repeated POSTs return 409. Response text is capped at 1000 characters. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2068
2216
|
# @param id [String] Airbnb review id.
|
|
2069
2217
|
# @param respond_airbnb_review_request [RespondAirbnbReviewRequest]
|
|
2070
2218
|
# @param [Hash] opts the optional parameters
|
|
@@ -2075,7 +2223,7 @@ module Repull
|
|
|
2075
2223
|
end
|
|
2076
2224
|
|
|
2077
2225
|
# Respond to Airbnb review
|
|
2078
|
-
# Post a public host response to a guest review. Airbnb allows one response per review — repeated POSTs return 409. Response text is capped at 1000 characters.
|
|
2226
|
+
# Post a public host response to a guest review. Airbnb allows one response per review — repeated POSTs return 409. Response text is capped at 1000 characters. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2079
2227
|
# @param id [String] Airbnb review id.
|
|
2080
2228
|
# @param respond_airbnb_review_request [RespondAirbnbReviewRequest]
|
|
2081
2229
|
# @param [Hash] opts the optional parameters
|
|
@@ -2138,7 +2286,7 @@ module Repull
|
|
|
2138
2286
|
end
|
|
2139
2287
|
|
|
2140
2288
|
# Respond to / submit Airbnb review (legacy)
|
|
2141
|
-
# Legacy action-based shape. Body `{ action: \"respond\"|\"submit\", reviewId, response?, review? }`. Kept for backwards compatibility — prefer `PUT /v1/channels/airbnb/reviews/{id}` (edit) and `POST /v1/channels/airbnb/reviews/{id}/respond` (reply) for new integrations.
|
|
2289
|
+
# Legacy action-based shape. Body `{ action: \"respond\"|\"submit\", reviewId, response?, review? }`. Kept for backwards compatibility — prefer `PUT /v1/channels/airbnb/reviews/{id}` (edit) and `POST /v1/channels/airbnb/reviews/{id}/respond` (reply) for new integrations. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2142
2290
|
# @param [Hash] opts the optional parameters
|
|
2143
2291
|
# @return [nil]
|
|
2144
2292
|
def respond_airbnb_review_legacy(opts = {})
|
|
@@ -2147,7 +2295,7 @@ module Repull
|
|
|
2147
2295
|
end
|
|
2148
2296
|
|
|
2149
2297
|
# Respond to / submit Airbnb review (legacy)
|
|
2150
|
-
# Legacy action-based shape. Body `{ action: \"respond\"|\"submit\", reviewId, response?, review? }`. Kept for backwards compatibility — prefer `PUT /v1/channels/airbnb/reviews/{id}` (edit) and `POST /v1/channels/airbnb/reviews/{id}/respond` (reply) for new integrations.
|
|
2298
|
+
# Legacy action-based shape. Body `{ action: \"respond\"|\"submit\", reviewId, response?, review? }`. Kept for backwards compatibility — prefer `PUT /v1/channels/airbnb/reviews/{id}` (edit) and `POST /v1/channels/airbnb/reviews/{id}/respond` (reply) for new integrations. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2151
2299
|
# @param [Hash] opts the optional parameters
|
|
2152
2300
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
2153
2301
|
def respond_airbnb_review_legacy_with_http_info(opts = {})
|
|
@@ -2162,6 +2310,8 @@ module Repull
|
|
|
2162
2310
|
|
|
2163
2311
|
# header parameters
|
|
2164
2312
|
header_params = opts[:header_params] || {}
|
|
2313
|
+
# HTTP header 'Accept' (if needed)
|
|
2314
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2165
2315
|
|
|
2166
2316
|
# form parameters
|
|
2167
2317
|
form_params = opts[:form_params] || {}
|
|
@@ -2193,21 +2343,23 @@ module Repull
|
|
|
2193
2343
|
end
|
|
2194
2344
|
|
|
2195
2345
|
# Send Airbnb message
|
|
2196
|
-
# Send a message in an Airbnb thread as the host. Airbnb enforces content rules (no off-platform contact info, no external URLs) — violating messages are rejected upstream and surface as `airbnb_error`.
|
|
2197
|
-
# @param thread_id [String]
|
|
2346
|
+
# Send a message in an Airbnb thread as the host. Airbnb enforces content rules (no off-platform contact info, no external URLs) — violating messages are rejected upstream and surface as `airbnb_error`. The `{threadId}` is the Airbnb thread id — the `externalThreadId` field on a unified `Conversation` (`GET /v1/conversations`). Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2347
|
+
# @param thread_id [String] Airbnb thread id (the `externalThreadId` on a unified `Conversation`).
|
|
2348
|
+
# @param send_airbnb_message_request [SendAirbnbMessageRequest]
|
|
2198
2349
|
# @param [Hash] opts the optional parameters
|
|
2199
2350
|
# @return [nil]
|
|
2200
|
-
def send_airbnb_message(thread_id, opts = {})
|
|
2201
|
-
send_airbnb_message_with_http_info(thread_id, opts)
|
|
2351
|
+
def send_airbnb_message(thread_id, send_airbnb_message_request, opts = {})
|
|
2352
|
+
send_airbnb_message_with_http_info(thread_id, send_airbnb_message_request, opts)
|
|
2202
2353
|
nil
|
|
2203
2354
|
end
|
|
2204
2355
|
|
|
2205
2356
|
# Send Airbnb message
|
|
2206
|
-
# Send a message in an Airbnb thread as the host. Airbnb enforces content rules (no off-platform contact info, no external URLs) — violating messages are rejected upstream and surface as `airbnb_error`.
|
|
2207
|
-
# @param thread_id [String]
|
|
2357
|
+
# Send a message in an Airbnb thread as the host. Airbnb enforces content rules (no off-platform contact info, no external URLs) — violating messages are rejected upstream and surface as `airbnb_error`. The `{threadId}` is the Airbnb thread id — the `externalThreadId` field on a unified `Conversation` (`GET /v1/conversations`). Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2358
|
+
# @param thread_id [String] Airbnb thread id (the `externalThreadId` on a unified `Conversation`).
|
|
2359
|
+
# @param send_airbnb_message_request [SendAirbnbMessageRequest]
|
|
2208
2360
|
# @param [Hash] opts the optional parameters
|
|
2209
2361
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
2210
|
-
def send_airbnb_message_with_http_info(thread_id, opts = {})
|
|
2362
|
+
def send_airbnb_message_with_http_info(thread_id, send_airbnb_message_request, opts = {})
|
|
2211
2363
|
if @api_client.config.debugging
|
|
2212
2364
|
@api_client.config.logger.debug 'Calling API: AirbnbApi.send_airbnb_message ...'
|
|
2213
2365
|
end
|
|
@@ -2215,6 +2367,10 @@ module Repull
|
|
|
2215
2367
|
if @api_client.config.client_side_validation && thread_id.nil?
|
|
2216
2368
|
fail ArgumentError, "Missing the required parameter 'thread_id' when calling AirbnbApi.send_airbnb_message"
|
|
2217
2369
|
end
|
|
2370
|
+
# verify the required parameter 'send_airbnb_message_request' is set
|
|
2371
|
+
if @api_client.config.client_side_validation && send_airbnb_message_request.nil?
|
|
2372
|
+
fail ArgumentError, "Missing the required parameter 'send_airbnb_message_request' when calling AirbnbApi.send_airbnb_message"
|
|
2373
|
+
end
|
|
2218
2374
|
# resource path
|
|
2219
2375
|
local_var_path = '/v1/channels/airbnb/messaging/{threadId}/messages'.sub('{threadId}', CGI.escape(thread_id.to_s))
|
|
2220
2376
|
|
|
@@ -2223,12 +2379,19 @@ module Repull
|
|
|
2223
2379
|
|
|
2224
2380
|
# header parameters
|
|
2225
2381
|
header_params = opts[:header_params] || {}
|
|
2382
|
+
# HTTP header 'Accept' (if needed)
|
|
2383
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2384
|
+
# HTTP header 'Content-Type'
|
|
2385
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
2386
|
+
if !content_type.nil?
|
|
2387
|
+
header_params['Content-Type'] = content_type
|
|
2388
|
+
end
|
|
2226
2389
|
|
|
2227
2390
|
# form parameters
|
|
2228
2391
|
form_params = opts[:form_params] || {}
|
|
2229
2392
|
|
|
2230
2393
|
# http body (model)
|
|
2231
|
-
post_body = opts[:debug_body]
|
|
2394
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(send_airbnb_message_request)
|
|
2232
2395
|
|
|
2233
2396
|
# return_type
|
|
2234
2397
|
return_type = opts[:debug_return_type]
|
|
@@ -2253,8 +2416,72 @@ module Repull
|
|
|
2253
2416
|
return data, status_code, headers
|
|
2254
2417
|
end
|
|
2255
2418
|
|
|
2419
|
+
# Sync Airbnb transactions
|
|
2420
|
+
# Refresh the Airbnb transactions mirror for this workspace by pulling from Airbnb upstream and upserting the breakdown that `GET` serves. Optional JSON body `{ start_date, end_date, transaction_type }` (`transaction_type` is `COMPLETED` or `UPCOMING`; both are synced when omitted). Returns `{ synced, count }`.
|
|
2421
|
+
# @param [Hash] opts the optional parameters
|
|
2422
|
+
# @option opts [SyncAirbnbTransactionsRequest] :sync_airbnb_transactions_request
|
|
2423
|
+
# @return [SyncAirbnbTransactions200Response]
|
|
2424
|
+
def sync_airbnb_transactions(opts = {})
|
|
2425
|
+
data, _status_code, _headers = sync_airbnb_transactions_with_http_info(opts)
|
|
2426
|
+
data
|
|
2427
|
+
end
|
|
2428
|
+
|
|
2429
|
+
# Sync Airbnb transactions
|
|
2430
|
+
# Refresh the Airbnb transactions mirror for this workspace by pulling from Airbnb upstream and upserting the breakdown that `GET` serves. Optional JSON body `{ start_date, end_date, transaction_type }` (`transaction_type` is `COMPLETED` or `UPCOMING`; both are synced when omitted). Returns `{ synced, count }`.
|
|
2431
|
+
# @param [Hash] opts the optional parameters
|
|
2432
|
+
# @option opts [SyncAirbnbTransactionsRequest] :sync_airbnb_transactions_request
|
|
2433
|
+
# @return [Array<(SyncAirbnbTransactions200Response, Integer, Hash)>] SyncAirbnbTransactions200Response data, response status code and response headers
|
|
2434
|
+
def sync_airbnb_transactions_with_http_info(opts = {})
|
|
2435
|
+
if @api_client.config.debugging
|
|
2436
|
+
@api_client.config.logger.debug 'Calling API: AirbnbApi.sync_airbnb_transactions ...'
|
|
2437
|
+
end
|
|
2438
|
+
# resource path
|
|
2439
|
+
local_var_path = '/v1/channels/airbnb/transactions'
|
|
2440
|
+
|
|
2441
|
+
# query parameters
|
|
2442
|
+
query_params = opts[:query_params] || {}
|
|
2443
|
+
|
|
2444
|
+
# header parameters
|
|
2445
|
+
header_params = opts[:header_params] || {}
|
|
2446
|
+
# HTTP header 'Accept' (if needed)
|
|
2447
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2448
|
+
# HTTP header 'Content-Type'
|
|
2449
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
2450
|
+
if !content_type.nil?
|
|
2451
|
+
header_params['Content-Type'] = content_type
|
|
2452
|
+
end
|
|
2453
|
+
|
|
2454
|
+
# form parameters
|
|
2455
|
+
form_params = opts[:form_params] || {}
|
|
2456
|
+
|
|
2457
|
+
# http body (model)
|
|
2458
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'sync_airbnb_transactions_request'])
|
|
2459
|
+
|
|
2460
|
+
# return_type
|
|
2461
|
+
return_type = opts[:debug_return_type] || 'SyncAirbnbTransactions200Response'
|
|
2462
|
+
|
|
2463
|
+
# auth_names
|
|
2464
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
2465
|
+
|
|
2466
|
+
new_options = opts.merge(
|
|
2467
|
+
:operation => :"AirbnbApi.sync_airbnb_transactions",
|
|
2468
|
+
:header_params => header_params,
|
|
2469
|
+
:query_params => query_params,
|
|
2470
|
+
:form_params => form_params,
|
|
2471
|
+
:body => post_body,
|
|
2472
|
+
:auth_names => auth_names,
|
|
2473
|
+
:return_type => return_type
|
|
2474
|
+
)
|
|
2475
|
+
|
|
2476
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2477
|
+
if @api_client.config.debugging
|
|
2478
|
+
@api_client.config.logger.debug "API called: AirbnbApi#sync_airbnb_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2479
|
+
end
|
|
2480
|
+
return data, status_code, headers
|
|
2481
|
+
end
|
|
2482
|
+
|
|
2256
2483
|
# Upsert Airbnb check-in guide
|
|
2257
|
-
# Upsert the check-in guide for one locale on an Airbnb listing. **Write-side** — calls Airbnb upstream; the DB mirror is reconciled by the sync worker once the upstream call returns. Target the locale with `?locale=en` (defaults to `en`). Requires a connected Airbnb host, else `404 no_connection`.
|
|
2484
|
+
# Upsert the check-in guide for one locale on an Airbnb listing. **Write-side** — calls Airbnb upstream; the DB mirror is reconciled by the sync worker once the upstream call returns. Target the locale with `?locale=en` (defaults to `en`). Requires a connected Airbnb host, else `404 no_connection`. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2258
2485
|
# @param id [String] Repull listing id (numeric string).
|
|
2259
2486
|
# @param [Hash] opts the optional parameters
|
|
2260
2487
|
# @option opts [String] :locale Locale to upsert. Defaults to `en`. (default to 'en')
|
|
@@ -2265,7 +2492,7 @@ module Repull
|
|
|
2265
2492
|
end
|
|
2266
2493
|
|
|
2267
2494
|
# Upsert Airbnb check-in guide
|
|
2268
|
-
# Upsert the check-in guide for one locale on an Airbnb listing. **Write-side** — calls Airbnb upstream; the DB mirror is reconciled by the sync worker once the upstream call returns. Target the locale with `?locale=en` (defaults to `en`). Requires a connected Airbnb host, else `404 no_connection`.
|
|
2495
|
+
# Upsert the check-in guide for one locale on an Airbnb listing. **Write-side** — calls Airbnb upstream; the DB mirror is reconciled by the sync worker once the upstream call returns. Target the locale with `?locale=en` (defaults to `en`). Requires a connected Airbnb host, else `404 no_connection`. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2269
2496
|
# @param id [String] Repull listing id (numeric string).
|
|
2270
2497
|
# @param [Hash] opts the optional parameters
|
|
2271
2498
|
# @option opts [String] :locale Locale to upsert. Defaults to `en`. (default to 'en')
|
|
@@ -2320,7 +2547,7 @@ module Repull
|
|
|
2320
2547
|
end
|
|
2321
2548
|
|
|
2322
2549
|
# Update Airbnb availability
|
|
2323
|
-
# Push availability + restrictions to Airbnb. `type: \"calendar\"` writes per-date restrictions — min/max nights, closed-to-arrival, closed-to-departure, and stop-sell (`availability: \"unavailable\"`) — via a batch of operations that each target either a date range or an explicit date list. `type: \"rules\"` writes listing-level availability rules (default min/max nights, booking lead time, turnover days, seasonal/day-of-week min nights). Restrictions never leak across channels — this endpoint writes only to Airbnb.
|
|
2550
|
+
# Push availability + restrictions to Airbnb. `type: \"calendar\"` writes per-date restrictions — min/max nights, closed-to-arrival, closed-to-departure, and stop-sell (`availability: \"unavailable\"`) — via a batch of operations that each target either a date range or an explicit date list. `type: \"rules\"` writes listing-level availability rules (default min/max nights, booking lead time, turnover days, seasonal/day-of-week min nights). Restrictions never leak across channels — this endpoint writes only to Airbnb. `{id}` is the **Repull listing id** (from `GET /v1/properties` or `GET /v1/channels/airbnb/listings`), not the Airbnb listing id — Repull translates it before calling Airbnb. The body is validated before anything reaches Airbnb: a malformed body is `422 invalid_params` naming the `field`. Calendar operations accept only the documented fields. **Blocking dates:** Airbnb requires a `busy_subtype` whenever `availability` is `\"unavailable\"`. If an operation leaves it out, Repull sends `busy_subtype: \"BLOCKED_BY_HOST\"`; send `\"OUTSIDE_RESERVATION\"` for dates held by a booking made on another channel. **Errors:** `403 connection_reauth_required` — Airbnb no longer accepts the connection for this listing (reconnect; retrying won't help). `403 listing_inactive` — the listing is inactive. `404 not_found` — no Airbnb-connected listing with this id in the workspace. `422 airbnb_rejected` — Airbnb refused the change; `message` carries its reason. `429 airbnb_rate_limited` — back off. `502 airbnb_error` — Airbnb outage or timeout; retry.
|
|
2324
2551
|
# @param id [String]
|
|
2325
2552
|
# @param airbnb_availability_write_request [AirbnbAvailabilityWriteRequest]
|
|
2326
2553
|
# @param [Hash] opts the optional parameters
|
|
@@ -2331,7 +2558,7 @@ module Repull
|
|
|
2331
2558
|
end
|
|
2332
2559
|
|
|
2333
2560
|
# Update Airbnb availability
|
|
2334
|
-
# Push availability + restrictions to Airbnb. `type: \"calendar\"` writes per-date restrictions — min/max nights, closed-to-arrival, closed-to-departure, and stop-sell (`availability: \"unavailable\"`) — via a batch of operations that each target either a date range or an explicit date list. `type: \"rules\"` writes listing-level availability rules (default min/max nights, booking lead time, turnover days, seasonal/day-of-week min nights). Restrictions never leak across channels — this endpoint writes only to Airbnb.
|
|
2561
|
+
# Push availability + restrictions to Airbnb. `type: \"calendar\"` writes per-date restrictions — min/max nights, closed-to-arrival, closed-to-departure, and stop-sell (`availability: \"unavailable\"`) — via a batch of operations that each target either a date range or an explicit date list. `type: \"rules\"` writes listing-level availability rules (default min/max nights, booking lead time, turnover days, seasonal/day-of-week min nights). Restrictions never leak across channels — this endpoint writes only to Airbnb. `{id}` is the **Repull listing id** (from `GET /v1/properties` or `GET /v1/channels/airbnb/listings`), not the Airbnb listing id — Repull translates it before calling Airbnb. The body is validated before anything reaches Airbnb: a malformed body is `422 invalid_params` naming the `field`. Calendar operations accept only the documented fields. **Blocking dates:** Airbnb requires a `busy_subtype` whenever `availability` is `\"unavailable\"`. If an operation leaves it out, Repull sends `busy_subtype: \"BLOCKED_BY_HOST\"`; send `\"OUTSIDE_RESERVATION\"` for dates held by a booking made on another channel. **Errors:** `403 connection_reauth_required` — Airbnb no longer accepts the connection for this listing (reconnect; retrying won't help). `403 listing_inactive` — the listing is inactive. `404 not_found` — no Airbnb-connected listing with this id in the workspace. `422 airbnb_rejected` — Airbnb refused the change; `message` carries its reason. `429 airbnb_rate_limited` — back off. `502 airbnb_error` — Airbnb outage or timeout; retry.
|
|
2335
2562
|
# @param id [String]
|
|
2336
2563
|
# @param airbnb_availability_write_request [AirbnbAvailabilityWriteRequest]
|
|
2337
2564
|
# @param [Hash] opts the optional parameters
|
|
@@ -2356,6 +2583,8 @@ module Repull
|
|
|
2356
2583
|
|
|
2357
2584
|
# header parameters
|
|
2358
2585
|
header_params = opts[:header_params] || {}
|
|
2586
|
+
# HTTP header 'Accept' (if needed)
|
|
2587
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2359
2588
|
# HTTP header 'Content-Type'
|
|
2360
2589
|
content_type = @api_client.select_header_content_type(['application/json'])
|
|
2361
2590
|
if !content_type.nil?
|
|
@@ -2392,7 +2621,7 @@ module Repull
|
|
|
2392
2621
|
end
|
|
2393
2622
|
|
|
2394
2623
|
# Update Airbnb pricing
|
|
2395
|
-
# Push pricing changes to Airbnb. The `type` discriminator selects the sub-resource (model, standard settings, LOS, rate-plan, fees, currency, rule, or per-date `calendar`). `type: \"calendar\"` carries the full per-date restriction set — nightly price, min/max nights, closed-to-arrival, closed-to-departure, and stop-sell (`availability: \"unavailable\"`). For settings sub-resources the full object is replaced — GET first, mutate locally, then PUT the whole object.
|
|
2624
|
+
# Push pricing changes to Airbnb. The `type` discriminator selects the sub-resource (model, standard settings, LOS, rate-plan, fees, currency, rule, or per-date `calendar`). `type: \"calendar\"` carries the full per-date restriction set — nightly price, min/max nights, closed-to-arrival, closed-to-departure, and stop-sell (`availability: \"unavailable\"`). For settings sub-resources the full object is replaced — GET first, mutate locally, then PUT the whole object. `{id}` is the **Repull listing id** (from `GET /v1/properties` or `GET /v1/channels/airbnb/listings`), not the Airbnb listing id — Repull translates it before calling Airbnb. The body is validated before anything reaches Airbnb: a malformed body is `422 invalid_params` naming the `field`. Calendar operations accept only the documented fields. **Blocking dates:** Airbnb requires a `busy_subtype` whenever `availability` is `\"unavailable\"`. If an operation leaves it out, Repull sends `busy_subtype: \"BLOCKED_BY_HOST\"`; send `\"OUTSIDE_RESERVATION\"` for dates held by a booking made on another channel. **Errors:** `403 connection_reauth_required` — Airbnb no longer accepts the connection for this listing (reconnect; retrying won't help). `403 listing_inactive` — the listing is inactive. `404 not_found` — no Airbnb-connected listing with this id in the workspace. `422 airbnb_rejected` — Airbnb refused the change; `message` carries its reason. `429 airbnb_rate_limited` — back off. `502 airbnb_error` — Airbnb outage or timeout; retry.
|
|
2396
2625
|
# @param id [String]
|
|
2397
2626
|
# @param airbnb_pricing_write_request [AirbnbPricingWriteRequest]
|
|
2398
2627
|
# @param [Hash] opts the optional parameters
|
|
@@ -2403,7 +2632,7 @@ module Repull
|
|
|
2403
2632
|
end
|
|
2404
2633
|
|
|
2405
2634
|
# Update Airbnb pricing
|
|
2406
|
-
# Push pricing changes to Airbnb. The `type` discriminator selects the sub-resource (model, standard settings, LOS, rate-plan, fees, currency, rule, or per-date `calendar`). `type: \"calendar\"` carries the full per-date restriction set — nightly price, min/max nights, closed-to-arrival, closed-to-departure, and stop-sell (`availability: \"unavailable\"`). For settings sub-resources the full object is replaced — GET first, mutate locally, then PUT the whole object.
|
|
2635
|
+
# Push pricing changes to Airbnb. The `type` discriminator selects the sub-resource (model, standard settings, LOS, rate-plan, fees, currency, rule, or per-date `calendar`). `type: \"calendar\"` carries the full per-date restriction set — nightly price, min/max nights, closed-to-arrival, closed-to-departure, and stop-sell (`availability: \"unavailable\"`). For settings sub-resources the full object is replaced — GET first, mutate locally, then PUT the whole object. `{id}` is the **Repull listing id** (from `GET /v1/properties` or `GET /v1/channels/airbnb/listings`), not the Airbnb listing id — Repull translates it before calling Airbnb. The body is validated before anything reaches Airbnb: a malformed body is `422 invalid_params` naming the `field`. Calendar operations accept only the documented fields. **Blocking dates:** Airbnb requires a `busy_subtype` whenever `availability` is `\"unavailable\"`. If an operation leaves it out, Repull sends `busy_subtype: \"BLOCKED_BY_HOST\"`; send `\"OUTSIDE_RESERVATION\"` for dates held by a booking made on another channel. **Errors:** `403 connection_reauth_required` — Airbnb no longer accepts the connection for this listing (reconnect; retrying won't help). `403 listing_inactive` — the listing is inactive. `404 not_found` — no Airbnb-connected listing with this id in the workspace. `422 airbnb_rejected` — Airbnb refused the change; `message` carries its reason. `429 airbnb_rate_limited` — back off. `502 airbnb_error` — Airbnb outage or timeout; retry.
|
|
2407
2636
|
# @param id [String]
|
|
2408
2637
|
# @param airbnb_pricing_write_request [AirbnbPricingWriteRequest]
|
|
2409
2638
|
# @param [Hash] opts the optional parameters
|
|
@@ -2428,6 +2657,8 @@ module Repull
|
|
|
2428
2657
|
|
|
2429
2658
|
# header parameters
|
|
2430
2659
|
header_params = opts[:header_params] || {}
|
|
2660
|
+
# HTTP header 'Accept' (if needed)
|
|
2661
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2431
2662
|
# HTTP header 'Content-Type'
|
|
2432
2663
|
content_type = @api_client.select_header_content_type(['application/json'])
|
|
2433
2664
|
if !content_type.nil?
|
|
@@ -2464,7 +2695,7 @@ module Repull
|
|
|
2464
2695
|
end
|
|
2465
2696
|
|
|
2466
2697
|
# Edit / react to / mark an Airbnb message
|
|
2467
|
-
# Act on a single message in an Airbnb thread. **Write-side** — calls Airbnb upstream. The `action` discriminator selects the operation: - `edit` — replace message text (requires `message`). - `unsend` — retract the message. - `read` — mark the message as read. - `react` — add a reaction (requires `reaction`). Requires a connected Airbnb host, else `404 no_connection`.
|
|
2698
|
+
# Act on a single message in an Airbnb thread. **Write-side** — calls Airbnb upstream. The `action` discriminator selects the operation: - `edit` — replace message text (requires `message`). - `unsend` — retract the message. - `read` — mark the message as read. - `react` — add a reaction (requires `reaction`). Requires a connected Airbnb host, else `404 no_connection`. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2468
2699
|
# @param thread_id [String] Airbnb thread id.
|
|
2469
2700
|
# @param message_id [String] Airbnb message id within the thread.
|
|
2470
2701
|
# @param update_airbnb_message_request [UpdateAirbnbMessageRequest]
|
|
@@ -2476,7 +2707,7 @@ module Repull
|
|
|
2476
2707
|
end
|
|
2477
2708
|
|
|
2478
2709
|
# Edit / react to / mark an Airbnb message
|
|
2479
|
-
# Act on a single message in an Airbnb thread. **Write-side** — calls Airbnb upstream. The `action` discriminator selects the operation: - `edit` — replace message text (requires `message`). - `unsend` — retract the message. - `read` — mark the message as read. - `react` — add a reaction (requires `reaction`). Requires a connected Airbnb host, else `404 no_connection`.
|
|
2710
|
+
# Act on a single message in an Airbnb thread. **Write-side** — calls Airbnb upstream. The `action` discriminator selects the operation: - `edit` — replace message text (requires `message`). - `unsend` — retract the message. - `read` — mark the message as read. - `react` — add a reaction (requires `reaction`). Requires a connected Airbnb host, else `404 no_connection`. Returns `403 listing_inactive` when the listing this resolves to is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2480
2711
|
# @param thread_id [String] Airbnb thread id.
|
|
2481
2712
|
# @param message_id [String] Airbnb message id within the thread.
|
|
2482
2713
|
# @param update_airbnb_message_request [UpdateAirbnbMessageRequest]
|
|
@@ -2544,7 +2775,7 @@ module Repull
|
|
|
2544
2775
|
end
|
|
2545
2776
|
|
|
2546
2777
|
# Upload photos to Airbnb
|
|
2547
|
-
# Upload one or more photos to an Airbnb listing. Accepts public image URLs (Airbnb fetches them) — direct binary upload is not supported on this endpoint.
|
|
2778
|
+
# Upload one or more photos to an Airbnb listing. Accepts public image URLs (Airbnb fetches them) — direct binary upload is not supported on this endpoint. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2548
2779
|
# @param id [String]
|
|
2549
2780
|
# @param [Hash] opts the optional parameters
|
|
2550
2781
|
# @return [nil]
|
|
@@ -2554,7 +2785,7 @@ module Repull
|
|
|
2554
2785
|
end
|
|
2555
2786
|
|
|
2556
2787
|
# Upload photos to Airbnb
|
|
2557
|
-
# Upload one or more photos to an Airbnb listing. Accepts public image URLs (Airbnb fetches them) — direct binary upload is not supported on this endpoint.
|
|
2788
|
+
# Upload one or more photos to an Airbnb listing. Accepts public image URLs (Airbnb fetches them) — direct binary upload is not supported on this endpoint. Returns `403 listing_inactive` when the listing is inactive. An inactive listing keeps syncing, but cannot be read or changed through the API until it is activated.
|
|
2558
2789
|
# @param id [String]
|
|
2559
2790
|
# @param [Hash] opts the optional parameters
|
|
2560
2791
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
@@ -2574,6 +2805,8 @@ module Repull
|
|
|
2574
2805
|
|
|
2575
2806
|
# header parameters
|
|
2576
2807
|
header_params = opts[:header_params] || {}
|
|
2808
|
+
# HTTP header 'Accept' (if needed)
|
|
2809
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2577
2810
|
|
|
2578
2811
|
# form parameters
|
|
2579
2812
|
form_params = opts[:form_params] || {}
|