Upload evidence to a case
curl --request POST \
--url https://api.platform.arb.inc/evidence/uploads/create \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form 'caseID=2025-08-00123;type=text/plain' \
--form 'description=Photo from the incident on May 5, 2025;type=text/plain' \
--form 'file=@example-file;type=application/pdf' \
--form 'makePublic=true;type=text/plain'import requests
url = "https://api.platform.arb.inc/evidence/uploads/create"
files = { "file": ("example-file", open("example-file", "rb"), "application/pdf") }
files["caseID"] = (None, "2025-08-00123", "text/plain")
files["description"] = (None, "Photo from the incident on May 5, 2025", "text/plain")
files["makePublic"] = (None, "true", "text/plain")
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, files=files, headers=headers)
print(response.text)const form = new FormData();
form.append('caseID', '2025-08-00123');
form.append('description', 'Photo from the incident on May 5, 2025');
form.append('file', '(binary file contents)');
form.append('makePublic', 'true');
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
options.body = form;
fetch('https://api.platform.arb.inc/evidence/uploads/create', 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.platform.arb.inc/evidence/uploads/create",
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=\"caseID\"\r\nContent-Type: text/plain\r\n\r\n2025-08-00123\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\nContent-Type: text/plain\r\n\r\nPhoto from the incident on May 5, 2025\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/pdf\r\n\r\n(binary file contents)\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"makePublic\"\r\nContent-Type: text/plain\r\n\r\ntrue\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.platform.arb.inc/evidence/uploads/create"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"caseID\"\r\nContent-Type: text/plain\r\n\r\n2025-08-00123\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\nContent-Type: text/plain\r\n\r\nPhoto from the incident on May 5, 2025\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/pdf\r\n\r\n(binary file contents)\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"makePublic\"\r\nContent-Type: text/plain\r\n\r\ntrue\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.platform.arb.inc/evidence/uploads/create")
.header("Authorization", "Bearer <token>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"caseID\"\r\nContent-Type: text/plain\r\n\r\n2025-08-00123\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\nContent-Type: text/plain\r\n\r\nPhoto from the incident on May 5, 2025\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/pdf\r\n\r\n(binary file contents)\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"makePublic\"\r\nContent-Type: text/plain\r\n\r\ntrue\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.platform.arb.inc/evidence/uploads/create")
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=\"caseID\"\r\nContent-Type: text/plain\r\n\r\n2025-08-00123\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\nContent-Type: text/plain\r\n\r\nPhoto from the incident on May 5, 2025\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/pdf\r\n\r\n(binary file contents)\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"makePublic\"\r\nContent-Type: text/plain\r\n\r\ntrue\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"uploadID": "12"
}you cannot upload evidence in this casecase not foundevidence submission is currently closedmaximum number of evidence uploads reacheduploaded file size is too largefile not supportedevidence
Upload evidence to a case
Upload one file to a case with a short description.
POST
/
evidence
/
uploads
/
create
Upload evidence to a case
curl --request POST \
--url https://api.platform.arb.inc/evidence/uploads/create \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form 'caseID=2025-08-00123;type=text/plain' \
--form 'description=Photo from the incident on May 5, 2025;type=text/plain' \
--form 'file=@example-file;type=application/pdf' \
--form 'makePublic=true;type=text/plain'import requests
url = "https://api.platform.arb.inc/evidence/uploads/create"
files = { "file": ("example-file", open("example-file", "rb"), "application/pdf") }
files["caseID"] = (None, "2025-08-00123", "text/plain")
files["description"] = (None, "Photo from the incident on May 5, 2025", "text/plain")
files["makePublic"] = (None, "true", "text/plain")
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, files=files, headers=headers)
print(response.text)const form = new FormData();
form.append('caseID', '2025-08-00123');
form.append('description', 'Photo from the incident on May 5, 2025');
form.append('file', '(binary file contents)');
form.append('makePublic', 'true');
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
options.body = form;
fetch('https://api.platform.arb.inc/evidence/uploads/create', 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.platform.arb.inc/evidence/uploads/create",
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=\"caseID\"\r\nContent-Type: text/plain\r\n\r\n2025-08-00123\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\nContent-Type: text/plain\r\n\r\nPhoto from the incident on May 5, 2025\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/pdf\r\n\r\n(binary file contents)\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"makePublic\"\r\nContent-Type: text/plain\r\n\r\ntrue\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.platform.arb.inc/evidence/uploads/create"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"caseID\"\r\nContent-Type: text/plain\r\n\r\n2025-08-00123\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\nContent-Type: text/plain\r\n\r\nPhoto from the incident on May 5, 2025\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/pdf\r\n\r\n(binary file contents)\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"makePublic\"\r\nContent-Type: text/plain\r\n\r\ntrue\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.platform.arb.inc/evidence/uploads/create")
.header("Authorization", "Bearer <token>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"caseID\"\r\nContent-Type: text/plain\r\n\r\n2025-08-00123\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\nContent-Type: text/plain\r\n\r\nPhoto from the incident on May 5, 2025\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/pdf\r\n\r\n(binary file contents)\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"makePublic\"\r\nContent-Type: text/plain\r\n\r\ntrue\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.platform.arb.inc/evidence/uploads/create")
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=\"caseID\"\r\nContent-Type: text/plain\r\n\r\n2025-08-00123\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\nContent-Type: text/plain\r\n\r\nPhoto from the incident on May 5, 2025\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/pdf\r\n\r\n(binary file contents)\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"makePublic\"\r\nContent-Type: text/plain\r\n\r\ntrue\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"uploadID": "12"
}you cannot upload evidence in this casecase not foundevidence submission is currently closedmaximum number of evidence uploads reacheduploaded file size is too largefile not supportedAuthorizations
access token
Body
multipart/form-data
ID of the case to attach the evidence to. Must be sent before the file part.
Example:
"2025-08-00123"
Short description of the evidence. Must be sent before the file part.
Example:
"Photo from the incident on May 5, 2025"
The evidence file to upload (single file only).
Whether to immediately add the evidence to the docket before the evidence exchange phase.
Available options:
true, false Example:
"true"
Response
Evidence successfully uploaded.
ID of the created evidence upload.
Example:
"12"