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

Heb toegang tot Scene7 WSDLs zoals hieronder getoond.

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

De standaardwaarde voor <IPS_webapp> is scene7 .

plaats van de Dienst

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 URLs voor Dynamische gebieden van Media

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
IpsApi-2014-04-03.wsdl
http://www.scene7.com/IpsApi/xsd/2014-04-03
6.6/2013R1
IpsApi-2013-02-15.wsdl
http://www.scene7.com/IpsApi/xsd/2013-02-15
6.0/2012R1
IpsApi-2012-02-14.wsdl
http://www.scene7.com/IpsApi/xsd/2012-02-14
4,5
IpsApi-2010-01-31.wsdl
http://www.scene7.com/IpsApi/xsd/2010-01-31
4,4
IpsApi-2009-07-31.wsdl
http://www.scene7.com/IpsApi/xsd/2009-07-31
4,2
IpsApi-2008-09-10.wsdl
http://www.scene7.com/IpsApi/xsd/2008-09-10
4,0
IpsApi-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 SOAP.

Gesteunde transporten

De IPS API SOAP-binding ondersteunt alleen HTTP-transport. Maak alle SOAP-verzoeken met behulp van de HTTPS POST-methode.

de actiekop van SOAP

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.

formaat van het Bericht

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

de authentificatie van het Verzoek

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

<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>

Gebieden

Naam
Beschrijving
user
Geldige IPS-gebruikers-e-mail.
password
Wachtwoord voor gebruikersaccount.
locale
Optionele landinstelling voor aanvraag. Zie Landinstelling voor details.
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 clientplatforms, waaronder Adobe Flash, kunnen de hoofdtekst van de reactie niet lezen, tenzij de statuscode 200 (OK) wordt geretourneerd.

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

Hieronder ziet u een voorbeeld van het gebruik van het element authHeader in een aanvraag voor een SOAP-header:

<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 methodes van de verzoekauthentificatie

Als het om wat voor reden dan ook niet mogelijk is dat uw clienttoepassing de authHeader SOAP-header doorgeeft, kunnen API-aanvragen ook referenties opgeven met HTTP Basic-verificatie (zoals opgegeven 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>)

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

Verzend de koptekst voor autorisatie op voorhand met het eerste verzoek. Als de aanvraag geen verificatiereferenties bevat, reageert IpsApiService niet met een statuscode van 401 (Unauthorized) . In plaats daarvan wordt een statuscode van 500 (Internal Server Error) geretourneerd met een hoofdtekst van een SOAP-fout die aangeeft dat de aanvraag niet kan worden geverifieerd.

Vóór IPS 3.8 werd verificatie via SOAP-header geïmplementeerd met behulp van de 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 het element authHeader .

de vergunning van het Verzoek

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.

verzoek en reactie van SOAP van de Steekproef

In het volgende voorbeeld wordt een volledige addCompany -bewerking getoond, 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>

de fouten van SOAP

Wanneer een bewerking een uitzonderingsvoorwaarde aantreft, wordt een SOAP-fout geretourneerd als de hoofdtekst van het SOAP-bericht in plaats van de normale reactie. Als een gebruiker die geen beheerder is, bijvoorbeeld de vorige addCompany -aanvraag probeert te verzenden, wordt de volgende reactie gegeven:

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