Booking API
This document describes the Logistics Explorer Booking API web service.
Api uses Bearer token. To get token follow this link with ID that gives your manager.
URL
https://www.searates.com/auth/platform-token?id=XXXXXX
You must send this token as header to all requests. Header example:
authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbG....
Link to send all these API queries:
https://www.searates.com/graphql_booking
Get booking information
Property | Type | Description | |
---|---|---|---|
id
|
Integer, required | This is the booking ID | |
inbound
|
Boolean, required | Incoming or outgoing booking | |
type
|
String, required | Booking status type (all, pending, in-progress, archive) | |
page
|
Integer, required | Page number |
query {
booking (id: XXXXXXXX) {
[Booking]
}
}
query {
bookings (inbound: true, type: "all", page: 1) {
[Booking]
}
}
Booking
Property | Type | Description | |
---|---|---|---|
id
|
Integer | This is the booking ID | |
shipment_id
|
Integer | ID cards on Logistics Explorer | |
type
|
String | Booking type (FCL, LCL, BULK, etc.) | |
identity
|
[Identity] | Identification of the current user | |
booker
|
[Booker] | Booker Information | |
manager
|
[Booker] | Manager Information | |
platform
|
[Platform] | Platform Information | |
product_name
|
String | The product name | |
comment
|
String | Product Description | |
carrier_name
|
String | Carrier name | |
liner_terms
|
String | Liner terms | |
ready_to_load
|
Integer | Date when the shipment is ready for shipment (Unix time) | |
customs_clearance
|
Boolean | Do I need customs clearance | |
insurance
|
Boolean | Do I need insurance | |
cargo_payment
|
Boolean | Do I need cargo payment | |
shipment_inspection
|
Boolean | Do I need shipment inspection | |
co2_included
|
Boolean | Do I need pay co2 included | |
paid
|
Boolean | Is the booking status paid | |
container_code
|
String | Booked container code | |
container_type
|
String | Booked container type name | |
quantity
|
Integer | Quantity of booked containers | |
volume
|
Integer | Booked cargo volume | |
weight
|
Integer | Booked cargo weight | |
status
|
[Status] | Current booking status | |
finance_total
|
[FinanceTotal] | Total cost of booking in USD | |
city_from
|
[City] | Departure city | |
port_from
|
[Port] | Departure port | |
barge_from
|
[Port] | Departure port for barge | |
city_to
|
[City] | Arrival city | |
port_to
|
[Port] | Arrival port | |
barge_to
|
[Port] | Arrival port for barge | |
rates
|
[Rate] | List of booked rates | |
payments
|
[Payment] | Payment information about booking | |
schedules
|
[Schedule] | Booking route schedule | |
shipping_instructions
|
[ShippingInstructions] | Booking Shipping Instructions | |
eVGM
|
[eVGM] | eVGM information |
type Booking {
id: Integer,
shipment_id: Integer,
type: String,
identity: [Identity],
booker: [Booker],
manager: [Booker],
platform: [Platform],
product_name: String,
comment: String,
carrier_name: String,
liner_terms: String,
ready_to_load: Integer,
customs_clearance: Boolean,
insurance: Boolean,
cargo_payment: Boolean,
shipment_inspection: Boolean,
co2_included: Boolean,
paid: Boolean,
container_code: String,
container_type: String,
quantity: Integer,
volume: Integer,
weight: Integer,
status: [Status],
finance_total: [FinanceTotal]
city_from: [City],
port_from: [Port],
barge_from: [Port],
city_to: [City],
port_to: [Port],
barge_to: [Port],
rates: [Rate[]],
payments: [Payment[]],
schedules: [Schedule[]],
shipping_instructions: [ShippingInstructions],
eVGM: [eVGM]
}
}
Identity
Property | Type | Description | |
---|---|---|---|
profile_id
|
Integer | ID profile current user | |
user_id
|
Integer | ID current user | |
first_name
|
String | First name current user | |
last_name
|
String | Last name current user | |
inbound
|
Boolean | Inbound or Outbound tab bookings |
{
profile_id: Integer,
user_id: Integer,
first_name: String,
last_name: String,
inbound: Boolean
}
Booker
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Booker user ID | |
name
|
String | Booker name | |
phone
|
String | Booker phone | |
email
|
String | Booker email | |
user
|
[User] | Full information for User |
{
id: Integer,
name: String,
phone: String,
email: String,
user: [User]
}
User
Property | Type | Description | |
---|---|---|---|
profile_id
|
Integer | Profile ID | |
user_id
|
Integer | User ID | |
fist_name
|
String | Profile first name | |
last_name
|
String | Profile last name | |
company_name
|
String | Company name | |
email
|
String | User email | |
phone
|
String | User phone | |
company_logo
|
String | Reference for logotype company | |
currency
|
[Currency] | Currency information for user |
{
profile_id,
company_id,
first_name,
last_name,
company_name,
email,
phone,
company_logo,
currency: [Currency]
}
Currency
Property | Type | Description | |
---|---|---|---|
code
|
String | Currency code (ISO 4217) | |
rate
|
Float | Current exchange rate against the USD |
{
code: String,
rate: Float
}
Platform
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Platform ID | |
user
|
[User] | Platform owner |
{
id: Integer,
user: [User]
}
Status
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Status ID | |
code
|
String | Timeline status code | |
name
|
String | Timeline status name | |
global_code
|
String | Main status code | |
global_name
|
String | Main status name | |
description
|
String | Description of status | |
color
|
String | Color code for status | |
active
|
Boolean | Trigger for current status | |
completed
|
Boolean | Trigger for completed statuses |
{
id: Integer,
code: String,
global_code: String,
global_name: String,
name: String,
description: String,
color: String,
active: Boolean,
completed: Boolean
}
Finance Total
Property | Type | Description | |
---|---|---|---|
total_usd
|
Float | Finance total amount for booking | |
total_commission
|
Float | Finance total commission for booking |
{
total_usd: Float,
total_commission: Float
}
City
Property | Type | Description | |
---|---|---|---|
id
|
Integer | City ID | |
place_id
|
String | Google Place ID | |
address
|
String | Name for city | |
country
|
String | Country code for city | |
latitude
|
Float | Coordinate latitude | |
longitude
|
Float | Coordinate longitude |
{
id: Integer,
place_id: String,
address: String,
country: String,
latitude: Float,
longitude: Float,
}
Port
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Port ID | |
name
|
String | Name of port | |
code
|
String | ISO code of port | |
country
|
String | Country code for port | |
latitude
|
Float | Coordinate latitude | |
longitude
|
Float | Coordinate longitude |
{
id: Integer,
name: String,
code: String,
country: String,
latitude: Float,
longitude: Float
}
Rate
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Booking rate ID | |
booking_id
|
Integer | Booking ID | |
rate_id
|
Integer | Rate ID on Logistics Explorer | |
rate_class
|
String | Type of rate | |
direction
|
Float | Rate direction | |
confirmed
|
Boolean | If the rate is confirmed by the manager | |
created_at
|
Integer | Unix time of book rate |
{
id: Integer,
booking_id: Integer,
rate_id: Integer,
rate_class: String,
direction: String,
confirmed: Boolean,
created_at: Integer,
user: [User],
finances: [Finances]
}
Finances
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Finance ID | |
rate_id
|
String | Rate ID | |
service
|
String | The name of the expense in the rate | |
currency
|
String | Currency on Logistic Explorer | |
currency_original
|
String | Сurrency in which the rate was added | |
price
|
Float | Price included commission | |
price_original
|
Float | Price for currency in which the rate was added | |
price_clear
|
Float | Price not included commission | |
quantity
|
Integer | Number of cost units | |
commission_type
|
String | Commission type per unit or percentage | |
commission_value
|
Float | Commission value | |
enabled
|
Float | Is the finance line active for editing |
{
id: Integer,
rate_id: Integer,
service: String,
notes: String,
currency: String,
currency_original: String,
price: Float,
price_original: Float,
price_clear: Float,
quantity: Integer,
commission_type: String,
commission_value: Float,
enabled: Boolean
}
Payments
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Payment ID | |
booking_id
|
Integer | Booking ID | |
order_id
|
String | Order ID | |
service
|
String | Name of payment service | |
title
|
String | Short name of payment service | |
amount
|
Float | Amount of payment | |
currency
|
String | Currency of payment | |
active
|
Boolean | If active for payment | |
paid
|
Boolean | If the payment has been paid | |
paid_date
|
Integer | Payment due date (unix time) | |
download
|
Boolean | If you can download the invoice | |
invoice_link
|
String | Link to download invoice | |
expire_date
|
Integer | Date by which the payment must be made (unix time) | |
created_at
|
Integer | Date of payment (unix time) |
{
id: Integer,
booking_id: Integer,
order_id: Integer,
service: String,
title: String,
amount: Float,
currency: String,
active: Boolean,
paid: Boolean,
paid_date: Integer,
download: Boolean,
invoice_link: String,
expire_date: Integer,
created_at: Integer
}
Schedules
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Schedule ID | |
booking_id
|
Integer | Booking ID | |
city
|
String | City of schedule point | |
country
|
String | Country of schedule point | |
previous
|
String | Sequence of points | |
info_type
|
String | Type of information | |
file_name
|
String | Name uploaded document | |
file_hash
|
String | Hash uploaded document | |
events
|
[Event[]] | List of events at a given point |
{
id: Integer,
booking_id: Integer,
city: String,
country: String,
previous: String,
info_type: String,
file_name: String,
file_hash: String,
events: [Event[]]
}
Event
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Event ID | |
schedule_id
|
Integer | Schedule ID | |
movement_type
|
String | Type of movement | |
date
|
String | Event start date | |
name
|
String | Event name | |
trip_number
|
String | Trip number | |
transport_name
|
String | Transport name | |
notes
|
String | Notes to event |
{
id: Integer,
schedule_id: Integer,
movement_type: String,
date: String,
name: String,
trip_number: String,
transport_name: String,
notes: String
}
Shipping Instruction
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Shipping instruction ID | |
booking_id
|
Integer | Booking ID | |
booking_number
|
String | Booking number | |
order_number
|
String | Order number | |
contract_number
|
String | Contract number | |
bl_number
|
String | Bill of landing number | |
forwarder_ref_number
|
String | Forwarder reference number | |
shipper_identifying_number
|
String | Shipper identifying number | |
shipper_reference_number
|
String | Shipper reference number | |
forwarder_reference_number
|
String | Forwarder reference number | |
carrier
|
String | Carrier name | |
parties
|
[Party[]] | List of parties | |
particulars
|
[Particular[]] | List of particulars |
{
id: Integer,
booking_id: Integer,
booking_number: String,
order_number: String,
contract_number: String,
bl_number: String,
forwarder_ref_number: String,
shipper_identifying_number: String,
shipper_reference_number: String,
forwarder_reference_number: String,
carrier: String,
parties: [Parties[]],
particulars: [Particular[]]
}
Party
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Party ID | |
booking_id
|
Integer | Booking ID | |
role
|
String | Role of party | |
alias
|
String | Alias for party | |
company_name
|
String | Company name | |
vat_number
|
String | VAT Number | |
country_name
|
String | Country name | |
country_code
|
String | Country code | |
city
|
String | City name | |
street
|
String | Street address | |
postal_code
|
String | Postal code | |
contact_name
|
String | Contact name | |
contact_phone
|
String | Contact phone | |
contact_email
|
String | Contact email | |
forwarder_reference
|
String | Forwarder reference |
{
id: Integer,
booking_id: Integer,
role: String,
alias: String,
company_name: String,
vat_number: String,
country_name: String,
country_code: String,
city: String,
street: String,
postal_code: String,
contact_name: String,
contact_phone: String,
contact_email: String,
forwarder_reference: String
}
Particular
Property | Type | Description | |
---|---|---|---|
id
|
Integer | Particular ID | |
booking_id
|
Integer | Booking ID | |
container_number
|
String | Container number | |
seal_number
|
String | Seal number | |
package_type_id
|
Integer | Package type ID | |
package_quantity
|
Integer | Quantity of package | |
cargo_description
|
String | Cargo description | |
gross_weight
|
Integer | Gross weight | |
gross_weight_type
|
String | Unit type for gross weight | |
net_weight
|
Integer | Net weight | |
net_weight_type
|
String | Unit type for net weight | |
gross_volume
|
Integer | Gross volume | |
gross_volume_type
|
String | Unit type for gross volume | |
imo_class
|
String | IMO Class | |
hs_code
|
String | HS code |
{
id: Integer,
booking_id: Integer,
container_number: Integer,
seal_number: String,
package_type_id: Integer,
package_quantity: Integer,
cargo_description: String,
gross_weight: Integer,
gross_weight_type: String,
net_weight: Integer,
net_weight_type: String,
gross_volume: Integer,
gross_volume_type: String,
imo_class: String,
hs_code: String
}
eVGM
Property | Type | Description | |
---|---|---|---|
id
|
Integer | eVGM ID | |
booking_id
|
String | Booking ID | |
approval_signature
|
String | Approval signature | |
approval_date
|
Integer | Approval date (unix time) | |
notify_email
|
String | Email for notify | |
items
|
Item[] | List of eVGM Items |
{
id: Integer,
booking_id: Integer,
approval_signature: String,
approval_date: Integer,
notify_email: String,
items: [eVGMItem]
}
eVGM Item
Property | Type | Description | |
---|---|---|---|
id
|
Integer | eVGM Item ID | |
evgm_id
|
Integer | eVGM ID | |
container_number
|
String | Container number | |
gross_weight
|
Integer | Gross weight | |
gross_weight_type
|
String | Unit type for gross weight | |
tare_weight
|
Integer | Tare weight | |
tare_weight_type
|
String | Unit type for gross weight | |
verified_gross_mass
|
Integer | Verified gross mass | |
verified_gross_mass_type
|
String | Unit type for verified gross mass | |
responsible_party
|
String | Responsible party | |
method_of_weighing
|
String | Method of weighing |
{
id: Integer,
evgm_id: Integer,
container_number: String,
gross_weight: Integer,
gross_weight_type: String,
tare_weight: Integer,
tare_weight_type: String,
verified_gross_mass: Integer,
verified_gross_mass_type: String,
responsible_party: String,
method_of_weighing: String
}