Get Many Sessions
Endpoint Overview
This API endpoint is designed to retrieve information about multiple sessions from the Juleb ERP system. It allows you to efficiently fetch data for a group of sessions in a single request, rather than making individual requests for each session.
Endpoint Details
- Method: GET
- URL:
/api/v1/pos/session
Parameters
- Path Parameters: None
- Query Parameters:
fields(string, not required): Fields to include in the response separated by comma. If not provided, all fields are returned.filter(string, not required): Apply conditions to filter the data returned.limit(integer, not required): Limit the number of records returned. Default is 10, Max is 1000.page(integer, not required): Page the records returned. Default is 1.
Response
- 200 OK: Successfully retrieved the record.
- 400 Bad Request: Invalid parameters.
- 401 Unauthorized: Authentication required.
Response Body
{
"data": [
...records
],
"meta": {
"count": integer,
"total": integer
},
"pagination": {
"previousPage": integer | null,
"currentPage": integer,
"nextPage": integer | null,
"totalPages": integer
}
}
Example
Request
- NodeJS
- curl
- python
- java
curl -X GET \
-H "accept: */*" \
-H "Authorization: Bearer $API_KEY" \
"https://$ACCOUNT_NAME.juleb.com/api/v1/pos/session?fields=name%2Cconfig_id%2Cstate%2Cuser_id&filter=state%21%3Dclosed&page=2&limit=10"
const axios = require('axios');
const accountName = process.env.ACCOUNT_NAME;
const apiKey = process.env.API_KEY;
axios.get(`https://${accountName}.juleb.com/api/v1/pos/session`, {
headers: {
'accept': '*/*',
'Authorization': `Bearer ${apiKey}`
},
params: {
fields: 'name,config_id,state,user_id',
filter: 'state!=closed',
page: 2,
limit: 10
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error('Error:', error);
});
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
public class Main {
public static void main(String[] args) throws Exception {
String accountName = System.getenv("ACCOUNT_NAME");
String apiKey = System.getenv("API_KEY");
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(new URI("https://" + accountName + ".juleb.com/api/v1/pos/session?fields=name,config_id,state,user_id&filter=state!=closed&page=2&limit=10"))
.header("accept", "*/*")
.header("Authorization", "Bearer " + apiKey)
.GET()
.build();
HttpResponse<String> response = client.send(request, BodyHandlers.ofString());
if (response.statusCode() == 200) {
System.out.println(response.body());
} else {
System.out.println("Error: " + response.statusCode() + ", " + response.body());
}
}
}
import os
import requests
account_name = os.getenv('ACCOUNT_NAME')
api_key = os.getenv('API_KEY')
url = f'https://{account_name}.juleb.com/api/v1/pos/session'
headers = {
'accept': '*/*',
'Authorization': f'Bearer {api_key}'
}
params = {
'fields': 'name,config_id,state,user_id',
'filter': 'state!=closed',
'page': 2,
'limit': 10
}
response = requests.get(url, headers=headers, params=params)
if response.status_code == 200:
print(response.json())
else:
print(f'Error: {response.status_code}', response.text)
Response
{
"data": [
{
"name": "POS/01723",
"config_id": 13,
"state": "opened",
"user_id": 676
},
{
"name": "POS/01725",
"config_id": 351,
"state": "opened",
"user_id": 2
},
{
"name": "POS/01726",
"config_id": 3,
"state": "opened",
"user_id": 2
},
{
"name": "POS/01714",
"config_id": 36,
"state": "opened",
"user_id": 454
},
{
"name": "POS/01724",
"config_id": 6,
"state": "opened",
"user_id": 52
},
{
"name": "POS/01715",
"config_id": 154,
"state": "opened",
"user_id": 52
},
{
"name": "POS/01553",
"config_id": 346,
"state": "opened",
"user_id": 52
},
{
"name": "POS/00492",
"config_id": 51,
"state": "opened",
"user_id": 172
},
{
"name": "POS/01716",
"config_id": 542,
"state": "opened",
"user_id": 52
},
{
"name": "POS/00848",
"config_id": 306,
"state": "new_session",
"user_id": 52
}
],
"meta": {
"count": 10,
"total": 41
},
"pagination": {
"previousPage": 1,
"currentPage": 2,
"nextPage": 3,
"totalPages": 5
}
}