Green Screens AI Prediction API v2
Prediction service v2 — the superseded major. Still published and callable with no announced sunset date. Spec version 2.5.3, 1 path (POST /prediction/rates).
Prediction service v2 — the superseded major. Still published and callable with no announced sunset date. Spec version 2.5.3, 1 path (POST /prediction/rates).
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-prediction-v2-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/prediction/v2/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: Prediction
version: 2.5.3
description: >-
Prediction service v2
#### This is an old api and it will be deprecated soon. <a href="/prediction/v3/swagger/index.html" target="_blank">View latest version - v3, here</a>
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
tags:
- name: Prediction
description: Prediction endpoints
paths:
/prediction/rates:
post:
tags:
- Prediction
summary: Lane rate prediction
description: >
The method provides target Buy and Sell rate for particular lane with
supported information
security:
- bearerAuth: []
operationId: predictionRates
parameters:
- $ref: "#/components/parameters/UserHeader"
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/PredictionRatesRequest"
required: true
responses:
"200":
description: Rate with supported numbers
content:
application/json:
schema:
$ref: "#/components/schemas/PredictionRatesResponse"
"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
"422":
description: Unprocessable Entity with multiple errors.
content:
application/json:
schema:
$ref: "#/components/schemas/Error422UnprocessableEntityMulti"
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":
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
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
schemas:
PredictionRatesRequest:
type: object
properties:
shipperId:
type: string
description: shipper ID
example: "3887121"
deprecated: true
pickupDateTime:
type: string
format: date-time
description: load pick up date and time in TZ of pick up location
deliveryDateTime:
type: string
format: date-time
description: load delivery date and time in TZ of drop off
deprecated: true
transportType:
type: string
enum:
- VAN
- REEFER
- FLATBED
- HOTSHOT
stops:
$ref: "#/components/schemas/RateStopArray"
loadDetails:
$ref: "#/components/schemas/RateLoadDetailsObject"
tag:
type: string
description: tag for prediction identification
example: "1234"
required:
- pickupDateTime
- stops
- transportType
PredictionRatesResponse:
type: object
properties:
targetBuyRate:
type: number
description: buy flat rate for requested lane with included fuel $/mi
example: 2.24
startBuyRate:
type: number
description: starting price for Buy rate $/mi
example: 2.07
lowBuyRate:
type: number
description: low border for Buy rate $/mi
example: 2.11
highBuyRate:
type: number
description: high border for Buy rate $/mi
example: 2.5
fuelRate:
type: number
description: Fuel surcharge for load $/mi
example: 0.33
miles:
type: number
description: total miles for trip
example: 289
deprecated: true
distance:
type: number
description: total distance for trip in miles
example: 289
targetSellRate:
type: number
example: 2.44
description: sell flat rate for requested lane and shipper $/mi
lowSellRate:
type: number
description: low border for Buy rate $/mi
example: 2.36
highSellRate:
type: number
description: high border for Sell rate $/mi
example: 2.68
confidenceLevel:
type: integer
description: quantitative description of provided rate from 100 (highest) to 0
(lowest)
example: 65
minimum: 0
maximum: 100
confidenceLevelString:
type: string
enum:
- HIGH
- MEDIUM
- LOW
- EXTREMELY_LOW
description: quantitative description of provided rate HIGH, MEDIUM, LOW,
EXTREMELY_LOW
example: HIGH
deprecated: true
tag:
type: string
description: tag for prediction identification
example: "1234"
required:
- targetBuyRate
- startBuyRate
- lowBuyRate
- highBuyRate
- miles
- confidenceLevel
RateStopArray:
type: array
description: list of load stops
minItems: 2
items:
$ref: "#/components/schemas/RateStop"
example:
- order: 0
country: US
city: Chicago
state: IL
zip: "60611"
- order: 1
country: US
city: Dallas
state: TX
zip: "75204"
RateStop:
type: object
description: location specified by address or geopoint
properties:
order:
description: stop order, start from 0
type: integer
example: 0
city:
type: string
state:
type: string
zip:
type: string
streetAddress:
type: string
deprecated: true
latitude:
type: number
format: double
deprecated: true
longitude:
type: number
format: double
deprecated: true
example:
order: 1
country: US
city: Chicago
state: IL
zip: "60611"
required:
- city
- state
- zip
- order
RateLoadDetailsObject:
type: object
properties:
commodity:
type: string
description: commodity discription in free form
example: Racks
quantity:
type: integer
description: total unit quantity
example: 20
deprecated: true
weight:
description: total cargo weight in lb
type: number
format: float
example: 22000
deprecated: true
length:
description: total cargo lenght in feet
type: number
format: float
example: 40.2
deprecated: true
width:
description: total load width in feet
type: number
format: float
example: 4.6
deprecated: true
height:
description: total load height in feet
type: number
format: float
example: 5.5
deprecated: true
temperature:
type: number
format: float
description: temperature control in fahrenheit
example: 32.1
deprecated: true
miles:
type: number
format: float
description: distance between origin and destination
example: 322.13
deprecated: true
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
Error422UnprocessableEntityMulti:
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
ResponseMessage:
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
parameters:
UserHeader:
in: header
name: X-GS-User
schema:
type: string
description: |
Currently logged in user. Used in cases where this information is
not available in the token e.g. web-portable, api integration, etc.
example: kalex@greenscreens.ai
externalDocs:
description: Triumph Intelligence
url: https://intelligence.triumph.io
servers:
- url: https://testapi.greenscreens.ai/v2
description: Testing server (dev environment)
- url: https://betaapi.greenscreens.ai/v2
description: Beta server (pre-production)
- url: https://api.greenscreens.ai/v2
description: Production server (uses live data)