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).

Operations 1

POST /prediction/rates Lane rate prediction #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/green-screens-ai-prediction-v2-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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.

OpenAPI Specification

green-screens-ai-prediction-v2-api-openapi.yml Raw ↑
# 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)