Get Many Companies
Endpoint Overview
This API endpoint is designed to retrieve information about multiple companies from the Juleb ERP system. It allows you to efficiently fetch data for a group of companies in a single request, rather than making individual requests for each company.
Endpoint Details
- Method: GET
- URL:
/api/v1/resources/company
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 "Content-Type: application/json" \
-H "Authorization: Bearer $API_KEY" \
https://$ACCOUNT_NAME.juleb.com/api/v1/resources/company?fields=name%2Ccompany_code%2Cbranch_user&filter=name%2AB&page=1&limit=100
const axios = require('axios');
const accountName = process.env.ACCOUNT_NAME;
const apiKey = process.env.API_KEY;
axios.get(`https://${accountName}.juleb.com/api/v1/resources/company`, {
headers: {
'accept': '*/*',
'Authorization': `Bearer ${apiKey}`
},
params: {
fields: 'name,company_code,branch_user',
filter: 'name*A',
page: 1,
limit: 100
}
})
.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/resources/company?fields=name,company_code,branch_user&filter=name*A&page=1&limit=100"))
.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/resources/company'
headers = {
'accept': '*/*',
'Authorization': f'Bearer {api_key}'
}
params = {
'fields': 'name,company_code,branch_user',
'filter': 'name*A',
'page': 1,
'limit': 100
}
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": "B4 - Demo",
"company_code": null,
"branch_user": "68230431000020000"
},
{
"name": "B2 - Demo",
"company_code": null,
"branch_user": "4"
},
{
"name": "B3 - Demo - W",
"company_code": null,
"branch_user": "68230431000010000"
}
],
"meta": {
"count": 3,
"total": 3
},
"pagination": {
"previousPage": null,
"currentPage": 1,
"nextPage": null,
"totalPages": 1
}
}