<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
             xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
             xmlns:xs="http://www.w3.org/2001/XMLSchema"
             xmlns:ns="http://soap.amica.com.pl/ws" targetNamespace="http://soap.amica.com.pl/ws">

    <types>
        <xs:schema targetNamespace="http://soap.amica.com.pl/ws">

            <!--  simple types -->

            <xs:simpleType name="statusType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Status code type (0 on normal call processing or non zero number in case of problem), pattern: "0|\d+"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="0|\d+"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="flagType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Flag code type (1 on true or set, 0 on false or unset), pattern: "1|0"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="1|0"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="tokenType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Caller or campaign (application) predefined ID string, pattern: "[a-zA-Z0-9]"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="[a-zA-Z0-9]"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="userRangeType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User range type, pattern: "partners|consumers"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="partners|consumers"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="userGroupCodeType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        User Group type (0: not activated/verified, 1000: consumers, > 2000+: partners, 5000+: internal users)&lt;br>
                        &lt;br>Values according to ditionary availabe by authAvailableUserGroupsGet() method
                    </xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="0|1000|1500|2000|2010|2100|3000|4000|4500|5000|6100|7100|8900|9900|9999|2000\+|5000\+"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="loginType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Login type, pattern: "a-zA-Z0-9 \-\._]{4,}"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="[a-zA-Z0-9 \-\._]{4,}"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="emailType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Email address type (eg. user@server.pl ), pattern: ".+@.+[.][a-zA-Z]{2,4}"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value=".+@.+[.][a-zA-Z]{2,4}"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="phoneNumberType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Cellphone number type (eg. +48123456789 ), pattern: "\+\d{2}[ \-0-9]{9,10}"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="\+\d{2}[ \-0-9]{9,10}"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="sexCodeType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Sex code type, pattern: "F|M"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="F|M"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="birthDateType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Birth date type (eg. 2000-11-28), pattern: "\d{4}-\d{2}-\d{2}"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="[\d\-]{10,13}"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="postCodeType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Polish post code type (eg. 12-250), used in partners range only, pattern: "\d{2}-\d{3}"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="\d{2}-\d{3}"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="countryCodeType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Country code type (PL, UK, etc.), pattern: "[A-Z]{2}"&lt;br>
                        &lt;br>Values according to ditionary availabe by authAvailableCountriesGet() method
                    </xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="[A-Z]{2}"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="langCodeType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Language code type (pl, en), pattern: "[a-z]{2}"&lt;br>
                        &lt;br>Values according to ditionary availabe by authAvailableLanguagesGet() method
                    </xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="[a-z]{2}"/>
                </xs:restriction>
            </xs:simpleType>


            <xs:simpleType name="peselType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Pesel number type, pattern: "\d{11}"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="\d{11}"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="nipType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">NIP number type, pattern: "[\d\-]{10,13}"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="[\d\-]{10,13}"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="shopType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Partner shop range type, pattern: "independent|network"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="independent|network"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="restrictionModeType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Partner restricted data field mode type, pattern: "verification|read-only|hidden"</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                    <xs:pattern value="verification|read-only|hidden"/>
                </xs:restriction>
            </xs:simpleType>




            <!--  TEST -->

            <!-- testGet types -->
            <xs:complexType name="testGetResponseType">
                <xs:all>
                    <xs:element name="testValue" type="xs:string" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>


            <!-- AUTH Types -->

            <!-- authUserLoginDo types -->
            <xs:complexType name="userShortDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User short data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="userID" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="userLogin" type="ns:loginType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="userFisrtName" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userLastName" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userSex" type="ns:sexCodeType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userEmail" type="ns:emailType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userPhone" type="ns:phoneNumberType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userCountry" type="ns:countryCodeType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userLanguage" type="ns:langCodeType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userEffectiveGroup" type="ns:userGroupCodeType" minOccurs="1" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Rendered only in parners range</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userExpectedGroup" type="ns:userGroupCodeType" minOccurs="1" maxOccurs="1" >
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Rendered only in parners range</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userVerified" type="ns:flagType" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Rendered only in parners range, set if user has verified and accepted application for the current promotional campaign</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userConformation" type="ns:flagType" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Rendered only in partners range, set if user may simply conform the participation in the current promotional campaign, based on the previous one</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userKrbAllowFlag" type="ns:flagType" minOccurs="0" maxOccurs="1" >
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Rendered only in partners/staff range, set if staff user allows automated Kerberos authentication</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userRange" type="ns:userRangeType" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authUserLoginDo types -->
            <xs:complexType name="authUserLoginResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        User login response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user, rendered if login was not sucessfull&lt;br>
                        - userData: User short data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="loginStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userData" type="ns:userShortDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authPartnerCBUActvityDo types -->
            <xs:complexType name="authUserActResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        User activity response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered in case of problem
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="cbuActivityStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authUserPasswordResetDo types -->
            <xs:complexType name="authResetPasswordResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        User password reset procedure response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="resetStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>


            <!--  PARTNER types -->

            <!-- authPartnerDataGet types -->
            <xs:complexType name="partnerDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Partner full data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="userID" type="xs:integer" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userLogin" type="ns:loginType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userAmicaLogin" type="ns:loginType" minOccurs="0" maxOccurs="1" >
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Rendered only in parners/staff range, staff user login in AMICA domain, if different from userLogin</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userPasswd" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userPasswdEncoded" type="xs:string" minOccurs="0" maxOccurs="1" >
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Technical, never shown to users</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userFisrtName" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userLastName" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userSex" type="ns:sexCodeType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userPesel" type="ns:peselType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userBirthDate" type="ns:birthDateType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userPersonalNIP" type="ns:nipType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userUsID" type="xs:integer" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Polish IRS ID, according to dictionary available by authAvailableIRSGet() method</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userUsName" type="xs:string" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Name of the IRS, for presentation purposes only, ignored in update mode</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userEmail" type="ns:emailType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userPhone" type="ns:phoneNumberType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userPostCode" type="ns:postCodeType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userTown" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userAddress" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userCountry" type="ns:countryCodeType" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Technical, never shown to partners</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userLanguage" type="ns:langCodeType" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Technical, never shown to partners</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userInfoChannelsList" type="ns:infoChannelStatusListType" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Values according to dictionary available by authAvailableInfoChannelsGet() method</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userPrivacyPermissionStatus" type="ns:flagType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userEffectiveGroup" type="ns:userGroupCodeType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userExpectedGroup" type="ns:userGroupCodeType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userDeclaredCompany" type="xs:string" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Name and address of users company (shop), used by Amica staff for the verification purposes</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userDeclaredPositionID" type="xs:integer" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Position ID, according to dictionary available by authPredefinedPositionsGet() method</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userDeclaredPositionName" type="xs:string" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Name of the position, for presentation purposes only, ignored in update mode</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userDeclaredCompanyType" type="ns:shopType" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Type of company (shop) is used by Amica staff for the verification purposes</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userDeclaredCompanyNetwork" type="xs:string" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Essential in case of network company (shop), used by Amica staff for the verification purposes</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userKrbAllowFlag" type="ns:flagType" minOccurs="0" maxOccurs="1" >
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Rendered only in partners/staff range, set if staff user allows automated Kerberos authentication</xs:documentation>
                        </xs:annotation>
                    </xs:element>

                    <xs:element name="userRange" type="ns:userRangeType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="authPartnDataGetResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Partner data response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered if data retrieval was not sucessfull&lt;br>
                        - userData: Partner full data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userData" type="ns:partnerDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authPartnerDataRestrictedGet types -->
            <xs:complexType name="partnerRestictedDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Partner restricted data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="fieldName" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="fieldMode" type="ns:restrictionModeType" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="partnerRestictedDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Partner restricted data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="restrictedData" type="ns:partnerRestictedDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="authPartnRestrDataGetResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Partner restricted data response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered if data retrieval was not sucessfull&lt;br>
                        - restrictedDataList: Restricted field name list on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="restrictedDataList" type="ns:partnerRestictedDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authShopDataGet types -->
            <xs:complexType name="saleRepDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Sales Representative data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="saleRepID" type="xs:integer" minOccurs="1" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Technical</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="saleRepName" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="saleRepEmail" type="ns:emailType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="saleRepPhone" type="ns:phoneNumberType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>


            <xs:complexType name="shopDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Partners shop data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="userID" type="xs:integer" minOccurs="0" maxOccurs="1" />
                    <xs:element name="shopVerified" type="xs:integer" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Set if retured data are verified by Amica staff, otherwise data were declared by user only</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="shopID" type="xs:integer" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Technical</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="shopName" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="shopPositionID" type="xs:integer" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Technical</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="shopPositionName" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="shopType" type="ns:shopType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="shopNetworkID" type="xs:integer" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Technical</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="shopNetworkName" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="shopPlace" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="shopPostCode" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="shopAddress" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="saleRepData" type="ns:saleRepDataType" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Rendered if shopVerified is set</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                </xs:all>
            </xs:complexType>
            <xs:complexType name="authShopDataGetResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Partners shop data response structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered if data retrieval was not sucessfull&lt;br>
                        - shopData: Partner shop data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="shopData" type="ns:shopDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authPartnerDataUpdateBegin -->
            <xs:complexType name="authPartnUpdateBeginResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Partner data update begin response structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="updateStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authPartnerDataUpdateComplete -->
            <xs:complexType name="authPartnUpdateCmplResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Partner data update complete response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user&lt;br>
                        - userData: User short data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="updateStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="userData" type="ns:userShortDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authPartnerRegistrationBegin  -->
            <xs:complexType name="authPartnRegistrDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Partner registration begin request data structure type, see components type definition&lt;br>
                        &lt;br>
                        - campaignID: Usually results from the token. If set, simultaneous account/campaign registartion procedure is initiated, account only otherwise.&lt;br>
                        - campaignRulesConfirmationFlag: Required if campaignID is set either directly or through token&lt;br>
                        - userData: full primary data set is required
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="campaignID" type="xs:integer" minOccurs="0" maxOccurs="1" />
                    <xs:element name="campaignRulesConfirmationFlag" type="ns:flagType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userData" type="ns:partnerDataType" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="authPartnRegistrBeginResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Partner registration begin response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="registrationStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authPartnerRegistrationComplete -->
            <xs:complexType name="authPartnRegistrCmplResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Partner registration complete response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user&lt;br>
                        - userData: User short data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="registrationStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="userData" type="ns:userShortDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>


            <!-- authPartnerActivationBegin  -->
            <xs:complexType name="authPartnActivBeginResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Partner activation begin response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="activationStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authPartnerActivationComplete -->
            <xs:complexType name="authPartnActivCmplResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Partner activation complete response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user&lt;br>
                        - userData: User short data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="activationStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="userData" type="ns:userShortDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>


            <!-- authKrbClientInit -->
            <xs:complexType name="authKrbDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Staff Kerberos Authentication data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message in case of error&lt;br>
                        - oneCode: One time auth cycle identifier
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="oneCode" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="appToken" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="loginValue" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="loginTarget" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <xs:complexType name="authKrbClientInitResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Staff Kerberos Authentication Client initialize response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message in case of error&lt;br>
                        - oneCode: One time auth cycle identifier
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="initStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="krbData" type="ns:authKrbDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authKrbClientSet -->
            <xs:complexType name="authKrbClientSetResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Staff Kerberos Authentication Client set response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message in case of error
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="setStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>



            <!-- authKrbClientCheck types -->
            <xs:complexType name="authKrbCheckDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Staff Kerberos Authentication Client check data structure type, see components type definition&lt;br>
                        &lt;br>
                        - userData: User short data on success
                        - loginTarget: URL to redirect in case of success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="userData" type="ns:userShortDataType" minOccurs="0" maxOccurs="1" />
                    <xs:element name="loginTarget" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <xs:complexType name="authKrbClientCheckResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Staff Kerberos Authentication Client check response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message in case of error&lt;br>
                        - userData: User short data on success
                        - loginTarget: URL to redirect in case of success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="checkStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="krbCheckData" type="ns:authKrbCheckDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>




            <!-- DICTIONARIES types -->

            <!-- authAvailableUserGroupsGet types -->
            <xs:complexType name="uGroupDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User groups data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="uGroupCode" type="ns:userGroupCodeType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="uGroupName" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="uGroupDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User groups data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="uGroupData" type="ns:uGroupDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="authAvUGroupsGetResponseType">
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="uGroupDataList" type="ns:uGroupDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authAvailableLanguagesGet types -->
            <xs:complexType name="langDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Language data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="langCode" type="ns:langCodeType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="langName" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="langDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Lang data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="langData" type="ns:langDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="authAvLangsGetResponseType">
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="langDataList" type="ns:langDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authAvailableInfoChannelsGet types -->
            <xs:complexType name="infoChannelDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Info Channel data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="infoChannelCode" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="infoChannelName" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="infoChannelDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Info Channel data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="infoChannelData" type="ns:infoChannelDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="infoChannelStatusType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Info Channel status structure type, see components type definition&lt;br>
                        &lt;br>Values according to ditionary availabe by authAvailableInfoChannelsGet() method
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="infoChannelCode" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="infoChannelStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="infoChannelStatusListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Info Channel status list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="infoChannelStatus" type="ns:infoChannelStatusType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="authAvInfoChannelsGetResponseType">
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="infoChannelDataList" type="ns:infoChannelDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authAvailableCountriesGet types -->
            <xs:complexType name="countryDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Country data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="countryCode" type="ns:countryCodeType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="countryName" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="countryDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Country data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="countryData" type="ns:countryDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="authAvCountriesGetResponseType">
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="countryDataList" type="ns:countryDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authPredefinedMetroSizesGet types -->
            <xs:complexType name="metroSizeDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Metro size data structure type, see components type definition&lt;br>
                        &lt;br>Values according to ditionary availabe by authPredefinedMetroSizesGet() method
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="metroSizeCode" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="metroSizeName" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="metroSizeDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">metro size data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="metroSizeData" type="ns:metroSizeDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="authPreMetroSizeGetResponseType">
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="metroSizeDataList" type="ns:metroSizeDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authPredefinedEducationLevelsGet types -->
            <xs:complexType name="eduLevelDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Education level data structure type, see components type definition&lt;br>
                        &lt;br>Values according to ditionary availabe by authPredefinedEducationLevelsGet() method
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="eduLevelCode" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="eduLevelName" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="eduLevelDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Education level data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="eduLevelData" type="ns:eduLevelDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="authPreEduLevelGetResponseType">
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="eduLevelDataList" type="ns:eduLevelDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>


            <!-- authAvailableIRSGet types -->
            <xs:complexType name="IRSDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Polish IRS data structure type, see components type definition&lt;br>
                        &lt;br>Values according to ditionary availabe by authAvailableIRSGet() method
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="irsID" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="irsName" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="IRSDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">IRS data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="IRSData" type="ns:IRSDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="authAvIRSGetResponseType">
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="IRSDataList" type="ns:IRSDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- authPredefinedPositionsGet types -->
            <xs:complexType name="positionDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Positions data structure type, see components type definition&lt;br>
                        &lt;br>Values according to ditionary availabe by authPredefinedPositionsGet() method
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="posID" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="posName" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="positionDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Positions data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="positionData" type="ns:positionDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="authPrePositionsGetResponseType">
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="positionDataList" type="ns:positionDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>



            <!-- REPOSITORY Types -->

            <!-- repoAvailableCampaignsGet types -->
            <xs:complexType name="campaignDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Campaign repository data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="campaignID" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="campaignName" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="campaignToken" type="xs:string" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Text campaign identifier, must be given to gain access to campaigns data</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="campaignUserGroups" type="ns:userGroupCodeType" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Access control list of user groups</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                </xs:all>
            </xs:complexType>
            <xs:complexType name="campaignDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Campaign repository data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="campaignData" type="ns:campaignDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="repoAvCampaignsGetResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Available repository campaigns response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered if operation was not sucessfull&lt;br>
                        - campaignData: Campaign data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="campaignDataList" type="ns:campaignDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- repoPredefinedActivityTypesGet types -->
            <xs:complexType name="actTypeDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Activity types data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="actTypeID" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="actTypeName" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="actTypeDesc" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="actTypeDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Activity types data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="actTypeData" type="ns:actTypeDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="repoPreActivityTypesGetResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Predefined activity types response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered if operation was not sucessfull&lt;br>
                        - actTypeData: Activity type data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="actTypeDataList" type="ns:actTypeDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- repoAvailableActivitiesGet types -->
            <xs:complexType name="activityDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Activity data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="activityID" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="activityName" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="activityDesc" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="activityRanking" type="xs:integer" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">If set, activity scores are counted in campaign ranking</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="actTypeData" type="ns:actTypeDataType" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Method of scoring, values according to dictionary available by repoPredefinedActivityTypesGet() method</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="campaignData" type="ns:campaignDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="activityDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Activities data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="activityData" type="ns:activityDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="repoAvActivityGetResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Available activities response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered if operation was not sucessfull&lt;br>
                        - actTypeData: Activities data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="activityDataList" type="ns:activityDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- repoUserScoreGet types -->
            <xs:complexType name="userScoreActivityDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User score in activity data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="activityID" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="activityName" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="activityScoreDate" type="xs:dateTime" minOccurs="0" maxOccurs="1" />
                    <xs:element name="activityScoreValue" type="xs:integer" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="userScoreActivityDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User score in activities data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="userScoreActivityData" type="ns:userScoreActivityDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="userScoreCampaignDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User score in campaign data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="campaignID" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="campaignName" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="campaignScore" type="xs:integer" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userScoreActivityDataList" type="ns:userScoreActivityDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="userScoreCampaignDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User score in campaigns data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="userScoreCampaignData" type="ns:userScoreCampaignDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="userScoreDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User score data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="userID" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="userScoreDate" type="xs:dateTime" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Date and time score calculation</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userScoreRanking" type="xs:integer" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Users position in ranking in current campaign</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userScoreTotal" type="xs:integer" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Users total score in current campaign</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="userScoreCampaignDataList" type="ns:userScoreCampaignDataListType" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Detailed scores in campaings and activities</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                </xs:all>
            </xs:complexType>
            <xs:complexType name="repoUserScoreGetResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        User score data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered if operation was not sucessfull&lt;br>
                        - userScoreData: Score data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="userScoreData" type="ns:userScoreDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>


            <!-- typy -->

            <!-- repoUserScoreStore types -->

            <xs:complexType name="repoUserScoreStoreResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        User score data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered if operation was not sucessfull&lt;br>
                        - userScoreData: Score data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="storeStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>



            <!-- typy -->


            <!-- repoUserRankingGet types -->
            <xs:complexType name="rankingScoreDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User ranking score data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="rankingNo" type="xs:integer" minOccurs="1" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Position of user indicated by the userID</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="rankingUserID" type="xs:integer" minOccurs="0" maxOccurs="1" />
                    <xs:element name="rankingUserScore" type="xs:integer" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Total score od user indicated by userID</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                </xs:all>
            </xs:complexType>
            <xs:complexType name="rankingScoreDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User ranking scores data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="rankingScoreData" type="ns:rankingScoreDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="rankingDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">User ranking data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="rankingDate" type="xs:dateTime" minOccurs="0" maxOccurs="1" />
                    <xs:element name="rankingCampaignID" type="xs:integer" minOccurs="0" maxOccurs="1" />
                    <xs:element name="rankingCampaignName" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="rankingDateFrom" type="xs:date" minOccurs="0" maxOccurs="1" >
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Rendered only if this optional parameter is used</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="rankingDateTo" type="xs:date" minOccurs="0" maxOccurs="1" >
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Rendered only if this optional parameter is used</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="rankingScoreDataList" type="ns:rankingScoreDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="repoUserRankGetResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        User ranking response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered if operation was not sucessfull&lt;br>
                        - rankingDataList: Ranking data list on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="rankingData" type="ns:rankingDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>



            <!-- PROMO Types -->

            <!-- promoAvailableCampaignsGet types -->
            <xs:complexType name="promoAvCampaignsGetResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Available promo campaigns response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered if operation was not sucessfull&lt;br>
                        - campaignData: Campaign data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="campaignDataList" type="ns:campaignDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- promoAccessionBegin -->
            <xs:complexType name="promoAccessionDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Promo campaign accession begin request data structure type, see components type definition&lt;br>
                        &lt;br>
                        - campaignID: Usually results from the token&lt;br>
                        - campaignRulesConfirmationFlag: Required if campaignID is set either directly or through token&lt;br>
                        - userData: only userID is required, others in case of change
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="campaignID" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="campaignRulesConfirmationFlag" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="userData" type="ns:partnerDataType" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="promoAccessBeginResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Promo campaign accession begin response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="accessionStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- promoAccessionComplete -->
            <xs:complexType name="promoAccessCmplResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Promo campaign accession complete response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user&lt;br>
                        - userData: User short data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="accessionStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="userData" type="ns:userShortDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- promoConformationBegin -->
            <xs:complexType name="promoConformDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Promo campaign access conformation begin request data structure type, see components type definition&lt;br>
                        &lt;br>
                        - campaignID: Usually results from the token&lt;br>
                        - campaignRulesConfirmationFlag: Required if campaignID is set either directly or through token&lt;br>
                        - userData: only userID is required, others in case of change
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="campaignID" type="xs:integer" minOccurs="1" maxOccurs="1" />
                    <xs:element name="campaignRulesConfirmationFlag" type="ns:flagType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="userData" type="ns:partnerDataType" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>
            <xs:complexType name="promoConformBeginResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Promo campaign access conformation begin response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="conformationStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="1" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- promoConformationComplete -->
            <xs:complexType name="promoConformCmplResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Promo campaign access conformation complete response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Message to the user&lt;br>
                        - userData: User short data on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="conformationStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="1" maxOccurs="1" />
                    <xs:element name="userData" type="ns:userShortDataType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>

            <!-- promoSalesHistoryGet types -->
            <xs:complexType name="salesHistoryDataType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Sale in campaign primary activity data structure type, see components type definition</xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="saleDate" type="xs:date" minOccurs="1" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Date of sales report uploaded</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="salePeriod" type="xs:string" minOccurs="1" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Named sales period, eg. 'November 2012'</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="saleScore" type="xs:integer" minOccurs="1" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Total score counted fo sales included in report uploaded</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="saleStatus" type="xs:string" minOccurs="1" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Status of uploade sales report, eg. opened, to be completed, accounted (billed) </xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="saleNote" type="xs:string" minOccurs="0" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Optional message from staff to user, eg. what has to be compelted</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                </xs:all>
            </xs:complexType>
            <xs:complexType name="salesHistoryDataListType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">Sales in campaign primary activity data list, see structure type definition</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element name="campaignData" type="ns:salesHistoryDataType" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
                </xs:sequence>
            </xs:complexType>
            <xs:complexType name="promoSalesHistoryGetResponseType">
                <xs:annotation>
                    <xs:documentation xml:lang="en">
                        Sales history in campaign primary activity response data structure type, see components type definition&lt;br>
                        &lt;br>
                        - statusMessage: Rendered if operation was not sucessfull&lt;br>
                        - salesDataList: Sales history data list on success
                    </xs:documentation>
                </xs:annotation>
                <xs:all>
                    <xs:element name="dataStatus" type="ns:statusType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="statusMessage" type="xs:string" minOccurs="0" maxOccurs="1" />
                    <xs:element name="salesHistoryDataList" type="ns:salesHistoryDataListType" minOccurs="0" maxOccurs="1" />
                </xs:all>
            </xs:complexType>


        </xs:schema>
    </types>



    <!-- TEST messages -->

    <!--  testGet messages -->
    <message name="testGetRequestMsg">
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="testGetResponseMsg">
        <part name="testResponse" type="ns:testGetResponseType">
            <documentation>
                <alternative lang="en">Test method response data structure, see type definition</alternative>
            </documentation>
        </part>
    </message>



    <!-- AUTH Messages -->

    <!--  authUserLoginDo messages -->
    <message name="authUserLoginRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">User range (consumers, partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="userLogin" type="ns:loginType">
            <documentation>
                <alternative lang="en">User login as string</alternative>
            </documentation>
        </part>
        <part name="userPasswd" type="xs:string">
            <documentation>
                <alternative lang="en">User password as string</alternative>
            </documentation>
        </part>
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string, required if userRange is 'partners'</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authUserLoginResponseMsg">
        <part name="authUserLoginResponseData" type="ns:authUserLoginResponseType">
            <documentation>
                <alternative lang="en">Login response data structure, including user short data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authUserPasswordResetDo messages -->
    <message name="authResetPasswordRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">User range (consumers, partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="userLogin" type="ns:loginType">
            <documentation>
                <alternative lang="en">User login, optional but one of user field is required</alternative>
            </documentation>
        </part>
        <part name="userEmail" type="ns:emailType">
            <documentation>
                <alternative lang="en">User e-mail adress; If set, will be used to send new password</alternative>
            </documentation>
        </part>
        <part name="userPhone" type="ns:phoneNumberType">
            <documentation>
                <alternative lang="en">User cell phone number; If set, will be used to send new password; Ignored in consumers range</alternative>
            </documentation>
        </part>
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string, required if userRange is 'partners'</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authResetPasswordResponseMsg">
        <part name="authResetPasswordResponseData" type="ns:authResetPasswordResponseType">
            <documentation>
                <alternative lang="en">User reset password procedure response data structure, see type definition</alternative>
            </documentation>
        </part>
    </message>



    <!-- AUTH PARTNERS messages -->

    <!--  authPartnerCBULoginDo messages -->
    <message name="authPartnCBULoginRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="userID" type="xs:integer">
            <documentation>
                <alternative lang="en">User ID</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPartnCBULoginResponseMsg">
        <part name="authPartnCBULoginResponseData" type="ns:authUserLoginResponseType">
            <documentation>
                <alternative lang="en">Login response data structure, including user short data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authPartnerCBUActvityDo messages -->
    <message name="authPartnCBUActRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="userID" type="xs:integer">
            <documentation>
                <alternative lang="en">User ID</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPartnCBUActResponseMsg">
        <part name="authPartnCBUActResponseData" type="ns:authUserActResponseType">
            <documentation>
                <alternative lang="en">Login response data structure, see type definition</alternative>
            </documentation>
        </part>
    </message>


    <!--  authPartnersDataGet messages -->
    <message name="authPartnDataGetRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="userID" type="xs:integer">
            <documentation>
                <alternative lang="en">User ID</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPartnDataGetResponseMsg">
        <part name="authPartnDataGetResponseData" type="ns:authPartnDataGetResponseType">
            <documentation>
                <alternative lang="en">Partner data response data structure, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authPartnerDataRestrictedGet messages -->
    <message name="authPartnRestrDataGetRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="registrationMode" type="ns:flagType">
            <documentation>
                <alternative lang="en">If set to 1, data according to registration mode will be returned, update mode otherwise </alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPartnRestrDataGetResponseMsg">
        <part name="authPartnRestrDataGetResponseData" type="ns:authPartnRestrDataGetResponseType">
            <documentation>
                <alternative lang="en">Partner restricted data response data structure, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authPartnerShopGet messages -->
    <message name="authShopDataGetRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="userID" type="xs:integer">
            <documentation>
                <alternative lang="en">User ID</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authShopDataGetResponseMsg">
        <part name="authShopDataGetResponseData" type="ns:authShopDataGetResponseType">
            <documentation>
                <alternative lang="en">Partner shop data response data structure, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authPartnerDataUpdateBegin messages -->
    <message name="authPartnUpdateBeginRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="userData" type="ns:partnerDataType">
            <documentation>
                <alternative lang="en">User data structure</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPartnUpdateBeginResponseMsg">
        <part name="authPartnUpdateBeginResponseData" type="ns:authPartnUpdateBeginResponseType">
            <documentation>
                <alternative lang="en">Update partner data begin response structure, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authPartnerDataUpdateComplete messages -->
    <message name="authPartnUpdateCmplRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="userLogin" type="ns:loginType">
            <documentation>
                <alternative lang="en">User login</alternative>
            </documentation>
        </part>
        <part name="confirmationCode" type="xs:string">
            <documentation>
                <alternative lang="en">Confirmation code</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPartnUpdateCmplResponseMsg">
        <part name="authPartnUpdateCmplResponseData" type="ns:authPartnUpdateCmplResponseType">
            <documentation>
                <alternative lang="en">Update partner data complete response structure, including user short data, see type definition</alternative>
            </documentation>
        </part>
    </message>


    <!--  authStaffDataUpdate messages -->
    <message name="authStaffUpdateRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller ID string</alternative>
            </documentation>
        </part>
        <part name="userData" type="ns:partnerDataType">
            <documentation>
                <alternative lang="en">User data structure</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authStaffUpdateResponseMsg">
        <part name="authStaffUpdateResponseData" type="ns:authPartnUpdateBeginResponseType">
            <documentation>
                <alternative lang="en">Update staff user data response structure, see type definition</alternative>
            </documentation>
        </part>
    </message>


    <!--  authPartnerRegistrationBegin messages -->
    <message name="authPartnRegistrBeginRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="registrationData" type="ns:authPartnRegistrDataType">
            <documentation>
                <alternative lang="en">Registration data structure, see type definition</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPartnRegistrBeginResponseMsg">
        <part name="authPartnRegistrBeginResponseData" type="ns:authPartnRegistrBeginResponseType">
            <documentation>
                <alternative lang="en">Partner registration begin response structure, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authPartnerRegistrationComplete messages -->
    <message name="authPartnRegistrCmplRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="confirmationCode" type="xs:string">
            <documentation>
                <alternative lang="en">Confirmation code</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPartnRegistrCmplResponseMsg">
        <part name="authPartnRegistrCmplResponseData" type="ns:authPartnRegistrCmplResponseType">
            <documentation>
                <alternative lang="en">Partner registration complete response structure, including user short data, see type definition</alternative>
            </documentation>
        </part>
    </message>


    <!--  authStaffRegistration messages -->
    <message name="authStaffRegistrRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller ID string</alternative>
            </documentation>
        </part>
        <part name="userData" type="ns:partnerDataType">
            <documentation>
                <alternative lang="en">User data structure</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authStaffRegistrResponseMsg">
        <part name="authStaffRegistrResponseData" type="ns:authPartnRegistrBeginResponseType">
            <documentation>
                <alternative lang="en">Staff user registration response structure, see type definition</alternative>
            </documentation>
        </part>
    </message>


    <!--  authPartnerActivationBegin messages -->
    <message name="authPartnActivBeginRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="userPesel" type="ns:peselType">
            <documentation>
                <alternative lang="en">User pesel</alternative>
            </documentation>
        </part>
        <part name="userLogin" type="ns:loginType">
            <documentation>
                <alternative lang="en">User login to set</alternative>
            </documentation>
        </part>
        <part name="userPasswd" type="xs:string">
            <documentation>
                <alternative lang="en">User password to set</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPartnActivBeginResponseMsg">
        <part name="authPartnActivBeginResponseData" type="ns:authPartnActivBeginResponseType">
            <documentation>
                <alternative lang="en">Partner activation begin response structure, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authPartnerActivationComplete messages -->
    <message name="authPartnActivCmplRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="confirmationCode" type="xs:string">
            <documentation>
                <alternative lang="en">Confirmation code</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPartnActivCmplResponseMsg">
        <part name="authPartnActivCmplResponseData" type="ns:authPartnActivCmplResponseType">
            <documentation>
                <alternative lang="en">Partner activation complete response structure, including user short data, see type definition</alternative>
            </documentation>
        </part>
    </message>


    <!--  authKrbClientInit messages -->
    <message name="authKrbClientInitRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller ID string</alternative>
            </documentation>
        </part>
        <part name="loginTarget" type="xs:string">
            <documentation>
                <alternative lang="en">Optional URL to redirect after succesful login</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authKrbClientInitResponseMsg">
        <part name="authKrbClientInitResponseData" type="ns:authKrbClientInitResponseType">
            <documentation>
                <alternative lang="en">Staff Kerberos Authentication Client check response data structure, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authKrbClientSet messages -->
    <message name="authKrbClientSetRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller ID string</alternative>
            </documentation>
        </part>
        <part name="oneCode" type="xs:string">
            <documentation>
                <alternative lang="en">One time auth cycle identifier</alternative>
            </documentation>
        </part>
        <part name="loginValue" type="xs:string">
            <documentation>
                <alternative lang="en">Authenticated Amica login of staff user</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authKrbClientSetResponseMsg">
        <part name="authKrbClientSetResponseData" type="ns:authKrbClientSetResponseType">
            <documentation>
                <alternative lang="en">Staff Kerberos Authentication Client set response data structure, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authKrbClientCheck messages -->
    <message name="authKrbClientCheckRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller ID string</alternative>
            </documentation>
        </part>
        <part name="oneCode" type="xs:string">
            <documentation>
                <alternative lang="en">One time auth cycle identifier</alternative>
            </documentation>
        </part>
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authKrbClientCheckResponseMsg">
        <part name="authKrbClientCheckResponseData" type="ns:authKrbClientCheckResponseType">
            <documentation>
                <alternative lang="en">Staff Kerberos Authentication Client check response data structure, see type definition</alternative>
            </documentation>
        </part>
    </message>




    <!-- AUTH DICTIONARIES messages -->

    <!--  authAvailableUserGroupsGet messages -->
    <message name="authAvUGroupsGetRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authAvUGroupsGetResponseMsg">
        <part name="authAvUGroupsGetResponseData" type="ns:authAvUGroupsGetResponseType">
            <documentation>
                <alternative lang="en">Array of user groups data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authAvailableLanguagesGet messages -->
    <message name="authAvLangsGetRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">User range (consumers, partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authAvLangsGetResponseMsg">
        <part name="authAvLangsGetResponseData" type="ns:authAvLangsGetResponseType">
            <documentation>
                <alternative lang="en">Array of lang data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authAvailableInfoChannelsGet messages -->
    <message name="authAvInfoChannelsGetRequestMsg">
        <part name="langCode" type="ns:langCodeType">
            <documentation>
                <alternative lang="en">Optional language code, used in messages returned by the system</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authAvInfoChannelsGetResponseMsg">
        <part name="authAvInfoChannelsGetResponseData" type="ns:authAvInfoChannelsGetResponseType">
            <documentation>
                <alternative lang="en">Array of info channel data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authAvailableCountriesGet messages -->
    <message name="authAvCountriesGetRequestMsg">
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authAvCountriesGetResponseMsg">
        <part name="authAvCountriesGetResponseData" type="ns:authAvCountriesGetResponseType">
            <documentation>
                <alternative lang="en">Array of country data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authPredefinedMetroSizesGet messages -->
    <message name="authPreMetroSizeGetRequestMsg">
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPreMetroSizeGetResponseMsg">
        <part name="authPreMetroSizeGetResponseData" type="ns:authPreMetroSizeGetResponseType">
            <documentation>
                <alternative lang="en">Array of metro size data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authPredefinedEducationLevelsGet messages -->
    <message name="authPreEduLevelGetRequestMsg">
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPreEduLevelGetResponseMsg">
        <part name="authPreEduLevelGetResponseData" type="ns:authPreEduLevelGetResponseType">
            <documentation>
                <alternative lang="en">Array of education level data, see type definition</alternative>
            </documentation>
        </part>
    </message>


    <!--  authAvailableIRSLevelsGet messages -->
    <message name="authAvIRSGetRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authAvIRSGetResponseMsg">
        <part name="authAvIRSGetResponseData" type="ns:authAvIRSGetResponseType">
            <documentation>
                <alternative lang="en">Array of polish IRS data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  authPredefinedPositionsLevelsGet messages -->
    <message name="authPrePositionsGetRequestMsg">
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="authPrePositionsGetResponseMsg">
        <part name="authPrePositionsGetResponseData" type="ns:authPrePositionsGetResponseType">
            <documentation>
                <alternative lang="en">Array of positions data, see type definition</alternative>
            </documentation>
        </part>
    </message>



    <!-- REPOSITORY Messages -->

    <!--  repoAvailableCampaignsGet messages -->
    <message name="repoAvCampaignsGetRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">Optional user range (defaults to partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="xs:string">
            <documentation>
                <alternative lang="en">Caller ID string, campaign ID is accepted as well, but only one, indicated campaign will be returned</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="repoAvCampaignsGetResponseMsg">
        <part name="repoAvCampaignsGetResponseData" type="ns:repoAvCampaignsGetResponseType">
            <documentation>
                <alternative lang="en">Array of repository campaign data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  repoPredefinedActivityTypesGet messages -->
    <message name="repoPreActivityTypesGetRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">Optional user range (defaults to partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="xs:string">
            <documentation>
                <alternative lang="en">Caller ID string, campaign ID is accepsted as well</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="repoPreActivityTypesGetResponseMsg">
        <part name="repoPreActivityTypesGetResponseData" type="ns:repoPreActivityTypesGetResponseType">
            <documentation>
                <alternative lang="en">Array of activity types data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  repoAvailableActivitiesGet messages -->
    <message name="repoAvActivitiesGetRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">Optional user range (defaults to partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="xs:string">
            <documentation>
                <alternative lang="en">Caller ID string, campaign ID is accepsted as well, but only the activities assigned to indicated campaign will be returned</alternative>
            </documentation>
        </part>
        <part name="campaignID" type="xs:integer">
            <documentation>
                <alternative lang="en">Optional campaign ID, if set activitities will be filtered by campaign</alternative>
            </documentation>
        </part>
        <part name="activityID" type="xs:integer">
            <documentation>
                <alternative lang="en">Optional activity ID, if set only inidated activity will be returned</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="repoAvActivitiesGetResponseMsg">
        <part name="repoAvActivitiesGetResponseData" type="ns:repoAvActivityGetResponseType">
            <documentation>
                <alternative lang="en">Array of activities data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  repoUserScoreGet messages -->
    <message name="repoUserScoreGetRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">Optional user range (defaults to partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="xs:string">
            <documentation>
                <alternative lang="en">Campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="userID" type="xs:integer">
            <documentation>
                <alternative lang="en">User ID</alternative>
            </documentation>
        </part>
        <part name="campaignID" type="xs:integer">
            <documentation>
                <alternative lang="en">Optional campaign ID, if set scores will be filtered by campaign</alternative>
            </documentation>
        </part>
        <part name="activityID" type="xs:integer">
            <documentation>
                <alternative lang="en">Optional activity ID, if set only score of inidated activity will be returned</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="repoUserScoreGetResponseMsg">
        <part name="repoUserScoreGetResponseData" type="ns:repoUserScoreGetResponseType">
            <documentation>
                <alternative lang="en">Array of user score data, see type definition</alternative>
            </documentation>
        </part>
    </message>



    <!--  repoUserScoreStore messages -->
    <message name="repoUserScoreStoreRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">Optional user range (defaults to partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="xs:string">
            <documentation>
                <alternative lang="en">Campaign (application) ID string</alternative>
            </documentation>
        </part>

        <part name="activityID" type="xs:integer">
            <documentation>
                <alternative lang="en">Activity ID, can be obtained from repoAvailableActivitiesGet method</alternative>
            </documentation>
        </part>
        <part name="groupID" type="xs:integer">
            <documentation>
                <alternative lang="en">Optionas activity group ID, can be set to group several score records in the activity, for better readability in ranking</alternative>
            </documentation>
        </part>
        <part name="userID" type="xs:integer">
            <documentation>
                <alternative lang="en">User ID, returned by user login procedure (authUserLoginDo, authPartnerCBULoginDo) </alternative>
            </documentation>
        </part>
        <part name="storedScore" type="xs:integer">
            <documentation>
                <alternative lang="en">Value in points to be stored</alternative>
            </documentation>
        </part>
        <part name="localDate" type="xs:dateTime">
            <documentation>
                <alternative lang="en">Optional date and time of triggering action</alternative>
            </documentation>
        </part>
        <part name="localID" type="xs:integer">
            <documentation>
                <alternative lang="en">Optional ID assigned to triggering action</alternative>
            </documentation>
        </part>

        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="repoUserScoreStoreResponseMsg">
        <part name="repoUserScoreStoreResponseData" type="ns:repoUserScoreStoreResponseType">
            <documentation>
                <alternative lang="en">User score store response, see type definition</alternative>
            </documentation>
        </part>
    </message>



    <!--  repoUserRankingGet messages -->
    <message name="repoUserRankGetRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">Optional user range (defaults to partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="xs:string">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="campaignID" type="xs:integer">
            <documentation>
                <alternative lang="en">Campaign ID, required only if caller token was given</alternative>
            </documentation>
        </part>
        <part name="dateFrom" type="xs:date">
            <documentation>
                <alternative lang="en">Optional start of the period for which the ranking is to be calculated, default is the begining of given campain</alternative>
            </documentation>
        </part>
        <part name="dateTo" type="xs:date">
            <documentation>
                <alternative lang="en">Optional end of the period for which the ranking is to be calculated, default is present day</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="repoUserRankGetResponseMsg">
        <part name="repoUserRankGetResponseData" type="ns:repoUserRankGetResponseType">
            <documentation>
                <alternative lang="en">Array of user ranking data, see type definition</alternative>
            </documentation>
        </part>
    </message>




    <!-- PROMO Messages -->

    <!--  promoAvailableCampaignsGet messages -->
    <message name="promoAvCampaignsGetRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">Optional user range (defaults to partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="xs:string">
            <documentation>
                <alternative lang="en">Caller ID string, campaign ID is accepsted as well, but only one, indicated campaign will be returned</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="promoAvCampaignsGetResponseMsg">
        <part name="promoAvCampaignsGetResponseData" type="ns:promoAvCampaignsGetResponseType">
            <documentation>
                <alternative lang="en">Array of promo campaign data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  promoAccessionBegin messages -->
    <message name="promoAccessBeginRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">User range (consumers, partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="accessionData" type="ns:promoAccessionDataType">
            <documentation>
                <alternative lang="en">Accesssion data structure, see type definition</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="promoAccessBeginResponseMsg">
        <part name="promoAccessBeginResponseData" type="ns:promoAccessBeginResponseType">
            <documentation>
                <alternative lang="en">Promo campaign accession begin response structure, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  promoAccessionComplete messages -->
    <message name="promoAccessCmplRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">User range (consumers, partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="userLogin" type="ns:loginType">
            <documentation>
                <alternative lang="en">User login</alternative>
            </documentation>
        </part>
        <part name="confirmationCode" type="xs:string">
            <documentation>
                <alternative lang="en">Confirmation code</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="promoAccessCmplResponseMsg">
        <part name="promoAccessCmplResponseData" type="ns:promoAccessCmplResponseType">
            <documentation>
                <alternative lang="en">Promo campaign accession complete response structure, including user short data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  promoConformationBegin messages -->
    <message name="promoConformBeginRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">User range (consumers, partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="conformationData" type="ns:promoConformDataType">
            <documentation>
                <alternative lang="en">Conformation data structure, see type definition</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="promoConformBeginResponseMsg">
        <part name="promoConformBeginResponseData" type="ns:promoConformBeginResponseType">
            <documentation>
                <alternative lang="en">Promo campaign access conformation begin response structure, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  promoConformationComplete messages -->
    <message name="promoConformCmplRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">User range (consumers, partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="ns:tokenType">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="userLogin" type="ns:loginType">
            <documentation>
                <alternative lang="en">User login</alternative>
            </documentation>
        </part>
        <part name="confirmationCode" type="xs:string">
            <documentation>
                <alternative lang="en">Confirmation code</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="promoConformCmplResponseMsg">
        <part name="promoConformCmplResponseData" type="ns:promoConformCmplResponseType">
            <documentation>
                <alternative lang="en">Promo campaign access conformation complete response structure, including user short data, see type definition</alternative>
            </documentation>
        </part>
    </message>

    <!--  promoSalesHistoryGet messages -->
    <message name="promoSalesHistoryGetRequestMsg">
        <part name="userRange" type="ns:userRangeType">
            <documentation>
                <alternative lang="en">Optional user range (defaults to partners), see type definition</alternative>
            </documentation>
        </part>
        <part name="token" type="xs:string">
            <documentation>
                <alternative lang="en">Caller or campaign (application) ID string</alternative>
            </documentation>
        </part>
        <part name="userID" type="xs:integer">
            <documentation>
                <alternative lang="en">User ID</alternative>
            </documentation>
        </part>
        <part name="campaignID" type="xs:integer">
            <documentation>
                <alternative lang="en">Campaign ID, required only id caller token was given</alternative>
            </documentation>
        </part>
        <part name="http200" type="xs:boolean">
            <documentation>
                <alternative lang="en">Optional demand for HTTP 200 SOAPFault response</alternative>
            </documentation>
        </part>
    </message>
    <message name="promoSalesHistoryGetResponseMsg">
        <part name="promoSalesHistoryGetResponseData" type="ns:promoSalesHistoryGetResponseType">
            <documentation>
                <alternative lang="en">Array of sales history data, see type definition</alternative>
            </documentation>
        </part>
    </message>



    <!--  OPERATIONS -->

    <portType name="AmicaTestPort">
        <operation name="testGet">
            <input message="ns:testGetRequestMsg" name="testGetRequest"></input>
            <output message="ns:testGetResponseMsg" name="testGetResponse"></output>
        </operation>
    </portType>

    <portType name="AmicaAuthPort">
        <operation name="authUserLoginDo">
            <input message="ns:authUserLoginRequestMsg" name="authUserLoginRequest"></input>
            <output message="ns:authUserLoginResponseMsg" name="authUserLoginResponse"></output>
        </operation>
        <operation name="authUserPasswordResetDo">
            <input message="ns:authResetPasswordRequestMsg" name="authResetPasswordRequest"></input>
            <output message="ns:authResetPasswordResponseMsg" name="authResetPasswordResponse"></output>
        </operation>


        <operation name="authPartnerCBULoginDo">
            <input message="ns:authPartnCBULoginRequestMsg" name="authPartnCBULoginRequest"></input>
            <output message="ns:authPartnCBULoginResponseMsg" name="authPartnCBULoginResponse"></output>
        </operation>

        <operation name="authPartnerCBUActvityDo">
            <input message="ns:authPartnCBUActRequestMsg" name="authPartnCBUActRequest"></input>
            <output message="ns:authPartnCBUActResponseMsg" name="authPartnCBUActResponse"></output>
        </operation>

        <operation name="authPartnerDataGet">
            <input message="ns:authPartnDataGetRequestMsg" name="authPartnDataGetRequest"></input>
            <output message="ns:authPartnDataGetResponseMsg" name="authPartnDataGetResponse"></output>
        </operation>

        <operation name="authPartnerDataRestrictedGet">
            <input message="ns:authPartnRestrDataGetRequestMsg" name="authPartnRestrDataGetRequest"></input>
            <output message="ns:authPartnRestrDataGetResponseMsg" name="authPartnRestrDataGetResponse"></output>
        </operation>

        <operation name="authPartnerShopGet">
            <input message="ns:authShopDataGetRequestMsg" name="authShopDataGetRequest"></input>
            <output message="ns:authShopDataGetResponseMsg" name="authShopDataGetResponse"></output>
        </operation>

        <operation name="authPartnerDataUpdateBegin">
            <input message="ns:authPartnUpdateBeginRequestMsg" name="authPartnUpdateBeginRequest"></input>
            <output message="ns:authPartnUpdateBeginResponseMsg" name="authPartnUpdateBeginResponse"></output>
        </operation>
        <operation name="authPartnerDataUpdateComplete">
            <input message="ns:authPartnUpdateCmplRequestMsg" name="authPartnUpdateCmplRequest"></input>
            <output message="ns:authPartnUpdateCmplResponseMsg" name="authPartnUpdateCmplResponse"></output>
        </operation>

        <operation name="authStaffDataUpdate">
            <input message="ns:authStaffUpdateRequestMsg" name="authStaffUpdateRequest"></input>
            <output message="ns:authStaffUpdateResponseMsg" name="authStaffUpdateResponse"></output>
        </operation>

        <operation name="authPartnerRegistrationBegin">
            <input message="ns:authPartnRegistrBeginRequestMsg" name="authPartnRegistrBeginRequest"></input>
            <output message="ns:authPartnRegistrBeginResponseMsg" name="authPartnRegistrBeginResponse"></output>
        </operation>
        <operation name="authPartnerRegistrationComplete">
            <input message="ns:authPartnRegistrCmplRequestMsg" name="authPartnRegistrCmplRequest"></input>
            <output message="ns:authPartnRegistrCmplResponseMsg" name="authPartnRegistrCmplResponse"></output>
        </operation>

        <operation name="authStaffRegistration">
            <input message="ns:authStaffRegistrRequestMsg" name="authStaffRegistrRequest"></input>
            <output message="ns:authStaffRegistrResponseMsg" name="authStaffRegistrResponse"></output>
        </operation>

        <operation name="authPartnerActivationBegin">
            <input message="ns:authPartnActivBeginRequestMsg" name="authPartnActivBeginRequest"></input>
            <output message="ns:authPartnActivBeginResponseMsg" name="authPartnActivBeginResponse"></output>
        </operation>
        <operation name="authPartnerActivationComplete">
            <input message="ns:authPartnActivCmplRequestMsg" name="authPartnActivCmplRequest"></input>
            <output message="ns:authPartnActivCmplResponseMsg" name="authPartnActivCmplResponse"></output>
        </operation>

        <operation name="authKrbClientInit">
            <input message="ns:authKrbClientInitRequestMsg" name="authKrbClientInitRequest"></input>
            <output message="ns:authKrbClientInitResponseMsg" name="authKrbClientInitResponse"></output>
        </operation>
        <operation name="authKrbClientSet">
            <input message="ns:authKrbClientSetRequestMsg" name="authKrbClientSetRequest"></input>
            <output message="ns:authKrbClientSetResponseMsg" name="authKrbClientSetResponse"></output>
        </operation>
        <operation name="authKrbClientCheck">
            <input message="ns:authKrbClientCheckRequestMsg" name="authKrbClientCheckRequest"></input>
            <output message="ns:authKrbClientCheckResponseMsg" name="authKrbClientCheckResponse"></output>
        </operation>


        <operation name="authAvailableUserGroupsGet">
            <input message="ns:authAvUGroupsGetRequestMsg" name="authAvUGroupsGetRequest"></input>
            <output message="ns:authAvUGroupsGetResponseMsg" name="authAvUGroupsGetResponse"></output>
        </operation>

        <operation name="authAvailableLanguagesGet">
            <input message="ns:authAvLangsGetRequestMsg" name="authAvLangsGetRequest"></input>
            <output message="ns:authAvLangsGetResponseMsg" name="authAvLangsGetResponse"></output>
        </operation>
        <operation name="authAvailableInfoChannelsGet">
            <input message="ns:authAvInfoChannelsGetRequestMsg" name="authAvInfoChannelsGetRequest"></input>
            <output message="ns:authAvInfoChannelsGetResponseMsg" name="authAvInfoChannelsGetResponse"></output>
        </operation>
        <operation name="authAvailableCountriesGet">
            <input message="ns:authAvCountriesGetRequestMsg" name="authAvCountriesGetRequest"></input>
            <output message="ns:authAvCountriesGetResponseMsg" name="authAvCountriesGetResponse"></output>
        </operation>
        <operation name="authPredefinedMetroSizesGet">
            <input message="ns:authPreMetroSizeGetRequestMsg" name="authPreMetroSizeGetRequest"></input>
            <output message="ns:authPreMetroSizeGetResponseMsg" name="authPreMetroSizeGetResponse"></output>
        </operation>
        <operation name="authPredefinedEducationLevelsGet">
            <input message="ns:authPreEduLevelGetRequestMsg" name="authPreEduLevelGetRequest"></input>
            <output message="ns:authPreEduLevelGetResponseMsg" name="authPreEduLevelGetResponse"></output>
        </operation>

        <operation name="authAvailableIRSGet">
            <input message="ns:authAvIRSGetRequestMsg" name="authAvIRSGetRequest"></input>
            <output message="ns:authAvIRSGetResponseMsg" name="authAvIRSGetResponse"></output>
        </operation>
        <operation name="authPredefinedPositionsGet">
            <input message="ns:authPrePositionsGetRequestMsg" name="authPrePositionsGetRequest"></input>
            <output message="ns:authPrePositionsGetResponseMsg" name="authPrePositionsGetResponse"></output>
        </operation>

    </portType>


    <portType name="AmicaRepositoryDataPort">
        <operation name="repoAvailableCampaignsGet">
            <input message="ns:repoAvCampaignsGetRequestMsg" name="repoAvCampaignsGetRequest"></input>
            <output message="ns:repoAvCampaignsGetResponseMsg" name="repoAvCampaignsGetResponse"></output>
        </operation>
        <operation name="repoPredefinedActivityTypesGet">
            <input message="ns:repoPreActivityTypesGetRequestMsg" name="repoPreActivityTypesGetRequest"></input>
            <output message="ns:repoPreActivityTypesGetResponseMsg" name="repoPreActivityTypesGetResponse"></output>
        </operation>
        <operation name="repoAvailableActivitiesGet">
            <input message="ns:repoAvActivitiesGetRequestMsg" name="repoAvActivitiesGetRequest"></input>
            <output message="ns:repoAvActivitiesGetResponseMsg" name="repoAvActivitiesGetResponse"></output>
        </operation>
        <operation name="repoUserScoreGet">
            <input message="ns:repoUserScoreGetRequestMsg" name="repoUserScoreGetRequest"></input>
            <output message="ns:repoUserScoreGetResponseMsg" name="repoUserScoreGetResponse"></output>
        </operation>
        <operation name="repoUserScoreStore">
            <input message="ns:repoUserScoreStoreRequestMsg" name="repoUserScoreStoreRequest"></input>
            <output message="ns:repoUserScoreStoreResponseMsg" name="repoUserScoreStoreResponse"></output>
        </operation>
        <operation name="repoUserRankingGet">
            <input message="ns:repoUserRankGetRequestMsg" name="repoUserRankGetRequest"></input>
            <output message="ns:repoUserRankGetResponseMsg" name="repoUserRankGetResponse"></output>
        </operation>
    </portType>

    <portType name="AmicaPromoDataPort">
        <operation name="promoAvailableCampaignsGet">
            <input message="ns:promoAvCampaignsGetRequestMsg" name="promoAvCampaignsGetRequest"></input>
            <output message="ns:promoAvCampaignsGetResponseMsg" name="promoAvCampaignsGetResponse"></output>
        </operation>

        <operation name="promoAccessionBegin">
            <input message="ns:promoAccessBeginRequestMsg" name="promoAccessBeginRequest"></input>
            <output message="ns:promoAccessBeginResponseMsg" name="promoAccessBeginResponse"></output>
        </operation>
        <operation name="promoAccessionComplete">
            <input message="ns:promoAccessCmplRequestMsg" name="apromoAccessCmplRequest"></input>
            <output message="ns:promoAccessCmplResponseMsg" name="promoAccessCmplResponse"></output>
        </operation>

        <operation name="promoConformationBegin">
            <input message="ns:promoConformBeginRequestMsg" name="promoConformBeginRequest"></input>
            <output message="ns:promoConformBeginResponseMsg" name="promoConformBeginResponse"></output>
        </operation>
        <operation name="promoConformationComplete">
            <input message="ns:promoConformCmplRequestMsg" name="apromoConformCmplRequest"></input>
            <output message="ns:promoConformCmplResponseMsg" name="promoConformCmplResponse"></output>
        </operation>

        <operation name="promoSalesHistoryGet">
            <input message="ns:promoSalesHistoryGetRequestMsg" name="promoSalesHistoryGetRequest"></input>
            <output message="ns:promoSalesHistoryGetResponseMsg" name="promoSalesHistoryGetResponse"></output>
        </operation>
    </portType>



    <!-- BINDINGS -->

    <binding name="AmicaTestBinding" type="ns:AmicaTestPort">
        <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />

        <operation name="testGet">
            <documentation>
                <alternative lang="en">
                    Test method, return always OK
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->testGet();&lt;br>
                    &lt;br>
                    echo $response->testValue;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#testGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>
    </binding>


    <binding name="AmicaAuthBinding" type="ns:AmicaAuthPort">
        <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />

        <operation name="authUserLoginDo">
            <documentation>
                <alternative lang="en">
                    Logins a user and returns status and short user data on success or status message otherwise
                    &lt;ul>
                    &lt;li>For partners, returns additional information:
                    &lt;ul>
                    &lt;li>Status code is set to -1 if user account is waiting for verification, status message is sent as well&lt;/li>
                    &lt;li>Field userPhone is rendered if user has sms channels checked in his/her profile&lt;/li>
                    &lt;li>Field userVerified is set to 1 if user has valid application to the campaign, which is indicated by the token (current)&lt;/li>
                    &lt;li>Field userVerified is set to -1 if user has applicated to the current capaign, but the application is waiting for verification&lt;/li>
                    &lt;li>Field userVerified is set to 0 if user has to applicate to the current campaign&lt;/li>
                    &lt;li>Field userConformation is set to 1 if user is privileged to conform only the participation in current campaign&lt;/li>
                    &lt;/ul>
                    &lt;/li>
                    &lt;/ul>
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authUserLoginDo('consumers', 'user', 'amica44');&lt;br>
                    $response = $client->authUserLoginDo('partners', 'reseller', 'amica44', '[token]');&lt;br>
                    $response = $client->authUserLoginDo('partners', 'reseller', 'amica44', '[token]', 'en');&lt;br>
                    &lt;br>
                    echo $response->loginStatus;&lt;br>
                    echo $response->userData->userLastName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authUserLoginDo" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authUserPasswordResetDo">
            <documentation>
                <alternative lang="en">
                    Resets user's password,  sends it via email and returns status of the operation and appropriate status message&lt;br>
                    &lt;ul>
                    &lt;li>Password is really reset only if message was succesfully sent.&lt;/li>
                    &lt;li>Message is send to contact assigned with one of theree user fields is required: login, e-mail address, cell phone numer&lt;/li>
                    &lt;li>Cell phone number is ignored in consumer range&lt;/li>
                    &lt;/ul>
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authUserPasswordResetDo('consumers', 'user');&lt;br>
                    $response = $client->authUserPasswordResetDo('partners', null, null, [+48..cellNumber], [token]);&lt;br>
                    $response = $client->authUserPasswordResetDo('partners', null, null, [+48..cellNumber], [token], 'en');&lt;br>
                    &lt;br>
                    echo $response->resetStatus;&lt;br>
                    echo $response->statusMessage;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authUserDataUpdate" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>


        <operation name="authPartnerCBULoginDo">
            <documentation>
                <alternative lang="en">
                    Logins partner with userID only (if central activity record was found) and returns status and short user data on success or status message otherwise
                    &lt;ul>
                    &lt;li>If status code is set to -1, central actovity record was not found and user should perform standard login&lt;/li>
                    &lt;/ul>
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authPartnerCBULoginDo('[token]', 40);&lt;br>
                    $response = $client->authPartnerCBULoginDo('[token]', 40, 'en');&lt;br>
                    &lt;br>
                    echo $response->loginStatus;&lt;br>
                    echo $response->userData->userLastName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPartnerCBULoginDo" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authPartnerCBUActvityDo">
            <documentation>
                <alternative lang="en">
                    Refresh central activity record of user indicated by userID, shoud be called periodically by application, the user is active with
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authPartnerCBUActvityDo('token', 40);&lt;br>
                    &lt;br>
                    echo $response->cbuActivityStatus
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPartnerCBUActvityDo" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authPartnerDataGet">
            <documentation>
                <alternative lang="en">
                    Returns status of data retrieval and partner full data structure on success or status message otherwise&lt;br>
                    &lt;ul>
                    &lt;li>Element userPasswd is hidden and never returned by the service&lt;/li>
                    &lt;/ul>
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authPartnerDataGet('[token]', 40);&lt;br>
                    $response = $client->authPartnerDataGet('[token]', 40, 'en');&lt;br>
                    &lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->userData->userLastName;&lt;br>
                    echo $response->userData->userInfoChannelsList->infoChannelStatus[0]->infoChannelCode;&lt;br>
                    echo $response->userData->userInfoChannelsList->infoChannelStatus[0]->infoChannelStatus;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPartnerDataGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authPartnerDataRestrictedGet">
            <documentation>
                <alternative lang="en">
                    Returns status of data retrieval and partner restricted data structure on success or status message otherwise&lt;br>
                    &lt;ul>
                    &lt;li>Restricted data are returned as field-name list, and should be used when rendering HTML form to visualize restricted data&lt;/li>
                    &lt;li>Restriction may be one of three modes:
                    &lt;ul>
                    &lt;li>verification: if user change the data, the account will go into verification procedure&lt;/li>
                    &lt;li>read-only: field should be rendered as read-only, any data changes will be ignored by the API&lt;/li>
                    &lt;li>hiden: field should not be rendered at all, the data is technical an may be essential to the application only&lt;/li>
                    &lt;/ul>
                    &lt;/li>
                    &lt;li>The registrationMode flag, causes profiling the list according to registration or update mode&lt;/li>
                    &lt;/ul>
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authPartnerDataRestrictedGet('[token]', [registrationMode]);&lt;br>
                    $response = $client->authPartnerDataRestrictedGet('[token]', [registrationMode], 'en');&lt;br>
                    &lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->restrictedDataList->restrictedData[0]->fieldName;&lt;br>
                    echo $response->restrictedDataList->restrictedData[0]->fieldMode;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPartnerDataRestrictedGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authPartnerShopGet">
            <documentation>
                <alternative lang="en">
                    Returns status of data retrieval and partner shop data structure on success or status message otherwise&lt;br>
                    &lt;ul>
                    &lt;li>Returns shop assigned to user by system operator of shop declared by the user if none is assigned&lt;/li>
                    &lt;li>Element shopVerified idicates if shop is assigned by operator (1) or declared by user (0)&lt;/li>
                    &lt;/ul>
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authPartnerShopGet('[token]', 46);&lt;br>
                    $response = $client->authPartnerShopGet('[token]', 46, 'en');&lt;br>
                    &lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->shopData->shopName;&lt;br>
                    echo $response->shopData->shopVerified;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPartnerShopGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>


        <operation name="authPartnerDataUpdateBegin">
            <documentation>
                <alternative lang="en">
                    Begins partner data update pocedure, sends confirmation code to the user and returns status on success or status message otherwise
                    &lt;ul>
                    &lt;li>Confirmation code is send by the e-mail or sms, based on users settings in user profile. E-mail is preffered.&lt;/li>
                    &lt;/ul>
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $userData = array('userID' => 40, 'userLastName' => 'Nowe'); // Only fields intended to change should be set, but userID is required&lt;br>
                    $response = $client->authPartnerDataUpdateBegin('[token]', $userData);&lt;br>
                    $response = $client->authPartnerDataUpdateBegin('[token]', $userData, 'en');&lt;br>
                    &lt;br>
                    echo $response->updateStatus&lt;br>
                    echo $response->statusMessage
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPartnerDataUpdateBegin" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authPartnerDataUpdateComplete">
            <documentation>
                <alternative lang="en">
                    Completes partner data update procedure and returns status and short user data on success or status message otherwise
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authPartnerDataUpdateComplete('[token]', 'reseller', '[code]');&lt;br>
                    $response = $client->authPartnerDataUpdateComplete('[token]', 'reseller', '[code]', 'en');&lt;br>
                    &lt;br>
                    echo $response->updateStatus;&lt;br>
                    echo $response->ustatusMessage;&lt;br>
                    echo $response->userData->userLastName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPartnerDataUpdateComplete" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authStaffDataUpdate">
            <documentation>
                <alternative lang="en">
                    Staff user data update pocedure, returns status on success or status message otherwise
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $userData = array('userID' => 36, 'userLastName' => 'Nowy'); // Only fields intended to change should be set, but userID is required&lt;br>
                    $response = $client->authStaffDataUpdate('[token]', $userData);&lt;br>
                    $response = $client->authStaffDataUpdate('[token]', $userData, 'en');&lt;br>
                    &lt;br>
                    echo $response->updateStatus&lt;br>
                    echo $response->statusMessage
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authStaffDataUpdate" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>



        <operation name="authPartnerRegistrationBegin">
            <documentation>
                <alternative lang="en">
                    Begins partner registration procedure, sends confirmation code to the user and returns status on success or status message otherwise
                    &lt;ul>
                    &lt;li>Confirmation code is send by the e-mail or sms, based on users settings in user profile. E-mail is preffered.&lt;/li>
                    &lt;/ul>
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    // Array $userData has to contain all the data required in registaration mode&lt;br>
                    $userData = array('userLogin'=>'somelogin', 'userLastName'=>'somename', 'userEmail'=>'acount@server.pl', 'userInfoChannelList'=>$channelList);&lt;br>
                    $registrationData = array('campaignRulesConformationFlag'=>1, $userData);&lt;br>
                    $response = $client->authPartnerRegistrationBegin('[token]', $registrationData);&lt;br>
                    $response = $client->authPartnerRegistrationBegin('[token]', $registrationData, 'en');&lt;br>
                    &lt;br>
                    echo $response->registrationStatus;&lt;br>
                    echo $response->statusMessage;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPartnerRegistrationBegin" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authPartnerRegistrationComplete">
            <documentation>
                <alternative lang="en">
                    Completes partner registration procedure and returns status and short user data on success or status message otherwise
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authPartnerRegistrationComplete('[token]', '[code]');&lt;br>
                    $response = $client->authPartnerRegistrationComplete('[token]', '[code]', 'en');&lt;br>
                    &lt;br>
                    echo $response->registrationStatus;&lt;br>
                    echo $response->ustatusMessage;&lt;br>
                    echo $response->userData->userLastName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPartnerRegistrationComplete" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authStaffRegistration">
            <documentation>
                <alternative lang="en">
                    Staff user registration procedure, returns status on success or status message otherwise
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    // Array $userData has to contain all the data required in registaration mode&lt;br>
                    $userData = array('userLogin'=>'somelogin', 'userLastName'=>'somename', 'userEmail'=>'acount@amica.com.pl', 'userInfoChannelList'=>$channelList);&lt;br>
                    $response = $client->authStaffRegistration('[token]', $userData);&lt;br>
                    $response = $client->authStaffRegistration('[token]', $userData, 'en');&lt;br>
                    &lt;br>
                    echo $response->registrationStatus;&lt;br>
                    echo $response->statusMessage;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authStaffRegistration" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>


        <operation name="authPartnerActivationBegin">
            <documentation>
                <alternative lang="en">
                    Begins partner account activation procedure, sends confirmation code to the user and returns status on success or status message otherwise
                    &lt;ul>
                    &lt;li>Confirmation code is send by the e-mail or sms, based on users settings in user profile. E-mail is preffered.&lt;/li>
                    &lt;/ul>
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    // Array $userData has to contain all the data required in registaration mode&lt;br>
                    $activationData = array('userPesel'=>'somepesel', 'userLogin'=>'somelogin', 'userPasswd'=>'somepassword');&lt;br>
                    $response = $client->authPartnerActivationBegin('[token]', $activationData);&lt;br>
                    $response = $client->authPartnerActivationBegin('[token]', $activationData, 'en');&lt;br>
                    &lt;br>
                    echo $response->activationStatus;&lt;br>
                    echo $response->statusMessage;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPartnerActivationBegin" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authPartnerActivationComplete">
            <documentation>
                <alternative lang="en">
                    Completes partner account activation procedure and returns status and short user data on success or status message otherwise
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authPartnerActivationComplete('[token]', '[code]');&lt;br>
                    $response = $client->authPartnerActivationComplete('[token]', '[code]', 'en');&lt;br>
                    &lt;br>
                    echo $response->activationStatus;&lt;br>
                    echo $response->ustatusMessage;&lt;br>
                    echo $response->userData->userLastName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPartnerActivationComplete" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>


        <operation name="authKrbClientInit">
            <documentation>
                <alternative lang="en">
                    Initializes staff Kerberos authentication procedure, returns one time auth cycle identifier on success or status message otherwise
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authKrbClientInit('[token]', '[loginTarget]');&lt;br>
                    $response = $client->authKrbClientInit('[token]', '[loginTarget]', 'en');&lt;br>
                    &lt;br>
                    echo $response->initStatus;&lt;br>
                    echo $response->oneCode;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authKrbClientInit" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authKrbClientSet">
            <documentation>
                <alternative lang="en">
                    Set staff Kerberos authentication info, returns status on success or status message otherwise
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authKrbClientSet('[token]', '[oneCode]', '[loginValue]');&lt;br>
                    $response = $client->authKrbClientSet('[token]', '[oneCode]', '[loginValue]', 'en');&lt;br>
                    &lt;br>
                    echo $response->setStatus;&lt;br>
                    echo $response->statusMessage;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authKrbClientSet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authKrbClientCheck">
            <documentation>
                <alternative lang="en">
                    Completes staff Kerberos authentication procedure, returns status and short user data (as authUserLoginDo) plus loginTarget on success or status message otherwise
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authKrbClientCheck('[token]', '[oneCode]');&lt;br>
                    $response = $client->authKrbClientCheck('[token]', '[oneCode]', 'en');&lt;br>
                    &lt;br>
                    echo $response->checkStatus;&lt;br>
                    echo $response->userData->userLastName;&lt;br>
                    echo $response->loginTarget;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authKrbClientCheck" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>



        <operation name="authAvailableUserGroupsGet">
            <documentation>
                <alternative lang="en">
                    Returns array of user groups as code - name pairs available for application indicated by token.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authAvailableUserGroupsGet('[token]');&lt;br>
                    &lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->uGroupDataList->uGroupData[0]->uGroupCode;&lt;br>
                    echo $response->uGroupDataList->uGroupData[0]->uGroupName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authAvailableUserGroupsGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authAvailableLanguagesGet">
            <documentation>
                <alternative lang="en">
                    Returns array of languages data as code - name pairs available for users.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authAvailableLanguagesGet();&lt;br>
                    &lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->langDataList->langData[0]->langCode;&lt;br>
                    echo $response->langDataList->langData[0]->langName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authAvailableLanguagesGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>
        <operation name="authAvailableInfoChannelsGet">
            <documentation>
                <alternative lang="en">
                    Returns array of info channels data as code - name pairs available for users.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authAvailableInfoChannelsGet();&lt;br>
                    $response = $client->authAvailableInfoChannelsGet('en');&lt;br>
                    &lt;br>
                    echo $response->dataStatus;;&lt;br>
                    echo $response->infoChannelDataList->infoChannelData[0]->infoChannelCode;;&lt;br>
                    echo $response->infoChannelDataList->infoChannelData[0]->infoChannelName;
                    &lt;br>
                    &lt;br>
                    Info channel is a way, the user wants to communicate
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authAvailableInfoChannelsGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>
        <operation name="authAvailableCountriesGet">
            <documentation>
                <alternative lang="en">
                    Returns array of country data as code - name pairs.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authAvailableCountriesGet();&lt;br>
                    &lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->countryDataList->countryData[0]->countryCode;&lt;br>
                    echo $response->countryDataList->countryData[0]->countryName;&lt;br>
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authAvailableCountriesGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>
        <operation name="authPredefinedMetroSizesGet">
            <documentation>
                <alternative lang="en">
                    Returns array of predefined metro size data as code - name pairs.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $listOfMetroSizeData = $client->authPredefinedMetroSizesGet();&lt;br>
                    $listOfMetroSizeData = $client->authPredefinedMetroSizesGet('en');&lt;br>
                    &lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->metroSizeDataList->metroSizeData[0]->metroSizeCode;&lt;br>
                    echo $response->metroSizeDataList->metroSizeData[0]->metroSizeName;
                    &lt;br>
                    &lt;br>
                    Metro size is list o predefined urban ares sizes, to be used during users registration or profile update
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPredefinedMetroSizesGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>
        <operation name="authPredefinedEducationLevelsGet">
            <documentation>
                <alternative lang="en">
                    Returns array of predefined education level data as code - name pairs.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authPredefinedEducationLevelsGet();&lt;br>
                    $response = $client->authPredefinedEducationLevelsGet('en');&lt;br>
                    &lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->eduLevelDataList->eduLevelData[0]->eduLevelCode;&lt;br>
                    echo $response->eduLevelDataList->eduLevelData[0]->eduLevelName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPredefinedEducationLevelsGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="authAvailableIRSGet">
            <documentation>
                <alternative lang="en">
                    Returns array of available polish IRS data as ID - name pairs (Urzędy Skarbowe).
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authAvailableIRSGet();&lt;br>
                    &lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->irsDataList->irsData[0]->irsID;&lt;br>
                    echo $response->irsDataList->irsData[0]->irsName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authAvailableIRSGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>
        <operation name="authPredefinedPositionsGet">
            <documentation>
                <alternative lang="en">
                    Returns array of predefined positions data as ID - name pairs.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->authPredefinedPositionsGet();&lt;br>
                    &lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->posDataList->posData[0]->posID;&lt;br>
                    echo $response->posDataList->posData[0]->posName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#authPredefinedEPositionsGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

    </binding>




    <binding name="AmicaRepositoryDataBinding" type="ns:AmicaRepositoryDataPort">
        <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />

        <operation name="repoAvailableCampaignsGet">
            <documentation>
                <alternative lang="en">
                    Returns array of campaigns data, available to given token.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->repoAvailableCampaignsGet('[token]');&lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->campaignDataList->campaignData->campaignID;  // campaignData[n] in case of multiple result&lt;br>
                    echo $response->campaignDataList->campaignData->campaignName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#repoAvailableCampaignsGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="repoPredefinedActivityTypesGet">
            <documentation>
                <alternative lang="en">
                    Returns array of activity types data, available to given token.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->repoPredefinedActivityTypesGet('[token]');&lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->actTypeDataList->actTypeData[0]->actTypeID;&lt;br>
                    echo $response->actTypeDataList->actTypeData[0]->actTypeName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#repoPredefinedActivityTypesGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="repoAvailableActivitiesGet">
            <documentation>
                <alternative lang="en">
                    Returns array of activities data, available to given token.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->repoAvailableActivitiesGet('token');&lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->activityDataList->activityData->activityID;	// ...Data[n] in case of multiple result&lt;br>
                    echo $response->activityDataList->activityData->activityName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#repoAvailableActivitiesGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="repoUserScoreGet">
            <documentation>
                <alternative lang="en">
                    Returns user score data in campaigns, available to given token.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->repoUserScoreGet('[token]');&lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->userScoreData->userID;&lt;br>
                    echo $response->userScoreData->userScoreTotal;&lt;br>
                    echo $response->userScoreData->userScoreCampaignDataList->userScoreCampaignData->campaignName;		// ...Data[n] in case of multiple result&lt;br>
                    echo $response->userScoreData->userScoreCampaignDataList->userScoreCampaignData->campaignScore;&lt;br>
                    echo $response->userScoreData->userScoreCampaignDataList->userScoreCampaignData->userScoreActivityDataList->userScoreActivityData[0]->activityName;&lt;br>
                    echo $response->userScoreData->userScoreCampaignDataList->userScoreCampaignData->userScoreActivityDataList->userScoreActivityData[0]->activityScoreValue;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#repoUserScoreGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="repoUserScoreStore">
            <documentation>
                <alternative lang="en">
                    Stores user score in repository, if activity is available to given token.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->repoUserScoreStore('[token]', [activityID], [groupID], [userID], [scoreValue], '[localDate]', [localID]);&lt;br>
                    echo $response->StoreStatus;&lt;br>
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#repoUserScoreStore" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="repoUserRankingGet">
            <documentation>
                <alternative lang="en">
                    Returns ranking data in campaign indicated by given token or ID.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->repoUserRankingGet('token');&lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->rankingDate;&lt;br>
                    echo $response->rankingCampaignName;&lt;br>
                    echo $response->rankingDateFrom;&lt;br>
                    echo $response->rankingDateTo;&lt;br>
                    echo $response->rankingDataList->rankingData[0]->rankingNo;&lt;br>
                    echo $response->rankingDataList->rankingData[0]->rankingUserID;&lt;br>
                    echo $response->rankingDataList->rankingData[0]->rankingUserScore;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#repoUserRankingGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>


    </binding>



    <binding name="AmicaPromoDataBinding" type="ns:AmicaPromoDataPort">
        <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />

        <operation name="promoAvailableCampaignsGet">
            <documentation>
                <alternative lang="en">
                    Returns array of promo campaigns data, available to given token.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->promoAvailableCampaignsGet('token');&lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->campaignDataList->campaignData->campaignID;	// ...Data[n] in case of multiple result&lt;br>
                    echo $response->campaignDataList->campaignData->campaignName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#promoAvailableCampaignsGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="promoAccessionBegin">
            <documentation>
                <alternative lang="en">
                    Begins promo campaign accession procedure, sends confirmation code to the user and returns status on success or status message otherwise
                    &lt;ul>
                    &lt;li>Confirmation code is send by the e-mail or sms, based on users settings in user profile. E-mail is preffered.&lt;/li>
                    &lt;/ul>
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    // Array $accessionData has to contain all the data required in registration mode&lt;br>
                    $userData = array('userLogin'=>'somelogin', 'userLastName'=>'somename', 'userEmail'=>'acount@server.pl', 'userInfoChannelList'=>$channelList);&lt;br>
                    $accessionData = array('campaignRulesConfirmationFlag'=>1, $userData);&lt;br>
                    $response = $client->promoAccessionBegin('[token]', $accessionData);
                    &lt;br>
                    echo $response->accessionStatus&lt;br>
                    echo $response->statusMessage&lt;br>
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#promoAccessionBegin" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="promoAccessionComplete">
            <documentation>
                <alternative lang="en">
                    Completes promo campaign accession procedure and returns status and short user data on success or status message otherwise
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->promoAccessionComplete('[token]', 'somelogin', '[code]');&lt;br>
                    &lt;br>
                    echo $response->accessionStatus;&lt;br>
                    echo $response->userData->userLastName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#promoAccessionComplete" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>


        <operation name="promoConformationBegin">
            <documentation>
                <alternative lang="en">
                    Begins promo campaign access conformation procedure, sends confirmation code to the user and returns status on success or status message otherwise
                    &lt;ul>
                    &lt;li>Confirmation code is send by the e-mail or sms, based on users settings in user profile. E-mail is preffered.&lt;/li>
                    &lt;/ul>
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    // Array $conformationData has to contain at leat userID field, and optionally another fields intended to change&lt;br>
                    $userData = array('userID'=>40, 'userLastName'=>'NewName');&lt;br>
                    $conformationData = array('campaignRulesConfirmationFlag'=>1, $conformationData);&lt;br>
                    $response = $client->promoConformationBegin('token', $conformationData);&lt;br>
                    &lt;br>
                    echo $response->conformationStatus&lt;br>
                    echo $response->statusMessage
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#promoConformationBegin" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>

        <operation name="promoConformationComplete">
            <documentation>
                <alternative lang="en">
                    Completes promo campaign access conformation procedure and returns status and short user data on success or status message otherwise
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->promoConformationComplete('[token]', '[login]', '[code]');&lt;br>
                    &lt;br>
                    echo $response->conformationStatus;&lt;br>
                    echo $response->userData->userLastName;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#promoConformationComplete" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>



        <operation name="promoSalesHistoryGet">
            <documentation>
                <alternative lang="en">
                    Returns array of sales history data in campaign indicated by given token or ID.
                    @example
                    PHP:&lt;br>
                    $client = new SoapClient("http://soap.amica.com.pl/?q=ws/wsdl", $options);&lt;br>
                    $response = $client->promoSalesHistoryGet('[token]');&lt;br>
                    echo $response->dataStatus;&lt;br>
                    echo $response->salesDataList->salesData->salePeriod;	// ...Data[n] in case of multiple result&lt;br>
                    echo $response->salesDataList->salesData->saleScore;&lt;br>
                    echo $response->salesDataList->salesData->saleStatus;
                </alternative>
            </documentation>
            <soap:operation soapAction="http://soap.amica.com.pl/ws#promoSalesHistoryGet" />
            <input> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </input>
            <output> <soap:body use="literal" namespace="http://soap.amica.com.pl/ws" /> </output>
        </operation>


    </binding>



    <!--  END POINTS -->

    <service name="AmicaTestService">
        <documentation>
            <alternative lang="en">
                Amica SOAP test service prowides one method to test communication&lt;br>
                This serwis is developed and managed by ArtCom24, Poland&lt;br>
                If You have any questions, please contact us at amicadataapi[at]artcom24.eu
            </alternative>
        </documentation>
        <port name="AmicaTest" binding="ns:AmicaTestBinding">
            <soap:address location="http://tmp-api.api.back.amica.com.pl/?q=ws"/>
        </port>
    </service>
    <service name="AmicaAuthService">
        <documentation>
            <alternative lang="en">
                Amica SOAP Authentication and users data service provides set of methods for &lt;br>
                serve users login and profile operations as well as data retrival&lt;br>
                This serwis is developed and managed by ArtCom24, Poland&lt;br>
                If You have any questions, please contact us at amicadataapi[at]artcom24.eu
            </alternative>
        </documentation>
        <port name="AmicaAuth" binding="ns:AmicaAuthBinding">
            <soap:address location="http://tmp-api.api.back.amica.com.pl/?q=ws"/>
        </port>
    </service>
    <service name="AmicaRepositoryDataService">
        <documentation>
            <alternative lang="en">
                Amica SOAP Repository Data service provides set of methods, which return &lt;br>
                all the marketing campaigns data stored in central repository
                &lt;p>
                This serwis is developed and managed by ArtCom24, Poland&lt;br>
                If You have any questions, please contact us at amicadataapi[at]artcom24.eu
            </alternative>
        </documentation>
        <port name="AmicaRepositoryData" binding="ns:AmicaRepositoryDataBinding">
            <soap:address location="http://tmp-api.api.back.amica.com.pl/?q=ws"/>
        </port>
    </service>
    <service name="AmicaPromoDataService">
        <documentation>
            <alternative lang="en">
                Amica SOAP Promotions Data service provides set of methods, which return &lt;br>
                trade marketing campaigns data stored in dedicated data managment system
                &lt;p>
                This serwis is developed and managed by ArtCom24, Poland&lt;br>
                If You have any questions, please contact us at amicadataapi[at]artcom24.eu
            </alternative>
        </documentation>
        <port name="AmicaPromoData" binding="ns:AmicaPromoDataBinding">
            <soap:address location="http://tmp-api.api.back.amica.com.pl/?q=ws"/>
        </port>
    </service>


</definitions>
