{"openapi":"3.1.0","info":{"title":"Thermal Radiation API","version":"1.0.0","description":"Stefan-Boltzmann thermal radiation and Wien's displacement law as an API, computed locally and deterministically. The power endpoint computes the radiant exitance of a surface, M = ε·σ·T⁴ — how much power a body radiates per unit area at a temperature, from its emissivity (1 for a black body) and absolute temperature — and, given the area, the total radiant power in watts and kilowatts; it also solves the temperature from a measured exitance. Temperatures may be entered in kelvin, Celsius or Fahrenheit. The exchange endpoint computes the net radiative heat transfer between an object and its surroundings, Q = ε·σ·A·(T_object⁴ − T_surroundings⁴), telling you whether the object is losing or gaining heat by radiation. The wien endpoint applies Wien's displacement law, λmax = b/T, to give the peak wavelength and frequency of the thermal spectrum and which band it falls in (the Sun at 5778 K peaks in visible green light, a room at 300 K in the infrared), and solves the temperature from a peak wavelength. The Stefan-Boltzmann constant 5.670×10⁻⁸ and Wien constant 2.898×10⁻³ are built in. Everything is computed locally and deterministically, so it is instant and private. Ideal for heat-transfer and building-physics tools, astronomy, infrared-thermography and solar apps, and physics education. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is thermal-radiation physics; for the RGB colour of a black body at a colour temperature use a colour-temperature API.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/radiation-api","description":"oanor gateway"}],"tags":[{"name":"Radiation"},{"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/exchange":{"get":{"operationId":"get_v1_exchange","tags":["Radiation"],"summary":"Net radiative heat transfer","description":"","parameters":[{"name":"object_temperature","in":"query","required":true,"description":"Object temperature","schema":{"type":"string"},"example":"350"},{"name":"surroundings_temperature","in":"query","required":true,"description":"Surroundings temperature","schema":{"type":"string"},"example":"300"},{"name":"unit","in":"query","required":false,"description":"k|c|f (default k)","schema":{"type":"string"},"example":"k"},{"name":"emissivity","in":"query","required":false,"description":"Emissivity 0–1 (default 1)","schema":{"type":"string"},"example":"0.9"},{"name":"area","in":"query","required":true,"description":"Area (m²)","schema":{"type":"string"},"example":"2"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"area_m2":2,"formula":"Q = ε·σ·A·(T_object⁴ − T_surroundings⁴).","direction":"object loses heat to surroundings","emissivity":0.9,"net_flux_w_m2":352.44921,"object_temperature_k":350,"net_radiative_power_w":704.89842,"net_radiative_power_kw":0.70489842,"surroundings_temperature_k":300},"meta":{"timestamp":"2026-06-04T10:18:47.768Z","request_id":"433908a7-6c60-4449-9370-e3739a64064e"},"status":"ok","message":"Net radiative heat transfer","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/power":{"get":{"operationId":"get_v1_power","tags":["Radiation"],"summary":"Radiant exitance & power","description":"","parameters":[{"name":"temperature","in":"query","required":false,"description":"Temperature","schema":{"type":"string"},"example":"300"},{"name":"unit","in":"query","required":false,"description":"k|c|f (default k)","schema":{"type":"string"},"example":"k"},{"name":"emissivity","in":"query","required":false,"description":"Emissivity 0–1 (default 1)","schema":{"type":"string"},"example":"1"},{"name":"area","in":"query","required":false,"description":"Area (m²) for total power","schema":{"type":"string"},"example":"1"},{"name":"exitance","in":"query","required":false,"description":"Or exitance (W/m²) to solve temperature","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"area_m2":1,"formula":"M = ε·σ·T⁴; P = M·A.","emissivity":1,"temperature_k":300,"radiant_power_w":459.300328,"radiant_power_kw":0.4593,"radiant_exitance_w_m2":459.300328,"stefan_boltzmann_constant":5.670374419e-8},"meta":{"timestamp":"2026-06-04T10:18:47.877Z","request_id":"9653e7c3-0618-47e2-91a4-d19d66042df9"},"status":"ok","message":"Radiant exitance & power","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/wien":{"get":{"operationId":"get_v1_wien","tags":["Radiation"],"summary":"Wien's displacement law","description":"","parameters":[{"name":"temperature","in":"query","required":false,"description":"Temperature","schema":{"type":"string"},"example":"5778"},{"name":"unit","in":"query","required":false,"description":"k|c|f (default k)","schema":{"type":"string"},"example":"k"},{"name":"peak_wavelength_nm","in":"query","required":false,"description":"Or peak wavelength (nm) to solve temperature","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"formula":"λmax = b/T (b = 2.8978×10⁻³ m·K); f_peak = T·5.879×10¹⁰ Hz/K.","spectrum":"visible","temperature_k":5778,"wien_constant":0.002897771955,"peak_frequency_hz":339684330239460,"peak_wavelength_m":5.01518e-7,"peak_wavelength_nm":501.518165,"peak_wavelength_um":0.50151816},"meta":{"timestamp":"2026-06-04T10:18:47.983Z","request_id":"b5620e4e-d39c-4eb7-bed1-c93ac4517d8e"},"status":"ok","message":"Wien's displacement law","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":{"api":"radiation","note":"Stefan-Boltzmann thermal radiation & Wien's law — computed locally and deterministically, no key, no third-party service.","constants":{"speed_of_light":299792458,"wien_wavelength":0.002897771955,"stefan_boltzmann":5.670374419e-8},"endpoints":["/v1/power","/v1/exchange","/v1/wien","/v1/meta"]},"meta":{"timestamp":"2026-06-04T10:18:48.091Z","request_id":"1ef4cc70-04d3-4b99-99dd-cbfe890fcf89"},"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":30000,"rps_limit":5,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2400,"monthly_call_quota":200000,"rps_limit":15,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":7400,"monthly_call_quota":1500000,"rps_limit":40,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/radiation-api"}