{
    "properties": {
        "name": "Fetch",
        "environment": {
            "type": "noflo-nodejs"
        }
    },
    "inports": {
        "in": {
            "process": "CheckType",
            "port": "in",
            "metadata": {
                "x": -504,
                "y": 72,
                "width": 72,
                "height": 72
            }
        }
    },
    "outports": {
        "out": {
            "process": "MergeItems",
            "port": "out",
            "metadata": {
                "x": 1404,
                "y": 0,
                "width": 72,
                "height": 72
            }
        },
        "error": {
            "process": "Errors",
            "port": "out",
            "metadata": {
                "x": 1440,
                "y": 252,
                "width": 72,
                "height": 72
            }
        }
    },
    "groups": [
        {
            "name": "Markdown",
            "nodes": [
                "GetBody",
                "GetSource",
                "ParseFrontmatter",
                "ParseMarkdown",
                "SetHtml",
                "SetMeta"
            ],
            "metadata": {
                "description": ""
            }
        },
        {
            "name": "With remote payload",
            "nodes": [
                "EmbedlyToken",
                "Compression",
                "EachItem",
                "GetContents",
                "GetOptions",
                "GetUrl",
                "Normalize",
                "SetOptions"
            ],
            "metadata": {
                "description": ""
            }
        },
        {
            "name": "With payload",
            "nodes": [
                "CheckPayload",
                "Compression_z5yto",
                "ContentToHtml",
                "GetOptions_y3n42",
                "NormalizePayload",
                "Replacements",
                "SetOptions_wtwgh"
            ],
            "metadata": {
                "description": ""
            }
        }
    ],
    "processes": {
        "GetUrl": {
            "component": "objects/GetObjectKey",
            "metadata": {
                "label": "GetUrl",
                "x": -36,
                "y": 684,
                "width": 72,
                "height": 72
            }
        },
        "Normalize": {
            "component": "harpy/NormalizeItem",
            "metadata": {
                "label": "Normalize",
                "x": 612,
                "y": 504,
                "width": 72,
                "height": 72
            }
        },
        "SetOptions": {
            "component": "objects/SetPropertyValue",
            "metadata": {
                "label": "SetOptions",
                "x": 1152,
                "y": 504,
                "width": 72,
                "height": 72
            }
        },
        "EmbedlyToken": {
            "component": "core/ReadEnv",
            "metadata": {
                "label": "EmbedlyToken",
                "x": 144,
                "y": 324,
                "width": 72,
                "height": 72
            }
        },
        "GetContents": {
            "component": "embedly/Extract",
            "metadata": {
                "label": "GetContents",
                "x": 288,
                "y": 324,
                "width": 72,
                "height": 72
            }
        },
        "EachItem": {
            "component": "objects/SplitArray",
            "metadata": {
                "label": "EachItem",
                "x": 396,
                "y": 324,
                "width": 72,
                "height": 72
            }
        },
        "ContentToHtml": {
            "component": "objects/ReplaceKey",
            "metadata": {
                "label": "ContentToHtml",
                "x": 108,
                "y": -144,
                "width": 72,
                "height": 72
            }
        },
        "Replacements": {
            "component": "strings/ParseJson",
            "metadata": {
                "label": "Replacements",
                "x": -36,
                "y": 144,
                "width": 72,
                "height": 72
            }
        },
        "NormalizePayload": {
            "component": "harpy/NormalizeItem",
            "metadata": {
                "label": "NormalizePayload",
                "x": 1008,
                "y": -144,
                "width": 72,
                "height": 72
            }
        },
        "MergeItems": {
            "component": "core/Merge",
            "metadata": {
                "label": "MergeItems",
                "x": 1296,
                "y": 0,
                "width": 72,
                "height": 72
            }
        },
        "CheckType": {
            "component": "harpy/PayloadRouter",
            "metadata": {
                "label": "CheckType",
                "x": -396,
                "y": 72,
                "width": 72,
                "height": 72
            }
        },
        "GetOptions": {
            "component": "objects/GetObjectKey",
            "metadata": {
                "label": "GetOptions",
                "x": 216,
                "y": 684,
                "width": 72,
                "height": 72
            }
        },
        "CheckPayload": {
            "component": "harpy/MimeRouter",
            "metadata": {
                "label": "CheckPayload",
                "x": 252,
                "y": -144,
                "width": 72,
                "height": 72
            }
        },
        "ParseFrontmatter": {
            "component": "yaml/ParseFrontmatter",
            "metadata": {
                "label": "ParseFrontmatter",
                "x": 504,
                "y": -36,
                "width": 72,
                "height": 72
            }
        },
        "Errors": {
            "component": "core/Merge",
            "metadata": {
                "label": "Errors",
                "x": 1296,
                "y": 252,
                "width": 72,
                "height": 72
            }
        },
        "GetSource": {
            "component": "objects/GetObjectKey",
            "metadata": {
                "label": "GetSource",
                "x": 396,
                "y": 108,
                "width": 72,
                "height": 72
            }
        },
        "GetBody": {
            "component": "objects/GetObjectKey",
            "metadata": {
                "label": "GetBody",
                "x": 648,
                "y": -36,
                "width": 72,
                "height": 72
            }
        },
        "ParseMarkdown": {
            "component": "markdown/ParseMarkdown",
            "metadata": {
                "label": "ParseMarkdown",
                "x": 756,
                "y": -36,
                "width": 72,
                "height": 72
            }
        },
        "SetHtml": {
            "component": "objects/SetPropertyValue",
            "metadata": {
                "label": "SetHtml",
                "x": 864,
                "y": 36,
                "width": 72,
                "height": 72
            }
        },
        "SetMeta": {
            "component": "objects/SetPropertyValue",
            "metadata": {
                "label": "SetMeta",
                "x": 756,
                "y": 108,
                "width": 72,
                "height": 72
            }
        },
        "Compression": {
            "component": "objects/GetObjectKey",
            "metadata": {
                "label": "Compression",
                "x": 396,
                "y": 684,
                "width": 72,
                "height": 72
            }
        },
        "GetOptions_y3n42": {
            "component": "objects/GetObjectKey",
            "metadata": {
                "label": "GetOptions",
                "x": 360,
                "y": -252,
                "width": 72,
                "height": 72
            }
        },
        "Compression_z5yto": {
            "component": "objects/GetObjectKey",
            "metadata": {
                "label": "Compression",
                "x": 504,
                "y": -252,
                "width": 72,
                "height": 72
            }
        },
        "GetGist": {
            "component": "github/GetGist",
            "metadata": {
                "label": "GetGist",
                "x": 396,
                "y": 468,
                "width": 72,
                "height": 72
            }
        },
        "GithubToken": {
            "component": "core/ReadEnv",
            "metadata": {
                "label": "GithubToken",
                "x": 288,
                "y": 540,
                "width": 72,
                "height": 72
            }
        },
        "UrlRouter": {
            "component": "harpy/UrlRouter",
            "metadata": {
                "label": "UrlRouter",
                "x": 144,
                "y": 468,
                "width": 72,
                "height": 72
            }
        },
        "SetOptions_wtwgh": {
            "component": "objects/SetPropertyValue",
            "metadata": {
                "label": "SetOptions",
                "x": 1152,
                "y": -144,
                "width": 72,
                "height": 72
            }
        }
    },
    "connections": [
        {
            "src": {
                "process": "EmbedlyToken",
                "port": "out"
            },
            "tgt": {
                "process": "GetContents",
                "port": "token"
            },
            "metadata": {
                "route": 2
            }
        },
        {
            "src": {
                "process": "GetContents",
                "port": "out"
            },
            "tgt": {
                "process": "EachItem",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "EachItem",
                "port": "out"
            },
            "tgt": {
                "process": "Normalize",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "Replacements",
                "port": "out"
            },
            "tgt": {
                "process": "ContentToHtml",
                "port": "pattern"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "SetOptions",
                "port": "out"
            },
            "tgt": {
                "process": "MergeItems",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "CheckType",
                "port": "remote"
            },
            "tgt": {
                "process": "GetUrl",
                "port": "in"
            },
            "metadata": {
                "route": 2
            }
        },
        {
            "src": {
                "process": "CheckType",
                "port": "payload"
            },
            "tgt": {
                "process": "ContentToHtml",
                "port": "in"
            },
            "metadata": {
                "route": 2
            }
        },
        {
            "src": {
                "process": "GetUrl",
                "port": "object"
            },
            "tgt": {
                "process": "GetOptions",
                "port": "in"
            },
            "metadata": {
                "route": 2
            }
        },
        {
            "src": {
                "process": "CheckPayload",
                "port": "html"
            },
            "tgt": {
                "process": "NormalizePayload",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "ParseFrontmatter",
                "port": "error"
            },
            "tgt": {
                "process": "Errors",
                "port": "in"
            },
            "metadata": {
                "route": 1
            }
        },
        {
            "src": {
                "process": "GetContents",
                "port": "error"
            },
            "tgt": {
                "process": "Errors",
                "port": "in"
            },
            "metadata": {
                "route": 1
            }
        },
        {
            "src": {
                "process": "GetSource",
                "port": "out"
            },
            "tgt": {
                "process": "ParseFrontmatter",
                "port": "content"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "CheckPayload",
                "port": "markdown"
            },
            "tgt": {
                "process": "GetSource",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "ParseFrontmatter",
                "port": "results"
            },
            "tgt": {
                "process": "GetBody",
                "port": "in"
            },
            "metadata": {
                "route": 5
            }
        },
        {
            "src": {
                "process": "ParseMarkdown",
                "port": "error"
            },
            "tgt": {
                "process": "Errors",
                "port": "in"
            },
            "metadata": {
                "route": 1
            }
        },
        {
            "src": {
                "process": "GetBody",
                "port": "out"
            },
            "tgt": {
                "process": "ParseMarkdown",
                "port": "in"
            },
            "metadata": {
                "route": 5
            }
        },
        {
            "src": {
                "process": "ParseMarkdown",
                "port": "out"
            },
            "tgt": {
                "process": "SetHtml",
                "port": "value"
            },
            "metadata": {
                "route": 5
            }
        },
        {
            "src": {
                "process": "SetHtml",
                "port": "out"
            },
            "tgt": {
                "process": "NormalizePayload",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "GetBody",
                "port": "object"
            },
            "tgt": {
                "process": "SetMeta",
                "port": "value"
            },
            "metadata": {
                "route": 5
            }
        },
        {
            "src": {
                "process": "SetMeta",
                "port": "out"
            },
            "tgt": {
                "process": "SetHtml",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "GetSource",
                "port": "object"
            },
            "tgt": {
                "process": "SetMeta",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "Normalize",
                "port": "out"
            },
            "tgt": {
                "process": "SetOptions",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "Compression",
                "port": "out"
            },
            "tgt": {
                "process": "Normalize",
                "port": "compress"
            },
            "metadata": {
                "route": 2
            }
        },
        {
            "src": {
                "process": "GetOptions",
                "port": "out"
            },
            "tgt": {
                "process": "Compression",
                "port": "in"
            },
            "metadata": {
                "route": 3
            }
        },
        {
            "src": {
                "process": "Compression",
                "port": "object"
            },
            "tgt": {
                "process": "SetOptions",
                "port": "value"
            },
            "metadata": {
                "route": 3
            }
        },
        {
            "src": {
                "process": "Compression_z5yto",
                "port": "out"
            },
            "tgt": {
                "process": "NormalizePayload",
                "port": "compress"
            },
            "metadata": {
                "route": 3
            }
        },
        {
            "src": {
                "process": "GetOptions_y3n42",
                "port": "out"
            },
            "tgt": {
                "process": "Compression_z5yto",
                "port": "in"
            },
            "metadata": {
                "route": 3
            }
        },
        {
            "src": {
                "process": "ContentToHtml",
                "port": "out"
            },
            "tgt": {
                "process": "GetOptions_y3n42",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "ContentToHtml",
                "port": "out"
            },
            "tgt": {
                "process": "CheckPayload",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "UrlRouter",
                "port": "webpage"
            },
            "tgt": {
                "process": "GetContents",
                "port": "url"
            },
            "metadata": {
                "route": 5
            }
        },
        {
            "src": {
                "process": "GetUrl",
                "port": "out"
            },
            "tgt": {
                "process": "UrlRouter",
                "port": "in"
            },
            "metadata": {
                "route": 5
            }
        },
        {
            "src": {
                "process": "GithubToken",
                "port": "out"
            },
            "tgt": {
                "process": "GetGist",
                "port": "token"
            },
            "metadata": {
                "route": 2
            }
        },
        {
            "src": {
                "process": "UrlRouter",
                "port": "gist"
            },
            "tgt": {
                "process": "GetGist",
                "port": "gist"
            },
            "metadata": {
                "route": 5
            }
        },
        {
            "src": {
                "process": "GetGist",
                "port": "out"
            },
            "tgt": {
                "process": "Normalize",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "GetGist",
                "port": "error"
            },
            "tgt": {
                "process": "Errors",
                "port": "in"
            },
            "metadata": {
                "route": 1
            }
        },
        {
            "src": {
                "process": "SetOptions_wtwgh",
                "port": "out"
            },
            "tgt": {
                "process": "MergeItems",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "NormalizePayload",
                "port": "out"
            },
            "tgt": {
                "process": "SetOptions_wtwgh",
                "port": "in"
            },
            "metadata": {
                "route": 4
            }
        },
        {
            "src": {
                "process": "GetOptions_y3n42",
                "port": "out"
            },
            "tgt": {
                "process": "SetOptions_wtwgh",
                "port": "value"
            },
            "metadata": {
                "route": 3
            }
        },
        {
            "data": "url",
            "tgt": {
                "process": "GetUrl",
                "port": "key"
            }
        },
        {
            "data": false,
            "tgt": {
                "process": "GetUrl",
                "port": "sendgroup"
            }
        },
        {
            "data": false,
            "tgt": {
                "process": "SetOptions",
                "port": "keep"
            }
        },
        {
            "data": "EMBEDLY_API_TOKEN",
            "tgt": {
                "process": "EmbedlyToken",
                "port": "key"
            }
        },
        {
            "data": "{ \"content\": \"html\", \"url\": \"id\" }",
            "tgt": {
                "process": "Replacements",
                "port": "in"
            }
        },
        {
            "data": false,
            "tgt": {
                "process": "GetOptions",
                "port": "sendgroup"
            }
        },
        {
            "data": false,
            "tgt": {
                "process": "GetSource",
                "port": "sendgroup"
            }
        },
        {
            "data": "html",
            "tgt": {
                "process": "GetSource",
                "port": "key"
            }
        },
        {
            "data": false,
            "tgt": {
                "process": "GetBody",
                "port": "sendgroup"
            }
        },
        {
            "data": "body",
            "tgt": {
                "process": "GetBody",
                "port": "key"
            }
        },
        {
            "data": true,
            "tgt": {
                "process": "ParseMarkdown",
                "port": "gfm"
            }
        },
        {
            "data": false,
            "tgt": {
                "process": "SetHtml",
                "port": "keep"
            }
        },
        {
            "data": "html",
            "tgt": {
                "process": "SetHtml",
                "port": "property"
            }
        },
        {
            "data": false,
            "tgt": {
                "process": "SetMeta",
                "port": "keep"
            }
        },
        {
            "data": "metadata",
            "tgt": {
                "process": "SetMeta",
                "port": "property"
            }
        },
        {
            "data": "options",
            "tgt": {
                "process": "GetOptions",
                "port": "key"
            }
        },
        {
            "data": "options",
            "tgt": {
                "process": "SetOptions",
                "port": "property"
            }
        },
        {
            "data": false,
            "tgt": {
                "process": "Compression",
                "port": "sendgroup"
            }
        },
        {
            "data": "compress",
            "tgt": {
                "process": "Compression",
                "port": "key"
            }
        },
        {
            "data": false,
            "tgt": {
                "process": "GetOptions_y3n42",
                "port": "sendgroup"
            }
        },
        {
            "data": "options",
            "tgt": {
                "process": "GetOptions_y3n42",
                "port": "key"
            }
        },
        {
            "data": false,
            "tgt": {
                "process": "Compression_z5yto",
                "port": "sendgroup"
            }
        },
        {
            "data": "compress",
            "tgt": {
                "process": "Compression_z5yto",
                "port": "key"
            }
        },
        {
            "data": "GITHUB_API_TOKEN",
            "tgt": {
                "process": "GithubToken",
                "port": "key"
            }
        },
        {
            "data": false,
            "tgt": {
                "process": "SetOptions_wtwgh",
                "port": "keep"
            }
        },
        {
            "data": "options",
            "tgt": {
                "process": "SetOptions_wtwgh",
                "port": "property"
            }
        }
    ]
}