# Shipper Lanes Recommendation Endpoint

The shipper lanes recommendation endpoint allows users to retrieve a list of facilities that ship from the specified origin location to the specified destination location within a given distance radius. The `shippers_in_origin` array is the primary fields of interest. `shippers_in_destination` is merely a list of facilities in the specified destination area.

## Authentication

Include the following headers in your requests:

- **Access-Token**: The access token obtained from the "Create Access Token" endpoint.
- **x-api-key:** The API key provided by GenLogs. This header must be included in the request.

## Permissions

Make sure that your API user is created with a role that has `external-api-shipper-lanes` permission.

## Endpoint

- **URL**: `https://api.genlogs.io/shipper/lanes`
- **Method**: `GET`

## Query Parameters

- **origin_city** (string, required): Name of the city of the origin location.
- **origin_state** (string, required): Name of the state of the origin location.
- **destination_city** (string, required): Name of the city of the destination location.
- **destination_state** (string, required): Name of the state of the destination location.
- **origin_radius** (number, required): The radius (miles) around the origin city within which to search for shipper lanes.
- **destination_radius** (number, required): The radius (miles) around the destination city within which to search for shipper lanes.
- **lot_size_category** (string, optional): Case-sensitive value to filter results.

- X-Small: Up to 10,000 sq ft
  - Small: 10,001 to 75,000 sq ft
  - Medium: 75,001 to 250,000 sq ft
  - Large: 250,001 to 1,000,000 sq ft
  - X-Large: Over 1,000,000 sq ft

## Response

- **200 OK**: Successfully retrieved the list of shipper lanes within the specified radius.
- **400 Bad Request**: If required parameters are missing or invalid.
- **401 Unauthorized**: If the `Access-Token` is missing or invalid.
- **500 Internal Server Error**: If an error occurs on the server while processing the request.

## Response Body

- **shippers_in_origin** (array of `Shipper` objects): List of shippers that have a lane to the destination.
  - **contact_phone** (nullable string): Phone number of the shipper's contact person.
  - **contact_url** (nullable string): URL for the shipper's contact page or website.
  - **facility_name** (string): Name of the shipper's facility.
  - **formatted_address** (string): Full address of the shipper's facility.
  - **id** (string): Unique identifier for the shipper.
  - **lat** (number): Latitude of the shipper's facility.
  - **lon** (number): Longitude of the shipper's facility.
  - **operating_hours** (nullable string): Operating hours of the shipper's facility.
  - **place_category** (string): Category or type of place (Distribution Center or Manufacturing Plant).
  - **place_desc** (String): Description of the facility.
  - **equipment_pairings** (List): Equipment types paired with this facility based on observed carrier activity.

- **shippers_in_destination** (array of `Shipper` objects): List of shippers located at the destination.
  - **contact_phone** (nullable string): Phone number of the shipper's contact person.
  - **contact_url** (nullable string): URL for the shipper's contact page or website.
  - **facility_name** (string): Name of the shipper's facility.
  - **formatted_address** (string): Full address of the shipper's facility.
  - **id** (string): Unique identifier for the shipper.
  - **lat** (number): Latitude of the shipper's facility.
  - **lon** (number): Longitude of the shipper's facility.
  - **operating_hours** (nullable string): Operating hours of the shipper's facility.
  - **place_category** (string): Category or type of place (Distribution Center or Manufacturing Plant).
  - **place_desc** (String): Description of the facility.
  - **equipment_pairings** (List): Equipment types paired with this facility based on observed carrier activity.

## Request Example:

```bash
curl -X GET 'https://api.genlogs.io/shipper/lanes?name=coca+cola&radius=50&origin_city=Tennessee+City&origin_state=Tennessee&destination_city=Taswell&destination_state=Indiana&origin_radius=50&destination_radius=50' \
-H 'Access-Token: {access_token}' \
-H 'x-api-key: {your_api_key}'
```

## Get Shipper Lanes Based on Coordinates and Radius

### Endpoint

`https://api.genlogs.io/shipper/lanes`

### Query Parameters

- **testing_new_param** (number, Required): New parameter for testing.
- **origin_lat** (number, Required): Latitude of the origin location.
- **origin_lon** (number, Required): Longitude of the origin location.
- **destination_lat** (number, Required): Latitude of the destination location.
- **destination_lon** (number, Required): Longitude of the destination location.
- **origin_radius** (number, Required): Radius to search around the origin.
- **destination_radius** (number, Required): Radius to search around the destination.

### Header Parameters

- **accept** (string, Required): `application/json`
- **Access-Token** (string, Required): Access Token for authentication.
- **x-api-key** (string, Required): API key for authentication.

### Responses

- **200**: List of shipper lanes.

```json
{
  "shippers_in_destination": [
    {
      "contact_phone": "text",
      "contact_url": "text",
      "facility_name": "text",
      "formatted_address": "text",
      "id": "text",
      "lat": 1,
      "lon": 1,
      "operating_hours": "text",
      "place_category": "text",
      "equipment_pairings": [
        "Dry Van",
        "Box Truck"
      ]
    }
  ],
  "shippers_in_origin": [
    {
      "contact_phone": "text",
      "contact_url": "text",
      "facility_name": "text",
      "formatted_address": "text",
      "id": "text",
      "lat": 1,
      "lon": 1,
      "operating_hours": "text",
      "place_category": "text",
      "equipment_pairings": [
        "Dry Van",
        "Box Truck"
      ]
    }
  ]
}
```

Last updated 16 days ago.
