Files
ETAApi/README.md

75 lines
2.3 KiB
Markdown

# ETA API
ETA Viaporte API
# Dependencies
- NodeJS v18
- Docker
# Endpoints
All endpoints that return a list of elements is paginable with the following queries:
- `elements`: Number of elements for each page.
- `page`: Page number (from 0 to n)
Example:
- `/endpoint?elements=50&page=2` : Get page 2 with 50 elements per page.
- `/endpoint?page=2` : Get page 2 with default (10) elements per page.
- `/endpoint?elements=50` : Get page 0 with 50 elements.
## Public endpoints
Read registered resources:
- `GET /countries`: List registered countries.
- `GET /cities`: List registered cities.
- `GET /meta-data`: List registered meta-data.
- `GET /meta-groups`: List registered meta-data.
- `GET /product-categories`: List registered product-categories.
- `GET /public-companies`: List registered companies.
- `GET /public-loads`: List registered loads.
- `GET /public-load-attachments/download/:id`: Downloads the attachment of the load identified by Id.
- `GET /public-vehicles`: List registered vehicles.
- `GET /states`: List registered states.
All these endpoints support the following parameters (except for those with `public-` as prefix, for example `public-vehicles`):
- `/` : List registered resources with pagination.
- `/:id` : Read specific resource identified by Id.
- `/find?regex=xxx` : List resources that matches with regex (support pagination).
### GET /public-companies
Get public fields from registered companies.
- `GET /shipper`: List registered shippers that are not hidden only.
- `GET /carrier`: List registered carriers that are not hidden only.
### GET /public-loads
Get public fields from registered loads.
- `GET /`: List only loads with status Published.
### GET /public-vehicles
Get public fields from registered vehicles.
- `GET /published`: List only latest published vehicles.
- `GET /location`: List only location from vehicles in status Free.
## Private Endpoints
The following list of endpoints requires a JWT.
- `GET /loads`: List loads related to my company.
- `GET /load-attachments`: List load attachments related to my company or load id.
## Test Endpoint
A private endpoint to test the JWT and the api response.
- `POST /apitest`: Return whatever is sent on the body, queries and parameters.
- `GET /version`: Return the API version.