{"openapi":"3.1.0","info":{"title":"PCB Design API","version":"1.0.0","description":"Printed-circuit-board design maths as an API, computed locally and deterministically. The trace-width endpoint applies the IPC-2221 standard to find the minimum copper trace width for a current and an allowable temperature rise, A = (I/(k·ΔT^0.44))^(1/0.725) with k = 0.048 for outer layers and 0.024 for inner, returning the cross-section and the width in mils and millimetres for a given copper weight. The trace-resistance endpoint computes a trace's resistance from its width, length and copper thickness, R = ρ·L/(W·t), with the copper temperature coefficient, and — given a current — the voltage drop and power dissipation. The microstrip endpoint computes the characteristic impedance of a microstrip line by the Hammerstad model from the trace width, the dielectric height and the dielectric constant (about 4.5 for FR4), with the effective permittivity and propagation delay for controlled-impedance routing. Everything is computed locally and deterministically, so it is instant and private. Ideal for electronics, hardware, embedded and PCB-design app developers, board-layout and signal-integrity tools, and electronics education. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is PCB design; for resistor colour codes use a resistor API and for general Ohm's-law maths an Ohm's-law API.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/pcb-api","description":"oanor gateway"}],"tags":[{"name":"PCB"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/microstrip":{"get":{"operationId":"get_v1_microstrip","tags":["PCB"],"summary":"Microstrip impedance","description":"","parameters":[{"name":"width","in":"query","required":true,"description":"Trace width (mm)","schema":{"type":"string"},"example":"0.5"},{"name":"height","in":"query","required":true,"description":"Dielectric height (mm)","schema":{"type":"string"},"example":"0.5"},{"name":"dielectric","in":"query","required":false,"description":"Dielectric constant εr","schema":{"type":"string"},"example":"4.5"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Hammerstad microstrip model. εr ≈ 4.5 for FR4; the effective εr accounts for fields in both the substrate and air.","inputs":{"w_over_h":1,"width_mm":0.5,"height_mm":0.5,"dielectric_constant":4.5},"impedance_ohm":70.119,"propagation_velocity_m_s":166670683.99,"propagation_delay_ps_per_mm":5.999855,"effective_dielectric_constant":3.235363},"meta":{"timestamp":"2026-06-05T03:09:01.301Z","request_id":"75d1e9e9-ba79-4f5c-a4ef-cc4534469aa5"},"status":"ok","message":"Microstrip impedance","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/trace-resistance":{"get":{"operationId":"get_v1_trace_resistance","tags":["PCB"],"summary":"Trace resistance","description":"","parameters":[{"name":"width","in":"query","required":true,"description":"Trace width (mm)","schema":{"type":"string"},"example":"0.762"},{"name":"length","in":"query","required":true,"description":"Trace length (mm)","schema":{"type":"string"},"example":"100"},{"name":"copper_oz","in":"query","required":false,"description":"Copper weight (oz)","schema":{"type":"string"},"example":"1"},{"name":"temperature","in":"query","required":false,"description":"Temperature (°C)","schema":{"type":"string"},"example":"20"},{"name":"current","in":"query","required":false,"description":"Current (A) for drop/loss","schema":{"type":"string"},"example":"2"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Trace resistance R = ρ·L/(W·t), copper ρ = 1.724×10⁻⁸ Ω·m at 20 °C with a +0.393 %/°C tempco.","inputs":{"width_mm":0.762,"length_mm":100,"temperature_c":20,"copper_thickness_mm":0.0347},"current_a":2,"resistance_ohm":0.065200784,"voltage_drop_v":0.130402,"power_dissipation_w":0.260803,"resistance_milliohm":65.200784},"meta":{"timestamp":"2026-06-05T03:09:01.399Z","request_id":"1b485884-1be9-42a7-b4e1-5ec260c728db"},"status":"ok","message":"Trace resistance","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/trace-width":{"get":{"operationId":"get_v1_trace_width","tags":["PCB"],"summary":"IPC-2221 trace width","description":"","parameters":[{"name":"current","in":"query","required":true,"description":"Current (A)","schema":{"type":"string"},"example":"2"},{"name":"temp_rise","in":"query","required":false,"description":"Allowable temp rise (°C)","schema":{"type":"string"},"example":"10"},{"name":"layer","in":"query","required":false,"description":"external or internal","schema":{"type":"string"},"example":"external"},{"name":"copper_oz","in":"query","required":false,"description":"Copper weight (oz)","schema":{"type":"string"},"example":"1"},{"name":"thickness_mm","in":"query","required":false,"description":"Or copper thickness (mm)","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"IPC-2221: A = (I/(k·ΔT^0.44))^(1/0.725) in mils²; k = 0.048 external, 0.024 internal. Width = area ÷ copper thickness.","inputs":{"layer":"external","current_a":2,"temp_rise_c":10,"copper_thickness_mm":0.0347},"trace_width_mm":0.78819,"trace_width_mils":31.0312,"cross_section_mils2":42.3931},"meta":{"timestamp":"2026-06-05T03:09:01.502Z","request_id":"f11b4805-d37a-41cb-b74e-feaab05eca51"},"status":"ok","message":"Trace width","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Spec","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"notes":"Current in A, temperature rise in °C, widths/lengths in mm, copper weight in oz (1 oz ≈ 34.7 µm) or thickness_mm. εr ≈ 4.5 for FR4.","service":"pcb-api","formulae":{"microstrip":"Hammerstad Z₀ from W/h and εr","resistance":"R = ρ·L/(W·t)","trace_width":"A = (I/(k·ΔT^0.44))^(1/0.725), width = A/thickness"},"endpoints":{"GET /v1/meta":"This document.","GET /v1/microstrip":"Characteristic impedance of a microstrip line (Hammerstad).","GET /v1/trace-width":"Minimum trace width (IPC-2221) for a current and temperature rise.","GET /v1/trace-resistance":"Trace resistance, voltage drop and power loss from its geometry."},"description":"PCB design calculator: IPC-2221 minimum trace width for a current, trace resistance and voltage drop, and microstrip characteristic impedance."},"meta":{"timestamp":"2026-06-05T03:09:01.574Z","request_id":"14650259-4ecf-44ff-a859-a651f4e58df2"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":2000,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":900,"monthly_call_quota":25000,"rps_limit":5,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2400,"monthly_call_quota":150000,"rps_limit":15,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":7500,"monthly_call_quota":788000,"rps_limit":40,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/pcb-api"}