Ambee FREE API (pollen, air quality, weather, soil, etc..)

Attached is very simple NodeRed flow to extract Pollen information for your local area and push it into OH for rule execution. Likely can be done much cleaner, but this was a quick test type effort.

API provider: About Ambee

[
    {
        "id": "5ea5f103.3974e",
        "type": "tab",
        "label": "Ambee Pollen",
        "disabled": false,
        "info": ""
    },
    {
        "id": "422e63d8.caa1fc",
        "type": "inject",
        "z": "5ea5f103.3974e",
        "name": "Trigger Every 15 minutes",
        "topic": "",
        "payload": "",
        "payloadType": "date",
        "repeat": "900",
        "crontab": "",
        "once": false,
        "onceDelay": "5",
        "x": 900,
        "y": 440,
        "wires": [
            [
                "a10f378f.3a5978"
            ]
        ]
    },
    {
        "id": "a10f378f.3a5978",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Reset Alert Counter",
        "func": "flow.set(\"count\", 0);\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 870,
        "y": 560,
        "wires": [
            [
                "9a9be4f3.dae648"
            ]
        ]
    },
    {
        "id": "9a9be4f3.dae648",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Add User-Agent header",
        "func": "msg.payload = \"data to post\";\nmsg.headers = {};\n//msg.headers['User-Agent'] = 'Mr.X@gmail.com' ;\nmsg.headers['x-api-key'] = 'GetyourFREEKeyAndReplaceThis';\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 910,
        "y": 640,
        "wires": [
            [
                "b1a6e314.b2b42"
            ]
        ]
    },
    {
        "id": "b1a6e314.b2b42",
        "type": "http request",
        "z": "5ea5f103.3974e",
        "name": "Get Polled Counts By Area",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "https://api.ambeedata.com/latest/pollen/by-lat-lng?lat=40.7895153&lng=-86.4250983",
        "tls": "d52cd3fd.2bd66",
        "proxy": "",
        "authType": "basic",
        "x": 900,
        "y": 720,
        "wires": [
            [
                "3c43024b.8d9aae"
            ]
        ]
    },
    {
        "id": "3c43024b.8d9aae",
        "type": "json",
        "z": "5ea5f103.3974e",
        "name": "",
        "property": "payload",
        "action": "",
        "pretty": false,
        "x": 870,
        "y": 880,
        "wires": [
            [
                "2706dbd3.2a3524"
            ]
        ]
    },
    {
        "id": "2706dbd3.2a3524",
        "type": "Serial Iterator",
        "z": "5ea5f103.3974e",
        "name": "Process each Device Seperately",
        "property": "payload.data",
        "inputFlow": "input",
        "saveOutput": 1,
        "recursive": 1,
        "storeId": 0,
        "x": 1190,
        "y": 880,
        "wires": [
            [
                "1e04ca27.13ff46",
                "88b7d5c5.9bfa58",
                "fc3753d5.aaf8f",
                "10522c0e.dede24",
                "203f8856.037408",
                "28205e5e.7f4942",
                "da3d2874.bf8628",
                "bb2eb1c1.919a4",
                "1968d968.af1ce7",
                "145cb2cf.c0d15d",
                "9a061116.375b4",
                "e5f307c9.ce8218",
                "6e535b39.86ea14",
                "7c574391.8f217c",
                "16160886.033ff7",
                "87c6ab5f.af72f8",
                "dcf76e47.c2e8",
                "bd9c6885.d81268"
            ],
            []
        ]
    },
    {
        "id": "1e04ca27.13ff46",
        "type": "delay",
        "z": "5ea5f103.3974e",
        "name": "",
        "pauseType": "delay",
        "timeout": "1",
        "timeoutUnits": "seconds",
        "rate": "1",
        "nbRateUnits": "1",
        "rateUnits": "second",
        "randomFirst": "1",
        "randomLast": "5",
        "randomUnits": "seconds",
        "drop": false,
        "x": 1320,
        "y": 1000,
        "wires": [
            [
                "7877d483.733c0c"
            ]
        ]
    },
    {
        "id": "7877d483.733c0c",
        "type": "no-op",
        "z": "5ea5f103.3974e",
        "name": "",
        "x": 1290,
        "y": 1200,
        "wires": [
            [
                "2706dbd3.2a3524"
            ]
        ]
    },
    {
        "id": "82ccdfe1.14536",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Grass Pollen Count",
        "controller": "8fb2c716.40af68",
        "itemname": "Count_Grass_Pollen",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2120,
        "y": 600,
        "wires": [
            []
        ]
    },
    {
        "id": "88b7d5c5.9bfa58",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to GrassPollen Count",
        "func": "msg.payload = msg.payload.Count.grass_pollen;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1760,
        "y": 600,
        "wires": [
            [
                "82ccdfe1.14536"
            ]
        ]
    },
    {
        "id": "d87ba051.85c63",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Tree Pollen  Count",
        "controller": "8fb2c716.40af68",
        "itemname": "Count_Tree_Pollen",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2120,
        "y": 640,
        "wires": [
            []
        ]
    },
    {
        "id": "fc3753d5.aaf8f",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Tree Pollen Count",
        "func": "msg.payload = msg.payload.Count.tree_pollen;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1760,
        "y": 640,
        "wires": [
            [
                "d87ba051.85c63"
            ]
        ]
    },
    {
        "id": "beaaf9a9.966778",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Weed Pollen Count",
        "controller": "8fb2c716.40af68",
        "itemname": "Count_Weed_Pollen",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2120,
        "y": 680,
        "wires": [
            []
        ]
    },
    {
        "id": "10522c0e.dede24",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Weed Pollen Count",
        "func": "msg.payload = msg.payload.Count.weed_pollen;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1760,
        "y": 680,
        "wires": [
            [
                "beaaf9a9.966778"
            ]
        ]
    },
    {
        "id": "d39212e2.dc4ea",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Grass Pollen Risk",
        "controller": "8fb2c716.40af68",
        "itemname": "Risk_Grass_Pollen",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2120,
        "y": 760,
        "wires": [
            []
        ]
    },
    {
        "id": "203f8856.037408",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to GrassPollen Risk",
        "func": "msg.payload = msg.payload.Risk.grass_pollen;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1750,
        "y": 760,
        "wires": [
            [
                "d39212e2.dc4ea"
            ]
        ]
    },
    {
        "id": "26cc61ab.9c391e",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Tree Pollen Risk",
        "controller": "8fb2c716.40af68",
        "itemname": "Risk_Tree_Pollen",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2110,
        "y": 800,
        "wires": [
            []
        ]
    },
    {
        "id": "28205e5e.7f4942",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Tree Pollen Risk",
        "func": "msg.payload = msg.payload.Risk.tree_pollen;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1750,
        "y": 800,
        "wires": [
            [
                "26cc61ab.9c391e"
            ]
        ]
    },
    {
        "id": "c851e78d.b36c18",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Weed Pollen Risk",
        "controller": "8fb2c716.40af68",
        "itemname": "Risk_Weed_Pollen",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2120,
        "y": 840,
        "wires": [
            []
        ]
    },
    {
        "id": "da3d2874.bf8628",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Weed Pollen Risk",
        "func": "msg.payload = msg.payload.Risk.weed_pollen;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1760,
        "y": 840,
        "wires": [
            [
                "c851e78d.b36c18"
            ]
        ]
    },
    {
        "id": "a7ae05b3.a9a768",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Species Tree Ash",
        "controller": "8fb2c716.40af68",
        "itemname": "Species_Tree_Ash",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2110,
        "y": 940,
        "wires": [
            []
        ]
    },
    {
        "id": "bb2eb1c1.919a4",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Ash Numbers",
        "func": "msg.payload = msg.payload.Species.Tree.Ash;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1740,
        "y": 940,
        "wires": [
            [
                "a7ae05b3.a9a768"
            ]
        ]
    },
    {
        "id": "119ad426.3a17cc",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Species Tree Birch",
        "controller": "8fb2c716.40af68",
        "itemname": "Species_Tree_Birch",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2120,
        "y": 980,
        "wires": [
            []
        ]
    },
    {
        "id": "1968d968.af1ce7",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Ash Numbers",
        "func": "msg.payload = msg.payload.Species.Tree.Birch;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1740,
        "y": 980,
        "wires": [
            [
                "119ad426.3a17cc"
            ]
        ]
    },
    {
        "id": "b55d662.eb59598",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Species Tree Cedar",
        "controller": "8fb2c716.40af68",
        "itemname": "Species_Tree_Cedar",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2120,
        "y": 1020,
        "wires": [
            []
        ]
    },
    {
        "id": "145cb2cf.c0d15d",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Cedar Numbers",
        "func": "msg.payload = msg.payload.Species.Tree['Cypress / Juniper / Cedar'];\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1750,
        "y": 1020,
        "wires": [
            [
                "b55d662.eb59598"
            ]
        ]
    },
    {
        "id": "735fab55.0ae084",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Species Tree Elm",
        "controller": "8fb2c716.40af68",
        "itemname": "Species_Tree_Elm",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2120,
        "y": 1060,
        "wires": [
            []
        ]
    },
    {
        "id": "9a061116.375b4",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Elm Numbers",
        "func": "msg.payload = msg.payload.Species.Tree.Elm;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1740,
        "y": 1060,
        "wires": [
            [
                "735fab55.0ae084"
            ]
        ]
    },
    {
        "id": "df1c8e10.2e5b8",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Species Tree Maple",
        "controller": "8fb2c716.40af68",
        "itemname": "Species_Tree_Maple",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2120,
        "y": 1100,
        "wires": [
            []
        ]
    },
    {
        "id": "e5f307c9.ce8218",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Maple Numbers",
        "func": "msg.payload = msg.payload.Species.Tree.Maple;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1750,
        "y": 1100,
        "wires": [
            [
                "df1c8e10.2e5b8"
            ]
        ]
    },
    {
        "id": "cb121d9f.ed303",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Species Tree Mulberry",
        "controller": "8fb2c716.40af68",
        "itemname": "Species_Tree_Mulberry",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2130,
        "y": 1140,
        "wires": [
            []
        ]
    },
    {
        "id": "6e535b39.86ea14",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Mulberry Numbers",
        "func": "msg.payload = msg.payload.Species.Tree.Mulberry;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1760,
        "y": 1140,
        "wires": [
            [
                "cb121d9f.ed303"
            ]
        ]
    },
    {
        "id": "e92075a4.d39c88",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Species Tree Oak",
        "controller": "8fb2c716.40af68",
        "itemname": "Species_Tree_Oak",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2120,
        "y": 1180,
        "wires": [
            []
        ]
    },
    {
        "id": "7c574391.8f217c",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Oak Numbers",
        "func": "msg.payload = msg.payload.Species.Tree.Oak;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1740,
        "y": 1180,
        "wires": [
            [
                "e92075a4.d39c88"
            ]
        ]
    },
    {
        "id": "bc6cc73a.ec07f8",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Species Tree Pine ",
        "controller": "8fb2c716.40af68",
        "itemname": "Species_Tree_Pine",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2120,
        "y": 1220,
        "wires": [
            []
        ]
    },
    {
        "id": "16160886.033ff7",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Pine Numbers",
        "func": "msg.payload = msg.payload.Species.Tree.Pine;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1750,
        "y": 1220,
        "wires": [
            [
                "bc6cc73a.ec07f8"
            ]
        ]
    },
    {
        "id": "3e4b2b29.251824",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Species Tree CottonWood ",
        "controller": "8fb2c716.40af68",
        "itemname": "Species_Tree_CottonWood",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2140,
        "y": 1260,
        "wires": [
            []
        ]
    },
    {
        "id": "87c6ab5f.af72f8",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to CottonWood Numbers",
        "func": "msg.payload = msg.payload.Species.Tree['Poplar / Cottonwood'];\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1770,
        "y": 1260,
        "wires": [
            [
                "3e4b2b29.251824"
            ]
        ]
    },
    {
        "id": "5d35e0d3.11336",
        "type": "comment",
        "z": "5ea5f103.3974e",
        "name": "https://api-dashboard.getambee.com/#/docs",
        "info": "",
        "x": 910,
        "y": 400,
        "wires": []
    },
    {
        "id": "a7b10c6.28428f",
        "type": "openhab2-out",
        "z": "5ea5f103.3974e",
        "name": "Capture Species Weed Ragweed",
        "controller": "8fb2c716.40af68",
        "itemname": "Species_Weed_Ragweed",
        "topic": "ItemUpdate",
        "payload": "",
        "x": 2140,
        "y": 1360,
        "wires": [
            []
        ]
    },
    {
        "id": "dcf76e47.c2e8",
        "type": "function",
        "z": "5ea5f103.3974e",
        "name": "Set Payload to Ragweed Numbers",
        "func": "msg.payload = msg.payload.Species.Weed.Ragweed;\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 1760,
        "y": 1360,
        "wires": [
            [
                "a7b10c6.28428f"
            ]
        ]
    },
    {
        "id": "bd9c6885.d81268",
        "type": "debug",
        "z": "5ea5f103.3974e",
        "name": "DATA",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "true",
        "targetType": "full",
        "x": 1320,
        "y": 740,
        "wires": []
    },
    {
        "id": "d52cd3fd.2bd66",
        "type": "tls-config",
        "z": "",
        "name": "",
        "cert": "",
        "key": "",
        "ca": "",
        "certname": "",
        "keyname": "",
        "caname": "",
        "servername": "",
        "verifyservercert": true
    },
    {
        "id": "8fb2c716.40af68",
        "type": "openhab2-controller",
        "z": "",
        "name": "openHAB Controller",
        "protocol": "http",
        "host": "192.168.15.xxx",
        "port": "8080",
        "path": "",
        "username": "MrX",
        "password": "!4yOu2No"
    }
]

This topic was automatically closed 41 days after the last reply. New replies are no longer allowed.