# Coriolis & Centrifugal API
> Coriolis and centrifugal forces in a rotating frame as an API, computed locally and deterministically. The coriolis endpoint computes the Coriolis acceleration a = 2·Ω·v·sin(θ) and, given a mass, the Coriolis force F = m·a, for an object moving at a speed in a frame rotating at a given rate — supplied directly in radians per second, as rpm, or as planet=earth (Ω = 7.2921×10⁻⁵ rad/s) — with the angle taken as the latitude for motion over the Earth or an explicit angle to the rotation axis. The centrifugal endpoint computes the centrifugal acceleration a = ω²·r = v²/r and force from a radius and an angular speed (rad/s, rpm or a tangential velocity), and reports the g-force, handy for centrifuges, rotating machinery and amusement rides. The earth endpoint gives the rotation effects at a latitude: the Coriolis parameter f = 2·Ω·sin(lat), the inertial-oscillation period 2π/|f|, the eastward speed of the Earth's surface, the centrifugal acceleration, and which way moving objects are deflected (right in the Northern Hemisphere, left in the Southern). Everything is computed locally and deterministically, so it is instant and private. Ideal for meteorology, oceanography and geophysics tools, centrifuge and rotating-machinery design, ballistics and physics-education apps. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is rotating-frame dynamics; for projectile and SUVAT kinematics use a physics API and for banked-curve cornering use a banked-curve 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/coriolis-api/..."
```

## Pricing
- **Free** (Free) — 3,000 calls/Mo, 2 req/s
- **Starter** ($5/Mo) — 40,000 calls/Mo, 5 req/s
- **Pro** ($15/Mo) — 250,000 calls/Mo, 15 req/s
- **Mega** ($49/Mo) — 1,529,000 calls/Mo, 40 req/s

## Endpoints

### Coriolis

#### `GET /v1/centrifugal` — Centrifugal acceleration & force

**Parameters:**
- `radius` (query, required, string) — Radius (m) Example: `0.5`
- `rpm` (query, optional, string) — Rotation in rpm Example: `3000`
- `omega` (query, optional, string) — Or angular speed (rad/s)
- `velocity` (query, optional, string) — Or tangential velocity (m/s)
- `mass` (query, optional, string) — Mass (kg) for the force Example: `2`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/coriolis-api/v1/centrifugal?radius=0.5&rpm=3000&mass=2"
```

**Response:**
```json
{
    "data": {
        "rpm": 3000,
        "formula": "a = ω²·r = v²/r; g-force = a/9.80665.",
        "g_force": 5032.097812,
        "mass_kg": 2,
        "radius_m": 0.5,
        "centrifugal_force_n": 98696.044011,
        "angular_velocity_rad_s": 314.15926536,
        "tangential_velocity_ms": 157.079633,
        "centrifugal_acceleration_ms2": 49348.022005
    },
    "meta": {
        "timestamp": "2026-06-04T10:18:47.358Z",
        "request_id": "79d82fcd-155a-4170-869f-8999282b0a0f"
    },
    "status": "ok",
    "message": "Centrifugal acceleration & force",
    "success": true
}
```

#### `GET /v1/coriolis` — Coriolis acceleration & force

**Parameters:**
- `velocity` (query, required, string) — Object speed (m/s) Example: `100`
- `planet` (query, optional, string) — planet=earth for Ω (or rotation_rate) Example: `earth`
- `rotation_rate` (query, optional, string) — Or rotation rate (rad/s)
- `rpm` (query, optional, string) — Or rotation in rpm
- `latitude` (query, optional, string) — Latitude on Earth (degrees) Example: `45`
- `angle` (query, optional, string) — Or angle to rotation axis (deg, default 90)
- `mass` (query, optional, string) — Mass (kg) for the force Example: `1`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/coriolis-api/v1/coriolis?velocity=100&planet=earth&latitude=45&mass=1"
```

**Response:**
```json
{
    "data": {
        "formula": "a = 2·Ω·v·sin(θ); F = m·a.",
        "mass_kg": 1,
        "angle_deg": 45,
        "angle_basis": "latitude",
        "velocity_ms": 100,
        "rotation_source": "earth",
        "coriolis_force_n": 0.0103126092,
        "rotation_rate_rad_s": 7.2921159e-5,
        "coriolis_acceleration_ms2": 0.0103126092
    },
    "meta": {
        "timestamp": "2026-06-04T10:18:47.444Z",
        "request_id": "2293235f-1b67-48bc-ac5b-35bcb32518e6"
    },
    "status": "ok",
    "message": "Coriolis acceleration & force",
    "success": true
}
```

#### `GET /v1/earth` — Earth-rotation effects

**Parameters:**
- `latitude` (query, required, string) — Latitude (degrees, -90 to 90) Example: `45`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/coriolis-api/v1/earth?latitude=45"
```

**Response:**
```json
{
    "data": {
        "formula": "f = 2·Ω·sin(lat); inertial period T = 2π/|f|; Ω_earth = 7.2921×10⁻⁵ rad/s.",
        "deflection": "to the right (Northern Hemisphere)",
        "latitude_deg": 45,
        "coriolis_parameter_f": 0.000103126092,
        "earth_rotation_rate_rad_s": 7.2921159e-5,
        "surface_eastward_speed_ms": 328.5082,
        "surface_eastward_speed_kmh": 1182.6294,
        "centrifugal_acceleration_ms2": 0.0239552,
        "inertial_oscillation_period_h": 16.924226,
        "inertial_oscillation_period_s": 60927.2123
    },
    "meta": {
        "timestamp": "2026-06-04T10:18:47.540Z",
        "request_id": "ad5632c0-4c2c-4d87-92b3-7d94a33679c3"
    },
    "status": "ok",
    "message": "Earth-rotation effects",
    "success": true
}
```

### Meta

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

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

**Response:**
```json
{
    "data": {
        "api": "coriolis",
        "note": "Coriolis / centrifugal forces in a rotating frame — computed locally and deterministically, no key, no third-party service.",
        "constants": {
            "earth_radius_m": 6371000,
            "earth_omega_rad_s": 7.2921159e-5
        },
        "endpoints": [
            "/v1/coriolis",
            "/v1/centrifugal",
            "/v1/earth",
            "/v1/meta"
        ]
    },
    "meta": {
        "timestamp": "2026-06-04T10:18:47.638Z",
        "request_id": "d5393912-04ae-4398-9d23-a0add21f96dd"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


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