Green Screens AI History API
Historical rate data and similar lanes analysis v1 — load history and recent rates. Spec version 1.0.0, 2 paths.
Historical rate data and similar lanes analysis v1 — load history and recent rates. Spec version 1.0.0, 2 paths.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/green-screens-ai-history-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
# harvested: 2026-09-12
# method: searched
# source: https://connect.greenscreens.ai/history/v1/openapi.yaml
# note: >-
# Verbatim first-party OpenAPI served from the provider's own documentation host connect.greenscreens.ai. Ownership confirmed: info.contact.email support@greenscreens.ai, x-logo static.greenscreens.ai, servers[] api.greenscreens.ai; termsOfService points at triumph.io because Triumph Financial acquired Greenscreens.ai (closed 2025) and the product now ships as Triumph Intelligence.
openapi: 3.0.2
info:
title: History
version: 1.0.0
description: Historical rate data and similar lanes analysis v1
x-logo:
url: https://static.greenscreens.ai/main-logo.svg
backgroundColor: "#fafafa"
altText: Triumph Intelligence
termsOfService: https://triumph.io/terms-of-service/
contact:
name: API Support
email: support@greenscreens.ai
url: https://connect.intelligence.triumph.io
externalDocs:
description: Triumph Intelligence
url: https://intelligence.triumph.io
tags:
- name: History
description: Historical rate aggregation and similar lanes endpoints
paths:
/history/loads:
post:
tags:
- History
operationId: loadsHistory
summary: Load history search
description: |
Returns loads matching the search criteria
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/LoadsHistoryRequest"
responses:
"200":
description: Success
content:
application/json:
schema:
$ref: "#/components/schemas/LoadsHistoryResponse"
"400":
description: Bad request
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
error400Example:
value:
code: missing_required_parameter
message: Your request was missing a {par_name} parameter
"401":
description: Unauthenticated
"403":
description: Forbidden
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
error403Example:
value:
code: access_forbidden
message: Access is forbidden
"429":
description: Too Many Requests
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
error429TooManyRequests:
value:
code: too_many_requests
message: Request limit exceeded
"500":
description: Unhandled server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
error500Example:
value:
code: internal_error
message: Internal server error
/history/recent:
post:
tags:
- History
summary: Recent customer's rate
description: |
Provides recent rate for route. Returns aggregated rate statistics
for three time periods: last 7, 15, and 30 days.
security:
- bearerAuth: []
operationId: recentRates
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/RecentRatesRequest"
required: true
responses:
"200":
description: Success
content:
application/json:
schema:
$ref: "#/components/schemas/RecentRatesResponse"
"400":
$ref: "#/paths/~1history~1loads/post/responses/400"
"401":
$ref: "#/paths/~1history~1loads/post/responses/401"
"404":
description: Item not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
error404Example:
value:
code: item_not_found
message: Item not found
"422":
description: Unprocessable Entity with multiple errors.
content:
application/json:
schema:
type: object
properties:
code:
type: string
message:
type: string
errors:
type: array
description: list of errors
items:
type: object
description: Request validation error
properties:
field:
type: string
description: Name of the field that did not pass validation
example: transportType
message:
type: string
description: Human readable error mesage explaining why validation failed
example: SpaceXDragon transportType is not supported. Valid values are [VAN,
FLATBED, ...]
value:
type: string
nullable: true
description: Value of the field that did not pass validation
example: SpaceXDragon
required:
- field
- message
required:
- code
- message
- errors
example:
code: request_validation
message: You have one or more errors in request structure
errors:
- field: carrierName
message: field contains wrong data type (int), should be string
value: "22"
- field: shipperId
message: "shipperId: must not be null"
value: null
- field: loadSource.loadId
message: "loadId: must not be null"
value: null
examples:
error422MultiExample:
value:
code: request_validation
message: You have one or more errors in request structure
errors:
- field: carrierName
message: field contains wrong data type (int), should be string
value: "22"
- field: shipperId
message: "shipperId: must not be null"
value: null
- field: loadSource.loadId
message: "loadId: must not be null"
value: null
"424":
description: Failed Dependency.
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
error424Example:
value:
code: distance_calculation_error
message: "Unable to calculate distance between zips {key}, reason: {exc}"
"429":
$ref: "#/paths/~1history~1loads/post/responses/429"
"500":
$ref: "#/paths/~1history~1loads/post/responses/500"
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
schemas:
HistoryAggregatedResponse:
type: object
description: list of rates
properties:
items:
$ref: "#/components/schemas/RateAggregatedArray"
required:
- items
RateAggregatedArray:
type: array
description: List of aggregated rates
items:
$ref: "#/components/schemas/RateAggregatedObject"
RateAggregatedObject:
type: object
properties:
medianFlatRate:
type: number
description: average carrier cost inc fuel
example: 1765.13
medianRate:
type: number
description: average carrier rate inc fuel
example: 1765.13
date:
type: integer
format: int64
description: DateTime in format UNIX
example: 1599130005
minAndMaxFlatRate:
type: array
items:
type: number
minItems: 2
maxItems: 2
description: minimum and maximum carrier cost inc fuel
example:
- 1250.5
- 2500.92
minAndMaxRate:
type: array
items:
type: number
minItems: 2
maxItems: 2
description: minimum and maximum carrier rate inc fuel
example:
- 1.58
- 4.2
loadCount:
type: integer
description: the amount of load for the route
example: 15
currency:
type: string
description: Code of the currency of the response. Format is ISO 4217.
example: USD
required:
- medianFlatRate
- medianRate
- date
- minAndMaxFlatRate
- minAndMaxRate
- loadCount
- currency
SimilarHistoryAggregatedResponse:
type: object
description: >
Similar lane aggregated rate history response
containing the rate history and a list of top similar lanes wih rate data
properties:
history:
$ref: "#/components/schemas/RateAggregatedArray"
topLanes:
$ref: "#/components/schemas/SimilarHistoryAggregatedTopLanes"
required:
- history
- topLanes
SimilarHistoryAggregatedTopLanes:
type: array
description: Top lanes similar to requested lane
items:
$ref: "#/components/schemas/SimilarHistoryAggregatedTopLane"
SimilarHistoryAggregatedTopLane:
type: object
description: Similar lane data
properties:
rates:
$ref: "#/components/schemas/SimilarHistoryAggregatedTopLaneRates"
originCountry:
type: string
description: |
Origin country.
Two letter country code in ISO 3166-1 alpha-2 format
example: US
originState:
type: string
description: Origin state
example: IL
originCity:
type: string
description: Origin city
example: Chicago
destinationCountry:
type: string
description: |
Destination country.
Two letter country code in ISO 3166-1 alpha-2 format
example: US
destinationState:
type: string
description: Destination state
example: TX
destinationCity:
type: string
description: Destination city
example: Houston
distance:
type: number
format: float
description: Total distance of the trip (in miles)
example: 434
loadCount:
type: integer
description: Load volume for this route
example: 15
required:
- rates
- originCountry
- originState
- originCity
- destinationCountry
- destinationState
- destinationCity
- distance
- loadCount
SimilarHistoryAggregatedTopLaneRates:
type: object
description: Rates
properties:
min:
type: number
description: Minimum rate (per mile, including fuel)
example: 1765.13
max:
type: number
description: Maximum rate (per mile, including fuel)
example: 2344.27
median:
type: number
description: Median rate (per mile, including fuel)
example: 2034.64
currency:
type: string
description: Code of the currency of the response. Format is ISO 4217
example: USD
required:
- min
- max
- median
- currency
SimilarLanesExplainResponse:
type: object
description: |
Similar lanes breakdown for "Explain This Rate" feature.
Returns all matching lanes (up to 500) in a single response.
Frontend handles pagination client-side.
properties:
items:
type: array
description: Similar lanes sorted by volume descending (up to 500)
items:
$ref: "#/components/schemas/SimilarLaneRow"
totalLoads:
type: integer
description: Sum of volumes across all items
example: 1345
required:
- items
- totalLoads
SimilarLaneRow:
type: object
description: Similar lane with rate statistics grouped by city pair.
properties:
shipIntervalStart:
type: string
format: date
description: Earliest ship date on this lane
example: "2025-01-18"
shipIntervalEnd:
type: string
format: date
description: Latest ship date on this lane
example: "2025-02-18"
originCity:
type: string
description: Origin city
example: Lebanon
originState:
type: string
description: Origin state code
example: TN
originCountry:
type: string
description: Origin country code (ISO 3166-1 alpha-2)
example: US
proximityOrigin:
type: number
format: float
description: Miles from requested origin to this lane's origin
example: 12.5
destinationCity:
type: string
description: Destination city
example: Orlando
destinationState:
type: string
description: Destination state code
example: FL
destinationCountry:
type: string
description: Destination country code (ISO 3166-1 alpha-2)
example: US
proximityDest:
type: number
format: float
description: Miles from requested destination to this lane's destination
example: 8.3
mileage:
type: integer
description: Average lane distance in miles
example: 692
rates:
$ref: "#/components/schemas/SimilarLaneRates"
volume:
type: integer
description: Number of loads on this lane
example: 5541
required:
- shipIntervalStart
- shipIntervalEnd
- originCity
- originState
- originCountry
- proximityOrigin
- destinationCity
- destinationState
- destinationCountry
- proximityDest
- mileage
- rates
- volume
SimilarLaneRates:
type: object
description: Rate statistics for a similar lane (flat rates and RPM)
properties:
avgFlat:
type: number
format: float
description: Average carrier flat rate
example: 2582.46
minFlat:
type: number
format: float
description: Minimum carrier flat rate
example: 1550
maxFlat:
type: number
format: float
description: Maximum carrier flat rate
example: 3000
avgRpm:
type: number
format: float
description: Average carrier rate per mile
example: 3.73
minRpm:
type: number
format: float
description: Minimum carrier rate per mile
example: 2.24
maxRpm:
type: number
format: float
description: Maximum carrier rate per mile
example: 4.33
currency:
type: string
description: Code of the currency of the response
example: USD
required:
- avgFlat
- minFlat
- maxFlat
- avgRpm
- minRpm
- maxRpm
- currency
TransportType:
type: string
enum:
- VAN
- REEFER
- FLATBED
- HOTSHOT
description: >
Transport type
If you would like Hotshot predictions, reach out to your CSM and DA.
The model will not work properly without your hotshot data effectively filtered and imported into the model.
example: VAN
GeographicalArea:
type: string
enum:
- CITY
- CITY_ZIP
- ZIP_CITY
- ZIP
- 3DZIP
- KMA
description: >
Determines the size of the area around the origin and destination
points,
that will be searched for the related data.
* CITY - narrow, city wide, area
* ZIP - narrow, five digit zip, area
* 3DZIP - medium, short zip, area
* KMA - big, market wide, area
* CITY_ZIP - a special option that sets origin area to CITY and destination area to ZIP
* ZIP_CITY - a special option that sets origin area to ZIP and destination area to CITY
example: ZIP
Error:
type: object
description: A common api error object
properties:
code:
type: string
description: unique string identifier of the error
message:
type: string
description: human readable error message
required:
- code
- message
example:
code: invalid_request
message: Your ClientId is invalid
ReportingResponseMessage:
allOf:
- type: object
properties:
commonResponse:
type: string
x-enum-varnames:
- not_readable_message
- access_forbidden
- item_not_found
- request_timeout
- request_validation
- parse_error
- internal_error
- access_forbidden_companyId
- method_not_allowed
- missing_required_parameter
enum:
- "Body request is not readable : %s"
- Access is forbidden
- Item not found
- Request timeout after {} sec
- You have one or more errors in request structure
- "Text '%s' could not be parsed in field: %s"
- Internal server error
- companyId in JWT token is not equals importCompanyId in
request body
- Method not allowed
- Missing required parameter
serviceResponse:
type: string
- type: object
properties:
serviceResponse:
type: string
x-enum-varnames:
- access_forbidden
- internal_error
- not_readable_message
- parse_error
- request_validation
enum:
- Access forbidden
- Internal server error
- "Not readable message: %s"
- "Parse error: value '%s' could not be parsed in field '%s'"
- "Request validation error: %s"
StopsInputRecentRates:
type: array
description: Extra stops between origin and destination
items:
$ref: "#/components/schemas/StopInputRecentRates"
example:
- order: 0
type: LOAD
address:
country: US
state: CA
city: Red Bluff
zip: "96080"
- order: 1
type: UNLOAD
address:
country: US
state: CA
city: Redding
zip: "96002"
StopInputRecentRates:
type: object
description: Contains the stop information e.g. address
properties:
order:
type: integer
description: Stop order, starting from 0
example: 0
address:
$ref: "#/components/schemas/AddressInputRecentRates"
required:
- order
- address
AddressInputRecentRates:
type: object
description: Location specified by country, city, state and zip code
properties:
country:
type: string
description: Two letter country code in ISO 3166-1 alpha-2 format
example: US
state:
type: string
description: state
example: NY
city:
type: string
description: city
example: Schenectady
zip:
type: string
description: zip
example: "12345"
required:
- country
- state
- city
- zip
RatesStatsRequest:
type: object
properties:
originCountry:
type: string
description: |
Origin country.
Two letter country code in ISO 3166-1 alpha-2 format
example: US
originState:
type: string
description: Origin state
example: NY
originCity:
type: string
description: Origin city
example: Schenectady
originZip:
type: string
description: Origin zip
example: "12345"
destinationCountry:
type: string
description: |
Destination country.
Two letter country code in ISO 3166-1 alpha-2 format
example: US
destinationState:
type: string
description: Destination state
example: IL
destinationCity:
type: string
description: Destination city
example: Chicago
destinationZip:
type: string
description: Destination zip
example: "60636"
extraStops:
$ref: "#/components/schemas/StopsInputRecentRates"
transportType:
$ref: "#/components/schemas/TransportType"
region:
$ref: "#/components/schemas/GeographicalArea"
currency:
type: string
description: Code of the currency that you want the response to be in. Format is
ISO 4217.
example: USD
required:
- originZip
- originCity
- originState
- destinationZip
- destinationCity
- destinationState
- transportType
- region
RatesStatsResponse:
type: object
description: rates for periods 15, 30, 60, 90 days
properties:
historyRates:
type: array
items:
$ref: "#/components/schemas/RatesStatsForPeriod"
RatesStatsForPeriod:
type: object
properties:
loadCount:
type: integer
example: 42
medianFlatRate:
type: number
format: double
example: 123.45
medianRate:
type: number
format: double
example: 67.89
durationInDays:
type: integer
example: 7
region:
$ref: "#/components/schemas/GeographicalArea"
rateSource:
type: string
description: Source of the rate data
example: NETWORK
LoadsHistoryRequest:
type: object
properties:
originCountry:
type: string
description: |
Origin country.
Two letter country code in ISO 3166-1 alpha-2 format
example: US
originState:
type: string
description: Origin state
example: NY
originCity:
type: string
description: Origin city
example: Schenectady
originZip:
type: string
description: Origin zip
example: "12345"
destinationCountry:
type: string
description: |
Destination country.
Two letter country code in ISO 3166-1 alpha-2 format
example: US
destinationState:
type: string
description: Destination state
example: IL
destinationCity:
type: string
description: Destination city
example: Chicago
destinationZip:
type: string
description: Destination zip
example: "12345"
extraStops:
$ref: "#/components/schemas/StopsInput"
dateFrom:
type: string
format: date
description: Pickup date range start date
example: "2020-07-21"
dateTo:
type: string
format: date
description: Pickup date range end date
example: "2020-07-21"
transportType:
$ref: "#/components/schemas/TransportType"
region:
$ref: "#/components/schemas/GeographicalArea"
currency:
type: string
description: >
Code of the currency that you want the response to be in.
Format is ISO 4217.
If not provided, defaults to the currency set in the profile of currently authenticated user.
example: USD
required:
- originZip
- destinationZip
- transportType
- dateFrom
- dateTo
- region
LoadsHistoryResponse:
type: object
description: list of rates
properties:
items:
type: array
description: |
List of rate objects that are deemed valid and
used during ML training
items:
$ref: "#/components/schemas/LoadRateObject"
outlierItems:
type: array
description: |
List of outlier rate objects that are deemed invalid and
ignored during ML training
items:
$ref: "#/components/schemas/LoadRateObject"
required:
- items
- outlierItems
LoadRateObject:
type: object
description: Load data
properties:
totalCarrierCost:
type: number
description: Total carrier rate (flat, including fuel)
example: 1765.13
totalCarrierRate:
type: number
description: Total carrier rate (per mile, including fuel)
example: 2.58
loadPickupDate:
type: string
format: date
description: |
Pickup date of the load.
**Deprecated.** Use `pickupDateTime` instead
example: "2020-07-21"
deprecated: true
pickupDateTime:
type: string
format: date-time
description: Pickup date and time of the load
example: "2020-07-21T16:00:00Z"
deliveredDateTime:
type: string
format: date-time
description: Delivery date and time of the load
example: "2020-10-14T16:00:00Z"
transportTypeTms:
type: string
description: Transport type (original transport type used in provider TMS)
example: VR
distance:
type: number
description: Distance that the load covered (in miles)
example: 689
weight:
type: number
format: float
description: Total cargo weight in lb
example: 22000
commodity:
type: string
description: Commodity description in free form
example: Racks
originCountry:
type: string
description: |
Origin country.
Two letter country code in ISO 3166-1 alpha-2 format
example: US
originState:
type: string
description: Origin state
example: IL
originCity:
type: string
description: Origin city
example: Chicago
originZip:
type: string
description: Origin zip
example: "60636"
destinationCountry:
type: string
description: |
Destination country.
Two letter country code in ISO 3166-1 alpha-2 format
example: US
destinationState:
type: string
description: Destination state
example: TX
destinationCity:
type: string
description: Destination city
example: Houston
destinationZip:
type: string
description: Destination zip
example: "73264"
extraStops:
$ref: "#/components/schemas/ExtraStops"
carrierName:
type: string
description: Carrier company name
example: JB Hunt
carrierPhoneNumber:
type: string
description: Carrier contact number
example: "121331343"
carrierEmail:
type: string
description: Carrier contact email
example: my@carrieremail.com
customerName:
type: string
description: Shipper company name
example: BP
customerPhoneNumber:
type: string
description: Customer contact number
example: "121331343"
customerEmail:
type: string
description: Customer contact email
example: my@customeremail.com
sellRate:
type: number
description: Total shipper rate (flat, including fuel)
example: 1900.5
buySideRep:
type: string
description: Carrier contact manager
example: Jon Johnson
sellSideRep:
type: string
description: Shipper contact manager
example: Deny Williams
loadProNumber:
type: string
description: Load PRO number in broker TMS
example: 0-5428
currency:
type: string
description: Code of the currency of the response. Format is ISO 4217.
example: USD
required:
- loadPickupDate
- originState
- originCity
- destinationState
- destinationCity
- currency
- extraStops
ExtraStops:
type: array
items:
$ref: "#/components/schemas/ExtraStop"
description: >
Any extra stops along the route between the origin and destination points
example:
- order: 0
address:
country: US
city: Red Bluff
state: CA
zip: "96080"
type: LOAD
appointmentDateTime: "2020-10-14T16:00:00Z"
- order: 1
address:
country: US
city: Redding
state: CA
zip: "96002"
type: UNLOAD
appointmentDateTime: "2020-10-15T16:00:00Z"
ExtraStop:
type: object
description: Extra stop
properties:
order:
type: integer
description: Extra stop order, starting from 0
example: 0
address:
$ref: "#/components/schemas/ExtraStopAddress"
type:
type: string
description: |
Action performed with the cargo at this stop.
Leave this field empty if you do not know the stop type.
enum:
- LOAD
- UNLOAD
- BOTH
example: LOAD
appointmentDateTime:
type: string
format: date-time
description: |
Date and time when the truck has to arrive at this stop.
Provide the time zone of the stop location if possible.
example: "2020-10-13T16:00:00Z"
required:
- order
- address
ExtraStopAddress:
type: object
description: |
Location specified by country, city, state and zip code.
* Country is required
* Either city-state pair or zip code is required
* All four parameters can be passed together
properties:
country:
type: string
description: Two letter country code in ISO 3166-1 alpha-2 format
example: US
city:
type: string
description: City name
example: Sacramento
state:
type
# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/green-screens-ai/refs/heads/main/openapi/green-screens-ai-history-api-openapi.yml