Create, update or delete a listing

POST https://ws.icnea.net/inventory_update.aspx

Use this API to create, update or delete a listing.

 

BODY PARAMS
<inventory_update> <link> <user>integer(4)</user> <password>character(20)</password> </link> <lodgings> <lodging> <lodging_id>integer(8)</lodging_id> <lodging_action>add/update/cancel</lodging_action> <lodging_type>hotel/apartment/villa/hostel</lodging_type> <lodging_company_name>character(50)</lodging_company_name> <lodging_public_name>character(50)</lodging_public_name> <lodging_address>character(50)</lodging_address> <lodging_address_type>character(50)</lodging_address_type> <lodging_address_number>character(50)</lodging_address_number> <lodging_address_number_type>character(50)</lodging_address_number_type> <lodging_address_block>character(50)</lodging_address_block> <lodging_address_portal>character(50)</lodging_address_portal> <lodging_address_staircase>character(50)</lodging_address_staircase> <lodging_address_floor>character(50)</lodging_address_floor> <lodging_address_door>character(50)</lodging_address_door> <lodging_address_plus>character(50)</lodging_address_plus> <lodging_city>character(50)</lodging_city> <lodging_zip>character(50)</lodging_zip> <lodging_country>iso3166 </lodging_country> <lodging_region>character(50)</lodging_region> <lodging_telephone>character(50)</lodging_telephone> <lodging_email>character(50)</lodging_email> <lodging_contact>character(50)</lodging_contact> <lodging_category>character(50)</lodging_category> <lodging_latitude>decimal</lodging_latitude> <lodging_longitude>decimal</lodging_longitude> <lodging_standard_capacity>integer</lodging_standard_capacity> <lodging_maximum_capacity>integer</lodging_maximum_capacity> <lodging_surface>integer (m2)</lodging_surface> <lodging_number_of_rooms>integer</lodging_number_of_rooms> <lodging_number_of_bathrooms>integer</lodging_number_of_bathrooms> <lodging_number_of_toilets>integer</lodging_number_of_toilets> <lodging_number_of_single_beds>integer</lodging_number_of_single_beds> <lodging_number_of_double_beds>integer</lodging_number_of_double_beds> <lodging_number_of_sofa_beds>integer</lodging_number_of_sofa_beds> <lodging_number_of_bunk_beds>integer</lodging_number_of_bunk_beds> <lodging_booking_fee>decimal</lodging_booking_fee> <lodging_cleaning_fee>decimal</lodging_cleaning_fee> <lodging_booking_deposit>decimal</lodging_booking_deposit> <lodging_minimum_advance_reservation>integer</lodging_minimum_advance_reservation> <lodging_distance_to_city_centre>decimal(km)</lodging_distance_to_city_centre> <lodging_distance_to_airport>decimal(km)</lodging_distance_to_airport> <lodging_distance_to_harbour>decimal(km)</lodging_distance_to_harbour> <lodging_distance_to_railway_station>decimal(km)</lodging_distance_to_railway_station> <lodging_distance_to_public_transport>decimal(km)</lodging_distance_to_public_transport> <lodging_distance_to_hospital>decimal(km)</lodging_distance_to_hospital> <lodging_distance_to_pharmacy>decimal(km)</lodging_distance_to_pharmacy> <lodging_distance_to_market>decimal(km)</lodging_distance_to_market> <lodging_distance_to_ski_slope>decimal(km)</lodging_distance_to_ski_slope> <lodging_distance_to_beach>decimal(km)</lodging_distance_to_beach> <lodging_distance_to_golf>decimal(km)</lodging_distance_to_golf> <lodging_distance_to_public_park>decimal(km)</lodging_distance_to_public_park> <lodging_distance_to_historic_district>decimal(km)</lodging_distance_to_historic_district> <lodging_legal_registration_number>character(50)</lodging_legal_registration_number> <lodging_cadastral_reference_number>character(50)</lodging_cadastral_reference_number> <lodging_remarks>decimal</lodging_remarks> <lodging_online_booking>decimal</lodging_online_booking> <lodging_arrival_time_from>decimal</lodging_arrival_time_from> <lodging_arrival_time_to>decimal</lodging_arrival_time_to> <lodging_departure_time_from>decimal</lodging_departure_time_from> <lodging_departure_time_to>decimal</lodging_departure_time_to> <lodging_cancellation_policies> <lodging_cancellation_policy> <days_prior>integer</days_prior> <refund_percentage>integer</refund_percentage> </lodging_cancellation_policy> </lodging_cancellation_policies> <lodging_descriptions> <lodging_description> <description_id>integer </description_id> <language>iso639-1</language> <headline>character(50)</headline> <text>character(4000)</text> </lodging_description> </lodging_descriptions> <lodging_images> <lodging_image> <image_url>character(50)</image_url> </lodging_image> </lodging_images> <lodging_equipment> ... </lodging_equipment> <lodging_services> ... </lodging_services> <lodging_surroundings> ... </lodging_surroundings> <lodging_location> ... </lodging_location> <lodging_restrictions> ... </lodging_restrictions> <lodging_recommendations> ... </lodging_recommendations> <lodging_rooms> <lodging_room> <room_id>integer </room_id> <room_name>character(50)</room_name> <room_units> <room_id>character(50)</room_id> <room_unit>character(50)</room_unit> </room_units> <room_descriptions> <room_description> <language>iso639-1</language> <text>character(1000)</text> </room_description> </room_descriptions> <room_images> <room_image> <room_id>integer</room_id> <image_url>character(50)</image_url> </room_image> </room_images> <room_equipment> ... </room_equipment> <room_rates> <room_rate> <rate_id>integer</rate_id> <rate_persons>integer</rate_persons> <rate_name>character(50)</rate_name> <rate_cancel>character(50)</rate_cancel> <rate_descriptions> <rate_description> <language>iso639-1</language> <text>character(50)</text> </rate_description> </rate_descriptions> </room_rate> </room_rates> </lodging_room> </lodging_rooms> </lodging> </inventory_update>

 

parameter

type

description

Is mandatory?

parameter

type

description

Is mandatory?

lodging_id

 

 

 

lodging_type

 

 

 

lodging_company_name

 

 

 

lodging_public_name

 

 

 

lodging_address

 

 

 

lodging_address_number

 

 

 

lodging_address_staircase

 

 

 

lodging_address_floor

 

 

 

lodging_address_door

 

 

 

lodging_address_type

 

 

 

lodging_address_plus

 

 

 

lodging_city

 

 

 

lodging_zip

 

 

 

lodging_country

 

 

 

lodging_region

 

 

 

lodging_telephone

 

 

 

lodging_email

 

 

 

lodging_category

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Action

<lodging_id>integer(8)</lodging_id> <lodging_action>add/update/cancel</lodging_action>
  • You can create a new property sending “add” as the lodging_action. In this case, you don’t need to send the lodging_id, since it will be created in Icnea.

  • You can update a property sending “update” as the lodging_action or not puting the lodging_action field. You need to send lodging_id.

  • You can delete a property sending “cancel” as the lodging_action. You need to send lodging_id.

If you try to delete a property with reservations in future dates, you will get an error.

If you don’t send any <lodging_action> the system will try to update the property in the <lodging_id> node.

 

Cancellation policies

<lodging_cancellation_policy> <days_prior>integer</days_prior> <refund_percentage>integer</refund_percentage> </lodging_cancellation_policy>

There can be up to 3 cancellation policies for a listing.

 

Images

There can be up to 48 photos. If you send more photos, they will not be saved in the system.

Each photo will be cropped to have different sizes (so that we can use the most accurate and optimitzed in each instance).

We recommend that the photos are 2100x1575px or bigger, so that they can be always the maximum size and quality in Icnea and the OTAs.

The minimum size is 700x525px.

 

Amenities

The amenities will be a boolean true/false for each one.

The list of amenities for each category can be found here.

The <room_equipment> node is inside the <lodging_rooms> but, for vacation rentals properties, this will be the lodging equipment as well. It is separated in another node for the hotel property type.

 


Response with success:

Response with error: