{ "aid": "swaggerhub.truckertools:broker-carrier-invoice-api-1.0.4", "name": "Invoice Api", "type": "Index", "description": "Create or update an invoice of a load\n\n# Overview\n\n- Retrieve authentication keys from TruckerTools\n- Create authentication signatures for each Request\n- Send invoice updates to TruckerTools\n\n# Authentication\nAuthentication is done using the provided API Key and a Signature, encrypted using the Secret\nKey, in the header of the API call.\n\n```\nX-Api-Key: ${ApiKey}\nX-Signature: ${Signature}\n```\n\n| Sample Keys | |\n| - | - |\n| API Key | `f3f4b655b406bfa2e5ea81d02e862db0` |\n| Secret Key | `37d7118e12551a58a5431db8a6944baef085426b7b2bd07b1249b7a11f7ea289` |\n\n## Steps to create encrypted signature\n\n1. Build a URL-encoded query string with the following values:\n\n | Field | Description | Example |\n | - | - | - |\n | `accountId` | This is your Account ID which will be provided to you. | `12345` |\n | `userName` | This is the email of the user that needs access to the SmartCapacity system. | `user@domain.com` |\n | `timestamp` | Current time in UTC when the request was initiated in `YYYYMMDDHHmmss` format. The request should reach Trucker Tools within 10 minutes from this timestamp. | `20220315153030` |\n\n ```\n accountId=12345&userName=user%40domain.com×tamp=20220315153030\n ```\n\n2. Encrypt the string using the AES-256-CBC encryption method, using the MD5 hash of the\n Secret Key as the passphrase and the first 16 characters of the secret key as the IV (initialization\n vector), then get the result as a UTF8-encoded, base 64 string.\n\n | Encryption | |\n |-|-|\n | **Cipher Algorithm** | AES |\n | **Mode** | CBC |\n | **Key Size** | 256 |\n | **Data** | `accountId=12345&userName=user%40domain.com×tamp=20220315153030` |\n | **Passphrase** | `56d64066e6035e0ac38d246a27c71027` |\n | **IV / Nonce** | `37d7118e12551a58` |\n\n ```\n aIvJ83KqAw/T/L+xHkyzwW75xwSrjZZTxN2drRYyOqtrxJoSkb/pdpAG+Pl+RT+XuVv0Gfwe1774GLtxFWNgNbv9Ko4chfboDfLqD5Mvgno=\n ```\n\n3. In order to use the output above in API calls we need to make it URL safe. To do that you need to:\n\n - replace all `+` (plus) characters with `-` (dash)\n - replace all `/` (slash) characters with `_` (underscore)\n - remove all `=` (equal) characters\n\n ```\n aIvJ83KqAw_T_L-xHkyzwW75xwSrjZZTxN2drRYyOqtrxJoSkb_pdpAG-Pl-RT-XuVv0Gfwe1774GLtxFWNgNbv9Ko4chfboDfLqD5Mvgno\n ```\n\n4. Convert signature to Base 64 encoding:\n\n ```\n YUl2SjgzS3FBd19UX0wteEhreXp3Vzc1eHdTcmpaWlR4TjJkclJZeU9xdHJ4Sm9Ta2JfcGRwQUctUGwtUlQtWHVWdjBHZndlMTc3NEdMdHhGV05nTmJ2OUtvNGNoZmJvRGZMcUQ1TXZnbm8=\n ```\n", "url": "https://raw.githubusercontent.com/jentic/jentic-public-apis/refs/heads/main/apis/openapi/swaggerhub.truckertools/broker-carrier-invoice-api/1.0.4/apis.json", "tags": [ "swaggerhub.truckertools", "broker-carrier-invoice-api" ], "created": "2026-04-01", "modified": "2026-04-01", "specificationVersion": "0.19", "access": "3rd-Party", "maintainers": [ { "FN": "Jentic", "X-github": "jentic", "url": "https://github.com/jentic" } ], "apis": [ { "aid": "swaggerhub.truckertools:broker-carrier-invoice-api-1.0.4", "name": "Invoice Api", "description": "Create or update an invoice of a load\n\n# Overview\n\n- Retrieve authentication keys from TruckerTools\n- Create authentication signatures for each Request\n- Send invoice updates to TruckerTools\n\n# Authentication\nAuthentication is done using the provided API Key and a Signature, encrypted using the Secret\nKey, in the header of the API call.\n\n```\nX-Api-Key: ${ApiKey}\nX-Signature: ${Signature}\n```\n\n| Sample Keys | |\n| - | - |\n| API Key | `f3f4b655b406bfa2e5ea81d02e862db0` |\n| Secret Key | `37d7118e12551a58a5431db8a6944baef085426b7b2bd07b1249b7a11f7ea289` |\n\n## Steps to create encrypted signature\n\n1. Build a URL-encoded query string with the following values:\n\n | Field | Description | Example |\n | - | - | - |\n | `accountId` | This is your Account ID which will be provided to you. | `12345` |\n | `userName` | This is the email of the user that needs access to the SmartCapacity system. | `user@domain.com` |\n | `timestamp` | Current time in UTC when the request was initiated in `YYYYMMDDHHmmss` format. The request should reach Trucker Tools within 10 minutes from this timestamp. | `20220315153030` |\n\n ```\n accountId=12345&userName=user%40domain.com×tamp=20220315153030\n ```\n\n2. Encrypt the string using the AES-256-CBC encryption method, using the MD5 hash of the\n Secret Key as the passphrase and the first 16 characters of the secret key as the IV (initialization\n vector), then get the result as a UTF8-encoded, base 64 string.\n\n | Encryption | |\n |-|-|\n | **Cipher Algorithm** | AES |\n | **Mode** | CBC |\n | **Key Size** | 256 |\n | **Data** | `accountId=12345&userName=user%40domain.com×tamp=20220315153030` |\n | **Passphrase** | `56d64066e6035e0ac38d246a27c71027` |\n | **IV / Nonce** | `37d7118e12551a58` |\n\n ```\n aIvJ83KqAw/T/L+xHkyzwW75xwSrjZZTxN2drRYyOqtrxJoSkb/pdpAG+Pl+RT+XuVv0Gfwe1774GLtxFWNgNbv9Ko4chfboDfLqD5Mvgno=\n ```\n\n3. In order to use the output above in API calls we need to make it URL safe. To do that you need to:\n\n - replace all `+` (plus) characters with `-` (dash)\n - replace all `/` (slash) characters with `_` (underscore)\n - remove all `=` (equal) characters\n\n ```\n aIvJ83KqAw_T_L-xHkyzwW75xwSrjZZTxN2drRYyOqtrxJoSkb_pdpAG-Pl-RT-XuVv0Gfwe1774GLtxFWNgNbv9Ko4chfboDfLqD5Mvgno\n ```\n\n4. Convert signature to Base 64 encoding:\n\n ```\n YUl2SjgzS3FBd19UX0wteEhreXp3Vzc1eHdTcmpaWlR4TjJkclJZeU9xdHJ4Sm9Ta2JfcGRwQUctUGwtUlQtWHVWdjBHZndlMTc3NEdMdHhGV05nTmJ2OUtvNGNoZmJvRGZMcUQ1TXZnbm8=\n ```\n", "image": "", "baseURL": "https://scapi.truckertools.com", "humanURL": "https://github.com/jentic/jentic-public-apis/tree/main/apis/openapi/swaggerhub.truckertools/broker-carrier-invoice-api/1.0.4", "version": "1.0.4", "tags": [ "swaggerhub.truckertools", "broker-carrier-invoice-api" ], "properties": [ { "type": "OpenAPI", "name": "OpenAPI definition", "url": "https://raw.githubusercontent.com/jentic/jentic-public-apis/refs/heads/main/apis/openapi/swaggerhub.truckertools/broker-carrier-invoice-api/1.0.4/openapi.json", "mediaType": "application/openapi+json" }, { "type": "GitHubRepo", "url": "https://github.com/jentic/jentic-public-apis/tree/main/apis/openapi/swaggerhub.truckertools/broker-carrier-invoice-api/1.0.4" } ], "contact": [ { "FN": "integrations@truckertools.com", "email": "integrations@truckertools.com" } ] } ] }