# Rigging Load API
> Rigging and lifting load maths as an API, computed locally and deterministically. The wll endpoint relates the working load limit to the minimum breaking strength through the safety (design) factor: give a breaking strength and it returns the working load limit (WLL = MBS ÷ safety factor), or give a working load limit and it returns the minimum breaking strength your hardware must be rated for (MBS = WLL × safety factor). The safety factor can be given directly or looked up by component — general rigging and wire rope 5, chain sling 4, shackle 6, personnel/man-rated 10. The sling endpoint computes the tension in each leg of a multi-leg sling as the lifting angle changes: because the legs pull at an angle, each carries more than its share, with a load factor of 1/sin(angle to horizontal) — 1.0 vertical, 1.15 at 60°, 1.41 at 45° and 2.0 at 30° — and it accepts the angle from horizontal, from vertical or the included angle between legs. The safety endpoint lists the typical design factors. Loads are given in kilograms, pounds, tonnes, kilonewtons or newtons and reported in all of them. Everything is computed locally and deterministically, so it is instant and private. A planning aid, not a substitute for a qualified rigger or the governing standard (ASME B30, EN, local code). Ideal for crane and lifting apps, construction and warehouse tools, theatrical and entertainment rigging, and towing and recovery calculators. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is rigging load maths; for the weight of the steel being lifted use a metal-weight API.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/rigging-api/..."
```

## Pricing
- **Free** (Free) — 13,835 calls/Mo, 2 req/s
- **Starter** ($15/Mo) — 23,550 calls/Mo, 8 req/s
- **Pro** ($36/Mo) — 285,500 calls/Mo, 20 req/s
- **Mega** ($74/Mo) — 1,470,000 calls/Mo, 50 req/s

## Endpoints

### Rigging

#### `GET /v1/safety` — Safety factor reference

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/rigging-api/v1/safety"
```

**Response:**
```json
{
    "data": {
        "note": "Typical minimum design factors — indicative only. Always follow the governing standard (e.g. ASME B30, EN, local code) and the manufacturer's rating.",
        "safety_factors": {
            "hook": 5,
            "shackle": 6,
            "man_rated": 10,
            "personnel": 10,
            "wire_rope": 5,
            "crane_wire": 3.5,
            "chain_sling": 4,
            "general_rigging": 5,
            "synthetic_sling": 5,
            "wire_rope_sling": 5,
            "overhead_lifting": 5
        }
    },
    "meta": {
        "timestamp": "2026-06-04T01:59:07.988Z",
        "request_id": "ace6246a-f01b-43a4-ae74-24fb504bcf65"
    },
    "status": "ok",
    "message": "Safety factor reference",
    "success": true
}
```

#### `GET /v1/sling` — Sling leg tension by angle

**Parameters:**
- `load` (query, required, string) — Load being lifted Example: `1000`
- `legs` (query, optional, string) — Number of legs (default 2) Example: `2`
- `angle` (query, optional, string) — Angle from horizontal (deg) Example: `60`
- `angle_from_vertical` (query, optional, string) — Or angle from vertical
- `included_angle` (query, optional, string) — Or included angle between legs
- `unit` (query, optional, string) — kg|lb|t|kN|N Example: `kg`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/rigging-api/v1/sling?load=1000&legs=2&angle=60&unit=kg"
```

**Response:**
```json
{
    "data": {
        "legs": 2,
        "load": {
            "kN": 9.8067,
            "kg": 1000,
            "lb": 2204.62,
            "tonnes": 1
        },
        "note": "Tension per leg = (load ÷ legs) × load factor, with load factor = 1/sin(angle to horizontal). Lower angles sharply increase leg tension (60°→1.15, 45°→1.41, 30°→2.0).",
        "load_factor": 1.1547,
        "tension_per_leg": {
            "kN": 5.6619,
            "kg": 577.35,
            "lb": 1272.84,
            "tonnes": 0.5774
        },
        "vertical_share_per_leg": {
            "kN": 4.9033,
            "kg": 500,
            "lb": 1102.31,
            "tonnes": 0.5
        },
        "angle_from_horizontal_deg": 60
    },
    "meta": {
        "timestamp": "2026-06-04T01:59:08.085Z",
        "request_id": "dfec31db-696a-4190-8c9c-c6d3c59ee83d"
    },
    "status": "ok",
    "message": "Sling leg tension by angle",
    "success": true
}
```

#### `GET /v1/wll` — Working load limit ↔ breaking strength

**Parameters:**
- `breaking_strength` (query, optional, string) — MBS (to get WLL) Example: `10000`
- `wll` (query, optional, string) — Or WLL (to get required MBS)
- `safety_factor` (query, optional, string) — Design factor (default 5) Example: `5`
- `component` (query, optional, string) — wire_rope|chain_sling|shackle|personnel|… (instead of factor)
- `unit` (query, optional, string) — kg|lb|t|kN|N (default kg) Example: `kg`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/rigging-api/v1/wll?breaking_strength=10000&safety_factor=5&unit=kg"
```

**Response:**
```json
{
    "data": {
        "mode": "mbs_to_wll",
        "note": "WLL = MBS ÷ safety factor. WLL is the maximum load you should apply; never exceed it.",
        "safety_factor": 5,
        "working_load_limit": {
            "kN": 19.6133,
            "kg": 2000,
            "lb": 4409.25,
            "tonnes": 2
        },
        "safety_factor_source": "explicit",
        "minimum_breaking_strength": {
            "kN": 98.0665,
            "kg": 10000,
            "lb": 22046.23,
            "tonnes": 10
        }
    },
    "meta": {
        "timestamp": "2026-06-04T01:59:08.184Z",
        "request_id": "8ac91251-2725-4bb1-8821-b82a00113833"
    },
    "status": "ok",
    "message": "Working load limit <-> breaking strength",
    "success": true
}
```

### Meta

#### `GET /v1/meta` — Spec

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/rigging-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "api": "rigging",
        "note": "Rigging & lifting load maths — computed locally and deterministically, no key, no third-party service. A planning aid, not a substitute for a qualified rigger.",
        "units": [
            "kg",
            "lb",
            "t",
            "kN",
            "N"
        ],
        "endpoints": [
            "/v1/wll",
            "/v1/sling",
            "/v1/safety",
            "/v1/meta"
        ]
    },
    "meta": {
        "timestamp": "2026-06-04T01:59:08.271Z",
        "request_id": "28a2ead6-ed89-45f1-8257-7e40cebc6cb6"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


---
Marketplace page: https://www.oanor.com/api/rigging-api
OpenAPI spec: https://www.oanor.com/api/rigging-api/openapi.json
