Green Screens AI TMS API
TmsConnector service v2 View separately Try it in swagger
TmsConnector service v2 View separately Try it in swagger
openapi: 3.0.2
info:
title: Triumph Intelligence Connect Analytics TMS API
x-logo:
url: https://static.greenscreens.ai/main-logo.svg
backgroundColor: '#fafafa'
altText: Triumph Intelligence
description: "# Authentication\n\n\nTriumph Intelligence API offers OAuth2 Bearer JWT token based authentication.\n\n\nOAuth2 - an open protocol to allow secure authorization in a simple \nand standard method from web, mobile and desktop applications.\n\n\n# \n\n\n# \n\n\n# Direct link integration with Triumph Intelligence\n\nOne of the simplest ways to integrate Triumph Intelligence in to your app is by using the \ndirect link method.\n\nLink format:\n\n https://intelligence.triumph.io/rates?originZip={}&destinationZip={}&transportType={}\n\n* originZip - 5 digit USA ZIP code of the origin point\n\n* destinationZip - 5 digit USA ZIP code of the destination point\n\n* transportType - one of supported equipment types VAN, REEFER or FLATBED\n\n* OPTIONAL: pickupDate - pickup date string in ISO format e.g. \"2022-04-06T08:00:00.000+03:00\" when not encoded\n\n* OPTIONAL: originCityState - city and state separated by a space symbol, signifying the origin point. \nCan be used instead of originZip if you do not have a zip code of the location. \n_Should not be used together with originZip._\n\n* OPTIONAL: destinationCityState - city and state separated by a space, signifying the destination point. \nCan be used instead of destinationZip if you do not have a zip code of the location. \n_Should not be used together with destinationZip._\n\n* OPTIONAL: customer - name of the customer company\n\n* OPTIONAL: commodity - description of the transported commodity\n\n* OPTIONAL: weight - weight of the load in lbs\n\n* OPTIONAL: deliveryDate - delivery date string in ISO format e.g. \"2022-04-06T08:00:00.000+03:00\" when not encoded\n\n* OPTIONAL: extraStops - any extra stops between origin and destination. Value is an array of strings with up to 10 elements\nin the format of `{order}_{type}_{country}_{address}` \ntypes are `{numbers 0-9}_{CITY or ZIP}_{US or CA}_{if ZIP then 5+ digits, if CITY then city state string separated by space}`\n\nExamples (don't forget to encode the url):\n\n https://intelligence.triumph.io/rates?originZip=12345&destinationZip=62345&transportType=VAN\n\n https://intelligence.triumph.io/rates?originCityState=Wausau%20WI&destinationCityState=Evansville%20IN&transportType=VAN\n\n https://intelligence.triumph.io/rates?originZip=12345&destinationCityState=Evansville%20IN&transportType=VAN\n\n https://intelligence.triumph.io/rates?originZip=12345&destinationZip=62345&extraStops=0_ZIP_US_28086&extraStops=1_CITY_US_Portland%20OR&transportType=VAN\n\nExample usage:\n\n <button\n onclick=\"location.href='https://intelligence.triumph.io/rates?destinationZip=62345&originZip=12345&transportType=VAN'\"\n type=\"button\">Quote new lane\n <button>\n\n\n# \n\n\n# \n\n\n# Services and endpoints\n\nThe most versatile (and involving the most work) way of integration is by using our API directly.\nBelow you can find a list of servises and endpoints available for usage.\n"
version: 1.3.3
termsOfService: https://triumph.io/terms-of-service/
contact:
name: API Support
email: support@greenscreens.ai
url: https://connect.intelligence.triumph.io
tags:
- name: TMS
description: 'TmsConnector service v2
<a href="/tmsconnector/v2/redoc/" target="_blank">View separately</a>
<a href="/tmsconnector/v2/swagger/index.html" target="_blank">Try it in swagger</a>'
x-displayName: TMS
paths:
/tms/import-load:
servers:
- url: https://testapi.greenscreens.ai/v2
description: Testing server (dev environment)
- url: https://sandboxapi.greenscreens.ai/v2
description: Sandbox server (as stable as production, but has no data)
- url: https://api.greenscreens.ai/v2
description: Production server (uses live data)
post:
tags:
- TMS
summary: Import load
security:
- TmsConnector_bearerAuth: []
description: Import a new load or update an existing one
operationId: tmsImportLoad
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TmsConnector_ImportLoadRequest'
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TmsConnector_ImportLoadResponse'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/TmsConnector_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/TmsConnector_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/TmsConnector_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
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/TmsConnector_Error'
examples:
error429TooManyRequests:
value:
code: too_many_requests
message: Request limit exceeded
'500':
description: Unhandled server error
content:
application/json:
schema:
$ref: '#/components/schemas/TmsConnector_Error'
examples:
error500Example:
value:
code: internal_error
message: Internal server error
x-codeSamples:
- lang: Node + Request
source: "const request = require('request');\n\nconst options = {\n method: 'POST',\n url: 'https://testapi.greenscreens.ai/v2/tms/import-load',\n headers: {\n 'content-type': 'application/json',\n Authorization: 'Bearer REPLACE_BEARER_TOKEN'\n },\n body: {\n loadId: '12345',\n origin: {\n country: 'US',\n city: 'Sacramento',\n state: 'CA',\n zip: '95814',\n appointmentDateTime: '2020-10-13T09:00:00Z',\n scheduledAppointmentStartedAt: '2020-10-13T09:00:00Z',\n scheduledAppointmentEndedAt: '2020-10-13T11:00:00Z',\n arrivedAt: '2020-10-13T09:15:00Z',\n departedAt: '2020-10-13T10:45:00Z'\n },\n destination: {\n country: 'US',\n city: 'Sacramento',\n state: 'CA',\n zip: '95814',\n appointmentDateTime: '2020-10-13T09:00:00Z',\n scheduledAppointmentStartedAt: '2020-10-13T09:00:00Z',\n scheduledAppointmentEndedAt: '2020-10-13T11:00:00Z',\n arrivedAt: '2020-10-13T09:15:00Z',\n departedAt: '2020-10-13T10:45:00Z'\n },\n extraStops: [\n {\n order: 0,\n address: {country: 'US', city: 'Red Bluff', state: 'CA', zip: '96080'},\n type: 'LOAD',\n appointmentDateTime: '2020-10-14T16:00:00Z'\n },\n {\n order: 1,\n address: {country: 'US', city: 'Redding', state: 'CA', zip: '96002'},\n type: 'UNLOAD',\n appointmentDateTime: '2020-10-15T16:00:00Z'\n }\n ],\n rate: {\n totalShipperLinehaulCost: 1176,\n totalLinehaulCost: 956,\n totalFuelCost: 45,\n accessorials: [{name: 'Overweight', shipperCost: 200, carrierCost: 0}],\n totalShipperCost: 1276,\n totalCarrierCost: 1130,\n currency: 'USD'\n },\n pickupDate: '2021-09-21T13:00:00-04:00',\n deliveredDate: '2021-09-22T18:00:00-04:00',\n transportType: 'VR',\n transportTypeGroup: 'VAN',\n transportMode: 'FTL',\n status: 'OPEN',\n details: {\n distance: 434,\n miles: 434,\n commodity: 'Racks',\n weight: 22000,\n tenderedDate: '2020-01-11T16:00:00Z',\n bookedDate: '2020-01-11T16:00:00Z',\n tordFlag: false,\n hazmat: false,\n hotshot: false,\n teamDrive: false,\n overdimensional: false,\n dedicatedCarrierContract: false,\n asset: false,\n pricingType: 'Spot',\n pricingTypeGroup: 'SPOT',\n carrierAccountManager: 'John Doe',\n shipperAccountManager: 'John Doe',\n salesManager: 'John Doe',\n userGroupId: 'Main office',\n office: 'Main office'\n },\n shipper: {id: '12345', name: 'Shipper company'},\n carrier: {id: '12345', name: 'Carrier company'}\n },\n json: true\n};\n\nrequest(options, function (error, response, body) {\n if (error) throw new Error(error);\n\n console.log(body);\n});\n"
- lang: Python + Requests
source: "import requests\n\nurl = \"https://testapi.greenscreens.ai/v2/tms/import-load\"\n\npayload = {\n \"loadId\": \"12345\",\n \"origin\": {\n \"country\": \"US\",\n \"city\": \"Sacramento\",\n \"state\": \"CA\",\n \"zip\": \"95814\",\n \"appointmentDateTime\": \"2020-10-13T09:00:00Z\",\n \"scheduledAppointmentStartedAt\": \"2020-10-13T09:00:00Z\",\n \"scheduledAppointmentEndedAt\": \"2020-10-13T11:00:00Z\",\n \"arrivedAt\": \"2020-10-13T09:15:00Z\",\n \"departedAt\": \"2020-10-13T10:45:00Z\"\n },\n \"destination\": {\n \"country\": \"US\",\n \"city\": \"Sacramento\",\n \"state\": \"CA\",\n \"zip\": \"95814\",\n \"appointmentDateTime\": \"2020-10-13T09:00:00Z\",\n \"scheduledAppointmentStartedAt\": \"2020-10-13T09:00:00Z\",\n \"scheduledAppointmentEndedAt\": \"2020-10-13T11:00:00Z\",\n \"arrivedAt\": \"2020-10-13T09:15:00Z\",\n \"departedAt\": \"2020-10-13T10:45:00Z\"\n },\n \"extraStops\": [\n {\n \"order\": 0,\n \"address\": {\n \"country\": \"US\",\n \"city\": \"Red Bluff\",\n \"state\": \"CA\",\n \"zip\": \"96080\"\n },\n \"type\": \"LOAD\",\n \"appointmentDateTime\": \"2020-10-14T16:00:00Z\"\n },\n {\n \"order\": 1,\n \"address\": {\n \"country\": \"US\",\n \"city\": \"Redding\",\n \"state\": \"CA\",\n \"zip\": \"96002\"\n },\n \"type\": \"UNLOAD\",\n \"appointmentDateTime\": \"2020-10-15T16:00:00Z\"\n }\n ],\n \"rate\": {\n \"totalShipperLinehaulCost\": 1176,\n \"totalLinehaulCost\": 956,\n \"totalFuelCost\": 45,\n \"accessorials\": [\n {\n \"name\": \"Overweight\",\n \"shipperCost\": 200,\n \"carrierCost\": 0\n }\n ],\n \"totalShipperCost\": 1276,\n \"totalCarrierCost\": 1130,\n \"currency\": \"USD\"\n },\n \"pickupDate\": \"2021-09-21T13:00:00-04:00\",\n \"deliveredDate\": \"2021-09-22T18:00:00-04:00\",\n \"transportType\": \"VR\",\n \"transportTypeGroup\": \"VAN\",\n \"transportMode\": \"FTL\",\n \"status\": \"OPEN\",\n \"details\": {\n \"distance\": 434,\n \"miles\": 434,\n \"commodity\": \"Racks\",\n \"weight\": 22000,\n \"tenderedDate\": \"2020-01-11T16:00:00Z\",\n \"bookedDate\": \"2020-01-11T16:00:00Z\",\n \"tordFlag\": False,\n \"hazmat\": False,\n \"hotshot\": False,\n \"teamDrive\": False,\n \"overdimensional\": False,\n \"dedicatedCarrierContract\": False,\n \"asset\": False,\n \"pricingType\": \"Spot\",\n \"pricingTypeGroup\": \"SPOT\",\n \"carrierAccountManager\": \"John Doe\",\n \"shipperAccountManager\": \"John Doe\",\n \"salesManager\": \"John Doe\",\n \"userGroupId\": \"Main office\",\n \"office\": \"Main office\"\n },\n \"shipper\": {\n \"id\": \"12345\",\n \"name\": \"Shipper company\"\n },\n \"carrier\": {\n \"id\": \"12345\",\n \"name\": \"Carrier company\"\n }\n}\nheaders = {\n \"content-type\": \"application/json\",\n \"Authorization\": \"Bearer REPLACE_BEARER_TOKEN\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers)\n\nprint(response.text)"
- lang: Php + Curl
source: "<?php\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n CURLOPT_URL => \"https://testapi.greenscreens.ai/v2/tms/import-load\",\n CURLOPT_RETURNTRANSFER => true,\n CURLOPT_ENCODING => \"\",\n CURLOPT_MAXREDIRS => 10,\n CURLOPT_TIMEOUT => 30,\n CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n CURLOPT_CUSTOMREQUEST => \"POST\",\n CURLOPT_POSTFIELDS => \"{\\\"loadId\\\":\\\"12345\\\",\\\"origin\\\":{\\\"country\\\":\\\"US\\\",\\\"city\\\":\\\"Sacramento\\\",\\\"state\\\":\\\"CA\\\",\\\"zip\\\":\\\"95814\\\",\\\"appointmentDateTime\\\":\\\"2020-10-13T09:00:00Z\\\",\\\"scheduledAppointmentStartedAt\\\":\\\"2020-10-13T09:00:00Z\\\",\\\"scheduledAppointmentEndedAt\\\":\\\"2020-10-13T11:00:00Z\\\",\\\"arrivedAt\\\":\\\"2020-10-13T09:15:00Z\\\",\\\"departedAt\\\":\\\"2020-10-13T10:45:00Z\\\"},\\\"destination\\\":{\\\"country\\\":\\\"US\\\",\\\"city\\\":\\\"Sacramento\\\",\\\"state\\\":\\\"CA\\\",\\\"zip\\\":\\\"95814\\\",\\\"appointmentDateTime\\\":\\\"2020-10-13T09:00:00Z\\\",\\\"scheduledAppointmentStartedAt\\\":\\\"2020-10-13T09:00:00Z\\\",\\\"scheduledAppointmentEndedAt\\\":\\\"2020-10-13T11:00:00Z\\\",\\\"arrivedAt\\\":\\\"2020-10-13T09:15:00Z\\\",\\\"departedAt\\\":\\\"2020-10-13T10:45:00Z\\\"},\\\"extraStops\\\":[{\\\"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\\\"}],\\\"rate\\\":{\\\"totalShipperLinehaulCost\\\":1176,\\\"totalLinehaulCost\\\":956,\\\"totalFuelCost\\\":45,\\\"accessorials\\\":[{\\\"name\\\":\\\"Overweight\\\",\\\"shipperCost\\\":200,\\\"carrierCost\\\":0}],\\\"totalShipperCost\\\":1276,\\\"totalCarrierCost\\\":1130,\\\"currency\\\":\\\"USD\\\"},\\\"pickupDate\\\":\\\"2021-09-21T13:00:00-04:00\\\",\\\"deliveredDate\\\":\\\"2021-09-22T18:00:00-04:00\\\",\\\"transportType\\\":\\\"VR\\\",\\\"transportTypeGroup\\\":\\\"VAN\\\",\\\"transportMode\\\":\\\"FTL\\\",\\\"status\\\":\\\"OPEN\\\",\\\"details\\\":{\\\"distance\\\":434,\\\"miles\\\":434,\\\"commodity\\\":\\\"Racks\\\",\\\"weight\\\":22000,\\\"tenderedDate\\\":\\\"2020-01-11T16:00:00Z\\\",\\\"bookedDate\\\":\\\"2020-01-11T16:00:00Z\\\",\\\"tordFlag\\\":false,\\\"hazmat\\\":false,\\\"hotshot\\\":false,\\\"teamDrive\\\":false,\\\"overdimensional\\\":false,\\\"dedicatedCarrierContract\\\":false,\\\"asset\\\":false,\\\"pricingType\\\":\\\"Spot\\\",\\\"pricingTypeGroup\\\":\\\"SPOT\\\",\\\"carrierAccountManager\\\":\\\"John Doe\\\",\\\"shipperAccountManager\\\":\\\"John Doe\\\",\\\"salesManager\\\":\\\"John Doe\\\",\\\"userGroupId\\\":\\\"Main office\\\",\\\"office\\\":\\\"Main office\\\"},\\\"shipper\\\":{\\\"id\\\":\\\"12345\\\",\\\"name\\\":\\\"Shipper company\\\"},\\\"carrier\\\":{\\\"id\\\":\\\"12345\\\",\\\"name\\\":\\\"Carrier company\\\"}}\",\n CURLOPT_HTTPHEADER => [\n \"Authorization: Bearer REPLACE_BEARER_TOKEN\",\n \"content-type: application/json\"\n ],\n]);\n\n$response = curl_exec($curl);\n$err = curl_error($curl);\n\ncurl_close($curl);\n\nif ($err) {\n echo \"cURL Error #:\" . $err;\n} else {\n echo $response;\n}"
/tms/batch/import-load:
servers:
- url: https://testapi.greenscreens.ai/v2
description: Testing server (dev environment)
- url: https://sandboxapi.greenscreens.ai/v2
description: Sandbox server (as stable as production, but has no data)
- url: https://api.greenscreens.ai/v2
description: Production server (uses live data)
post:
tags:
- TMS
summary: Imports loads in batches
security:
- TmsConnector_bearerAuth: []
description: Used to import and/or update loads in batches
operationId: tmsBatchImportLoad
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TmsConnector_BatchImportLoadRequest'
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TmsConnector_BatchImportLoadResponse'
'400':
$ref: '#/paths/~1tms~1import-load/post/responses/400'
'401':
$ref: '#/paths/~1tms~1import-load/post/responses/401'
'403':
$ref: '#/paths/~1tms~1import-load/post/responses/403'
'422':
$ref: '#/paths/~1tms~1import-load/post/responses/422'
'429':
$ref: '#/paths/~1tms~1import-load/post/responses/429'
'500':
$ref: '#/paths/~1tms~1import-load/post/responses/500'
x-codeSamples:
- lang: Node + Request
source: "const request = require('request');\n\nconst options = {\n method: 'POST',\n url: 'https://testapi.greenscreens.ai/v2/tms/batch/import-load',\n headers: {\n 'content-type': 'application/json',\n Authorization: 'Bearer REPLACE_BEARER_TOKEN'\n },\n body: {\n loads: [\n {\n loadId: '12345',\n origin: {\n country: 'US',\n city: 'Sacramento',\n state: 'CA',\n zip: '95814',\n appointmentDateTime: '2020-10-13T09:00:00Z',\n scheduledAppointmentStartedAt: '2020-10-13T09:00:00Z',\n scheduledAppointmentEndedAt: '2020-10-13T11:00:00Z',\n arrivedAt: '2020-10-13T09:15:00Z',\n departedAt: '2020-10-13T10:45:00Z'\n },\n destination: {\n country: 'US',\n city: 'Sacramento',\n state: 'CA',\n zip: '95814',\n appointmentDateTime: '2020-10-13T09:00:00Z',\n scheduledAppointmentStartedAt: '2020-10-13T09:00:00Z',\n scheduledAppointmentEndedAt: '2020-10-13T11:00:00Z',\n arrivedAt: '2020-10-13T09:15:00Z',\n departedAt: '2020-10-13T10:45:00Z'\n },\n extraStops: [\n {\n order: 0,\n address: {country: 'US', city: 'Red Bluff', state: 'CA', zip: '96080'},\n type: 'LOAD',\n appointmentDateTime: '2020-10-14T16:00:00Z'\n },\n {\n order: 1,\n address: {country: 'US', city: 'Redding', state: 'CA', zip: '96002'},\n type: 'UNLOAD',\n appointmentDateTime: '2020-10-15T16:00:00Z'\n }\n ],\n rate: {\n totalShipperLinehaulCost: 1176,\n totalLinehaulCost: 956,\n totalFuelCost: 45,\n accessorials: [{name: 'Overweight', shipperCost: 200, carrierCost: 0}],\n totalShipperCost: 1276,\n totalCarrierCost: 1130,\n currency: 'USD'\n },\n pickupDate: '2021-09-21T13:00:00-04:00',\n deliveredDate: '2021-09-22T18:00:00-04:00',\n transportType: 'VR',\n transportTypeGroup: 'VAN',\n transportMode: 'FTL',\n status: 'OPEN',\n details: {\n distance: 434,\n miles: 434,\n commodity: 'Racks',\n weight: 22000,\n tenderedDate: '2020-01-11T16:00:00Z',\n bookedDate: '2020-01-11T16:00:00Z',\n tordFlag: false,\n hazmat: false,\n hotshot: false,\n teamDrive: false,\n overdimensional: false,\n dedicatedCarrierContract: false,\n asset: false,\n pricingType: 'Spot',\n pricingTypeGroup: 'SPOT',\n carrierAccountManager: 'John Doe',\n shipperAccountManager: 'John Doe',\n salesManager: 'John Doe',\n userGroupId: 'Main office',\n office: 'Main office'\n },\n shipper: {id: '12345', name: 'Shipper company'},\n carrier: {id: '12345', name: 'Carrier company'}\n }\n ]\n },\n json: true\n};\n\nrequest(options, function (error, response, body) {\n if (error) throw new Error(error);\n\n console.log(body);\n});\n"
- lang: Python + Requests
source: "import requests\n\nurl = \"https://testapi.greenscreens.ai/v2/tms/batch/import-load\"\n\npayload = {\"loads\": [\n {\n \"loadId\": \"12345\",\n \"origin\": {\n \"country\": \"US\",\n \"city\": \"Sacramento\",\n \"state\": \"CA\",\n \"zip\": \"95814\",\n \"appointmentDateTime\": \"2020-10-13T09:00:00Z\",\n \"scheduledAppointmentStartedAt\": \"2020-10-13T09:00:00Z\",\n \"scheduledAppointmentEndedAt\": \"2020-10-13T11:00:00Z\",\n \"arrivedAt\": \"2020-10-13T09:15:00Z\",\n \"departedAt\": \"2020-10-13T10:45:00Z\"\n },\n \"destination\": {\n \"country\": \"US\",\n \"city\": \"Sacramento\",\n \"state\": \"CA\",\n \"zip\": \"95814\",\n \"appointmentDateTime\": \"2020-10-13T09:00:00Z\",\n \"scheduledAppointmentStartedAt\": \"2020-10-13T09:00:00Z\",\n \"scheduledAppointmentEndedAt\": \"2020-10-13T11:00:00Z\",\n \"arrivedAt\": \"2020-10-13T09:15:00Z\",\n \"departedAt\": \"2020-10-13T10:45:00Z\"\n },\n \"extraStops\": [\n {\n \"order\": 0,\n \"address\": {\n \"country\": \"US\",\n \"city\": \"Red Bluff\",\n \"state\": \"CA\",\n \"zip\": \"96080\"\n },\n \"type\": \"LOAD\",\n \"appointmentDateTime\": \"2020-10-14T16:00:00Z\"\n },\n {\n \"order\": 1,\n \"address\": {\n \"country\": \"US\",\n \"city\": \"Redding\",\n \"state\": \"CA\",\n \"zip\": \"96002\"\n },\n \"type\": \"UNLOAD\",\n \"appointmentDateTime\": \"2020-10-15T16:00:00Z\"\n }\n ],\n \"rate\": {\n \"totalShipperLinehaulCost\": 1176,\n \"totalLinehaulCost\": 956,\n \"totalFuelCost\": 45,\n \"accessorials\": [\n {\n \"name\": \"Overweight\",\n \"shipperCost\": 200,\n \"carrierCost\": 0\n }\n ],\n \"totalShipperCost\": 1276,\n \"totalCarrierCost\": 1130,\n \"currency\": \"USD\"\n },\n \"pickupDate\": \"2021-09-21T13:00:00-04:00\",\n \"deliveredDate\": \"2021-09-22T18:00:00-04:00\",\n \"transportType\": \"VR\",\n \"transportTypeGroup\": \"VAN\",\n \"transportMode\": \"FTL\",\n \"status\": \"OPEN\",\n \"details\": {\n \"distance\": 434,\n \"miles\": 434,\n \"commodity\": \"Racks\",\n \"weight\": 22000,\n \"tenderedDate\": \"2020-01-11T16:00:00Z\",\n \"bookedDate\": \"2020-01-11T16:00:00Z\",\n \"tordFlag\": False,\n \"hazmat\": False,\n \"hotshot\": False,\n \"teamDrive\": False,\n \"overdimensional\": False,\n \"dedicatedCarrierContract\": False,\n \"asset\": False,\n \"pricingType\": \"Spot\",\n \"pricingTypeGroup\": \"SPOT\",\n \"carrierAccountManager\": \"John Doe\",\n \"shipperAccountManager\": \"John Doe\",\n \"salesManager\": \"John Doe\",\n \"userGroupId\": \"Main office\",\n \"office\": \"Main office\"\n },\n \"shipper\": {\n \"id\": \"12345\",\n \"name\": \"Shipper company\"\n },\n \"carrier\": {\n \"id\": \"12345\",\n \"name\": \"Carrier company\"\n }\n }\n ]}\nheaders = {\n \"content-type\": \"application/json\",\n \"Authorization\": \"Bearer REPLACE_BEARER_TOKEN\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers)\n\nprint(response.text)"
- lang: Php + Curl
source: "<?php\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n CURLOPT_URL => \"https://testapi.greenscreens.ai/v2/tms/batch/import-load\",\n CURLOPT_RETURNTRANSFER => true,\n CURLOPT_ENCODING => \"\",\n CURLOPT_MAXREDIRS => 10,\n CURLOPT_TIMEOUT => 30,\n CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n CURLOPT_CUSTOMREQUEST => \"POST\",\n CURLOPT_POSTFIELDS => \"{\\\"loads\\\":[{\\\"loadId\\\":\\\"12345\\\",\\\"origin\\\":{\\\"country\\\":\\\"US\\\",\\\"city\\\":\\\"Sacramento\\\",\\\"state\\\":\\\"CA\\\",\\\"zip\\\":\\\"95814\\\",\\\"appointmentDateTime\\\":\\\"2020-10-13T09:00:00Z\\\",\\\"scheduledAppointmentStartedAt\\\":\\\"2020-10-13T09:00:00Z\\\",\\\"scheduledAppointmentEndedAt\\\":\\\"2020-10-13T11:00:00Z\\\",\\\"arrivedAt\\\":\\\"2020-10-13T09:15:00Z\\\",\\\"departedAt\\\":\\\"2020-10-13T10:45:00Z\\\"},\\\"destination\\\":{\\\"country\\\":\\\"US\\\",\\\"city\\\":\\\"Sacramento\\\",\\\"state\\\":\\\"CA\\\",\\\"zip\\\":\\\"95814\\\",\\\"appointmentDateTime\\\":\\\"2020-10-13T09:00:00Z\\\",\\\"scheduledAppointmentStartedAt\\\":\\\"2020-10-13T09:00:00Z\\\",\\\"scheduledAppointmentEndedAt\\\":\\\"2020-10-13T11:00:00Z\\\",\\\"arrivedAt\\\":\\\"2020-10-13T09:15:00Z\\\",\\\"departedAt\\\":\\\"2020-10-13T10:45:00Z\\\"},\\\"extraStops\\\":[{\\\"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\\\"}],\\\"rate\\\":{\\\"totalShipperLinehaulCost\\\":1176,\\\"totalLinehaulCost\\\":956,\\\"totalFuelCost\\\":45,\\\"accessorials\\\":[{\\\"name\\\":\\\"Overweight\\\",\\\"shipperCost\\\":200,\\\"carrierCost\\\":0}],\\\"totalShipperCost\\\":1276,\\\"totalCarrierCost\\\":1130,\\\"currency\\\":\\\"USD\\\"},\\\"pickupDate\\\":\\\"2021-09-21T13:00:00-04:00\\\",\\\"deliveredDate\\\":\\\"2021-09-22T18:00:00-04:00\\\",\\\"transportType\\\":\\\"VR\\\",\\\"transportTypeGroup\\\":\\\"VAN\\\",\\\"transportMode\\\":\\\"FTL\\\",\\\"status\\\":\\\"OPEN\\\",\\\"details\\\":{\\\"distance\\\":434,\\\"miles\\\":434,\\\"commodity\\\":\\\"Racks\\\",\\\"weight\\\":22000,\\\"tenderedDate\\\":\\\"2020-01-11T16:00:00Z\\\",\\\"bookedDate\\\":\\\"2020-01-11T16:00:00Z\\\",\\\"tordFlag\\\":false,\\\"hazmat\\\":false,\\\"hotshot\\\":false,\\\"teamDrive\\\":false,\\\"overdimensional\\\":false,\\\"dedicatedCarrierContract\\\":false,\\\"asset\\\":false,\\\"pricingType\\\":\\\"Spot\\\",\\\"pricingTypeGroup\\\":\\\"SPOT\\\",\\\"carrierAccountManager\\\":\\\"John Doe\\\",\\\"shipperAccountManager\\\":\\\"John Doe\\\",\\\"salesManager\\\":\\\"John Doe\\\",\\\"userGroupId\\\":\\\"Main office\\\",\\\"office\\\":\\\"Main office\\\"},\\\"shipper\\\":{\\\"id\\\":\\\"12345\\\",\\\"name\\\":\\\"Shipper company\\\"},\\\"carrier\\\":{\\\"id\\\":\\\"12345\\\",\\\"name\\\":\\\"Carrier company\\\"}}]}\",\n CURLOPT_HTTPHEADER => [\n \"Authorization: Bearer REPLACE_BEARER_TOKEN\",\n \"content-type: application/json\"\n ],\n]);\n\n$response = curl_exec($curl);\n$err = curl_error($curl);\n\ncurl_close($curl);\n\nif ($err) {\n echo \"cURL Error #:\" . $err;\n} else {\n echo $response;\n}"
/tms/import-carrier:
servers:
- url: https://testapi.greenscreens.ai/v2
description: Testing server (dev environment)
- url: https://sandboxapi.greenscreens.ai/v2
description: Sandbox server (as stable as production, but has no data)
- url: https://api.greenscreens.ai/v2
description: Production server (uses live data)
post:
tags:
- TMS
summary: Import carrier
security:
- TmsConnector_bearerAuth: []
description: Import a new carrier or update an existing one
operationId: tmsImportCarrier
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TmsConnector_CarrierProfile'
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TmsConnector_ImportProfileResponse'
'400':
$ref: '#/paths/~1tms~1import-load/post/responses/400'
'401':
$ref: '#/paths/~1tms~1import-load/post/responses/401'
'403':
$ref: '#/paths/~1tms~1import-load/post/responses/403'
'422':
description: Unprocessable Entity.
content:
application/json:
schema:
$ref: '#/components/schemas/TmsConnector_Error'
examples:
error422Example:
value:
code: missing_property
message: 'Missing property: body'
'429':
$ref: '#/paths/~1tms~1import-load/post/responses/429'
'500':
$ref: '#/paths/~1tms~1import-load/post/responses/500'
x-codeSamples:
- lang: Node + Request
source: "const request = require('request');\n\nconst options = {\n method: 'POST',\n url: 'https://testapi.greenscreens.ai/v2/tms/import-carrier',\n headers: {\n 'content-type': 'application/json',\n Authorization: 'Bearer REPLACE_BEARER_TOKEN'\n },\n body: {\n profileId: '13441524',\n companyName: 'Carggo',\n legalName: 'Carggo',\n mc: '122356',\n dot: '87650005',\n scac: 'CGGK',\n contact: {name: 'John', phoneNumber: '121331343', email: 'my@email.com'},\n status: 'ACTIVE'\n },\n json: true\n};\n\nrequest(options, function (error, response, body) {\n if (error) throw new Error(error);\n\n console.log(body);\n});\n"
- lang: Python + Requests
source: "import requests\n\nurl = \"https://testapi.greenscreens.ai/v2/tms/import-carrier\"\n\npayload = {\n \"profileId\": \"13441524\",\n \"companyName\": \"Carggo\",\n \"legalName\": \"Carggo\",\n \"mc\": \"122356\",\n \"dot\": \"87650005\",\n \"scac\": \"CGGK\",\n \"contact\": {\n \"name\": \"John\",\n \"phoneNumber\": \"121331343\",\n \"email\": \"my@email.com\"\n },\n \"status\": \"ACTIVE\"\n}\nheaders = {\n \"content-type\": \"application/json\",\n \"Authorization\": \"Bearer REPLACE_BEARER_TOKEN\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers)\n\nprint(response.text)"
- lang: Php + Curl
source: "<?php\n\n$cu
# --- truncated at 32 KB (74 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/green-screens-ai/refs/heads/main/openapi/green-screens-ai-tms-api-openapi.yml