Note: The Elvis SOAP Web service has been deprecated. It remains available to allow existing third-party applications or integrations to stay compatible with newer Elvis Server versions. We advise to use the REST API for any new developments.
The main purpose of the Assets Server SOAP webservice is to allow third-party applications or customizations to talk to the backend of the Assets Server.
Some examples of operations that can be performed through the webservice:
- Search the system for assets matching a specific query.
- Basic information, metadata and URLs for thumbnails, previews and original are returned
- Retrieve asset metadata and optionally the original file as attachment
- Originals, previews and thumbnails can already be returned over HTTP through the webapp, the URLs are included in the hits returned by a search
- Search relations
- Find relations for a given asset.
- The returned relations contain relation specific relation information (type, metadata) and information regarding the related asset (see search content).
- Import assets, including relations between these or existing assets
- Add/Update single pieces of content
- Create/Remove relations between assets in the system
- Remove assets based on a query or;
- Remove a single folder including subfolders
- Move folders or sets of assets
- Copy folders or sets of assets
The WSDL provides detailed technical information on how to communicate with the Assets Server webservice.
To access the WSDL webservice description file for the Assets Server service, open the following URL:
Detailed documentation is provided inside the WSDL.
soapUIA great way to learn and experiment with the Assets Server SOAP API is to use the open-source tool soapUI. This tool analyses the Assets Server WSDL and generates sample requests that you can execute directly from the application and the resulting response. soapUI offers an easy way of playing with the Assets Server SOAP API and allows you to quickly gain insight in Assets Server SOAP requests, responses and how you can use that information in your own application.
The basic soap request contains an envelope with a header and body.
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope 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/" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header> <wsse:Security>...</wsse:Security> </soapenv:Header> <soapenv:Body> .... </soapenv:Body> </soapenv:Envelope>
When sending a SOAP request to the Assets Server webservice you need to specify a valid username and password to authenticate the request.
<soapenv:Header> <wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <wsse:UsernameToken> <wsse:Username>...</wsse:Username> <wsse:Password>...</wsse:Password> </wsse:UsernameToken> </wsse:Security> </soapenv:Header>