### Authenticate to Thumbprint API Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_thumbprint This snippet shows how to authenticate to the Thumbprint API by making a GET request to the /authenticate endpoint. It requires an Authorization header with base64-encoded credentials and an MT-Product header. ```HTTP GET https://insights.moneythumb.com/api/v1.5/authenticate Headers: Authorization: Basic [base64-encoded username:password] MT-Product: thumbprint ``` -------------------------------- ### Get a Thumbprint score Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_thumbprint Upload PDF documents to the API to receive a Thumbprint score and statement summaries. This endpoint supports uploading multiple files at once. ```APIDOC ## POST /api/v1.5/uploadpdfs ### Description Uploads PDF documents for fraud detection and returns statement summaries with fraud scores. ### Method POST ### Endpoint https://insights.moneythumb.com/api/v1.5/uploadpdfs ### Parameters #### Headers - **Authorization** (string) - Required - `Bearer [session token]` - **MT-Product** (string) - Required - `thumbprint` - **Content-Type** (string) - Required - `multipart/form-data` #### Request Body - **appnumber** (string) - Required - Any string to identify this application. - **pdf-filename** (blob) - Required - The PDF file (e.g., bank statement) to upload. - **webhook** (string) - Optional - The URL to send callback results to (e.g., `https://www.mydomain.com/my-endpoint`). ### Request Example ``` POST /api/v1.5/uploadpdfs HTTP/1.1 Host: insights.moneythumb.com Authorization: Bearer [session token] MT-Product: thumbprint Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW ------WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition: form-data; name="appnumber" 12345 ------WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition: form-data; name="pdf-filename"; filename="statement.pdf" Content-Type: application/pdf [PDF file content] ------WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition: form-data; name="webhook" https://www.mydomain.com/my-endpoint ------WebKitFormBoundary7MA4YWxkTrZu0gW-- ``` ### Response #### Success Response (200 OK for immediate processing, 202 ACCEPTED if webhook is used) - **statement_summaries** (array) - An array of statement summary objects. - **fraudscore** (number) - The calculated fraud score. - **tpreasons** (string) - Reasons for the fraud score. - **appinfo** (object) - Application-specific information. #### Response Example ```json { "statement_summaries": [ { "fraudscore": 0.85, "tpreasons": "High number of transactions" } ], "appinfo": {} } ``` ``` -------------------------------- ### Username/Password Authentication Header Example (v1.5) Source: https://docs.moneythumb.com/pdf-insights/migrating-to-1.5/migrating_from_v0 This example shows how to authenticate using username and password with header-based authentication in version 1.5. It includes the initial authentication call to get a session token and subsequent calls using the token. ```http GET /api/v1.5/authenticate HTTP/1.1 Host: api.moneythumb.com Authorization: Basic base64(username:password) MT-Product: GET /api/v1.5/some/endpoint HTTP/1.1 Host: api.moneythumb.com Authorization: Bearer MT-Product: ``` -------------------------------- ### Upload PDF for basic insights Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_insights This snippet shows how to upload a PDF file to the MoneyThumb API to get basic statement summaries and application information. It requires an Authorization header with a session token and the PDF file as multipart/form-data. ```HTTP POST https://insights.moneythumb.com/api/v1.5/uploadpdfs Headers: Authorization: Bearer [session token] MT-Product: pdfinsights or pdfinsightstp Content-Type: multipart/form-data Form-data: appnumber: string pdf-filename: blob ``` -------------------------------- ### GET /getapps Source: https://docs.moneythumb.com/pdf-insights/api-reference Retrieves a list of all the applications available to the credentials submitted. ```APIDOC ## GET /getapps ### Description Retrieves a list of all the applications available to the credentials submitted. ### Method GET ### Endpoint /getapps ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example ```json { "example": "No request body example available" } ``` ### Response #### Success Response (200) - **applications** (array) - A list of available applications. #### Response Example ```json { "applications": [ { "id": "app_id_1", "name": "Application Name 1" }, { "id": "app_id_2", "name": "Application Name 2" } ] } ``` ``` -------------------------------- ### MTJson Example Structure Source: https://docs.moneythumb.com/pdf-insights/moneythumb-format/mtjson_example This code snippet demonstrates the basic structure of a MoneyThumb JSON (MTJson) file, illustrating how account, statement, and transaction data should be organized. It includes examples of both required and optional fields. ```json { "accounts": [ { "bank_name": "Wells Fargo", "account_name": "Business Checking", "account_number": "1234", "account_type": "checking", "account_owner": "ACME Lumber", "account_address": "123 Main St, Springfield, IL, 11111", "statements": [ { "start_date": "2024-10-01", "end_date": "2024-10-31", "start_balance": 1234.56, "end_balance": 1234.56, "transactions": [ { "date": "2024-10-20", "type": "credit", "description": "McDonalds #3322", "memo": "", "check_number": 123, "amount": -12.0, "balance": 1432.16, "customer_id": "123456" } ] } ] } ] } ``` -------------------------------- ### Upload and Convert PDFs (with Callback) Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_insights Uploads PDF files for conversion and specifies a webhook URL to receive results asynchronously. ```APIDOC ## POST /api/v1.5/uploadpdfs (with Callback) ### Description Uploads PDF files for conversion and specifies a webhook URL to receive the results asynchronously. This is the recommended approach for handling results. ### Method POST ### Endpoint `https://insights.moneythumb.com/api/v1.5/uploadpdfs` ### Parameters #### Headers - **Authorization** (string) - Required - `Bearer [session token]` - **MT-Product** (string) - Required - Either `pdfinsights` or `pdfinsightstp` - **Content-Type** (string) - Required - `multipart/form-data` #### Request Body (Form Data) - **appnumber** (string) - Required - An identifier for the application. - **pdf-filename** (blob) - Required - The PDF file to upload. - **includescorecard** (string) - Optional - `true` to include scorecard data. - **includetransactions** (string) - Optional - `true` to include transaction data. - **format** (string) - Optional - `jsonobject` to specify JSON output format. - **webhook** (string) - Required - The URL to which the results should be sent (e.g., `https://www.mydomain.com/my-endpoint`). ### Response #### Success Response (202) Indicates that the request has been accepted for processing. The results will be sent to the specified webhook URL. ### Callback Response Body Example ```json { "statement_summmaries": [], "appinfo": {}, "scorecard": {}, "transactions": [] } ``` ``` -------------------------------- ### GET /getapps - List Applications Source: https://docs.moneythumb.com/pdf-insights/api-reference/other/getapps Retrieves a list of all applications available to the authenticated credentials. This endpoint is useful for getting an overview of accessible applications and their associated data. ```APIDOC ## GET /getapps ### Description Retrieves a list of all the applications available to the credentials submitted. ### Method GET ### Endpoint /getapps ### Parameters #### Path Parameters - **version** (string) - Required - The version of the API. Enum: "1.0", "1.1", "1.2", "1.3", "1.4", "1.5" #### Query Parameters - **limit** (integer) - Optional - Determines how many results are returned. The default is 20. ### Request Example ``` GET /getapps?version=1.5&limit=50 ``` ### Response #### Success Response (200) - **appnumber** (string) - The unique application number assigned by the user. - **appid** (integer) - The unique application ID assigned by the system. - **naccounts** (integer) - The number of accounts. - **owner** (string) - Application owner - **totalstatements** (integer) - The number of statements in the application. - **totalstatements_reconciled** (integer) - The number of statements that reconcile. - **totaltaxforms** (integer) - The number of tax forms. - **totaltaxreturns** (integer) - The number of tax returns. - **address1** (string) - The first line of address. - **address2** (string) - The second line of address. - **citystate** (string) - The city and state of address. - **city** (string) - The city of the address. - **state** (string) - The state of the address. - **zip** (string) - The zip code of the address. - **expfactor** (string) - Expense factor - **accountlist** (array) - List of accounts: account number statement date. - **webSearch** (object) - AI web search results on a merchant. - **industry** (object) - Industry of merchant. - **primary** (object) - Primary industry of merchant. - **naics** (integer) - North American Industry Classfication System (NAICS) code. Example: 123456 - **title** (string) - Merchant category Example: "All Other Miscellaneous Food Manufacturing" - **explanation** (string) - Explanation from the web search on why the merchant was placed in this certain category. - **weight** (float) - The confidence from the web search that it's the correct NAICS code. Example: "45.0" - **alternate** (object) - Secondary industry of merchant. - **title** (string) - Merchant Category Example: "Caterers" - **explanation** (string) - Explanation from the web search on why the merchant was placed in this category. - **homeBasedBusiness** (boolean) - Whether the merchant is a home-based business. - **sitesUsed** (string) - The URLs of the sites used during the web search. - **lastRun** (string) - The time stamp of when the web search was run. #### Response Example (200) ```json { "appnumber": "APP123", "appid": 101, "naccounts": 5, "owner": "John Doe", "totalstatements": 100, "totalstatements_reconciled": 80, "totaltaxforms": 10, "totaltaxreturns": 5, "address1": "123 Main St", "address2": "Apt 4B", "citystate": "Anytown, CA", "city": "Anytown", "state": "CA", "zip": "90210", "expfactor": "1.15", "accountlist": [ "ACC456 2023-01-01", "ACC789 2023-01-01" ], "webSearch": { "industry": { "primary": { "naics": 123456, "title": "All Other Miscellaneous Food Manufacturing", "explanation": "This merchant is involved in food manufacturing.", "weight": 45.0 }, "alternate": { "title": "Caterers", "explanation": "This merchant also offers catering services." } }, "homeBasedBusiness": false, "sitesUsed": "example.com, another.com", "lastRun": "2023-10-27T10:00:00Z" } } ``` #### Error Response (401) - **error** (string) - Example: "Bad token" #### Error Response (500) - **error** (string) - Example: "Encountered an unknown error. It has been reported. Please contact support@moneythumb.com for any questions." - **requestId** (string) - Unique identifier for the request, useful for tracing. #### Error Response (503) - **error** (string) - Example: "Service unavailable" ``` -------------------------------- ### License Code Authentication Header Example (v1.5) Source: https://docs.moneythumb.com/pdf-insights/migrating-to-1.5/migrating_from_v0 This example demonstrates how to authenticate using a license code with header-based authentication in version 1.5. It shows the required headers for all API calls when using this method. ```http GET /api/v1.5/some/endpoint HTTP/1.1 Host: api.moneythumb.com Authorization: Bearer MT-Product: ``` -------------------------------- ### GET /websites/moneythumb/{version}/applications Source: https://docs.moneythumb.com/_bundle/PDF%20Insights/%401.5/API%20Reference/index_download= Retrieves a list of applications with optional filtering by limit. ```APIDOC ## GET /websites/moneythumb/{version}/applications ### Description Retrieves a list of applications. Supports an optional `limit` query parameter to control the number of results. ### Method GET ### Endpoint `/websites/moneythumb/{version}/applications` ### Parameters #### Path Parameters - **version** (string) - Required - The version of the API. Example: `1.0` #### Query Parameters - **limit** (integer) - Optional - Determines how many results are returned. The default is `20`. ### Request Example ```json { "limit": 50 } ``` ### Response #### Success Response (200) - **array of ApplicationInfo objects** - Description of ApplicationInfo schema not provided. #### Response Example ```json [ { "appId": "app_123", "appName": "Sample App", "appStatus": "Active" } ] ``` #### Error Response (401) - **object** - Contains an error message. - **error** (string) - Example: `Bad token` #### Error Response (500) - **object** - Contains an error message and a request ID. - **error** (string) - Example: `Encountered an unknown error. It has been reported. Please contact support@moneythumb.com for any questions.` - **requestId** (string) - Unique identifier for the request, useful for tracing. #### Error Response (503) - **object** - Contains an error message. - **error** (string) - Example: `Service unavailable` ``` -------------------------------- ### API Authentication Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_insights Authenticates to the API to obtain a session token. Requires basic authentication and product identification. ```APIDOC ## GET /api/v1.5/authenticate ### Description Authenticates to the API using provided credentials and returns a session token. ### Method GET ### Endpoint `https://insights.moneythumb.com/api/v1.5/authenticate` ### Parameters #### Headers - **Authorization** (string) - Required - `Basic [base64-encoded username:password]` - **MT-Product** (string) - Required - Either `pdfinsights` or `pdfinsightstp` ### Response #### Success Response (200) - **session_token** (string) - The token to be used for subsequent API calls. #### Response Example ```json { "session_token": "your_session_token_here" } ``` ``` -------------------------------- ### Authenticate to the API Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_thumbprint This endpoint is used to authenticate to the Thumbprint API and obtain a session token. It requires basic authentication with your username and password. ```APIDOC ## GET /api/v1.5/authenticate ### Description Authenticates to the Thumbprint API and returns a session token. ### Method GET ### Endpoint https://insights.moneythumb.com/api/v1.5/authenticate ### Parameters #### Headers - **Authorization** (string) - Required - `Basic [base64-encoded username:password]` - **MT-Product** (string) - Required - `thumbprint` ### Request Example ``` GET /api/v1.5/authenticate HTTP/1.1 Host: insights.moneythumb.com Authorization: Basic [base64-encoded username:password] MT-Product: thumbprint ``` ### Response #### Success Response (200 OK) - **sessionToken** (string) - The session token for subsequent API calls. #### Response Example ```json { "sessionToken": "your_session_token_here" } ``` ``` -------------------------------- ### Upload and Convert PDFs (Basic) Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_insights Uploads one or more PDF files for conversion and analysis. Returns basic statement summaries and application info. ```APIDOC ## POST /api/v1.5/uploadpdfs (Basic Conversion) ### Description Uploads PDF files for conversion and returns basic statement summaries and application information. ### Method POST ### Endpoint `https://insights.moneythumb.com/api/v1.5/uploadpdfs` ### Parameters #### Headers - **Authorization** (string) - Required - `Bearer [session token]` - **MT-Product** (string) - Required - Either `pdfinsights` or `pdfinsightstp` - **Content-Type** (string) - Required - `multipart/form-data` #### Request Body (Form Data) - **appnumber** (string) - Required - An identifier for the application. - **pdf-filename** (blob) - Required - The PDF file to upload. ### Response #### Success Response (200) - **statement_summmaries** (array) - An array of statement summary objects. - **appinfo** (object) - An object containing application information. #### Response Example ```json { "statement_summmaries": [], "appinfo": {} } ``` ``` -------------------------------- ### Upload and Convert PDFs (with Scorecard and Transactions) Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_insights Uploads PDF files for conversion, including requests for scorecard and transaction data in the response. ```APIDOC ## POST /api/v1.5/uploadpdfs (with Scorecard & Transactions) ### Description Uploads PDF files for conversion, requesting detailed scorecard and transaction data in addition to basic information. ### Method POST ### Endpoint `https://insights.moneythumb.com/api/v1.5/uploadpdfs` ### Parameters #### Headers - **Authorization** (string) - Required - `Bearer [session token]` - **MT-Product** (string) - Required - Either `pdfinsights` or `pdfinsightstp` - **Content-Type** (string) - Required - `multipart/form-data` #### Request Body (Form Data) - **appnumber** (string) - Required - An identifier for the application. - **pdf-filename** (blob) - Required - The PDF file to upload. - **includescorecard** (string) - Optional - `true` to include scorecard data. - **includetransactions** (string) - Optional - `true` to include transaction data. - **format** (string) - Optional - `jsonobject` to specify JSON output format. ### Response #### Success Response (200) - **statement_summmaries** (array) - An array of statement summary objects. - **appinfo** (object) - An object containing application information. - **scorecard** (object) - An object containing scorecard data. - **transactions** (array) - An array of transaction objects. #### Response Example ```json { "statement_summmaries": [], "appinfo": {}, "scorecard": {}, "transactions": [] } ``` ``` -------------------------------- ### UI Embedding Guide Source: https://docs.moneythumb.com/pdf-insights/ui-embedding-guide This section details how to launch the PDF Insights webapp and configure its behavior using URL parameters. ```APIDOC ## UI Embedding Guide ### Launching the PDF Insights Webapp To run the PDF Insights webapp from a browser, perform the following steps: 1. Contact MoneyThumb support to whitelist the domain you'll be using to call the iFrame. 2. Use the base URL: `https://online.moneythumb.com/` 3. Append the following URL parameters to customize the webapp: #### URL Parameters - **ctype** (string) - Required - Product type, e.g., `pdfinsights` or `pdfinsightstp`. - **token** (string) - Required - Token received from the Authenticate call. - **appid** (string) - Required - The value with the loan application ID previously received. - **username** (string) - Required - User name to display in the upper-right while in the webapp. - **customerid** (string) - Optional - Customer ID to track conversions by that customer. - **css** (string) - Optional - Applies a custom CSS style sheet. - **altlogo** (string) - Optional - The URL for an alternate logo. This URL must be URL-encoded. Example: `&altlogo=https%3A%2F%2Fwww.myco.com%2Flogos%2Fmylogo.png` - **readOnlyCustomMode** (boolean) - Optional - Opens the application to the convert page and prevents the user from modifying the application. Values: `true` or `false`. #### Sample URL `https://online.moneythumb.com/?ctype=pdfinsights&token=_token_&appid=123&username=you@yourdomain.com` #### Responses - **Success Response (200):** The PDFInsights web app will launch with the specified application. - **Error Response (401):** Returned if the token or appid do not match, or if the appid does not exist. ``` -------------------------------- ### Authenticate to MoneyThumb API Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_insights This snippet demonstrates how to authenticate with the MoneyThumb API to obtain a session token. It requires basic authentication with your username and password. ```HTTP GET https://insights.moneythumb.com/api/v1.5/authenticate Headers: Authorization: Basic [base64-encoded username:password] MT-Product: pdfinsights or pdfinsightstp ``` -------------------------------- ### GET /api/v1.5/authenticate Source: https://docs.moneythumb.com/pdf-insights/migrating-to-1.5/migrating_from_pdf_server_v1.0 Authenticates user credentials and generates a session token for subsequent API calls. ```APIDOC ## GET /api/v1.5/authenticate ### Description Authenticates a user using username and password and returns a session token for secure API access. ### Method GET ### Endpoint /api/v1.5/authenticate ### Parameters #### Path Parameters None #### Query Parameters None ### Headers - **Authorization** (string) - Required - `Basic base64(username:password)` - **MT-Product** (string) - Required - `pdfinsights` or `pdfinsightstp` ### Request Example ``` Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ= MT-Product: pdfinsights ``` ### Response #### Success Response (200) - **sessionToken** (string) - A token valid for 24 hours, to be used in subsequent API calls. #### Error Response - **error** (object) - Contains error details in JSON format. #### Response Example ```json { "sessionToken": "your_generated_session_token_here" } ``` ``` -------------------------------- ### GET /remaining Source: https://docs.moneythumb.com/pdf-insights/api-reference/other/remaining Retrieves the number of remaining conversions available on your account. ```APIDOC ## GET /remaining ### Description Retrieve the number of remaining conversions on your account. ### Method GET ### Endpoint /remaining ### Parameters #### Path Parameters - **version** (string) - Required - The version of the API. Enum: "1.0", "1.1", "1.2", "1.3", "1.4", "1.5" ### Request Example (No request body for this endpoint) ### Response #### Success Response (200) - **Remaining** (integer) - The number of remaining conversions. #### Response Example ```json { "Remaining": 100 } ``` #### Error Response (401) - **error** (string) - Example: "Bad token" #### Error Response (500) - **error** (string) - Example: "Encountered an unknown error. It has been reported. Please contact support@moneythumb.com for any questions." - **requestId** (string) - Unique identifier for the request, useful for tracing. #### Error Response (503) - **error** (string) - Example: "Service unavailable" ``` -------------------------------- ### GET /authenticate Source: https://docs.moneythumb.com/pdf-insights/api-reference/other/authenticate Authenticates with username/password and receives a session token for use on other API calls. Requires Authorization and MT-Product headers. See Authentication page for further details. ```APIDOC ## GET /authenticate ### Description Authenticates with username/password and receives a session token for use on other API calls. Requires Authorization and MT-Product headers. See Authentication page for further details. ### Method GET ### Endpoint /authenticate ### Parameters #### Path Parameters - **version** (string) - Required - The version of the API. Enum: "1.0", "1.1", "1.2", "1.3", "1.4", "1.5" ### Response #### Success Response (200) - **sessionToken** (string) - The session token for authenticated requests. #### Error Response (401) - **error** (string) - Example: "Invalid credentials" #### Error Response (500) - **error** (string) - Example: "Encountered an unknown error. It has been reported. Please contact support@moneythumb.com for any questions." - **requestId** (string) - Unique identifier for the request, useful for tracing. #### Error Response (503) - **error** (string) - Example: "Service unavailable" ``` -------------------------------- ### POST /makexls - Get Scorecard (Excel) Source: https://docs.moneythumb.com/pdf-insights/api-reference/other/makexls Retrieve an application's scorecard in Excel format. This endpoint allows specifying the application ID, desired format, and specific scorecard sections. ```APIDOC ## POST /makexls ### Description Retrieve an application's scorecard. This endpoint allows specifying the application ID, desired format, and specific scorecard sections. ### Method POST ### Endpoint /makexls ### Parameters #### Path Parameters - **version** (string, required) - The version of the API. Enum: "1.0", "1.1", "1.2", "1.3", "1.4", "1.5" #### Request Body - **appid** (integer, required) - Insights-generated identifier for the application. Example: 123 - **format** (string, optional) - The desired structure of the scorecard section of the JSON reponse. default is deprecated. Enum: "default", "jsonobject" - **sections** (string, optional) - The scorecard sections to return. This field can either contain a single section name or multiple section names. To have multiple sections returned, write each section name separated by commas. For a list of valid section names, see the object name of the section in the [Scorecard Reference page](https://docs.moneythumb.com/pdf-insights/scorecard). This overrides what is defined in the user profile. ### Request Example ``` --boundary Content-Disposition: form-data; name="appid" 123 --boundary Content-Disposition: form-data; name="sections" Income,Assets --boundary-- ``` ### Response #### Success Response (200) This endpoint returns an Excel file containing the scorecard. The specific fields within the Excel file depend on the requested sections. #### Error Responses - **400 Bad Request** - **error** (string) - Example: "No file found to process" - **401 Unauthorized** - **error** (string) - Example: "Bad token" - **500 Internal Server Error** - **error** (string) - Example: "Encountered an unknown error. It has been reported. Please contact support@moneythumb.com for any questions." - **requestId** (string) - Unique identifier for the request, useful for tracing. - **503 Service Unavailable** - **error** (string) - Example: "Service unavailable" ``` -------------------------------- ### POST /new Source: https://docs.moneythumb.com/pdf-insights/api-reference Creates a new application or retrieves an existing one. ```APIDOC ## POST /new ### Description Create a new application or retrieve an existing one. ### Method POST ### Endpoint /new ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **name** (string) - Required - The name of the application to create or retrieve. ### Request Example ```json { "name": "My New Application" } ``` ### Response #### Success Response (200) - **application_id** (string) - The ID of the created or retrieved application. #### Response Example ```json { "application_id": "created_app_id" } ``` ``` -------------------------------- ### Upload PDF with Callback URL Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_thumbprint This snippet illustrates uploading a PDF for scoring and specifying a callback URL for asynchronous results. It's similar to the standard upload but includes an additional 'webhook' form-data field. ```HTTP POST https://insights.moneythumb.com/api/v1.5/uploadpdfs Headers: Authorization: Bearer [session token] MT-Product: thumbprint Content-Type: multipart/form-data Form-data: appnumber: string pdf-filename: blob webhook: string (e.g., https://www.mydomain.com/my-endpoint) ``` -------------------------------- ### GET /api/v1.5/getremaining Migration Source: https://docs.moneythumb.com/pdf-insights/migrating-to-1.5/migrating_from_pdf_server_v0.0 This endpoint retrieves remaining data, migrated from the older /getremaining endpoint. It now uses a GET method and updated authentication. ```APIDOC ## GET /api/v1.5/getremaining ### Description Retrieves remaining data. This is the migrated version of the original POST /api/v1.0/getremaining endpoint, with changes in method and authentication. ### Method GET ### Endpoint /api/v1.5/getremaining ### Parameters #### Request Headers - **Authorization** (string) - Required - `Bearer ` or `Bearer ` - **MT-Product** (string) - Required - `pdfinsights` or `pdfinsightstp` ### Response #### Success Response (200) - **remaining_data** (object) - An object containing the remaining data. (Specific fields depend on implementation) #### Response Example ```json { "remaining_data": { "count": 100, "limit": 1000 } } ``` #### Error Response - **error** (object) - Contains error details in JSON format. ``` -------------------------------- ### GET /api/v1.5/getremaining Migration Source: https://docs.moneythumb.com/pdf-insights/migrating-to-1.5/migrating_from_pdf_server_v1.0 This section details the adjustments needed to migrate from the old POST /api/v1.0/getremaining endpoint to the new GET /api/v1.5/getremaining endpoint in PDF Insights. ```APIDOC ## GET /api/v1.5/getremaining ### Description Retrieves the remaining usage or quota information for the PDF Insights service. This is a migrated endpoint from PDFServer, now using GET method. ### Method GET ### Endpoint /api/v1.5/getremaining ### Parameters #### Path Parameters None #### Query Parameters None ### Headers - **Authorization** (string) - Required - `Bearer ` - **MT-Product** (string) - Required - `pdfinsights` or `pdfinsightstp` ### Request Example (No request body for GET requests) ### Response #### Success Response (200) - **remaining** (integer) - The number of remaining calls or quota. #### Error Response - **error** (object) - Contains error details in JSON format. #### Response Example ```json { "remaining": 95 } ``` ``` -------------------------------- ### Upload PDF with Webhook for Callback Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_insights This snippet illustrates how to upload a PDF and configure a webhook to receive processing results asynchronously. The API returns a 202 Accepted status, and results are sent to the specified webhook URL. ```HTTP POST https://insights.moneythumb.com/api/v1.5/uploadpdfs Headers: Authorization: Bearer [session token] MT-Product: pdfinsights or pdfinsightstp Content-Type: multipart/form-data Form-data: appnumber: string pdf-filename: blob includescorecard: true includetransactions: true format: jsonobject webhook: https://www.mydomain.com/my-endpoint ``` -------------------------------- ### POST /websites/moneythumb/{version}/new Source: https://docs.moneythumb.com/_bundle/PDF%20Insights/%401.5/API%20Reference/index_download= Creates a new application or retrieves an existing one using the provided application number. ```APIDOC ## POST /websites/moneythumb/{version}/new ### Description Create a new application or retrieve an existing one. ### Method POST ### Endpoint `/websites/moneythumb/{version}/new` ### Parameters #### Path Parameters - **version** (string) - Required - The version of the API. Example: `1.0` #### Request Body - **appnumber** (string) - Required - Customer-assigned application identifier ### Request Example ```json { "appnumber": "APP-XYZ-789" } ``` ### Response #### Success Response (200) - **ApplicationInfo object** - Details of the created or retrieved application. #### Response Example ```json { "appId": "app_456", "appName": "New App", "appStatus": "Pending" } ``` #### Error Response (400) - **object** - Contains an error message for invalid input. - **error** (string) - Example: `No file found to process` #### Error Response (401) - **object** - Contains an error message for authentication failure. - **error** (string) - Example: `Bad token` #### Error Response (500) - **object** - Contains an error message and a request ID for internal server errors. - **error** (string) - Example: `Encountered an unknown error. It has been reported. Please contact support@moneythumb.com for any questions.` - **requestId** (string) - Unique identifier for the request, useful for tracing. ``` -------------------------------- ### Upload PDF for Scorecard and Transactions Source: https://docs.moneythumb.com/pdf-insights/quickstarts/quickstart_insights This snippet demonstrates how to upload a PDF file and request detailed scorecard and transaction data. It extends the basic upload by including additional form-data fields. ```HTTP POST https://insights.moneythumb.com/api/v1.5/uploadpdfs Headers: Authorization: Bearer [session token] MT-Product: pdfinsights or pdfinsightstp Content-Type: multipart/form-data Form-data: appnumber: string pdf-filename: blob includescorecard: true includetransactions: true format: jsonobject ``` -------------------------------- ### GET /websites/moneythumb/{version}/remaining Source: https://docs.moneythumb.com/_bundle/PDF%20Insights/%401.5/API%20Reference/index_download= Retrieve the number of remaining conversions on your account. Supports versioning of the API. ```APIDOC ## GET /websites/moneythumb/{version}/remaining ### Description Retrieve the number of remaining conversions on your account. ### Method GET ### Endpoint /websites/moneythumb/{version}/remaining ### Parameters #### Path Parameters - **version** (string) - Required - The version of the API. Allowed values: 1.0, 1.1, 1.2, 1.3, 1.4, 1.5 ### Response #### Success Response (200) - **Remaining** (integer) - The number of remaining conversions. #### Error Response (401) - **error** (string) - Bad token #### Error Response (500) - **error** (string) - Encountered an unknown error. It has been reported. Please contact support@moneythumb.com for any questions. - **requestId** (string) - Unique identifier for the request, useful for tracing. #### Error Response (503) - **error** (string) - Service unavailable ### Response Example (200) ```json { "Remaining": 100 } ``` ``` -------------------------------- ### Update Summary Source: https://docs.moneythumb.com/pdf-insights/api-reference/other/updatesummary Updates the summary data of a statement including starting balance, debits, credits, and ending balance. ```APIDOC ## POST /updatesummary ### Description Updates the summary data of a statement. ### Method POST ### Endpoint /websites/moneythumb/updatesummary ### Parameters #### Path Parameters - **version** (string, required) - The version of the API. Enum: "1.0", "1.1", "1.2", "1.3", "1.4", "1.5" #### Query Parameters None #### Request Body - **appid** (integer, required) - Insights-assigned application identifier. - **tid** (string, required) - Insights-assigned statement identifier. - **startbalance** (number, optional) - New starting balance. - **debits** (number, optional) - New total debits. - **credits** (number, optional) - New total credits. - **endbalance** (number, optional) - New ending balance. *Note: The request body is expected in multipart/form-data format.* ### Request Example (Multipart/form-data example would be complex to represent here, typically involves file uploads or form field submissions) ### Response #### Success Response (200) - **(No specific fields documented for 200 OK response)** #### Response Example (Success response example not provided in the source text) #### Error Responses - **400 Bad Request**: - **error** (string) - Example: "No file found to process" - **401 Unauthorized**: - **error** (string) - Example: "Bad token" - **500 Internal Server Error**: - **error** (string) - Example: "Encountered an unknown error. It has been reported. Please contact support@moneythumb.com for any questions." - **requestId** (string) - Unique identifier for the request, useful for tracing. - **503 Service Unavailable**: - **error** (string) - Example: "Service unavailable" ``` -------------------------------- ### GET /websites/moneythumb/{version}/getscorecard Source: https://docs.moneythumb.com/_bundle/PDF%20Insights/%401.5/API%20Reference/index_download= Generates a signed URL for a scorecard. This endpoint is used to obtain a secure link to view a scorecard. ```APIDOC ## GET /websites/moneythumb/{version}/getscorecard ### Description Generates a signed scorecard URL. ### Method GET ### Endpoint /websites/moneythumb/{version}/getscorecard ### Parameters #### Path Parameters - **version** (string) - Required - The version of the API. #### Query Parameters - **appid** (string) - Required - The application ID for the scorecard. ### Request Example ``` GET /websites/moneythumb/1.0/getscorecard?appid=your_app_id ``` ### Response #### Success Response (200) - **url** (string) - The signed URL for the scorecard. #### Response Example ```json { "url": "https://insights.moneythumb.com/?token=abc" } ``` #### Error Response (400) - **error** (string) - Description of the bad request error. #### Error Response Example (400) ```json { "error": "No file found to process" } ``` #### Error Response (401) - **error** (string) - Description of the authentication error. #### Error Response Example (401) ```json { "error": "Bad token" } ``` #### Error Response (500) - **error** (string) - Description of the internal server error. - **requestId** (string) - Unique identifier for the request. #### Error Response Example (500) ```json { "error": "Encountered an unknown error. It has been reported. Please contact support@moneythumb.com for any questions.", "requestId": "unique_request_id" } ``` ``` -------------------------------- ### Migrate /getremaining to /api/v1.5/getremaining Source: https://docs.moneythumb.com/pdf-insights/migrating-to-1.5/migrating_from_pdf_server_v0 This GET endpoint retrieves information about remaining processing capacity or limits, migrating from the older `POST /api/v1.0/getremaining`. ```APIDOC ## GET /api/v1.5/getremaining ### Description Retrieves information regarding remaining processing limits or capacity. This is a migrated endpoint from `POST /api/v1.0/getremaining`, now using the GET method and header-based authentication. ### Method GET ### Endpoint `/api/v1.5/getremaining` ### Parameters #### Path Parameters None #### Query Parameters None ### Headers - **Authorization** (string) - Required - Bearer token for authentication (e.g., `Bearer ` or `Bearer `) - **MT-Product** (string) - Required - Specifies the product type (e.g., `pdfinsights` or `pdfinsightstp`) ### Request Example (No request body for GET requests) ### Response #### Success Response (200) - **remaining** (integer) - The number of remaining items or capacity. - **limit** (integer) - The total limit. - **resetTime** (string) - The time when the limit resets. #### Response Example ```json { "remaining": 95, "limit": 100, "resetTime": "2024-01-01T00:00:00Z" } ``` ``` -------------------------------- ### Obtaining a Session Token Source: https://docs.moneythumb.com/pdf-insights/2_authentication Request a session token by sending a GET request to the /authenticate endpoint with required headers. ```APIDOC ## Obtaining a Session Token ### Description To obtain a session token, send a credentialed GET request to the `/authenticate` endpoint. Ensure you include the two required headers: `Authorization` and `MT-Product`. ### Method GET ### Endpoint `/api/v1.5/authenticate` ### Parameters #### Request Headers - **Authorization** (string) - Required - Use Basic authentication with base64 encoded username:password. - **MT-Product** (string) - Required - The product you are accessing. Supported values: `pdfinsights`, `pdfinsightstp`, `thumbprint`. ### Request Example ``` GET /api/v1.5/authenticate HTTP/1.1 Host: api.moneythumb.com Authorization: Basic base64(your_username:your_password) MT-Product: pdfinsights ``` ### Response #### Success Response (200) - **session_token** (string) - The obtained session token. #### Response Example ```json { "session_token": "your_newly_generated_session_token" } ``` ``` -------------------------------- ### Authentication (Version 1.5) Source: https://docs.moneythumb.com/pdf-insights/migrating-to-1.5/migrating_from_v0.0 This section details how to authenticate API calls in Version 1.5 using either username/password or a license code, sending credentials via request headers. ```APIDOC ## Authentication Methods (Version 1.5) In Version 1.5, authentication credentials are sent in request headers. ### Username/Password Authentication 1. Log into PDF Insights to confirm your credentials. 2. Remove the following fields from your API calls: * `username` * `password` * `product` * `token` * `customer-id` 3. For the initial authentication call (`GET /api/v1.5/authenticate`), send these headers: * `Authorization: Basic base64(username:password)` * `MT-Product: ` 4. For all other API calls, use these headers: * `Authorization: Bearer ` * `MT-Product: ` ### License Code Authentication 1. Remove the following fields from your API calls: * `username` * `password` * `product` * `token` * `customer-id` 2. Send the following two headers with all API calls: * `Authorization: Bearer ` * `MT-Product: ` **Note:** Username/password authentication is recommended over license code authentication. ```