Skip to content
GET /v1/rivets-required

Rivets needed for a load

Try it live

10 free calls per day — no sign-up, no API key. Goes through the oanor gateway.

Custom headers (optional)
api.oanor.com/rivet-api

It works. Grab an API key and use it in your project.

Get an API key

Code snippets

curl "https://api.oanor.com/rivet-api/v1/rivets-required" \
  -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/rivet-api/v1/rivets-required", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/rivet-api/v1/rivets-required");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$out = curl_exec($ch);
import requests
requests.get(
    "https://api.oanor.com/rivet-api/v1/rivets-required",
    headers={"x-oanor-key": "oanor_test_..."}
)

Example response

A real response from this endpoint, captured by the latest health check.

{
    "data": {
        "note": "The rivets a joint needs = the design load ÷ the allowable load per rivet (rivet area × allowable shear × shear planes), rounded up to a whole rivet — always use the allowable (working) shear, the strength divided by the safety factor, not the raw strength. Add rivets for an even, symmetric pattern and respect the minimum pitch and edge distances; this count is the shear minimum, so still confirm bearing and tear-out for the plate.",
        "inputs": {
            "load_n": 50000,
            "shear_planes": 1,
            "rivet_diameter_mm": 6,
            "allowable_shear_mpa": 250
        },
        "rivets_exact": 7.074,
        "rivets_required": 8,
        "per_rivet_capacity_n": 7068.6
    },
    "meta": {
        "timestamp": "2026-06-07T08:17:55.422Z",
        "request_id": "0454e897-e324-4373-96ff-4963cca15def"
    },
    "status": "ok",
    "message": "Rivets required",
    "success": true
}