API Solutions

Shipping insurance as code. Insure, void, and claim with simple REST calls.

  • RESTful JSON API at api.u-pic.com
  • Bearer token authentication
  • Insure shipments in a single POST
  • File and track claims programmatically
Response
{
  "status": "success",
  "data": {
    "tracking_number": "1Z999AA10123456784",
    "declared_value": 249.99,
    "premium": 1.85,
    "carrier_id": 53103,
    "covered": true
  }
}

What You Can Build

U-PIC's REST API gives you full control over shipping insurance. Automate coverage, manage claims, and integrate directly into your platform or workflow.

Insure Shipments

Create a manifest with a single POST to protect packages at time of shipment.

Void Coverage

Delete a manifest by tracking number when orders are cancelled or returned.

File Claims

Submit claims with full claimant and shipment details programmatically.

Track & Manage

Look up manifests, check claim status, send affidavits, and upload attachments.

Authentication

Authenticate with your API key to receive a bearer token. Include the token in the Authorization header on all subsequent requests.

Auth Flow
// 1. POST your API key to get a bearer token
POST https://api.u-pic.com/auth
{
  "api_key": "your_api_key_here"
}

// 2. Use the token in the Authorization header
Authorization: Bearer {your_token}

Endpoints

All endpoints use the base URL https://api.u-pic.com

POST /auth Authenticate and get bearer token
POST /manifests Insure a shipment
GET /manifests?tracking={tracking} Look up a manifest
DELETE /manifests?tracking={tracking} Void coverage
POST /claims File a claim
GET /claims/{id} Get claim details
GET /claims?tracking={tracking} Find claims by tracking number
POST /claims/{id}/affidavits Send affidavit
GET /claims/{id}/affidavits Get affidavit status
POST /claims/{id}/attachments Upload claim attachment
GET /client/carriers List your carriers
GET /countries List country codes
GET /health API health check

Code Samples

Insure a shipment in the language you already use.

// Insure a shipment via U-PIC API
$token = "your_bearer_token";

$data = json_encode([
    'carrier_id'     => 53103,
    'declared_value' => 245.54,
    'invoice'        => 'UYT-543',
    'shipped'        => '2026-04-01',
    'tracking_number'       => '1Z999AA10123456784',
    'shipper'        => 'Acme Widgets Inc.',
    'consignee'      => 'Jane Smith',
    'client_id'        => '776845'
]);

$ch = curl_init("https://api.u-pic.com/manifests");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Content-Type: application/json',
    'Authorization: Bearer ' . $token
]);

$resp = curl_exec($ch);
curl_close($ch);
# Insure a shipment via U-PIC API
import requests

token = "your_bearer_token"

data = {
    "carrier_id": 53103,
    "declared_value": 245.54,
    "invoice": "UYT-543",
    "shipped": "2026-04-01",
    "tracking_number": "1Z999AA10123456784",
    "shipper": "Acme Widgets Inc.",
    "consignee": "Jane Smith",
    "account": "776845"
}

headers = {
    "Authorization": f"Bearer {token}",
    "Content-Type": "application/json"
}

response = requests.post(
    "https://api.u-pic.com/manifests",
    json=data,
    headers=headers
)
// Insure a shipment via U-PIC API
var token = "your_bearer_token";

var data = new
{
    carrier_id = 53103,
    declared_value = 245.54,
    invoice = "UYT-543",
    shipped = "2026-04-01",
    tracking = "1Z999AA10123456784",
    shipper = "Acme Widgets Inc.",
    consignee = "Jane Smith",
    account = "776845"
};

var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization =
    new AuthenticationHeaderValue("Bearer", token);

var json = JsonSerializer.Serialize(data);
var content = new StringContent(json, Encoding.UTF8, "application/json");

var response = await httpClient.PostAsync(
    "https://api.u-pic.com/manifests", content
);

API Explorer

Try it now. Pick an endpoint, hit Send, and see a sample response.

REQUEST
POST /manifests
{
  "carrier_id": 53103,
  "declared_value": 245.54,
  "invoice": "UYT-543",
  "shipped": "2026-04-01",
  "tracking_number": "1Z999AA10123456784",
  "shipper": "Acme Widgets Inc.",
  "consignee": "Jane Smith",
  "client_id": "776845"
}
RESPONSE
Click "Send Request" to see the response
Postman logo
Demo Postman Collection

A sample collection with dummy access keys and example payloads for demonstration purposes only. Requests are not functional and will not connect to live systems. Use it to explore the API structure and see how requests are formatted before you apply for real credentials.

Integration Support

Our engineering team is available to support your integration from kickoff to production. Whether you need help with authentication, payload structure, or edge cases, we're here.

Image: A seller clicking an API integration overlay.

Ready to Integrate?

Get API credentials and start building. Our team can have you up and running in days, not weeks.

Integrate With U-PIC Shipping Insurance

Offer a shipping insurance solution native to your platform, for your customers
Complete this form and an agent will be in touch shortly
$