curl --request POST \
--url https://api.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review \
--header 'Authorization: Bearer <token>' \
--header 'Requester-Organization-ID: <requester-organization-id>' \
--header 'Target-Organization-ID: <target-organization-id>'import requests
url = "https://api.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review"
headers = {
"Requester-Organization-ID": "<requester-organization-id>",
"Target-Organization-ID": "<target-organization-id>",
"Authorization": "Bearer <token>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Requester-Organization-ID': '<requester-organization-id>',
'Target-Organization-ID': '<target-organization-id>',
Authorization: 'Bearer <token>'
}
};
fetch('https://api.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review', 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.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Requester-Organization-ID: <requester-organization-id>",
"Target-Organization-ID: <target-organization-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Requester-Organization-ID", "<requester-organization-id>")
req.Header.Add("Target-Organization-ID", "<target-organization-id>")
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.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review")
.header("Requester-Organization-ID", "<requester-organization-id>")
.header("Target-Organization-ID", "<target-organization-id>")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Requester-Organization-ID"] = '<requester-organization-id>'
request["Target-Organization-ID"] = '<target-organization-id>'
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "b2a9f8d3-7b7d-4c1b-a2a1-9c2d0b123456",
"credit_application_type": "credit_terms",
"forwarder_id": "d2f8e6c4-1b3c-4a7b-9d2f-3b1e0a987654",
"shipper_id": "c1e2f3b4-5a6b-7c8d-9e0f-1a2b3c4d5e6f",
"status": "pending",
"created_at": "2025-01-01T12:00:00.123456",
"updated_at": "2025-01-02T12:00:00.123456"
}{
"detail": [
{
"loc": [],
"msg": "Unsupported CRUD operation!",
"type": "request",
"code": "unsupported_crud_operation"
},
{
"loc": [],
"msg": "Cannot change credit application status to 'internal review' from the current status!",
"type": "request",
"code": "credit_application_review_invalid_status_transition"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Token is required!",
"type": "token",
"code": "token_required"
},
{
"loc": [],
"msg": "The token has expired!",
"type": "token",
"code": "token_expired"
},
{
"loc": [],
"msg": "Invalid token!",
"type": "token",
"code": "invalid_token"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Access denied!",
"type": "request",
"code": "access_denied"
},
{
"loc": [],
"msg": "Shipper does not have access to perform this action on the credit application!",
"type": "request",
"code": "credit_application_shipper_access_denied"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Account not found!",
"type": "request",
"code": "account_not_found"
},
{
"loc": [],
"msg": "Credit application not found!",
"type": "request",
"code": "credit_application_not_found"
},
{
"loc": [],
"msg": "Organization not found!",
"type": "request",
"code": "organization_not_found"
}
]
}{
"detail": [
{
"loc": [],
"msg": "The account is in the process of being deleted! The Account's email can only be reused after its data has been completely deleted. The removal process may take up to 24 hours.",
"type": "request",
"code": "account_being_deleted"
},
{
"loc": [],
"msg": "The organization is in the process of being deleted! The removal process may take up to 24 hours.",
"type": "request",
"code": "organization_being_deleted"
}
]
}{
"detail": [
{
"loc": [],
"msg": "The request is too large!",
"type": "request",
"code": "request_too_large"
}
]
}{
"detail": [
{
"loc": [
"string",
0
],
"msg": "string",
"type": "string",
"code": "validation_error"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Error processing request, please try later!",
"type": "try_later",
"code": "internal_conflict_error"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Service is under maintenance, please try later!",
"type": "maintanance",
"code": "service_under_maintenance"
}
]
}Review credit application
Review a credit application to approve or provide feedback.
Authorization scenarios
| Guest | Host | Self |
|---|---|---|
| ❌ | ❌ | ✅ |
curl --request POST \
--url https://api.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review \
--header 'Authorization: Bearer <token>' \
--header 'Requester-Organization-ID: <requester-organization-id>' \
--header 'Target-Organization-ID: <target-organization-id>'import requests
url = "https://api.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review"
headers = {
"Requester-Organization-ID": "<requester-organization-id>",
"Target-Organization-ID": "<target-organization-id>",
"Authorization": "Bearer <token>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Requester-Organization-ID': '<requester-organization-id>',
'Target-Organization-ID': '<target-organization-id>',
Authorization: 'Bearer <token>'
}
};
fetch('https://api.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review', 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.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Requester-Organization-ID: <requester-organization-id>",
"Target-Organization-ID: <target-organization-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Requester-Organization-ID", "<requester-organization-id>")
req.Header.Add("Target-Organization-ID", "<target-organization-id>")
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.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review")
.header("Requester-Organization-ID", "<requester-organization-id>")
.header("Target-Organization-ID", "<target-organization-id>")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.mycreditapp.ai/v1-beta/credit-applications/{credit_application_id}/statuses/review")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Requester-Organization-ID"] = '<requester-organization-id>'
request["Target-Organization-ID"] = '<target-organization-id>'
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "b2a9f8d3-7b7d-4c1b-a2a1-9c2d0b123456",
"credit_application_type": "credit_terms",
"forwarder_id": "d2f8e6c4-1b3c-4a7b-9d2f-3b1e0a987654",
"shipper_id": "c1e2f3b4-5a6b-7c8d-9e0f-1a2b3c4d5e6f",
"status": "pending",
"created_at": "2025-01-01T12:00:00.123456",
"updated_at": "2025-01-02T12:00:00.123456"
}{
"detail": [
{
"loc": [],
"msg": "Unsupported CRUD operation!",
"type": "request",
"code": "unsupported_crud_operation"
},
{
"loc": [],
"msg": "Cannot change credit application status to 'internal review' from the current status!",
"type": "request",
"code": "credit_application_review_invalid_status_transition"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Token is required!",
"type": "token",
"code": "token_required"
},
{
"loc": [],
"msg": "The token has expired!",
"type": "token",
"code": "token_expired"
},
{
"loc": [],
"msg": "Invalid token!",
"type": "token",
"code": "invalid_token"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Access denied!",
"type": "request",
"code": "access_denied"
},
{
"loc": [],
"msg": "Shipper does not have access to perform this action on the credit application!",
"type": "request",
"code": "credit_application_shipper_access_denied"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Account not found!",
"type": "request",
"code": "account_not_found"
},
{
"loc": [],
"msg": "Credit application not found!",
"type": "request",
"code": "credit_application_not_found"
},
{
"loc": [],
"msg": "Organization not found!",
"type": "request",
"code": "organization_not_found"
}
]
}{
"detail": [
{
"loc": [],
"msg": "The account is in the process of being deleted! The Account's email can only be reused after its data has been completely deleted. The removal process may take up to 24 hours.",
"type": "request",
"code": "account_being_deleted"
},
{
"loc": [],
"msg": "The organization is in the process of being deleted! The removal process may take up to 24 hours.",
"type": "request",
"code": "organization_being_deleted"
}
]
}{
"detail": [
{
"loc": [],
"msg": "The request is too large!",
"type": "request",
"code": "request_too_large"
}
]
}{
"detail": [
{
"loc": [
"string",
0
],
"msg": "string",
"type": "string",
"code": "validation_error"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Error processing request, please try later!",
"type": "try_later",
"code": "internal_conflict_error"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Service is under maintenance, please try later!",
"type": "maintanance",
"code": "service_under_maintenance"
}
]
}Authorizations
Bearer authentication using a JWT token. Provide a valid access token. Authorization header format: Authorization: Bearer <token>.
Headers
The unique identifier of the organization making the request. This ID is used to authorize the requester within the system.
"054b4106-174b-46b0-97f8-86d8d7b6f0af"
The unique identifier of the organization that is the target of the request.
The Target-Organization-ID may match the Requester-Organization-ID if the requester accesses their own resources.
If the Target-Organization-ID differs from the Requester-Organization-ID, the requester can access third-party resources if the requester has a connection with the target organization and is authorized to perform such actions.
"123e4567-e89b-12d3-a456-426614174000"
Path Parameters
Unique identifier of the credit application
"b2a9f8d3-7b7d-4c1b-a2a1-9c2d0b123456"
Response
Successful Response
Unique identifier of the credit application
"b2a9f8d3-7b7d-4c1b-a2a1-9c2d0b123456"
Type of credit application
credit_terms, trade_finance, factoring Unique identifier of the owner organization
"d2f8e6c4-1b3c-4a7b-9d2f-3b1e0a987654"
Unique identifier of the guest organization [blocked]
"c1e2f3b4-5a6b-7c8d-9e0f-1a2b3c4d5e6f"
Current status of the credit application
pending, internal_review, external_review, needs_action, approved, finalized, declined, rejected, expired, sign_document_created, sign_document_in_progress, sign_document_completed, sign_document_expired, sign_document_canceled, sign_document_declined, sign_document_process_failed Timestamp when the credit application was created
"2025-01-01T12:00:00.123456"
Timestamp when the credit application was last updated
"2025-01-02T12:00:00.123456"