Ceci est une ancienne révision du document !


Table des matières

API Principale : SOAP (xml)

Authentification

<xxxxRequest>
	<glnReseller>3026900001000</glnReseller>
	<passwordReseller>3x59ftmdmdEds</passwordReseller>
	...
</xxxxRequest>

Gestion des erreurs et codes de retour

<xxxxResponse>
	<returnStatus>AUTHENTICATION_ERROR</returnStatus>
	<returnMessage>Bad login</returnMessage >
</xxxxResponse>

Récupération des notices : getNotices()

Interrogation du web service

Cas 1 – Initialisation du catalogue (service désactivé, le catalogue d'initialisation est fourni par FTP)

Attention : l'option initialization a été désactivée, merci de contacter Dilicom pour plus d’informations.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://hub.dilicom.net/definitions/">
   <soapenv:Header/>
   <soapenv:Body>
      <def:GetNoticesRequest>
         <def:glnReseller>3026900001000</def:glnReseller>
         <def:passwordReseller>3x59ftmdmdEds</def:passwordReseller>
	<def:initialization />
      </def:GetNoticesRequest>
   </soapenv:Body>
</soapenv:Envelope>

Cas 2 – Récupération depuis un instant T

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://hub.dilicom.net/definitions/">
   <soapenv:Header/>
   <soapenv:Body>
      <def:GetNoticesRequest>
         <def:glnReseller>3026900001000</def:glnReseller>
         <def:passwordReseller>3x59ftmdmdEds</def:passwordReseller>
	<def:sinceDate>2010-05-21T08:00:00</def:sinceDate>
      </def:GetNoticesRequest>
   </soapenv:Body>
</soapenv:Envelope>

Cas 3 – Récupération depuis la dernière connexion

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://hub.dilicom.net/definitions/">
   <soapenv:Header/>
   <soapenv:Body>
      <def:GetNoticesRequest>
         <def:glnReseller>3026900001000</def:glnReseller>
         <def:passwordReseller>3x59ftmdmdEds</def:passwordReseller>
	<def:lastConnection />
      </def:GetNoticesRequest>
   </soapenv:Body>
</soapenv:Envelope>

Réponse du Web Service

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <GetNoticesResponse>
         <onixFileUrl>
            <httpLink>http://hub.dilicom.net/notices_onix/diffusion_3025594195700_201010261052_876202924368763026683575329457724863245.xml</httpLink>
         </onixFileUrl>
         <onixFileUrl>
            <httpLink>http://hub.dilicom.net/notices_onix/diffusion_3025594195700_201010241050_436369748931693308631487537702611586765.xml</httpLink>
         </onixFileUrl>
         <onixFileUrl>
            <httpLink>http://hub.dilicom.net/notices_onix/diffusion_3025594195700_201010251051_1167095955394841390675854646324262157699.xml</httpLink>
         </onixFileUrl>
         <onixFileUrl>
            <httpLink>http://hub.dilicom.net/notices_onix/diffusion_3025594195700_201010261050_800399867987676759575839083436876637486.xml</httpLink>
         </onixFileUrl>
         <returnStatus>OK</returnStatus>
      </GetNoticesResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

L'exemple présente le cas où plusieurs fichiers sont renvoyés. Actuellement le web service renvoie toujours un seul lien, cependant il est possible qu'à terme il soit nécessaire de renvoyer plusieurs liens.

Si éventuellement il n’y avait aucune fiche à diffuser, on renvoie un message du type :

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <GetNoticesResponse>
	<noNotice/>
	<returnStatus>OK</returnStatus>
      </GetNoticesResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Récupération des notices : getNoticeForDistributor()

Interrogation du web service

Cas 1 – Initialisation du catalogue pour un distributeur (service désactivé, le catalogue d'initialisation est fourni par FTP)

Attention : l'option initialization a été désactivée, merci de contacter Dilicom pour plus d’informations.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://hub.dilicom.net/definitions/">
   <soapenv:Header/>
   <soapenv:Body>
      <def:GetNoticesForDistributorRequest>
         <def:glnReseller>3026900001000</def:glnReseller>
         <def:passwordReseller>3x59ftmdmdEds</def:passwordReseller>
         <def:glnDistributor>3012410001008</def:glnDistributor>
	<def:initialization />
      </def:GetNoticesForDistributorRequest>
   </soapenv:Body>
</soapenv:Envelope>

Cas 2 – Récupération depuis un instant T pour un distributeur

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://hub.dilicom.net/definitions/">
   <soapenv:Header/>
   <soapenv:Body>
      <def:GetNoticesForDistributorRequest>
         <def:glnReseller>3026900001000</def:glnReseller>
         <def:passwordReseller>3x59ftmdmdEds</def:passwordReseller>
         <def:glnDistributor>3012410001008</def:glnDistributor>
	 <def:sinceDate>2010-05-21T08:00:00</def:sinceDate>
      </def:GetNoticesForDistributorRequest>
   </soapenv:Body>
</soapenv:Envelope>

Réponse du Web Service

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <GetNoticesForDistributorResponse>
         <onixFileUrl>
            <httpLink>http://hub.dilicom.net/notices_onix/diffusion_3025594195700_201010261052_876202924368763026683575329457724863245.xml</httpLink>
         </onixFileUrl>
         <onixFileUrl>
            <httpLink>http://hub.dilicom.net/notices_onix/diffusion_3025594195700_201010241050_436369748931693308631487537702611586765.xml</httpLink>
         </onixFileUrl>
         <onixFileUrl>
            <httpLink>http://hub.dilicom.net/notices_onix/diffusion_3025594195700_201010251051_1167095955394841390675854646324262157699.xml</httpLink>
         </onixFileUrl>
         <onixFileUrl>
            <httpLink>http://hub.dilicom.net/notices_onix/diffusion_3025594195700_201010261050_800399867987676759575839083436876637486.xml</httpLink>
         </onixFileUrl>
         <returnStatus>OK</returnStatus>
      </GetNoticesForDistributorResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

L'exemple présente le cas où plusieurs fichiers sont renvoyés. Actuellement le web service renvoie toujours un seul lien, cependant il est possible qu'à terme il soit nécessaire de renvoyer plusieurs liens.

Si éventuellement il n’y avait aucune fiche à diffuser, on renvoie un message du type :

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <GetNoticesForDistributorResponse>
	<noNotice/>
	<returnStatus>OK</returnStatus>
      </GetNoticesResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Vérification des disponibilités : checkAvailability()

Interrogation du web service

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://hub.dilicom.net/definitions/">
   <soapenv:Header/>
   <soapenv:Body>
      <def:CheckAvailabilityRequest>
	<def:glnReseller>3026900001000</def:glnReseller>
	<def:passwordReseller>3x59ftmdmpc85sdEds</def:passwordReseller>
	<def:checkAvailabilityLine>
		<def:ean13>9784526542500</def:ean13>
		<def:glnDistributor>3012564257416</def:glnDistributor>
		<def:unitPrice>000012500</def:unitPrice>
	</def:checkAvailabilityLine>
	<def:checkAvailabilityLine>
		<def:ean13>9790025658416</def:ean13>
		<def:glnDistributor>3012564257416</def:glnDistributor>
	</def:checkAvailabilityLine>
     </def:CheckAvailabilityRequest>
   </soapenv:Body>
</soapenv:Envelope>

Réponse du web service

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <CheckAvailabilityResponse xmlns="http://hub.dilicom.net/definitions/">
         <checkAvailabilityResponseLine>
		<ean13>9784526542500</ean13>
		<glnDistributor>3012564257416</glnDistributor>
		<checkAvailabilityReturnValue>AVAILABLE</checkAvailabilityReturnValue>
                <returnStatus>OK</returnStatus>
        <checkAvailabilityResponseLine >
		<ean13>9790025658416</ean13>
		<glnDistributor>3012564257416</glnDistributor>
                <checkAvailabilityReturnValue>UNAVAILABLE</checkAvailabilityReturnValue>
                <returnStatus>OK</returnStatus>
	</checkAvailabilityResponseLine >
      </CheckAvailabilityResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Passage de commandes : sendOrder()

Interrogation du web service

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://hub.dilicom.net/definitions/">
   <soapenv:Header/>
   <soapenv:Body>
      <def:SendOrderRequest>
         <def:glnReseller>3026900001000</def:glnReseller>
         <def:passwordReseller>3x59ftmdmdEds</def:passwordReseller>
         <def:orderId>ORDER0001</def:orderId>
         <def:glnGroup>0000000000000</def:glnGroup>
         <def:customerId>15986549</def:customerId>
         <def:finalBookOwner>
            <def:identifier>test</def:identifier>
            <def:civility>M</def:civility>
            <def:firstName>John</def:firstName>
            <def:lastName>Doe</def:lastName>
            <def:email>john.doe@dilicom.net</def:email>
            <def:country>FR</def:country>
         </def:finalBookOwner>
         <def:orderRequestLine>
            <def:ean13>9782814500136</def:ean13>
            <def:glnDistributor>3012410001000</def:glnDistributor>
            <def:unitPrice>1250</def:unitPrice>
            <def:quantity>1</def:quantity>
            <def:lineReference>01</def:lineReference>
         </def:orderRequestLine>
      </def:SendOrderRequest>
   </soapenv:Body>
</soapenv:Envelope>

Réponse du web service

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <SendOrderResponse xmlns="http://hub.dilicom.net/definitions/">
         <orderId>ORDER0001</orderId>
         <orderLine>
            <ean13>9782814500136</ean13>
            <glnDistributor>3012410001000</glnDistributor>
            <link>
               <url>http://hub.dilicom.net/link/3025594195700/TEST1FD000201/9782814500136-3012410001000/92-16-BHMHCPXAKZ3LQDWBYGU591Q2I7MEZTI7.do</url>
               <format>E127</format>
               <formatDescription>Mobipocket</formatDescription>
               <mimetype>application/x-mobipocket</mimetype>
            </link>
            <link>
               <url>http://hub.dilicom.net/link/3025594195700/TEST1FD000201/9782814500136-3012410001000/92-17-BHMHCPXAKZ3LQDWBYGU591Q2I7MEZTI7.do</url>
               <format>E107</format>
               <formatDescription>PDF</formatDescription>
               <mimetype>application/pdf</mimetype>
            </link>
            <link>
               <url>http://hub.dilicom.net/link/3025594195700/TEST1FD000201/9782814500136-3012410001000/92-18-BHMHCPXAKZ3LQDWBYGU591Q2I7MEZTI7.do</url>
               <format>E107</format>
               <formatDescription>PDF</formatDescription>
               <mimetype>application/pdf</mimetype>
            </link>
            <link>
               <url>http://hub.dilicom.net/link/3025594195700/TEST1FD000201/9782814500136-3012410001000/92-19-BHMHCPXAKZ3LQDWBYGU591Q2I7MEZTI7.do</url>
               <format>E105</format>
               <formatDescription>HTML</formatDescription>
               <mimetype>text/html</mimetype>
            </link>
            <orderLineId>92</orderLineId>
            <lineReference>01</lineReference>
            <returnStatus>OK</returnStatus>
            <returnMessage/>
         </orderLine>
         <returnStatus>OK</returnStatus>
      </SendOrderResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Récupération des détails d'une commande : getOrderDetails()

Interrogation du web service

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://hub.dilicom.net/definitions/">
   <soapenv:Header/>
   <soapenv:Body>
      <def:GetOrderDetailRequest>
         <def:glnReseller>3026900001000</def:glnReseller>
         <def:passwordReseller>3x59ftmdmpc85sdEds</def:passwordReseller>
         <def:orderId>ORDER0001</def:orderId>
      </def:GetOrderDetailRequest>
   </soapenv:Body>
</soapenv:Envelope>

Réponse du web service

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <GetOrderDetailResponse xmlns="http://hub.dilicom.net/definitions/">
         <orderId>ORDER0001</orderId>
         <orderLine>
            <ean13>9782814500136</ean13>
            <glnDistributor>3012410001000</glnDistributor>
            <link>
               <url>http://hub.dilicom.net/link/3025594195700/TEST1FD000201/9782814500136-3012410001000/92-16-BHMHCPXAKZ3LQDWBYGU591Q2I7MEZTI7.do</url>
               <format>E127</format>
               <formatDescription>Mobipocket</formatDescription>
               <mimetype>application/x-mobipocket</mimetype>
            </link>
            <link>
               <url>http://hub.dilicom.net/link/3025594195700/TEST1FD000201/9782814500136-3012410001000/92-17-BHMHCPXAKZ3LQDWBYGU591Q2I7MEZTI7.do</url>
               <format>E107</format>
               <formatDescription>PDF</formatDescription>
               <mimetype>application/pdf</mimetype>
            </link>
            <link>
               <url>http://hub.dilicom.net/link/3025594195700/TEST1FD000201/9782814500136-3012410001000/92-18-BHMHCPXAKZ3LQDWBYGU591Q2I7MEZTI7.do</url>
               <format>E107</format>
               <formatDescription>PDF</formatDescription>
               <mimetype>application/pdf</mimetype>
            </link>
            <link>
               <url>http://hub.dilicom.net/link/3025594195700/TEST1FD000201/9782814500136-3012410001000/92-19-BHMHCPXAKZ3LQDWBYGU591Q2I7MEZTI7.do</url>
               <format>E105</format>
               <formatDescription>HTML</formatDescription>
               <mimetype>text/html</mimetype>
            </link>
            <orderLineId>92</orderLineId>
            <lineReference>01</lineReference>
            <returnStatus>OK</returnStatus>
            <returnMessage/>
         </orderLine>
         <returnStatus>OK</returnStatus>
      </GetOrderDetailResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Obtention des version numériques associé à des ean physiques : getDigitalVersions()

Interrogation du web service

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://hub.dilicom.net/definitions/">
   <soapenv:Header/>
   <soapenv:Body>
      <def:GetDigitalVersionsRequest>
         <def:glnReseller>3026900001000</def:glnReseller>
         <def:passwordReseller>3x59ftmdmdEds</def:passwordReseller>
         <def:physicalEan>9782092524374</def:physicalEan>
         <def:physicalEan>9782212120035</def:physicalEan>
      </def:GetDigitalVersionsRequest>
   </soapenv:Body>
</soapenv:Envelope>

Réponse du web service

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <GetDigitalVersionsResponse xmlns="http://hub.dilicom.net/definitions/">
         <physicalVersion>
            <physicalEan>9782092524374</physicalEan>
            <digitalVersion>
               <ean13>9782092528068</ean13>
               <glnDistributor>3012410003004</glnDistributor>
            </digitalVersion>
         </physicalVersion>
         <physicalVersion>
            <physicalEan>9782212120035</physicalEan>
            <noDigitalVersion/>
         </physicalVersion>
         <returnStatus>OK</returnStatus>
      </GetDigitalVersionsResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Obtention de notices onix d'une liste d'ean/distributeur : getDetailNotices()

Interrogation du web service

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://hub.dilicom.net/definitions/">
   <soapenv:Header/>
   <soapenv:Body>
      <def:GetDetailNoticesRequest>
         <def:glnReseller>3026900001000</def:glnReseller>
         <def:passwordReseller>3x59ftmdmpc85sdEds</def:passwordReseller>
         <def:notice>
            <def:ean13>9782092528068</def:ean13>
            <def:glnDistributor>3012410003004</def:glnDistributor>
         </def:notice>
         <def:notice>
            <def:ean13>9782092628068</def:ean13>
            <def:glnDistributor>3012410003004</def:glnDistributor>
         </def:notice>
      </def:GetDetailNoticesRequest>
   </soapenv:Body>
</soapenv:Envelope>

Réponse du web service

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <GetDetailNoticesResponse xmlns="http://hub.dilicom.net/definitions/">
         <detailNotice>
            <ean13>9782092528068</ean13>
            <glnDistributor>3012410003004</glnDistributor>
            <onixProduct><![CDATA[<ONIXMessage> ... </ONIXMessage>]]></onixProduct>
         </detailNotice>
         <detailNotice>
            <ean13>9782092628068</ean13>
            <glnDistributor>3012410003004</glnDistributor>
            <noNotice/>
         </detailNotice>
         <returnStatus>OK</returnStatus>
      </GetDetailNoticesResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>