curl --request POST \
--url https://api.lendflow.com/api/applications/workflow \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form workflow_template_id=architecto \
--form client_id=architecto \
--form client_tracking_token=n \
--form tracking_tokens=g \
--form move_to_next_stage=false \
--form with_validation=true \
--form lenient_fields=affiliated_businesses_phone_numbersimport requests
url = "https://api.lendflow.com/api/applications/workflow"
payload = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"workflow_template_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_tracking_token\"\r\n\r\nn\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"tracking_tokens\"\r\n\r\ng\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"move_to_next_stage\"\r\n\r\nfalse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"with_validation\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"lenient_fields\"\r\n\r\naffiliated_businesses_phone_numbers\r\n-----011000010111000001101001--"
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "multipart/form-data"
}
response = requests.post(url, data=payload, headers=headers)
print(response.text)const form = new FormData();
form.append('workflow_template_id', 'architecto');
form.append('client_id', 'architecto');
form.append('client_tracking_token', 'n');
form.append('tracking_tokens', 'g');
form.append('move_to_next_stage', 'false');
form.append('with_validation', 'true');
form.append('lenient_fields', 'affiliated_businesses_phone_numbers');
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
options.body = form;
fetch('https://api.lendflow.com/api/applications/workflow', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.lendflow.com/api/applications/workflow",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"workflow_template_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_tracking_token\"\r\n\r\nn\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"tracking_tokens\"\r\n\r\ng\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"move_to_next_stage\"\r\n\r\nfalse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"with_validation\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"lenient_fields\"\r\n\r\naffiliated_businesses_phone_numbers\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: multipart/form-data"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.lendflow.com/api/applications/workflow"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"workflow_template_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_tracking_token\"\r\n\r\nn\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"tracking_tokens\"\r\n\r\ng\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"move_to_next_stage\"\r\n\r\nfalse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"with_validation\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"lenient_fields\"\r\n\r\naffiliated_businesses_phone_numbers\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.lendflow.com/api/applications/workflow")
.header("Authorization", "Bearer <token>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"workflow_template_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_tracking_token\"\r\n\r\nn\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"tracking_tokens\"\r\n\r\ng\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"move_to_next_stage\"\r\n\r\nfalse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"with_validation\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"lenient_fields\"\r\n\r\naffiliated_businesses_phone_numbers\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.lendflow.com/api/applications/workflow")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"workflow_template_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_tracking_token\"\r\n\r\nn\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"tracking_tokens\"\r\n\r\ng\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"move_to_next_stage\"\r\n\r\nfalse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"with_validation\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"lenient_fields\"\r\n\r\naffiliated_businesses_phone_numbers\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"data": {
"id": null,
"client_id": null,
"brand_name_id": null,
"workflow_segment": null,
"client_tracking_token": null,
"status": null,
"closing_status_id": null,
"progress": 0,
"use_of_fund_id": null,
"docusign_placeholder_id": null,
"contract_template_id": null,
"consent_template_id": null,
"funds_needed_time_id": null,
"is_business_credit": false,
"is_equipment_rental": false,
"is_data_capture": false,
"is_discovery_complete": null,
"finished_type": null,
"finished_at": null,
"amount_needed": null,
"referrer_url": null,
"source": null,
"underwriter_review_needed": null,
"created_at": null,
"updated_at": null,
"offers_declined_feedback": null,
"offers_declined_at": null,
"has_bank_data": false,
"moneythumb_book": null,
"stage": null,
"is_client_funded": false,
"repayment_percentage": 0,
"score_card_id": null,
"score_card_group_id": null,
"has_insurance": null,
"deal_mode": 1,
"workflow": 1,
"has_death_notification": false,
"tracking_tokens": [],
"priority": null
}
}Create Application Using Workflow Builder
Creates a new application from workflow field data and returns the created application. Submitted values are mapped through the workflow’s field definitions to the application, its business, and its owners.
curl --request POST \
--url https://api.lendflow.com/api/applications/workflow \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form workflow_template_id=architecto \
--form client_id=architecto \
--form client_tracking_token=n \
--form tracking_tokens=g \
--form move_to_next_stage=false \
--form with_validation=true \
--form lenient_fields=affiliated_businesses_phone_numbersimport requests
url = "https://api.lendflow.com/api/applications/workflow"
payload = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"workflow_template_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_tracking_token\"\r\n\r\nn\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"tracking_tokens\"\r\n\r\ng\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"move_to_next_stage\"\r\n\r\nfalse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"with_validation\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"lenient_fields\"\r\n\r\naffiliated_businesses_phone_numbers\r\n-----011000010111000001101001--"
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "multipart/form-data"
}
response = requests.post(url, data=payload, headers=headers)
print(response.text)const form = new FormData();
form.append('workflow_template_id', 'architecto');
form.append('client_id', 'architecto');
form.append('client_tracking_token', 'n');
form.append('tracking_tokens', 'g');
form.append('move_to_next_stage', 'false');
form.append('with_validation', 'true');
form.append('lenient_fields', 'affiliated_businesses_phone_numbers');
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
options.body = form;
fetch('https://api.lendflow.com/api/applications/workflow', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.lendflow.com/api/applications/workflow",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"workflow_template_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_tracking_token\"\r\n\r\nn\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"tracking_tokens\"\r\n\r\ng\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"move_to_next_stage\"\r\n\r\nfalse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"with_validation\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"lenient_fields\"\r\n\r\naffiliated_businesses_phone_numbers\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: multipart/form-data"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.lendflow.com/api/applications/workflow"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"workflow_template_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_tracking_token\"\r\n\r\nn\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"tracking_tokens\"\r\n\r\ng\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"move_to_next_stage\"\r\n\r\nfalse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"with_validation\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"lenient_fields\"\r\n\r\naffiliated_businesses_phone_numbers\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.lendflow.com/api/applications/workflow")
.header("Authorization", "Bearer <token>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"workflow_template_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_tracking_token\"\r\n\r\nn\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"tracking_tokens\"\r\n\r\ng\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"move_to_next_stage\"\r\n\r\nfalse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"with_validation\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"lenient_fields\"\r\n\r\naffiliated_businesses_phone_numbers\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.lendflow.com/api/applications/workflow")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"workflow_template_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\narchitecto\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"client_tracking_token\"\r\n\r\nn\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"tracking_tokens\"\r\n\r\ng\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"move_to_next_stage\"\r\n\r\nfalse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"with_validation\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"lenient_fields\"\r\n\r\naffiliated_businesses_phone_numbers\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"data": {
"id": null,
"client_id": null,
"brand_name_id": null,
"workflow_segment": null,
"client_tracking_token": null,
"status": null,
"closing_status_id": null,
"progress": 0,
"use_of_fund_id": null,
"docusign_placeholder_id": null,
"contract_template_id": null,
"consent_template_id": null,
"funds_needed_time_id": null,
"is_business_credit": false,
"is_equipment_rental": false,
"is_data_capture": false,
"is_discovery_complete": null,
"finished_type": null,
"finished_at": null,
"amount_needed": null,
"referrer_url": null,
"source": null,
"underwriter_review_needed": null,
"created_at": null,
"updated_at": null,
"offers_declined_feedback": null,
"offers_declined_at": null,
"has_bank_data": false,
"moneythumb_book": null,
"stage": null,
"is_client_funded": false,
"repayment_percentage": 0,
"score_card_id": null,
"score_card_group_id": null,
"has_insurance": null,
"deal_mode": 1,
"workflow": 1,
"has_death_notification": false,
"tracking_tokens": [],
"priority": null
}
}Authorizations
You can register for a new Lendflow API key on our client portal in less than 60 seconds. The Bearer Token needs to be included in all API requests made to the API Service in the following form:
Body
Workflow template ID.
"architecto"
Client ID. Required for Lendflow users, and ignored for every other user, who always gets their own client. Must match an existing stored value.
"architecto"
Must match an existing stored value.
null
Client tracking token. Must not be greater than 50 characters.
"n"
Must not be greater than 255 characters.
["g"]
UTM parameters.
Show child attributes
Show child attributes
null
Move the application to the next workflow stage, if possible.
false
Validate application when moving to the next workflow stage. Can only be used with move_to_next_stage.
true
Data orchestration template ID. Must match an existing stored value.
null
Must not have more than 10 items.
Show child attributes
Show child attributes
null
null
null
Application note to add.
Show child attributes
Show child attributes
null
accounts_payable_phone_number, affiliated_businesses_phone_numbers, affiliated_individuals_telephone, bonding_agent_telephone, business_phone_numbers, company_officers_phone_number, guarantor_telephone, insurance_telephone, personal_phone_numbers, personal_telephone, trade_references_business_telephone ["affiliated_businesses_phone_numbers"]
Client brand name to associate with the deal. list_client_brand_names returns the client's brand names with their ids. Must belong to the deal's client. Overrides the workflow template's default brand.
null
null
Show child attributes
Show child attributes
[]
Response
Show child attributes
Show child attributes
Was this page helpful?