IPS Web Service WSDL-versies ips-web-service-wsdl-versions

De IPS Dienst van het Web wordt gesteund door een reeks documenten van WSDL (de Taal van de Beschrijving van de Diensten van het Web) die van om het even welke IPS installatie worden betreden waarop de IPS component van de Dienst van het Web geïnstalleerd is. Elke IPS API-release bevat een nieuw WSDL-bestand dat verwijst naar een versioned doel-XML-naamruimte. Eerdere WSDL-naamruimteversies worden ook ondersteund voor achterwaartse compatibiliteit met bestaande toepassingen.

WSDL-toegang section-62e69fa2c87f4dc9bca72f10ba028f6c

Open de Scene7 WSDL's zoals hieronder wordt weergegeven.

https://<IPS_hostname:<IPS_port>/<IPS_webapp>/
webservice/IpsApi[-<API_version>].wsdl

De standaardwaarde voor <IPS_webapp> is scene7.

Servicelocatie

De dienst URL wordt gespecificeerd in de dienstsectie van het IPS document van WSDL van de Dienst van het Web. De service-URL heeft doorgaans de volgende notatie:

https://<IPS_hostname>:<IPS_port>/<IPS_webapp>/
services/IpsApiService

Toegang tot URL's voor Dynamic Media-regio's

Geografische locatie
Productie-URL
Staging-URL (gebruik voor ontwikkeling en testen voorafgaand aan de productie)
Noord-Amerika
https://s7sps1apissl.scene7.com/scene7/
https://s7sps1apissl-staging.scene7.com/scene7/
Europa, Midden-Oosten, Azië
https://s7sps3apissl.scene7.com/scene7/
https://s7sps3apissl-staging.scene7.com/scene7/
Japan/Azië Stille Oceaan
https://s7sps5apissl.scene7.com/scene7/
https://s7sps5apissl-staging.scene7.com/scene7/

Ondersteunde WSDL's section-ebbba69880f94e9c823f1147974eb404

Herinner me, kunt u uw code moeten wijzigen als u eigenschappen in de recentste versie van IPS API wilt gebruiken. IPS API steunt WSDLs voor de volgende versies:

API-releaseversie
WSDL
API-naamruimte
6.8/2014R1
IPpsApi-2014-04-03.wsdl
http://www.scene7.com/IpsApi/xsd/2014-04-03
6.6/2013R1
IPpsApi-2013-02-15.wsdl
http://www.scene7.com/IpsApi/xsd/2013-02-15
6.0/2012R1
IPpsApi-2012-02-14.wsdl
http://www.scene7.com/IpsApi/xsd/2012-02-14
4.5
IPpsApi-2010-01-31.wsdl
http://www.scene7.com/IpsApi/xsd/2010-01-31
4.4
IPpsApi-2009-07-31.wsdl
http://www.scene7.com/IpsApi/xsd/2009-07-31
4.2
IPpsApi-2008-09-10.wsdl
http://www.scene7.com/IpsApi/xsd/2008-09-10
4.0
IPpsApi-2008-01-15.wsdl
http://www.scene7.com/IpsApi/xsd/2008-01-15
Pre-4.0
IpsApi.wsdl
http://www.scene7.com/IpsApi/xsd

Bestaande toepassingen die moeten worden aangepast om nieuwe functies te kunnen gebruiken, moeten een upgrade uitvoeren naar de nieuwste API-versie en moeten mogelijk wijzigingen aanbrengen in bestaande code. Zie het veranderingslogboek voor details.

SOAP section-51e7ecbd1d7f451b9e4f6bf7e1579cae

Bindingen

De IPS API Dienst van het Web steunt slechts een band van de ZEEP.

Ondersteunde transporten

De IPS API band van de ZEEP steunt slechts het vervoer van HTTP. Maak alle verzoeken van de ZEEP gebruikend de methode van de POST HTTPS.

Koptekst van SOAP-actie

Als u een aanvraag wilt verwerken, stelt u de HTTP-header van SOAPAction in op de naam van de gevraagde bewerking. Het attribuut van de verrichtingsnaam in de WSDL bindende sectie specificeert de naam.

Berichtindeling

De document/letterlijke stijl wordt gebruikt voor alle invoer- en uitvoerberichten met typen die zijn gebaseerd op de definitietaal van het XML-schema ( https://www.w3.org/TR/xmlschema-0/) en opgegeven in het WSDL-bestand. Alle typen vereisen gekwalificeerde namen met gebruik van de naamruimtewaarde van het doel die in het WSDL-bestand is opgegeven.

Verificatie aanvragen

De voorkeursmethode voor het doorgeven van verificatiereferenties in API-aanvragen is het gebruik van de authHeader element zoals die in IPS API WSDL wordt bepaald.

<element name="authHeader">
    <complexType>
       <sequence>
            <element name="user" type="xsd:string"/>
            <element name="password" type="xsd:string"/>
            <element name="locale" type="xsd:string" minOccurs="0"/>
            <element name="appName" type="xsd:string" minOccurs="0"/>
            <element name="appVersion" type="xsd:string" minOccurs="0"/>
            <element name="gzipResponse" type="xsd:boolean" minOccurs="0"/>
            <element name="faultHttpStatusCode" type="xsd:int" minOccurs="0"/>
       </sequence>
    </complexType>
 </element>

Velden

Naam
Beschrijving
user
Geldige IPS-gebruikers-e-mail.
password
Wachtwoord voor gebruikersaccount.
landinstelling
Optionele landinstelling voor aanvraag. Zie Landinstelling voor meer informatie.
appName
Toepassingsnaam aanroepen. Deze parameter is optioneel, maar u wordt aangeraden deze in alle aanvragen op te nemen.
appVersion
Toepassingsversie aanroepen.
gzipResponse
Optionele markering om gzip-compressie van XML-reactie in of uit te schakelen. Standaard worden de reacties gecomprimeerd met gzip als de HTTP-header voor acceptatie en codering ondersteuning voor gzip aangeeft.
errorHttpStatusCode
Optionele parameter om de HTTP-statuscode voor foutreacties te negeren. Standaard retourneren de foutreacties HTTP-statuscode 500 (Interne serverfout). Sommige cliëntplatforms, met inbegrip van de Flash van de Adobe, kunnen het antwoordlichaam niet lezen tenzij een statuscode van 200 (O.K.) is teruggekeerd.

De authHeader element is altijd gedefinieerd in de naamruimte http://www.scene7.com/IpsApi/xsd, ongeacht de API-versie.

Hieronder ziet u een voorbeeld van het gebruik van de authHeader element in een SOAP-aanvraagkoptekst:

<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <authHeader xmlns="http://www.scene7.com/IpsApi/xsd">
      <user>user@scene7.com</user>
      <password>mypassword</password>
      <appName>MyApp</appName>
      <appVersion>1.0</appVersion>
   </authHeader>
 </soap:Header>

Andere methoden voor aanvraagverificatie

Als het om een of andere reden niet mogelijk is dat uw clienttoepassing authHeader SOAP kopbal, kunnen de API verzoeken geloofsbrieven ook specificeren gebruikend de Basisauthentificatie van HTTP (zoals gespecificeerd in RFC 2617).

Voor HTTP Basic-verificatie moet de HTTP-headersectie van elke SOAP-POST-aanvraag een header van het formulier bevatten:

Authorization: Basic base64(<IPS_user_email>:<password>)

Wanneer base64() past de standaard Base64-codering toe, <IPS_user_email> is het e-mailadres van een geldige IPS-gebruiker, en <password> is het wachtwoord van de gebruiker.

Verzend de koptekst voor autorisatie op voorhand met het eerste verzoek. Als de aanvraag geen verificatiereferenties bevat, IpsApiService reageert niet met een statuscode van 401 (Unauthorized). In plaats daarvan, een statuscode van 500 (Internal Server Error) is teruggekeerd met een de foutenlichaam die van de ZEEP verklaren dat het verzoek niet kon worden voor authentiek verklaard.

Vóór IPS 3.8, werd de authentificatie door de kopbal van de ZEEP uitgevoerd gebruikend AuthUser en AuthPassword elementen in de naamruimte http://www.scene7.com/IpsApi. Bijvoorbeeld:

<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <AuthUser xmlns="http://www.scene7.com/IpsApi">user@scene7.com</AuthUser>
   <AuthPassword xmlns="http://www.scene7.com/IpsApi">mypassword</AuthPassword>
</soap:Header>

Deze stijl wordt nog steeds ondersteund voor achterwaartse compatibiliteit, maar is vervangen door de authHeader element.

Verzoek om toestemming

Nadat de geloofsbrieven van de bezoeker voor authentiek worden verklaard, wordt het verzoek gecontroleerd om ervoor te zorgen dat de bezoeker wordt gemachtigd om de gevraagde verrichting uit te voeren. De vergunning is gebaseerd op de gebruikersrol van de bezoeker en kan ook vereisen controlerend het doelbedrijf, doelgebruiker, en andere verrichtingsparameters. Bovendien moeten de gebruikers van het Portaal van het Beeld tot een Groep met de vereiste toestemmingen behoren om bepaalde omslag en activaverrichtingen uit te voeren. De sectie Verrichtingen verwijst naar de vergunningsvereisten voor elke vluchtuitvoering.

Voorbeeld van SOAP-verzoek en -antwoord

In het volgende voorbeeld wordt een complete addCompany bewerking, inclusief HTTP-headers:

POST /scene7/services/IpsApiService HTTP/1.1
User-Agent: Axis/2.0
SOAPAction: addCompany
Content-Type: text/xml; charset=UTF-8

<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Header>
      <authHeader xmlns="http://www.scene7.com/IpsApi/xsd">
        <user>user@scene7.com</user>
        <password>mypassword</password>
        <appName>MyApp</appName>
        <appVersion>1.0</appVersion>
      </authHeader>
    </soapenv:Header>
    <soapenv:Body>
    <ns1:addCompanyParam xmlns:ns1="http://www.scene7.com/IpsApi/xsd/2008-01-15">
      <ns1:companyName>Sample Company</ns1:companyName>
      <ns1:expires>2008-07-31T12:00:00-06:00</ns1:expires>
    </ns1:addCompanyParam>
    </soapenv:Body>
 </soapenv:Envelope>

En de corresponderende reactie:

HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Content-Type: text/xml;charset=UTF-8
Transfer-Encoding: chunked
Date: Fri, 21 Jul 2006 20:47:55 GMT

<?xml version='1.0' encoding='utf-8'?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Header />
   <soapenv:Body>
     <ns1:addCompanyReturn xmlns:ns1="http://www.scene7.com/IpsApi/xsd/2008-01-15">
       <ns1:companyInfo>
          <ns1:companyHandle>2</ns1:companyHandle>
          <ns1:name>Sample Company</ns1:name>
          <ns1:rootPath>SampleCompany/</ns1:rootPath>
          <ns1:expires>2008-07-31T18:00:00.000Z</ns1:expires>
       </ns1:companyInfo>
     </ns1:addCompanyReturn>
   </soapenv:Body>
</soapenv:Envelope>

SOAP-fouten

Wanneer een verrichting een uitzonderingsvoorwaarde ontmoet, is een fout van de ZEEP teruggekeerd als lichaam van het bericht van de ZEEP in plaats van de normale reactie. Als een gebruiker die geen beheerder is, bijvoorbeeld de vorige versie probeert te verzenden addCompany request, the following response is returned:

HTTP/1.1 500 Internal Server Error
Server: Apache-Coyote/1.1
Content-Type: text/xml;charset=UTF-8
Transfer-Encoding: chunked
Date: Fri, 21 Jul 2006 16:36:20 GMT
Connection: close

<?xml version='1.0' encoding='utf-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Header />
   <soapenv:Body>
      <soapenv:Fault>
         <faultcode>soapenv:Client</faultcode>
         <faultstring>AuthorizationException</faultstring>
         <detail>
           <ns1:authorizationFault xmlns:ns1="http://www.scene7.com/IpsApi/xsd">
               <code xmlns="http://www.scene7.com/IpsApi/xsd">20003</code>
             <reason xmlns="http://www.scene7.com/IpsApi/xsd">User does not
             have permission to access operation 'addCompany'</reason>
           </ns1:authorizationFault>
         </detail>
      </soapenv:Fault>
   </soapenv:Body>
</soapenv:Envelope>
recommendation-more-help
4e9b9d8c-5839-4215-aa35-01b652869681