Search by filter
Information
This API allow you to search for an invoice by powerful filter criteria.
This endpoint is
synchronous
The role
user
is needed in order to use this endpointEndpoints
GET/v1/invoice/search
Query parameters
qstring - OptionalRefer to page filter
expandarray - Optional
limitnumber (int) - Optional
Request
GET /v1/invoice/search
- bash
- javascript
- .NET
curl -X 'GET'
https://api.ppd.iopole.fr//v1/invoice/search?q=invoice.buyer.name%3A%2A'
-H 'accept: application/json'
-H 'Authorization: Bearer ${token}'
const got = require('got');
const token = 'your_token_here';
const query = 'invoice.buyer.name:*';
(async () => {
try {
const response = await got(`https://api.ppd.iopole.fr//v1/invoice/search?q=${encodeURIComponent(query)}`, {
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 query = "invoice.buyer.name:*";
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/invoice/search?q={Uri.EscapeDataString(query)}");
response.EnsureSuccessStatusCode();
var responseString = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseString);
}
catch (HttpRequestException ex)
{
Console.WriteLine("Request error: {ex.Message}");
}
}
}
Response
Status: 200 - application/json
Description: Invoices id list received from given criteria
Schema:
Status: 401
Description: Unauthorized - Authentication is required and has failed or has not yet been provided.
Status: 403
Description: Forbidden - The server understood the request, but it refuses to authorize it. Note: This endpoint requires an admin account.
Example
Common use case
Give me all invoice not yet delivered
invoiceState:DELIVERY_PENDING
Give me all invoices delivered between 2023-07-31 11:07:04 and 2024-08-01 01:07:04
invoice.deliveryState:DELIVERED AND (invoice.createdDate:>"2023-07-31 11:07:04" AND invoice.createdDate:<="2024-08-01 01:07:04")
Give me only received invoice
invoice.direction:INBOUND
Give me buyer with corporate name that starts by ART or siret containing 123456789
invoice.buyer.name:ART* OR invoice.buyer.siret:*123456789*