This request allows the Channel Manager to send all needed updates in a single message.

Request

The request will be a combination of all needed update requests inside a common query element envelope. Every query element inside the first one is documented in its specific set operation page. One or more set operations are allowed inside the main query message with type setall. The supported operations are setavail, setrate, setclousure, setminimumstay and setmaximumstay.

  • All the operations are applied to the agreement of the main query element: the agreement of the inner query elements is not considered.
  • Send each operation only once: when the same operation is sent more than once in the same setall, only the first one is applied. Put all the dates of an operation in a single query element.
  • For closures on arrival use setclousure with checkinonly Y. The deprecated setclousuretoarrival must not be used inside setall: its closures would be set as normal closures. Normal closures, closures on arrival and closures on departure can be sent together as different date elements of the same setclousure.
<envelope>
    <header>
        <actor>...</actor>
        <user>...</user>
        <password>...</password>
        <version>1.0.0</version>
        <timestamp>20210808162849</timestamp>
        <transaction>52791</transaction>
    </header>
    <query agreement="5646" product="hotel" type="setall">
        <query agrement="5646" product="hotel" type="setavail">
            <roomtype number="0" release="0" roomcode="TRP" generic="F">
                <dates>
                    <date operation="insert" value="2022-04-30">
                        <days>0</days>
                    </date>
                </dates>
            </roomtype>
        </query>
        <query agrement="5646" product="hotel" type="setrate">
            <roomtype roomcode="TRP">
                <dates>
                    <date operation="insert" value="2022-04-30">
                        <rate>136.5</rate>
                        <days>0</days>
                    </date>
                </dates>
            </roomtype>
        </query>
        <query agrement="5646" product="hotel" type="setclousure">
            <date>
                <startdate>2022-04-30</startdate>
                <enddate>2022-04-30</enddate>
                <roomcode>
                    <SGL>Y</SGL>
                    <TWN>N</TWN>
                    <DBL>N</DBL>
                    <TRP>N</TRP>
                    <QUD>N</QUD>
                    <STR>N</STR>
                </roomcode>
            </date>
            <date>
                <startdate>2022-05-01</startdate>
                <enddate>2022-05-01</enddate>
                <checkinonly>Y</checkinonly>
                <roomcode>
                    <SGL>Y</SGL>
                    <TWN>Y</TWN>
                    <DBL>Y</DBL>
                    <TRP>Y</TRP>
                    <QUD>Y</QUD>
                    <STR>Y</STR>
                </roomcode>
            </date>
        </query>
        <query agrement="5646" product="hotel" type="setminimumstay">
            <date>
                <startdate>2022-04-30</startdate>
                <enddate>2022-04-30</enddate>
                <nights>7</nights>
            </date>
        </query>
    </query>
</envelope>
Response

Standard ok response will be given if all operations described were successful. The operations are applied independently: in case 1 or more operation failed, the other operations are applied anyway, and an error message listing the operations failed and the reason will be returned in a standard error response text. The exceptions are described in the exceptions page.

<envelope>
    <header>
        <version>1.0</version>
        <timestamp>20220429112205</timestamp>
        <transaction>52791</transaction>
    </header>
    <response type="error">set_closures: CannotCompleteOperationException - set_rate: OperationNotAllowedException</response>
</envelope>