Search by fulltext
Information
This API is useful when you are looking for information about a company in all Iopole's networks.
The way to find a company is based on a unique fulltext query parameter.
The response provided by the API is an array that includes all the directory entries matching the search criteria provided by the user.
Link to swaggerThis endpoint is
synchronous
The role
user
is needed in order to use this endpointEndpoints
GET/v1/directory
Query parameters
value string - Required
- Anything like corporate name (like)
- Match siren (=)
- Match siret (=)
- Match address code (=)
- Match routing code (=)
offset integer - Optional - default 0
The number of records to skip before starting to return results. This is used to specify the starting point of the results to be fetched.
limit integer - Optional default 50
The maximum number of records to return.
Request
GET /v1/directory
- bash
- javascript
- .NET
curl -X 'GET'
'https://api.ppd.iopole.fr//v1/directory/fr/search?value=922304308&limit=50'
-H 'accept: application/json'
-H 'Authorization: Bearer ${token}'
const got = require('got');
const token = 'your_token_here';
const value = '922304308';
const limit = 50;
(async () => {
try {
const response = await got(`https://api.ppd.iopole.fr//v1/directory?value=${value}&limit=${limit}`, {
headers: {
'accept': 'application/json',
'Authorization': `Bearer ${token}`,
},
responseType: 'json',
});
console.log(response.body);
} catch (error) {
console.error(error.response.body);
}
})();
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
var token = "your_token_here";
var value = "922304308";
var limit = 50;
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("accept", "application/json");
client.DefaultRequestHeaders.Add("Authorization", "Bearer ${token}");
try
{
var response = await client.GetAsync(`https://api.ppd.iopole.fr//v1/directory?value={value}&limit={limit}`);
response.EnsureSuccessStatusCode();
var responseString = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseString);
}
catch (HttpRequestException ex)
{
Console.WriteLine("Request error: {ex.Message}");
}
}
}
Response
200 OK
[{
"source": "French Directory",
"directoryId": "591843c4-f0d0-48f5-ad6b-39b2af17a4e5",
"country": "FR",
"name": "IOPOLE",
"electronicAddress": null,
"entity": {
"siren": "922304308",
"siret": "92230430800013",
"routingCode": null,
"routingCodeType": null,
"entityType": "Assujetti",
"status": "ACTIVE"
}
},
{
"source": "Peppol Directory",
"directoryId": "0225:666777888_66677788812345",
"country": "FR",
"name": "IOP Test 1",
"electronicAddress": "0225:666777888_66677788812345"
}]
Workflow
- get authentication token (/oauth/token)
- search on directory (/directory)
Exemple Requête
https://api.ppd.iopole.fr//v1/directory?value=IOPOLE
Réponse OK
List of directory entries matching the search criteria
[{
"source": "French Directory",
"directoryId": "591843c4-f0d0-48f5-ad6b-39b2af17a4e5",
"country": "FR",
"name": "IOPOLE",
"electronicAddress": null,
"entity": {
"siren": "922304308",
"siret": "92230430800013",
"routingCode": null,
"routingCodeType": null,
"entityType": "Assujetti",
"status": "ACTIVE"
}
},
{
"source": "Peppol Directory",
"directoryId": "0225:666777888_66677788812345",
"country": "FR",
"name": "IOP Test 1",
"electronicAddress": "0225:666777888_66677788812345"
}]
Few more example
Description
All companies containing ARTEXA
in their name
Request
[GET]: https://api.ppd.iopole.fr//v1/directory?value=artexa
Response
[
{
"source": "French Directory",
"directoryId": "3c5ecba5-21a1-4e22-a8e3-baa5d0b3df94",
"country": "FR",
"name": "ARTEXA",
"electronicAddress": null,
"entity": {
"siren": "844693481",
"siret": "84469348100013",
"routingCode": null,
"routingCodeType": null,
"entityType": "Assujetti",
"status": "ACTIVE"
}
},
{
"source": "French Directory",
"directoryId": "76033cc3-ccce-4994-845f-9a13d6b689a3",
"country": "FR",
"name": "ARTEXA GRAND PARIS",
"electronicAddress": null,
"entity": {
"siren": "810190660",
"siret": "81019066000011",
"routingCode": null,
"routingCodeType": null,
"entityType": "Assujetti",
"status": "ACTIVE"
}
},
{
"source": "French Directory",
"directoryId": "4880db88-8b2a-4258-b2e2-807d4fad2faf",
"country": "FR",
"name": "ARTEXA GRAND PARIS",
"electronicAddress": null,
"entity": {
"siren": "810190660",
"siret": "81019066000029",
"routingCode": null,
"routingCodeType": null,
"entityType": "Assujetti",
"status": "ACTIVE"
}
},
{
"source": "French Directory",
"directoryId": "d53ce077-0e9f-482b-b36e-9d3c5c51209b",
"country": "FR",
"name": "SARL PARTEXAL",
"electronicAddress": null,
"entity": {
"siren": "339995987",
"siret": "33999598700023",
"routingCode": null,
"routingCodeType": null,
"entityType": "Assujetti",
"status": "ACTIVE"
}
},
{
"source": "French Directory",
"directoryId": "814385f6-9620-4235-800d-56d916e949cd",
"country": "FR",
"name": "SARL PARTEXAL",
"electronicAddress": null,
"entity": {
"siren": "339995987",
"siret": "33999598700031",
"routingCode": null,
"routingCodeType": null,
"entityType": "Assujetti",
"status": "ACTIVE"
}
},
{
"source": "French Directory",
"directoryId": "5610b17f-8c2f-4b05-8ef3-260f807bffd8",
"country": "FR",
"name": "SARL PARTEXAL",
"electronicAddress": null,
"entity": {
"siren": "339995987",
"siret": "33999598700049",
"routingCode": null,
"routingCodeType": null,
"entityType": "Assujetti",
"status": "ACTIVE"
}
}
]