API Key
In order to use the API, you need an API key. The API key is required to do any query through the API. You can get an API key by going to the “Toolbox” section of your account and completing the API form. Three kinds of API keys are available : Partner API key, Developer API Key, Business API key. Depending on the API key you have, some methods may not be available. Take a look at the chart below to review the methods available to you. It is possible to have multiple API keys. Each application created must be associated with a different API key.
Term of Use
The API terms of Use governs the rights and conditions in which each API may be used. Please review the API Term of Use for the appropriate API before using it.
Encoding
The Fotolia API requires all data to be UTF-8 encoded. More information about UTF-8 encoding
Authentication
Some methods need to be authenticated (see table below). Authentication is only available for Developer and Business API. The process of authentication is equivalent to login process to the Fotolia website. The login and password must be sent securely through the API and when authenticated a session ID will be provided. This session ID will then be needed to use methods with authentication. For more information about authentication, please take a look at methodloginUser method.
Methods
Methods make it possible to execute different functions through the API. The following table gives information about the methods available within each API Type. Other methods will be soon be added.
| Methods | Partner API | Business API | Developer API | Reseller API | Authentication | Description |
|---|---|---|---|---|---|---|
| Search | ||||||
| getSearchResults | ![]() |
![]() |
![]() |
![]() |
no | full search capabilities |
| getCategories1 | ![]() |
![]() |
![]() |
![]() |
no | return representative categories |
| getCategories2 | ![]() |
![]() |
![]() |
![]() |
no | return conceptual categories |
| getTags | ![]() |
![]() |
![]() |
![]() |
no | return tag cloud |
| getGalleries | ![]() |
![]() |
![]() |
![]() |
no | return public galleries |
| getColors | ![]() |
![]() |
![]() |
![]() |
no | return color scheme |
| getCountries | ![]() |
![]() |
![]() |
![]() |
no | return countries list |
| Media | ||||||
| getMediaData | ![]() |
![]() |
![]() |
![]() |
no | return all information about a media |
| getMediaGalleries | ![]() |
![]() |
![]() |
![]() |
no | return galleries attached to a media |
| getMedia | ![]() |
![]() |
![]() |
![]() |
yes | return download link (media purchase) |
| getMediaComp | ![]() |
![]() |
![]() |
![]() |
no | return url of the comp image |
| User | ||||||
| loginUser | ![]() |
![]() |
![]() |
![]() |
no | log a user (needed for authentification) |
| logoutUser | ![]() |
![]() |
![]() |
![]() |
yes | log out a user (kill session) |
| getUserData | ![]() |
![]() |
![]() |
![]() |
yes | return information about the logged user |
| getUserStats | ![]() |
![]() |
![]() |
![]() |
yes | return account statistics of the logged user |
| getUserGalleries | ![]() |
![]() |
![]() |
![]() |
yes | retun galleries of the logged user |
| getUserGalleryMedias | ![]() |
![]() |
![]() |
![]() |
yes | return the lightbox/gallery content of a logged user |
| deleteUserGallery | ![]() |
![]() |
![]() |
![]() |
yes | Delete a gallery from the logged user |
| createUserGallery | ![]() |
![]() |
![]() |
![]() |
yes | create a new gallery for the logged user |
| addToUserGallery | ![]() |
![]() |
![]() |
![]() |
yes | add a content to a gallery of the logged user |
| removeFromUserGallery | ![]() |
![]() |
![]() |
![]() |
yes | remove a content from a galley of the logged user |
| getUserAdvancedStats | ![]() |
![]() |
![]() |
![]() |
yes | return advanced account statistics of the logged user |
| Main | ||||||
| getData | ![]() |
![]() |
![]() |
![]() |
no | retun general information about Fotolia |
| test | ![]() |
![]() |
![]() |
![]() |
no | return success |
| Reseller API | ||||||
| user.subaccount.getIds | ![]() |
![]() |
![]() |
![]() |
no | Returns an array of all available subaccount IDs |
| user.subaccount.create | ![]() |
![]() |
![]() |
![]() |
no | Create a reseller subaccount |
| user.subaccount.delete | ![]() |
![]() |
![]() |
![]() |
no | Delete a reseller subaccount |
| user.subaccount.edit | ![]() |
![]() |
![]() |
![]() |
no | Update data of a reseller subaccount |
| user.subaccount.get | ![]() |
![]() |
![]() |
![]() |
no | Get reseller subaccount details |
| user.subaccount.getPurchasedContents | ![]() |
![]() |
![]() |
![]() |
no | Get the list of purchases made by a subaccount |
| media.getLicense | ![]() |
![]() |
![]() |
![]() |
no | Get the licence between the reseller and his customer for a specific sale. |
Query Format
XML/RPC
XML/RPC format is available for query/response. XML-RPC is a Remote Procedure Calling protocol that works over the Internet. An XML-RPC message is an HTTP-POST request. The body of the request is in XML. A procedure executes on the server and the value it returns is also formatted in XML. more information about XML/RPC
Header
POST /Xmlrpc/rpc HTTP/1.0
Host: api.fotolia.com
Connection: close
Content-Type: text/xml
Content-Length: 569
Query Example
<?xml version="1.0" encoding="utf-8"?>
<methodCall>
<methodName>xmlrpc.test</methodName>
<params>
<param>
<value>
<string>YOUR_API_KEY</string>
</value>
</param>
</params>
</methodCall>
Response Example
<?xml version="1.0" encoding="UTF-8"?>
<methodResponse>
<params>
<param>
<value>
<struct>
<member>
<name>test</name>
<value>
<string>Success</string>
</value>
</member>
</struct>
</value>
</param>
</params>
</methodResponse>
API Kits
You can use a kit in order to help simplify the way you use the API. Here is the list of kits available. If you want to propose your kit, feel free to contact us and we will be happy to redirect to your site.



Fotolia US
Fotolia España
Fotolia France
Fotolia UK
Fotolia Deutschland
Fotolia Italia
Fotolia Portugal
Fotolia Brasil
Fotolia 日本