Submit request
curl --request POST \
--url https://api.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '{
"data": {}
}'import requests
url = "https://api.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit"
payload = { "data": {} }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({data: {}})
};
fetch('https://api.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit', 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.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'data' => [
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$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.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit"
payload := strings.NewReader("{\n \"data\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
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.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"data\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"data\": {}\n}"
response = http.request(request)
puts response.read_body{
"message": "<string>",
"data": {
"customerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"initiated": true,
"case": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"businessId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"customerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"providerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"subjectType": "customer",
"status": "draft",
"mode": "api_only",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"feature": "<string>",
"providerReference": "<string>",
"routeIntent": {},
"data": {},
"hostedSessions": [
{}
],
"reason": "<string>",
"metadata": {},
"actions": [
{}
],
"availableActions": [
"edit_and_resubmit"
]
},
"requirements": {
"mode": "api_only",
"subjectType": "customer",
"status": "draft",
"schema": {},
"feature": "offramp"
}
},
"status": true
}Core flow
Submit request
Send the completed form in the top-level data property. Build this object from the current requirements schema.
POST
/
v1
/
customers
/
{customerId}
/
onboarding-requests
/
{caseId}
/
submit
Submit request
curl --request POST \
--url https://api.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '{
"data": {}
}'import requests
url = "https://api.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit"
payload = { "data": {} }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({data: {}})
};
fetch('https://api.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit', 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.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'data' => [
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$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.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit"
payload := strings.NewReader("{\n \"data\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
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.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"data\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.blockradar.co/v1/customers/{customerId}/onboarding-requests/{caseId}/submit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"data\": {}\n}"
response = http.request(request)
puts response.read_body{
"message": "<string>",
"data": {
"customerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"initiated": true,
"case": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"businessId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"customerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"providerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"subjectType": "customer",
"status": "draft",
"mode": "api_only",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"feature": "<string>",
"providerReference": "<string>",
"routeIntent": {},
"data": {},
"hostedSessions": [
{}
],
"reason": "<string>",
"metadata": {},
"actions": [
{}
],
"availableActions": [
"edit_and_resubmit"
]
},
"requirements": {
"mode": "api_only",
"subjectType": "customer",
"status": "draft",
"schema": {},
"feature": "offramp"
}
},
"status": true
}Send the completed form in the top-level
data property. Build this object from the current requirements schema.
If data.initiated is false, complete the missing requirements and submit again. Otherwise, follow any returned hosted steps and track data.case.status. Submission does not mean approval.Authorizations
Path Parameters
Customer identifier.
Customer onboarding case identifier.
Body
application/json
Object completed and validated against requirements.schema.

