apiNG-plugin-openweathermap is a OpenWeatherMap API plugin for apiNG.
- Supported apiNG models:
weather - This plugin supports the
get-native-dataparameter - This plugin needs an api key
⚠️ - Used promise library: angular-openweathermap-api-factory (included in distribution files)
- INSTALLATION
- Get file
- Include file
- Add dependency
- Add plugin
- API KEY
- Generate your
api_key - Insert your
api_keyintoaping-config.js
- Generate your
- USAGE
- Models
- Requests
- Rate limit
Install via either bower, npm, CDN (jsDelivr) or downloaded files:
bower install apiNG-plugin-openweathermap --savenpm install aping-plugin-openweathermap --save- use CDN file
- download apiNG-plugin-openweathermap.zip
Include aping-plugin-openweathermap.min.js in your apiNG application
<!-- when using bower -->
<script src="bower_components/apiNG-plugin-openweathermap/dist/aping-plugin-openweathermap.min.js"></script>
<!-- when using npm -->
<script src="node_modules/aping-plugin-openweathermap/dist/aping-plugin-openweathermap.min.js"></script>
<!-- when using cdn file -->
<script src="//cdn.jsdelivr.net/aping.plugin-openweathermap/latest/aping-plugin-openweathermap.min.js"></script>
<!-- when using downloaded files -->
<script src="aping-plugin-openweathermap.min.js"></script>Add the module jtt_aping_openweathermap as a dependency to your app module:
angular.module('app', ['jtt_aping', 'jtt_aping_openweathermap']);Add the plugin's directive aping-openweathermap="[]" to your apiNG directive and configure your requests
<aping
template-url="templates/weather.html"
model="weather"
aping-openweathermap="[{'cityName':'munich'}]>
</aping>
- Login on openweathermap.org
- Open home.openweathermap.org
- There is your
api_key
- There is your
Create and open js/apiNG/aping-config.js in your application folder. It should be look like this snippet:
angular.module('jtt_aping').config(['$provide', function ($provide) {
$provide.value("apingDefaultSettings", {
apingApiKeys : {
'openweathermap': [
{'api_key':'<YOUR_OPENWEATHERMAP_API_KEY>'}
],
//...
}
});
}]);<YOUR_OPENWEATHERMAP_API_KEY> with your api_key
Supported apiNG models
| model | content |
|---|---|
weather |
weather data |
Every apiNG plugin expects an array of requests as html attribute.
| parameter | sample | default | description | optional |
|---|---|---|---|---|
cityName |
berlin |
You can call by city name | no | |
countryCode |
de |
ISO 3166 country codes | yes | |
timeSlot |
forecast5 |
now |
Valid values: now and forecast5 (5 days forecast) |
yes |
type |
like |
To set the accuracy level either use the accurate or like type parameter. accurate returns exact match values. like returns results by searching for that substring |
yes | |
units |
imperial |
metric |
Temperature is available in Fahrenheit, Celsius and Kelvin units. For temperature in Fahrenheit use imperial. For temperature in Celsius use metric. For temperature in Kelvin use kelvin |
yes |
language |
ru |
en |
English: en, Russian: ru, Italian: it, Spanish: es (or sp), Ukrainian: uk (or ua), German: de, Portuguese: pt, Romanian: ro, Polish: pl, Finnish: fi, Dutch: nl, French: fr, Bulgarian: bg, Swedish: sv (or se), Chinese Traditional: zh_tw, Chinese Simplified: zh (or zh_cn), Turkish: tr, Croatian: hr, Catalan: ca |
yes |
Sample requests:
[{'cityName':'london'}, {'cityName':'ney work city', 'units':'imperial'}][{'cityName':'berlin', 'countryCode':'de', 'language':'de', 'timeSlot':'forecast5'}]
| parameter | sample | default | description | optional |
|---|---|---|---|---|
cityId |
2172797 |
You can call by city ID. API responds with exact result. List of city ID city.list.json.gz can be downloaded here. | no | |
timeSlot |
forecast5 |
now |
Valid values: now and forecast5 (5 days forecast) |
yes |
units |
imperial |
metric |
Temperature is available in Fahrenheit, Celsius and Kelvin units. For temperature in Fahrenheit use imperial. For temperature in Celsius use metric. For temperature in Kelvin use kelvin |
yes |
language |
ru |
en |
English: en, Russian: ru, Italian: it, Spanish: es (or sp), Ukrainian: uk (or ua), German: de, Portuguese: pt, Romanian: ro, Polish: pl, Finnish: fi, Dutch: nl, French: fr, Bulgarian: bg, Swedish: sv (or se), Chinese Traditional: zh_tw, Chinese Simplified: zh (or zh_cn), Turkish: tr, Croatian: hr, Catalan: ca |
yes |
Sample requests:
[{'cityId':'2172797', 'units':'imperial'}]
| parameter | sample | default | description | optional |
|---|---|---|---|---|
zip |
94040 |
You can call by zip Code | no | |
countryCode |
us |
ISO 3166 country codes | no | |
units |
imperial |
metric |
Temperature is available in Fahrenheit, Celsius and Kelvin units. For temperature in Fahrenheit use imperial. For temperature in Celsius use metric. For temperature in Kelvin use kelvin |
yes |
language |
ru |
en |
English: en, Russian: ru, Italian: it, Spanish: es (or sp), Ukrainian: uk (or ua), German: de, Portuguese: pt, Romanian: ro, Polish: pl, Finnish: fi, Dutch: nl, French: fr, Bulgarian: bg, Swedish: sv (or se), Chinese Traditional: zh_tw, Chinese Simplified: zh (or zh_cn), Turkish: tr, Croatian: hr, Catalan: ca |
yes |
Sample requests:
[{'cityName':'94040', 'countryCode':'us', 'language':'de'}]
| parameter | sample | default | description | optional |
|---|---|---|---|---|
lat |
-13.163333 |
latitude of the location of your interest | no | |
lng |
-72.545556 |
longitude of the location of your interest | no | |
timeSlot |
forecast5 |
now |
Valid values: now and forecast5 (5 days forecast) |
yes |
units |
imperial |
metric |
Temperature is available in Fahrenheit, Celsius and Kelvin units. For temperature in Fahrenheit use imperial. For temperature in Celsius use metric. For temperature in Kelvin use kelvin |
yes |
language |
ru |
en |
English: en, Russian: ru, Italian: it, Spanish: es (or sp), Ukrainian: uk (or ua), German: de, Portuguese: pt, Romanian: ro, Polish: pl, Finnish: fi, Dutch: nl, French: fr, Bulgarian: bg, Swedish: sv (or se), Chinese Traditional: zh_tw, Chinese Simplified: zh (or zh_cn), Turkish: tr, Croatian: hr, Catalan: ca |
yes |
Sample requests:
[{'lat':'-13.163333', 'lng':'-72.545556', 'language':'es'}]
Visit the official OpenWeatherMap Price List
Calls per Free
| minute (no more than) | 60 | | day (no more than) | 50,000 |
MIT
