IDA WebServices User Documentation V1.0

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 23

IDA

Using Web Services


version 1
Summary
Summary................................................................................................................................................................. 2
1. Purpose of this document................................................................................................................................ 2
1. Introduction..................................................................................................................................................... 3
1.1. XML and HTTP.............................................................................................................................................................3
1.2. SOAP............................................................................................................................................................................3
1.3. WSDL...........................................................................................................................................................................3
1.4. XML Schema................................................................................................................................................................3
2. Getting started............................................................................................................................................... 15
2.1. Loading the package..................................................................................................................................................15
2.2. Installing a web service.............................................................................................................................................16
2.3. Naming a web service...............................................................................................................................................16
2.4. Inspecting web service functions..............................................................................................................................16
2.5. Executing a web service function..............................................................................................................................16
3. Basic Examples............................................................................................................................................... 16
3.1. Authentication...........................................................................................................................................................16
3.2. Simple search............................................................................................................................................................17
3.3. Advanced Search.......................................................................................................................................................19
3.4. Export on Demand.....................................................................................................................................................23
4. Best practices................................................................................................................................................. 29
4.1. Importance of accurate data and key documents....................................................................................................29
4.2. IDA Contacts..............................................................................................................................................................29
4.3. Do’s and Don’ts.........................................................................................................................................................29

1. Purpose of this document


The purpose of this document is to provide the necessary instructions to the developer’s working in IDA’s environment, to
be able to use IDA web services and thus, implement an interface between IDA and their local system. This document
defines and explains how to use the web services methods available in IDA, to interface IDA with any other application, no
matter what technology it is based on.

In this document the term “client” refers to the system requesting a communication with IDA server. The term “user” refers
to the developer that is using IDA web services to establish interactions between the two systems.

1.1. XML and HTTP


The user interacts with IDA by sending XML messages over HTTP, through IDA web service methods.

1.2. SOAP
SOAP (Simple Object Access Protocol) is a standard communication protocol. It is the backbone of the interoperability
system. SOAP is a protocol described in XML and standardized by the W3C. It is an envelope that can be signed and may
contain data or attachments.

Sarah GRUHIER IDA Using the Web services 2018-07-30 2


It circulates over the HTTP protocol and allows remote method calls.

1.3. WSDL
Web Services Description Language (WSDL) is a standard description language. This is the interface presented to users. It
shows how to use the web service and how to interact with it. WSDL is XML-based and can accurately describe details
about the web service such as protocols, ports used, operations that can be performed, input and output message formats,
and exceptions that can be sent.

Source: https://openclassrooms.com/fr/courses/219329-les-services-web

IDA Webservices WSDL :

<?xml version="1.0"?>
<!-- part 1 : Definitions -->
<definitions name="idaWS" targetNamespace="urn:idaWS" xmlns:typens="urn:idaWS"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<!-- part 2 : Types-->
<types>
<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:idaWS"></xsd:schema>
<!-- For authenticate method -->
<xsd:complexType name="dataReturnedByAuthenticateMethod">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="Authenticate[]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>

Sarah GRUHIER IDA Using the Web services 2018-07-30 3


</xsd:complexType>
<xsd:complexType name="Authenticate">
<xsd:all>
<xsd:element minOccurs="1" maxOccurs="1" name="status" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="token" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="message" type="xsd:string" />
</xsd:all>
</xsd:complexType>
<!-- For importEod method -->
<xsd:complexType name="dataReturnedByeodMethod">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="eod[]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="eod">
<xsd:all>
<xsd:element minOccurs="1" maxOccurs="1" name="status" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="message" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="data" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="id_export" type="xsd:integer" />
</xsd:all>
</xsd:complexType>
<!-- For search method -->
<!--<xsd:complexType name='dataReturnedBySearchMethod'>
<xsd:complexContent mixed='false'>
<xsd:restriction base='soapenc:Array'>
<xsd:attribute wsdl:arrayType='Search[]' ref='soapenc:arrayType' />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name='Search'>
<xsd:all>
<xsd:element
minOccurs='1'
maxOccurs='1'
name='status'
type='xsd:string'/>
<xsd:element
minOccurs='1'
maxOccurs='1'
name='message'
type='xsd:string'/>
<xsd:element
minOccurs='1'
maxOccurs='1'
name='data'
type='xsd:string'/>
</xsd:all>
</xsd:complexType>-->
<!-- For search ref ida method -->
<xsd:complexType name="dataReturnedBysimplesearchMethod">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="simplesearch[]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="simplesearch">
<xsd:all>

Sarah GRUHIER IDA Using the Web services 2018-07-30 4


<xsd:element minOccurs="1" maxOccurs="1" name="status" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="message" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="data" type="xsd:string" />
</xsd:all>
</xsd:complexType>
<!-- For advancedsearch ref ida method -->
<xsd:complexType name="dataReturnedByadvancedsearchMethod">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="advancedsearch[]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="advancedsearch">
<xsd:all>
<xsd:element minOccurs="1" maxOccurs="1" name="status" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="message" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="data" type="xsd:string" />
</xsd:all>
</xsd:complexType>
<!-- For jobstatus method -->
<xsd:complexType name="dataReturnedByjobstatusMethod">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="jobstatus[]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="jobstatus">
<xsd:all>
<xsd:element minOccurs="1" maxOccurs="1" name="status" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="message" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="data" type="xsd:string" />
</xsd:all>
</xsd:complexType>
<!-- For jobvalidation method -->
<xsd:complexType name="dataReturnedByjobvalidationMethod">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="jobvalidation[]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="jobvalidation">
<xsd:all>
<xsd:element minOccurs="1" maxOccurs="1" name="status" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="message" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="data" type="xsd:string" />
</xsd:all>
</xsd:complexType>
<!-- For jobcancel method -->
<xsd:complexType name="dataReturnedByjobcancelMethod">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="jobcancel[]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="jobcancel">
<xsd:all>
<xsd:element minOccurs="1" maxOccurs="1" name="status" type="xsd:string" />

Sarah GRUHIER IDA Using the Web services 2018-07-30 5


<xsd:element minOccurs="1" maxOccurs="1" name="message" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="data" type="xsd:string" />
</xsd:all>
</xsd:complexType>
</types>
<!-- partie 3 : Message -->
<!-- Authenticate method -->
<message name="getAuthenticateRequest">
<part name="login" type="xsd:string" />
<part name="pwd" type="xsd:string" />
</message>
<message name="getAuthenticateResponse">
<part name="Result" type="dataReturnedByAuthenticateMethod" />
</message>
<!-- importEod method -->
<message name="geteodRequest">
<part name="token" type="xsd:string" />
<part name="fileXml" type="xsd:string" />
</message>
<message name="geteodResponse">
<part name="Result" type="dataReturnedByeodMethod" />
</message>
<!-- Search ref ida method -->
<message name="getsimplesearchRequest">
<part name="token" type="xsd:string" />
<part name="refIda" type="xsd:string" />
</message>
<message name="getsimplesearchResponse">
<part name="Result" type="dataReturnedBysimplesearchMethod" />
</message>
<!-- advancedsearch method -->
<message name="getadvancedsearchRequest">
<part name="token" type="xsd:string" />
<!--<part name="fileXml" type="xsd:string"/>-->
<part name="title" type="xsd:string" />
<part name="title_language" type="xsd:string" />
<part name="title_country" type="xsd:string" />
<part name="subtitle" type="xsd:string" />
<part name="fw_title" type="xsd:string" />
<part name="fw_subtitle" type="xsd:string" />
<part name="season" type="xsd:string" />
<part name="master" type="xsd:string" />
<part name="no_master" type="xsd:string" />
<part name="unitary_only" type="xsd:string" />
<part name="ads_only" type="xsd:string" />
<part name="episode_only" type="xsd:string" />
<part name="ref_epi" type="xsd:string" />
<part name="last_name" type="xsd:string" />
<part name="first_name" type="xsd:string" />
<part name="roles" type="xsd:string" />
<part name="ipi_data_sty" type="xsd:string" />
<part name="isan" type="xsd:string" />
<part name="no_isan" type="xsd:string" />
<part name="not_sent2isan" type="xsd:string" />
<part name="ref_ida" type="xsd:string" />
<part name="ref_ipinn" type="xsd:string" />
<part name="ref_pa_label" type="xsd:string" />
<part name="ref_pa_sty" type="xsd:string" />
<part name="work_ref_label" type="xsd:string" />
<part name="work_ref_sty" type="xsd:string" />
<part name="shooting_language" type="xsd:string" />

Sarah GRUHIER IDA Using the Web services 2018-07-30 6


<part name="prod_company" type="xsd:string" />
<part name="prod_country" type="xsd:string" />
<part name="year_min" type="xsd:string" />
<part name="year_max" type="xsd:string" />
<part name="initial_dest" type="xsd:string" />
<part name="exploitation_mode" type="xsd:string" />
<part name="min_min" type="xsd:string" />
<part name="sec_min" type="xsd:string" />
<part name="min_max" type="xsd:string" />
<part name="sec_max" type="xsd:string" />
<part name="keyword" type="xsd:string" />
<part name="preex_nature" type="xsd:string" />
<part name="work_enriched_from" type="xsd:string" />
<part name="work_enriched_until" type="xsd:string" />
<part name="work_enriched_sty" type="xsd:string" />
<part name="work_updated_from" type="xsd:string" />
<part name="work_updated_until" type="xsd:string" />
<part name="work_updated_sty" type="xsd:string" />
<part name="work_created_from" type="xsd:string" />
<part name="work_created_until" type="xsd:string" />
<part name="work_created_sty" type="xsd:string" />
<part name="link_type" type="xsd:string" />
<part name="work_status" type="xsd:string" />
<part name="distrib_right" type="xsd:string" />
</message>
<message name="getadvancedsearchResponse">
<part name="Result" type="dataReturnedByadvancedsearchMethod" />
</message>
<!-- jobstatus method -->
<message name="getjobstatusRequest">
<part name="token" type="xsd:string" />
<part name="jobId" type="xsd:string" />
<part name="type" type="xsd:string" />
</message>
<message name="getjobstatusResponse">
<part name="Result" type="dataReturnedByjobstatusMethod" />
</message>
<!-- jobvalidation method -->
<message name="getjobvalidationRequest">
<part name="token" type="xsd:string" />
<part name="jobId" type="xsd:string" />
</message>
<message name="getjobvalidationResponse">
<part name="Result" type="dataReturnedByjobvalidationMethod" />
</message>
<!-- jobcancel method -->
<message name="getjobcancelRequest">
<part name="token" type="xsd:string" />
<part name="jobId" type="xsd:string" />
</message>
<message name="getjobcancelResponse">
<part name="Result" type="dataReturnedByjobcancelMethod" />
</message>
<!-- part 4 : Port Type -->
<portType name="idaWSPort">
<!-- part 5 : Operation -->
<operation name="authenticate">
<input message="typens:getAuthenticateRequest" />
<output message="typens:getAuthenticateResponse" />
</operation>
<operation name="eod">

Sarah GRUHIER IDA Using the Web services 2018-07-30 7


<input message="typens:geteodRequest" />
<output message="typens:geteodResponse" />
</operation>
<operation name="simplesearch">
<input message="typens:getsimplesearchRequest" />
<output message="typens:getsimplesearchResponse" />
</operation>
<operation name="advancedsearch">
<input message="typens:getadvancedsearchRequest" />
<output message="typens:getadvancedsearchResponse" />
</operation>
<operation name="jobstatus">
<input message="typens:getjobstatusRequest" />
<output message="typens:getjobstatusResponse" />
</operation>
<operation name="jobvalidation">
<input message="typens:getjobvalidationRequest" />
<output message="typens:getjobvalidationResponse" />
</operation>
<operation name="jobcancel">
<input message="typens:getjobcancelRequest" />
<output message="typens:getjobcancelResponse" />
</operation>
</portType>
<!-- part 5 : Binding -->
<binding name="idaWSBinding" type="typens:idaWSPort">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
<operation name="authenticate">
<soap:operation soapAction="idaWSAction" />
<input name="getAuthenticateRequest">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</input>
<output name="getAuthenticateResponse">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</output>
</operation>
<operation name="eod">
<soap:operation soapAction="idaWSAction" />
<input name="geteodRequest">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</input>
<output name="geteodResponse">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</output>
</operation>
<operation name="simplesearch">
<soap:operation soapAction="idaWSAction" />
<input name="getsimplesearchRequest">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</input>
<output name="getsimplesearchResponse">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</output>
</operation>
<operation name="advancedsearch">

Sarah GRUHIER IDA Using the Web services 2018-07-30 8


<soap:operation soapAction="idaWSAction" />
<input name="getadvancedsearchRequest">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</input>
<output name="getadvancedsearchResponse">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</output>
</operation>
<operation name="jobstatus">
<soap:operation soapAction="idaWSAction" />
<input name="getjobstatusRequest">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</input>
<output name="getjobstatusResponse">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</output>
</operation>
<operation name="jobvalidation">
<soap:operation soapAction="idaWSAction" />
<input name="getjobvalidationsRequest">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</input>
<output name="getjobvalidationResponse">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</output>
</operation>
<operation name="jobcancel">
<soap:operation soapAction="idaWSAction" />
<input name="getjobcancelRequest">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</input>
<output name="getjobcancelResponse">
<soap:body use="encoded" namespace="urn:idaWS"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</output>
</operation>
</binding>
<!-- part 6 : Service -->
<service name="idaWSService">
<documentation>Web services of IDA</documentation>
<!-- part 8 : Port -->
<port name="idaWSPort" binding="typens:idaWSBinding">
<soap:address location="https://prod.ida-net.org/api.php" />
</port>
</service>
</definitions>

Sarah GRUHIER IDA Using the Web services 2018-07-30 9


1.4. XSD (XML Schema Definition)

XSD is a schema for an xml file. // L’utilisateur final du ws (developer) a t il besoin du XSD ? du WSDL ?

2. Basic Examples
This chapter describes the main IDA functionalities available through web services and the different methods available to
interact with IDA. The API is accessible through a standard HTTP request using the POST method by calling one of the
following URL:

For test purposes : https://test.ida-net.org/idaWS.wsdl

For production purposes: https://prod.ida-net.org/idaWS.wsdl

2.1. Authentication
The user will have to authenticate his connection to the API with the same couple of login / password used in IDA, to
generate a token that will be used to secure all calls to other methods.

For authentication, the client will have to call the URL in method POST:

Web-Service Method:

authenticate

Parameters to transmit:

login: Login of the IDA account

pwd: Password of the IDA account

Parameters returned:

status: true or false

token: alphanumeric string if status is true, null if not

message: message of confirmation or error

If the authentication is approved, then the token returned by the Web Service should systematically be used when calling
another webservice.

Call example:

<?xml version="1.0" encoding="UTF-8"?>


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

Sarah GRUHIER IDA Using the Web services 2018-07-30 10


xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:authenticate>
<login xsi:type="xsd:string">your_login</login>
<pwd xsi:type="xsd:string">your_password</pwd>
</ns1:authenticate>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Overview:

Sample response :

<?xml version="1.0" encoding="UTF-8"?>


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:authenticateResponse>
<Result xsi:type="ns2:Map">
<item>
<key xsi:type="xsd:string">status</key>
<value xsi:type="xsd:boolean">true</value>
</item>
<item>
<key xsi:type="xsd:string">token</key>
<value
xsi:type="xsd:string">bfd5d8b15d4e41ad12d11cc0b5e6781f369607225131b9ce9aa0597a18dc770c75b0126e20c7b2baa6c
5ce774dcee8c7964130a2d12d0af6e7fd82cf77cddf3179a231ea80114182318</value>
</item>
<item>
<key xsi:type="xsd:string">message</key>
<value xsi:type="xsd:string">Authentication ok.</value>
</item>

Sarah GRUHIER IDA Using the Web services 2018-07-30 11


</Result>
</ns1:authenticateResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

2.2. Simple search

In order to search an IDA work through its reference, the client will have to call the URL in method POST:

Web-Service Method:

simplesearch

Parameters to transmit:

token: The token returned by authentication method

refIDA: The IDA reference of the work

Parameters returned:

status: true or false

data: Full information on the IDA work structured as an EOD file (with a single work, see the xsd model
IDAWorkExchangeExport.xsd)

message: confirmation message or error message containing the error codes generated by IDA.

Call example :

<?xml version="1.0" encoding="UTF-8"?>


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:simplesearch>
<token
xsi:type="xsd:string">bfd5d8b15d4e41ad12d11cc0b5e6781f369607225131b9ce9aa0597a18dc770c75b0126e20c7b2baa6c
5ce774dcee8c7964130a2d12d0af6e7fd82cf77cddf3179a231ea80114182318</token>
<refIda xsi:type="xsd:string">314188000007</refIda>
</ns1:simplesearch>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Sample response :

<?xml version="1.0" encoding="UTF-8"?>


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>

Sarah GRUHIER IDA Using the Web services 2018-07-30 12


<ns1:simplesearchResponse>
<Result xsi:type="ns2:Map">
<item>
<key xsi:type="xsd:string">status</key>
<value xsi:type="xsd:boolean">false</value>
</item>
<item>
<key xsi:type="xsd:string">message</key>
<value xsi:type="xsd:string">An unknown error occured</value>
</item>
<item>
<key xsi:type="xsd:string">data</key>
<value xsi:type="xsd:string">id_export =&gt; 51155</value>
</item>
</Result>
</ns1:simplesearchResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

2.3. Advanced Search


The client will have to call the URL in method POST :

Web-Service Method:

authenticate

Parameters to transmit:

token: The token returned by authentication method

title: A title. If empty, nothing will be applied

title_language: At standard format (Example : FR) . If empty, nothing will be applied

title_country: At standard format (Example : FR) . If empty, nothing will be applied

subtitle: A subtitle. If empty, nothing will be applied

fw_title: Empty or 1. If empty, nothing will be applied

fw_subtitle: empty or 1. If empty, nothing will be applied

season: A year (Example : 2016) . If empty, nothing will be applied

master: Empty or 1. If empty, nothing will be applied

no_master: Empty or 1. If empty, nothing will be applied

unitary_only: Empty or 1. If empty, nothing will be applied

ads_only: Empty or 1. If empty, nothing will be applied

episode_only: Empy or 1. If empty, nothing will be applied

ref_epi: A reference of an episode. If empty, nothing will be applied

Sarah GRUHIER IDA Using the Web services 2018-07-30 13


last_name: The last name of the right owner / participant. If empty, nothing will be applied

first_name: The first name of right owner / participant. If empty, nothing will be applied

roles: At standard format (Example : MC) If several roles, the roles must be separated by a ; (Example : MC;LY) . If
empty, nothing will be applied

ipi_data_sty: At standard format (Example : 056) . If empty, nothing will be applied

isan: A reference isan. If empty, nothing will be applied

no_isan: Empty or 1. If empty, nothing will be applied

not_sent2isan: Empty or 1. If empty, nothing will be applied

ref_ida: A reference IDA. If empty, nothing will be applied

ref_ipinn: An ipi number. If empty, nothing will be applied

ref_pa_label: A reference. If empty, nothing will be applied

ref_pa_sty: At standard format (Example : 056) . If empty, nothing will be applied

work_ref_label: A reference. If empty, nothing will be applied

work_ref_sty: At standard format (Example : 056) . If empty, nothing will be applied

shooting_language: At standard format and must be contained the code for the language and the country in this
order with | as separator ( Example : AA|FR) If several combination, the combinations must be separated by a ;
(Example : AA|FR;AB|AF) . If empty, nothing will be applied

prod_company: A production company. If empty, nothing will be applied

prod_country: At standard format 5example : FR) If several production countries, the countries must be separated
by a ; (Example : FR;AF) . If empty, nothing will be applied

year_min: A year (Example : 1996) . If empty, nothing will be applied

year_max: A year (Example : 1996) . If empty, nothing will be applied

initial_dest: At standard format (Example : CINE) . If empty, nothing will be applied

exploitation_mode: At standard format (Example : CINE) If several exploitation modes, the used codes must be
separated by a ; (Example : CINE;TELE) . If empty, nothing will be applied

min_min: A number. If empty, nothing will be applied

sec_min: A number. If empty, nothing will be applied

min_max: A number. If empty, nothing will be applied

sec_max: A number. If empty, nothing will be applied

keyword: At standard format (Example : FF) If several keywords, its must be separated by a ; (Example : FF;SH) . If
empty, nothing will be applied

preex_nature: At standard format (Example : LW) . If empty, nothing will be applied

work_enriched_from: A date at format YYYY/MM/DD (Example : 2018/01/01) . If empty, nothing will be applied

Sarah GRUHIER IDA Using the Web services 2018-07-30 14


work_enriched_until: A date at format YYYY/MM/DD (Example : 2018/01/01) . If empty, nothing will be applied

work_enriched_sty: At standard format (Example : 056) . If empty, nothing will be applied

work_updated_from: A date at format YYYY/MM/DD (Example : 2018/01/01) . If empty, nothing will be applied

work_updated_until: A date at format YYYY/MM/DD (Example : 2018/01/01) . If empty, nothing will be applied

work_updated_sty: At standard format (Example : 056) . If empty, nothing will be applied

work_created_from: A date at format YYYY/MM/DD (Example : 2018/01/01) . If empty, nothing will be applied

work_created_until: A date at format YYYY/MM/DD (Example : 2018/01/01) . If empty, nothing will be applied

work_created_sty: At standard format (Example : 056) . If empty, nothing will be applied

link_type: At standard format (Example : DUP) . If empty, nothing will be applied

work_status: Must be valid or deleted or duplicate. If empty, valid will be applied

distrib_right: Must be LESS_100 or MORE_100. If empty, nothing will be applied

Parameters returned:

status: true or false

data: If the number of results <=1000: the link to the XML file created. If the number of result>1000, just a
message of confirmation

message: confirmation message or error message containing the error codes generated by IDA.

Call example :

++ AJOUT

<?xml version="1.0" encoding="UTF-8"?>


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:advancedsearch>
<token
xsi:type="xsd:string">bfd5d8b15d4e41ad12d11cc0b5e6781f369607225131b9ce9aa0597a18dc770c75b0126e20c7b2baa6c
5ce774dcee8c7964130a2d12d0af6e7fd82cf77cddf3179a231ea80114182318</token>
<title xsi:type="xsd:string">test</title>
<title_language xsi:type="xsd:string"/>
<title_country xsi:type="xsd:string"/>
<subtitle xsi:type="xsd:string"/>
<fw_title xsi:type="xsd:string"/>
<fw_subtitle xsi:type="xsd:string"/>
<season xsi:type="xsd:string"/>
<master xsi:type="xsd:string"/>
<no_master xsi:type="xsd:string"/>
<unitary_only xsi:type="xsd:string"/>
<ads_only xsi:type="xsd:string"/>
<episode_only xsi:type="xsd:string"/>

Sarah GRUHIER IDA Using the Web services 2018-07-30 15


<ref_epi xsi:type="xsd:string"/>
<last_name xsi:type="xsd:string"/>
<first_name xsi:type="xsd:string"/>
<roles xsi:type="xsd:string"/>
<ipi_data_sty xsi:type="xsd:string"/>
<isan xsi:type="xsd:string"/>
<no_isan xsi:type="xsd:string"/>
<not_sent2isan xsi:type="xsd:string"/>
<ref_ida xsi:type="xsd:string"/>
<ref_ipinn xsi:type="xsd:string"/>
<ref_pa_label xsi:type="xsd:string"/>
<ref_pa_sty xsi:type="xsd:string"/>
<work_ref_label xsi:type="xsd:string"/>
<work_ref_sty xsi:type="xsd:string"/>
<shooting_language xsi:type="xsd:string"/>
<prod_company xsi:type="xsd:string"/>
<prod_country xsi:type="xsd:string"/>
<year_min xsi:type="xsd:string"/>
<year_max xsi:type="xsd:string"/>
<initial_dest xsi:type="xsd:string"/>
<exploitation_mode xsi:type="xsd:string"/>
<min_min xsi:type="xsd:string"/>
<sec_min xsi:type="xsd:string"/>
<min_max xsi:type="xsd:string"/>
<sec_max xsi:type="xsd:string"/>
<keyword xsi:type="xsd:string"/>
<preex_nature xsi:type="xsd:string"/>
<work_enriched_from xsi:type="xsd:string"/>
<work_enriched_until xsi:type="xsd:string"/>
<work_enriched_sty xsi:type="xsd:string"/>
<work_updated_from xsi:type="xsd:string"/>
<work_updated_until xsi:type="xsd:string"/>
<work_updated_sty xsi:type="xsd:string"/>
<work_created_from xsi:type="xsd:string"/>
<work_created_until xsi:type="xsd:string"/>
<work_created_sty xsi:type="xsd:string"/>
<link_type xsi:type="xsd:string"/>
<work_status xsi:type="xsd:string"/>
<distrib_right xsi:type="xsd:string"/>
</ns1:advancedsearch>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Sample response :

<?xml version="1.0" encoding="UTF-8"?>


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:advancedsearchResponse>

Sarah GRUHIER IDA Using the Web services 2018-07-30 16


<Result xsi:type="ns2:Map">
<item>
<key xsi:type="xsd:string">status</key>
<value xsi:type="xsd:boolean">true</value>
</item>
<item>
<key xsi:type="xsd:string">message</key>
<value xsi:type="xsd:string">Your export is in treatment</value>
</item>
<item>
<key xsi:type="xsd:string">data</key>
<value xsi:type="xsd:int">51152</value>
</item>
</Result>
</ns1:advancedsearchResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

++ AJOUT

2.4. Export on Demand


The client will have to call the URL in method POST :

For test purposes: https://test.ida-net.org/idaWS.wsdl

For production purposes: https://prod.ida-net.org/idaWS.wsdl

The user can call 4 methods:

- A method for executing EOD operations returning a Job ID

- A method for inquiring the Job status

- A method for validating the Job

- A method for canceling the Job

Web-Service Method :

eod (the method for executing EOD operations returning a Job ID)

Parameters to transmit:

token: The token returned by authentication method

fileXml: The content of xml file usually used to execute an eod on interface (different xsd models can be used:
IDAWorkExchange.xsd, IDAWorkExchangeAdd.xsd, IDAWorkExchangeUpdate.xsd,
IDAWorkExchangeDelete.xsd)

Parameters returned:

status: true or false

data: an ID for the Job created for this EOD

Sarah GRUHIER IDA Using the Web services 2018-07-30 17


message: confirmation message (file is under treatment) or error message containing the error codes generated by
IDA.

Depending on the fileXml used you can research (using EOD criteria), update (FbF), add or remove works in IDA.

Call example :

++AJOUT

<?xml version="1.0" encoding="UTF-8"?>


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:eod>
<token
xsi:type="xsd:string">bfd5d8b15d4e41ad12d11cc0b5e6781f369607225131b9ce9aa0597a18dc770c75b0126e20c7b2baa6c
5ce774dcee8c7964130a2d12d0af6e7fd82cf77cddf3179a231ea80114182318</token>
<fileXml xsi:type="xsd:string"><?xml version="1.0" encoding="UTF-8"?><EXPORT_CRITERIA
xsi:schemaLocation="http://tempuri.org/ExportOnDemand.xsd ExportOnDemand.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><QUERY
STD_SOCIETY="314"><REFERENCE><REF_IDA>145170010243</REF_IDA></REFERENCE></QUERY></EXPORT_CRITERIA></fi
leXml>
</ns1:eod>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Sample response :

<?xml version="1.0" encoding="UTF-8"?>


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:eodResponse>
<Result xsi:type="ns2:Map">
<item>
<key xsi:type="xsd:string">status</key>
<value xsi:type="xsd:boolean">true</value>
</item>
<item>
<key xsi:type="xsd:string">message</key>
<value xsi:type="xsd:string">Your file is in treatment.[NoTrad]</value>
</item>
<item>
<key xsi:type="xsd:string">data</key>
<value xsi:type="xsd:int">51153</value>
</item>
</Result>

Sarah GRUHIER IDA Using the Web services 2018-07-30 18


</ns1:eodResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

++AJOUT

Web-Service Method:

jobstatus (the method for inquiring the Job status)

Parameters to transmit:

token: The token returned by authentication method

jobid: The ID of the Job created with the first Web Service

type: The type of the Job created with the first Web Service (Example : import ou export)

Parameters returned:

status: true or false

data: the link to the XML file created if the Job is finished or link to the report file if the Job needs validation

message: confirmation message (treatment is over), validation message (validation is needed) or error message
containing the error codes generated by IDA.

Call example :

++AJOUT

<?xml version="1.0" encoding="UTF-8"?>


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:jobstatus>
<token
xsi:type="xsd:string">bfd5d8b15d4e41ad12d11cc0b5e6781f369607225131b9ce9aa0597a18dc770c75b0126e20c7b2baa6c
5ce774dcee8c7964130a2d12d0af6e7fd82cf77cddf3179a231ea80114182318</token>
<jobId xsi:type="xsd:string">51153</jobId>
<type xsi:type="xsd:string">export</type>
</ns1:jobstatus>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Sample response :

<?xml version="1.0" encoding="UTF-8"?>

Sarah GRUHIER IDA Using the Web services 2018-07-30 19


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:jobstatusResponse>
<Result xsi:type="ns2:Map">
<item>
<key xsi:type="xsd:string">status</key>
<value xsi:type="xsd:boolean">true</value>
</item>
<item>
<key xsi:type="xsd:string">message</key>
<value xsi:type="xsd:string">Your export is done.</value>
</item>
<item>
<key xsi:type="xsd:string">data</key>
<value xsi:type="xsd:string">https://prod.ida-net.org/index.php?
section=file&amp;from=job_export&amp;action=download&amp;file=exportByWs-20180806111143_2018-08-
06_111158.zip&amp;std_sty=132</value>
</item>
</Result>
</ns1:jobstatusResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Web-Service Method:

jobvalidation (the method for validating the Job )

Parameters to transmit:

token: The token returned by authentication method

jobid: The ID of the Job created with the first Web Service

Parameters returned:

status: true or false

data: null

message: confirmation message or error message containing the error codes generated by IDA.

Call example :

++AJOUT

<?xml version="1.0" encoding="UTF-8"?>


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:jobvalidation>

Sarah GRUHIER IDA Using the Web services 2018-07-30 20


<token
xsi:type="xsd:string">bfd5d8b15d4e41ad12d11cc0b5e6781f369607225131b9ce9aa0597a18dc770c75b0126e20c7b2baa6c
5ce774dcee8c7964130a2d12d0af6e7fd82cf77cddf3179a231ea80114182318</token>
<jobId xsi:type="xsd:string">13188</jobId>
</ns1:jobvalidation>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Sample response :

<?xml version="1.0" encoding="UTF-8"?>

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"


xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:jobvalidationResponse>
<Result xsi:type="ns2:Map">
<item>
<key xsi:type="xsd:string">status</key>
<value xsi:type="xsd:boolean">true</value>
</item>
<item>
<key xsi:type="xsd:string">message</key>
<value xsi:type="xsd:string">The import has been validated</value>
</item>
<item>
<key xsi:type="xsd:string">data</key>
<value xsi:type="xsd:string"/>
</item>
</Result>
</ns1:jobvalidationResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Web-Service Method:

jobcancel (the method for canceling the Job)

Parameters to transmit:

token: The token returned by authentication method

jobid: The ID of the Job created with the first Web Service

Parameters returned:

status: true or false

data: null

message: confirmation message or error message containing the error codes generated by IDA.

Sarah GRUHIER IDA Using the Web services 2018-07-30 21


Call example :

<?xml version="1.0" encoding="UTF-8"?>


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:jobcancel>
<token
xsi:type="xsd:string">bfd5d8b15d4e41ad12d11cc0b5e6781f369607225131b9ce9aa0597a18dc770c75b0126e20c7b2baa6c
5ce774dcee8c7964130a2d12d0af6e7fd82cf77cddf3179a231ea80114182318</token>
<jobId xsi:type="xsd:string">13187</jobId>
</ns1:jobcancel>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Sample response :

<?xml version="1.0" encoding="UTF-8"?>

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:idaWS"


xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:jobcancelResponse>
<Result xsi:type="ns2:Map">
<item>
<key xsi:type="xsd:string">status</key>
<value xsi:type="xsd:boolean">true</value>
</item>
<item>
<key xsi:type="xsd:string">message</key>
<value xsi:type="xsd:string">The import has been canceled</value>
</item>
<item>
<key xsi:type="xsd:string">data</key>
<value xsi:type="xsd:string"/>
</item>
</Result>
</ns1:jobcancelResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

The operations through Web Services will also appear on the IDA interface:

- A new line will appear on section import of IDA’s interface when the process of import begins.

- As soon as the process is over, the log file appears on IDA interface and the client can validate or not his import or
download the EOD file.

Sarah GRUHIER IDA Using the Web services 2018-07-30 22


3. Best practices
3.1. Importance of accurate data and key documents
Information is registered only once and remains the same all along the value chain which reduces the errors in the
identification process of AV works and its right owners.

Information can be added, updated or deleted; but the user has to respect the working rules.

The IDA CMO member commit to ensure the optimal quality of works documentation stored in IDA. Quality of information
means both accurate and compliant with IDA standards.

Key documents: IDA Nomenclature // IDA Mandatory fields // IDA Best practices // IDA Business rules

All IDA-related documents can be found on the IDA website: www.ida-net.org

3.2. IDA Contacts


For any suggestions or questions about IDA or this document, please contact: [email protected]

3.3. Do’s and Don’ts

Do

Don’t

Sarah GRUHIER IDA Using the Web services 2018-07-30 23

You might also like