@n8n-as-code/skills 1.7.0-next.4 → 1.7.0-next.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/n8n-docs-complete.json +696 -696
- package/dist/assets/n8n-knowledge-index.json +416 -416
- package/dist/assets/n8n-nodes-index.json +5 -5
- package/dist/assets/n8n-nodes-technical.json +107 -2128
- package/dist/assets/workflows-index.json +1 -1
- package/dist/commands/skills-commander.js.map +1 -1
- package/dist/services/node-schema-provider.d.ts +7 -0
- package/dist/services/node-schema-provider.d.ts.map +1 -1
- package/dist/services/node-schema-provider.js +2 -1
- package/dist/services/node-schema-provider.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"generatedAt": "2026-04-
|
|
2
|
+
"generatedAt": "2026-04-03T14:29:40.602Z",
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"sourceUrl": "https://docs.n8n.io/llms.txt",
|
|
5
5
|
"totalPages": 1262,
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"page-0013",
|
|
44
44
|
"page-0014",
|
|
45
45
|
"page-0015",
|
|
46
|
-
"page-0132",
|
|
47
46
|
"page-0133",
|
|
48
47
|
"page-0134",
|
|
49
48
|
"page-0135",
|
|
50
49
|
"page-0136",
|
|
50
|
+
"page-0137",
|
|
51
51
|
"page-0138",
|
|
52
52
|
"page-0139",
|
|
53
53
|
"page-0148",
|
|
@@ -691,7 +691,7 @@
|
|
|
691
691
|
"page-0129",
|
|
692
692
|
"page-0130",
|
|
693
693
|
"page-0131",
|
|
694
|
-
"page-
|
|
694
|
+
"page-0132"
|
|
695
695
|
]
|
|
696
696
|
},
|
|
697
697
|
"flow-logic": {
|
|
@@ -9710,6 +9710,263 @@
|
|
|
9710
9710
|
},
|
|
9711
9711
|
{
|
|
9712
9712
|
"id": "page-0103",
|
|
9713
|
+
"title": "Referencing data in the UI",
|
|
9714
|
+
"url": "https://docs.n8n.io/data/data-mapping/data-mapping-ui/index.md",
|
|
9715
|
+
"urlPath": "data/data-mapping/data-mapping-ui/index.md",
|
|
9716
|
+
"category": "data",
|
|
9717
|
+
"subcategory": null,
|
|
9718
|
+
"nodeName": null,
|
|
9719
|
+
"nodeType": null,
|
|
9720
|
+
"content": {
|
|
9721
|
+
"markdown": "# Referencing data in the UI\n\nData mapping means referencing data from previous nodes. It doesn't include changing (transforming) data, just referencing it.\n\nWhen you need data from a particular node in your workflow, you can [reference nodes by name](../referencing-other-nodes/). This is useful when your workflow has multiple branches or when you need to access data from several steps back.\n\nYou can map data in the following ways:\n\n- Using the expressions editor.\n- By dragging and dropping data from the **INPUT** pane into node parameters. This generates the expression for you.\n\nFor information on errors with mapping and linking items, refer to [Item linking errors](../data-item-linking/item-linking-errors/).\n\nSee [Common ways of referencing](../referencing-other-nodes/#common-ways-of-referencing).\n",
|
|
9722
|
+
"excerpt": "# Referencing data in the UI Data mapping means referencing data from previous nodes. It doesn't include changing (transforming) data, just referencing it. When you need data from a particular node in your workflow, you can [reference nodes by name](../referencing-other-nodes/). This is useful when your workflow has multiple branches or when you need to access data from several steps back. You can map data in the following ways: - Using the expressions editor. - By dragging and dropping data...",
|
|
9723
|
+
"sections": [
|
|
9724
|
+
{
|
|
9725
|
+
"title": "Referencing data in the UI",
|
|
9726
|
+
"level": 1,
|
|
9727
|
+
"content": "Data mapping means referencing data from previous nodes. It doesn't include changing (transforming) data, just referencing it.\n\nWhen you need data from a particular node in your workflow, you can [reference nodes by name](../referencing-other-nodes/). This is useful when your workflow has multiple branches or when you need to access data from several steps back.\n\nYou can map data in the following ways:\n\n- Using the expressions editor.\n- By dragging and dropping data from the **INPUT** pane into node parameters. This generates the expression for you.\n\nFor information on errors with mapping and linking items, refer to [Item linking errors](../data-item-linking/item-linking-errors/).\n\nSee [Common ways of referencing](../referencing-other-nodes/#common-ways-of-referencing)."
|
|
9728
|
+
}
|
|
9729
|
+
]
|
|
9730
|
+
},
|
|
9731
|
+
"metadata": {
|
|
9732
|
+
"keywords": [
|
|
9733
|
+
"referencing",
|
|
9734
|
+
"data"
|
|
9735
|
+
],
|
|
9736
|
+
"useCases": [],
|
|
9737
|
+
"operations": [],
|
|
9738
|
+
"codeExamples": 0,
|
|
9739
|
+
"complexity": "beginner",
|
|
9740
|
+
"readingTime": "1 min",
|
|
9741
|
+
"contentLength": 811,
|
|
9742
|
+
"relatedPages": []
|
|
9743
|
+
},
|
|
9744
|
+
"searchIndex": {
|
|
9745
|
+
"fullText": "referencing data in the ui # referencing data in the ui\n\ndata mapping means referencing data from previous nodes. it doesn't include changing (transforming) data, just referencing it.\n\nwhen you need data from a particular node in your workflow, you can [reference nodes by name](../referencing-other-nodes/). this is useful when your workflow has multiple branches or when you need to access data from several steps back.\n\nyou can map data in the following ways:\n\n- using the expressions editor.\n- by dragging and dropping data from the **input** pane into node parameters. this generates the expression for you.\n\nfor information on errors with mapping and linking items, refer to [item linking errors](../data-item-linking/item-linking-errors/).\n\nsee [common ways of referencing](../referencing-other-nodes/#common-ways-of-referencing).\n referencing data in the ui",
|
|
9746
|
+
"importantTerms": [
|
|
9747
|
+
"data",
|
|
9748
|
+
"referencing",
|
|
9749
|
+
"from",
|
|
9750
|
+
"nodes",
|
|
9751
|
+
"linking",
|
|
9752
|
+
"when",
|
|
9753
|
+
"ways",
|
|
9754
|
+
"errors",
|
|
9755
|
+
"item"
|
|
9756
|
+
]
|
|
9757
|
+
}
|
|
9758
|
+
},
|
|
9759
|
+
{
|
|
9760
|
+
"id": "page-0104",
|
|
9761
|
+
"title": "Accessing linked items in the Code node",
|
|
9762
|
+
"url": "https://docs.n8n.io/data/data-mapping/itemmatching/index.md",
|
|
9763
|
+
"urlPath": "data/data-mapping/itemmatching/index.md",
|
|
9764
|
+
"category": "data",
|
|
9765
|
+
"subcategory": null,
|
|
9766
|
+
"nodeName": null,
|
|
9767
|
+
"nodeType": null,
|
|
9768
|
+
"content": {
|
|
9769
|
+
"markdown": "# Accessing linked items in the Code node\n\nEvery item in a node's input data links back to the items used in previous nodes to generate it. This is useful if you need to retrieve linked items from further back than the immediate previous node.\n\nTo access the linked items from earlier in the workflow, use `(\"<node-name>\").itemMatching(currentNodeinputIndex)`.\n\nFor example, consider a workflow that does the following:\n\n1. The Customer Datastore node generates example data:\n\n ```\n [\n \t{\n \t\t\"id\": \"23423532\",\n \t\t\"name\": \"Jay Gatsby\",\n \t\t\"email\": \"gatsby@west-egg.com\",\n \t\t\"notes\": \"Keeps asking about a green light??\",\n \t\t\"country\": \"US\",\n \t\t\"created\": \"1925-04-10\"\n \t},\n \t{\n \t\t\"id\": \"23423533\",\n \t\t\"name\": \"José Arcadio Buendía\",\n \t\t\"email\": \"jab@macondo.co\",\n \t\t\"notes\": \"Lots of people named after him. Very confusing\",\n \t\t\"country\": \"CO\",\n \t\t\"created\": \"1967-05-05\"\n \t},\n \t...\n ]\n ```\n\n1. The Edit Fields node simplifies this data:\n\n ```\n [\n \t{\n \t\t\"name\": \"Jay Gatsby\"\n \t},\n \t{\n \t\t\"name\": \"José Arcadio Buendía\"\n \t},\n ...\n ]\n ```\n\n1. The Code node restores the email address to the correct person:\n\n ```\n [\n \t{\n \t\t\"name\": \"Jay Gatsby\",\n \t\t\"restoreEmail\": \"gatsby@west-egg.com\"\n \t},\n \t{\n \t\t\"name\": \"José Arcadio Buendía\",\n \t\t\"restoreEmail\": \"jab@macondo.co\"\n \t},\n \t...\n ]\n ```\n\nThe Code node does this using the following code:\n\n```\nfor(let i=0; i<$input.all().length; i++) {\n\t$input.all()[i].json.restoreEmail = $('Customer Datastore (n8n training)').itemMatching(i).json.email;\n}\nreturn $input.all();\n```\n\n```\nfor i,item in enumerate(_input.all()):\n\t_input.all()[i].json.restoreEmail = _('Customer Datastore (n8n training)').itemMatching(i).json.email\n\nreturn _input.all();\n```\n\nYou can view and download the example workflow from [n8n website | itemMatching usage example](https://n8n.io/workflows/1966-itemmatching-usage-example/).\n",
|
|
9770
|
+
"excerpt": "# Accessing linked items in the Code node Every item in a node's input data links back to the items used in previous nodes to generate it. This is useful if you need to retrieve linked items from further back than the immediate previous node. To access the linked items from earlier in the workflow, use `(\"<node-name>\").itemMatching(currentNodeinputIndex)`. For example, consider a workflow that does the following: 1. The Customer Datastore node generates example data: ``` [ \t{...",
|
|
9771
|
+
"sections": [
|
|
9772
|
+
{
|
|
9773
|
+
"title": "Accessing linked items in the Code node",
|
|
9774
|
+
"level": 1,
|
|
9775
|
+
"content": "Every item in a node's input data links back to the items used in previous nodes to generate it. This is useful if you need to retrieve linked items from further back than the immediate previous node.\n\nTo access the linked items from earlier in the workflow, use `(\"<node-name>\").itemMatching(currentNodeinputIndex)`.\n\nFor example, consider a workflow that does the following:\n\n1. The Customer Datastore node generates example data:\n\n ```\n [\n \t{\n \t\t\"id\": \"23423532\",\n \t\t\"name\": \"Jay Gatsby\",\n \t\t\"email\": \"gatsby@west-egg.com\",\n \t\t\"notes\": \"Keeps asking about a green light??\",\n \t\t\"country\": \"US\",\n \t\t\"created\": \"1925-04-10\"\n \t},\n \t{\n \t\t\"id\": \"23423533\",\n \t\t\"name\": \"José Arcadio Buendía\",\n \t\t\"email\": \"jab@macondo.co\",\n \t\t\"notes\": \"Lots of people named after him. Very confusing\",\n \t\t\"country\": \"CO\",\n \t\t\"created\": \"1967-05-05\"\n \t},\n \t...\n ]\n ```\n\n1. The Edit Fields node simplifies this data:\n\n ```\n [\n \t{\n \t\t\"name\": \"Jay Gatsby\"\n \t},\n \t{\n \t\t\""
|
|
9776
|
+
}
|
|
9777
|
+
]
|
|
9778
|
+
},
|
|
9779
|
+
"metadata": {
|
|
9780
|
+
"keywords": [
|
|
9781
|
+
"accessing",
|
|
9782
|
+
"linked",
|
|
9783
|
+
"items",
|
|
9784
|
+
"code",
|
|
9785
|
+
"node"
|
|
9786
|
+
],
|
|
9787
|
+
"useCases": [],
|
|
9788
|
+
"operations": [],
|
|
9789
|
+
"codeExamples": 5,
|
|
9790
|
+
"complexity": "beginner",
|
|
9791
|
+
"readingTime": "2 min",
|
|
9792
|
+
"contentLength": 1934,
|
|
9793
|
+
"relatedPages": []
|
|
9794
|
+
},
|
|
9795
|
+
"searchIndex": {
|
|
9796
|
+
"fullText": "accessing linked items in the code node # accessing linked items in the code node\n\nevery item in a node's input data links back to the items used in previous nodes to generate it. this is useful if you need to retrieve linked items from further back than the immediate previous node.\n\nto access the linked items from earlier in the workflow, use `(\"<node-name>\").itemmatching(currentnodeinputindex)`.\n\nfor example, consider a workflow that does the following:\n\n1. the customer datastore node generates example data:\n\n ```\n [\n \t{\n \t\t\"id\": \"23423532\",\n \t\t\"name\": \"jay gatsby\",\n \t\t\"email\": \"gatsby@west-egg.com\",\n \t\t\"notes\": \"keeps asking about a green light??\",\n \t\t\"country\": \"us\",\n \t\t\"created\": \"1925-04-10\"\n \t},\n \t{\n \t\t\"id\": \"23423533\",\n \t\t\"name\": \"josé arcadio buendía\",\n \t\t\"email\": \"jab@macondo.co\",\n \t\t\"notes\": \"lots of people named after him. very confusing\",\n \t\t\"country\": \"co\",\n \t\t\"created\": \"1967-05-05\"\n \t},\n \t...\n ]\n ```\n\n1. the edit fields node simplifies this data:\n\n ```\n [\n \t{\n \t\t\"name\": \"jay gatsby\"\n \t},\n \t{\n \t\t\"name\": \"josé arcadio buendía\"\n \t},\n ...\n ]\n ```\n\n1. the code node restores the email address to the correct person:\n\n ```\n [\n \t{\n \t\t\"name\": \"jay gatsby\",\n \t\t\"restoreemail\": \"gatsby@west-egg.com\"\n \t},\n \t{\n \t\t\"name\": \"josé arcadio buendía\",\n \t\t\"restoreemail\": \"jab@macondo.co\"\n \t},\n \t...\n ]\n ```\n\nthe code node does this using the following code:\n\n```\nfor(let i=0; i<$input.all().length; i++) {\n\t$input.all()[i].json.restoreemail = $('customer datastore (n8n training)').itemmatching(i).json.email;\n}\nreturn $input.all();\n```\n\n```\nfor i,item in enumerate(_input.all()):\n\t_input.all()[i].json.restoreemail = _('customer datastore (n8n training)').itemmatching(i).json.email\n\nreturn _input.all();\n```\n\nyou can view and download the example workflow from [n8n website | itemmatching usage example](https://n8n.io/workflows/1966-itemmatching-usage-example/).\n accessing linked items in the code node",
|
|
9797
|
+
"importantTerms": [
|
|
9798
|
+
"node",
|
|
9799
|
+
"name",
|
|
9800
|
+
"items",
|
|
9801
|
+
"code",
|
|
9802
|
+
"linked",
|
|
9803
|
+
"itemmatching",
|
|
9804
|
+
"example",
|
|
9805
|
+
"gatsby",
|
|
9806
|
+
"email",
|
|
9807
|
+
"input",
|
|
9808
|
+
"restoreemail",
|
|
9809
|
+
"json",
|
|
9810
|
+
"accessing",
|
|
9811
|
+
"data",
|
|
9812
|
+
"this",
|
|
9813
|
+
"from",
|
|
9814
|
+
"workflow",
|
|
9815
|
+
"customer",
|
|
9816
|
+
"datastore",
|
|
9817
|
+
"arcadio",
|
|
9818
|
+
"buend"
|
|
9819
|
+
]
|
|
9820
|
+
}
|
|
9821
|
+
},
|
|
9822
|
+
{
|
|
9823
|
+
"id": "page-0105",
|
|
9824
|
+
"title": "Referencing previous nodes",
|
|
9825
|
+
"url": "https://docs.n8n.io/data/data-mapping/referencing-other-nodes/index.md",
|
|
9826
|
+
"urlPath": "data/data-mapping/referencing-other-nodes/index.md",
|
|
9827
|
+
"category": "data",
|
|
9828
|
+
"subcategory": null,
|
|
9829
|
+
"nodeName": null,
|
|
9830
|
+
"nodeType": null,
|
|
9831
|
+
"content": {
|
|
9832
|
+
"markdown": "# Referencing previous nodes\n\nWhen working with data in n8n, you'll often need to reference information from the current node or from previous nodes in your workflow.\n\n## Common ways of referencing\n\nThe most frequently used methods for accessing data are:\n\n- **`$json`**: Access JSON data from the current input item\n- **`$('<node-name>').item.json`**: Access JSON data from a [linked item](../data-item-linking/) in a previous node\n\n## Other referencing methods\n\nThese methods work in both expressions and the Code node:\n\n| Method | Description |\n| -------------------------- | ---------------------------------------------- |\n| `$binary` | Access binary data from the current input item |\n| `$input.item` | The input item currently being processed |\n| `$('<node-name>').first()` | Get the first item from a specified node |\n| `$('<node-name>').last()` | Get the last item from a specified node |\n| `$('<node-name>').all()` | Get all items from a specified node |\n\n## Current node input\n\nMethods for working with the input of the current node. Some methods and variables aren't available in the Code node.\n\nPython support\n\nYou can use Python in the Code node. It isn't available in expressions.\n\n| Method | Description | Available in Code node? |\n| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- |\n| `$binary` | Shorthand for `$input.item.binary`. Incoming binary data from a node | |\n| `$input.item` | The input item of the current node that's being processed. Refer to [Item linking](../data-item-linking/) for more information on paired items and item linking. | |\n| `$input.all()` | All input items in current node. | |\n| `$input.first()` | First input item in current node. | |\n| `$input.last()` | Last input item in current node. | |\n| `$input.params` | Object containing the query settings of the previous node. This includes data such as the operation it ran, result limits, and so on. | |\n| `$json` | Shorthand for `$input.item.json`. Incoming JSON data from a node. Refer to [Data structure](../../data-structure/) for information on item structure. | (when running once for each item) |\n| `$input.context.noItemsLeft` | Boolean. Only available when working with the Loop Over Items node. Provides information about what's happening in the node. Use this to determine whether the node is still processing items. | |\n\n| Method | Description |\n| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `_input.item` | The input item of the current node that's being processed. Refer to [Item linking](../data-item-linking/) for more information on paired items and item linking. |\n| `_input.all()` | All input items in current node. |\n| `_input.first()` | First input item in current node. |\n| `_input.last()` | Last input item in current node. |\n| `_input.params` | Object containing the query settings of the previous node. This includes data such as the operation it ran, result limits, and so on. |\n| `_json` | Shorthand for `_input.item.json`. Incoming JSON data from a node. Refer to [Data structure](../../data-structure/) for information on item structure. Available when you set **Mode** to **Run Once for Each Item**. |\n| `_input.context.noItemsLeft` | Boolean. Only available when working with the Loop Over Items node. Provides information about what's happening in the node. Use this to determine whether the node is still processing items. |\n\n## Output of other nodes\n\nMethods for working with the output of other nodes. Some methods and variables aren't available in the Code node.\n\n| Method | Description | Available in Code node? |\n| ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- |\n| `$(\"<node-name>\").all(branchIndex?, runIndex?)` | Returns all items from a given node. If `branchIndex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").first(branchIndex?, runIndex?)` | The first item output by the given node. If `branchIndex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").last(branchIndex?, runIndex?)` | The last item output by the given node. If `branchIndex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").item` | The linked item. This is the item in the specified node used to produce the current item. Refer to [Item linking](../data-item-linking/) for more information on item linking. | |\n| `$(\"<node-name>\").params` | Object containing the query settings of the given node. This includes data such as the operation it ran, result limits, and so on. | |\n| `$(\"<node-name>\").context` | Boolean. Only available when working with the Loop Over Items node. Provides information about what's happening in the node. Use this to determine whether the node is still processing items. | |\n| `$(\"<node-name>\").itemMatching(currentNodeInputIndex)` | Use instead of `$(\"<node-name>\").item` in the Code node if you need to trace back from an input item. | |\n",
|
|
9833
|
+
"excerpt": "# Referencing previous nodes When working with data in n8n, you'll often need to reference information from the current node or from previous nodes in your workflow. ## Common ways of referencing The most frequently used methods for accessing data are: - **`$json`**: Access JSON data from the current input item - **`$('<node-name>').item.json`**: Access JSON data from a [linked item](../data-item-linking/) in a previous node ## Other referencing methods These methods work in both expressio...",
|
|
9834
|
+
"sections": [
|
|
9835
|
+
{
|
|
9836
|
+
"title": "Referencing previous nodes",
|
|
9837
|
+
"level": 1,
|
|
9838
|
+
"content": "When working with data in n8n, you'll often need to reference information from the current node or from previous nodes in your workflow."
|
|
9839
|
+
}
|
|
9840
|
+
]
|
|
9841
|
+
},
|
|
9842
|
+
"metadata": {
|
|
9843
|
+
"keywords": [
|
|
9844
|
+
"referencing",
|
|
9845
|
+
"previous",
|
|
9846
|
+
"nodes",
|
|
9847
|
+
"common",
|
|
9848
|
+
"ways",
|
|
9849
|
+
"other",
|
|
9850
|
+
"methods",
|
|
9851
|
+
"current",
|
|
9852
|
+
"node",
|
|
9853
|
+
"input",
|
|
9854
|
+
"output"
|
|
9855
|
+
],
|
|
9856
|
+
"useCases": [],
|
|
9857
|
+
"operations": [],
|
|
9858
|
+
"codeExamples": 0,
|
|
9859
|
+
"complexity": "beginner",
|
|
9860
|
+
"readingTime": "4 min",
|
|
9861
|
+
"contentLength": 8812,
|
|
9862
|
+
"relatedPages": []
|
|
9863
|
+
},
|
|
9864
|
+
"searchIndex": {
|
|
9865
|
+
"fullText": "referencing previous nodes # referencing previous nodes\n\nwhen working with data in n8n, you'll often need to reference information from the current node or from previous nodes in your workflow.\n\n## common ways of referencing\n\nthe most frequently used methods for accessing data are:\n\n- **`$json`**: access json data from the current input item\n- **`$('<node-name>').item.json`**: access json data from a [linked item](../data-item-linking/) in a previous node\n\n## other referencing methods\n\nthese methods work in both expressions and the code node:\n\n| method | description |\n| -------------------------- | ---------------------------------------------- |\n| `$binary` | access binary data from the current input item |\n| `$input.item` | the input item currently being processed |\n| `$('<node-name>').first()` | get the first item from a specified node |\n| `$('<node-name>').last()` | get the last item from a specified node |\n| `$('<node-name>').all()` | get all items from a specified node |\n\n## current node input\n\nmethods for working with the input of the current node. some methods and variables aren't available in the code node.\n\npython support\n\nyou can use python in the code node. it isn't available in expressions.\n\n| method | description | available in code node? |\n| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- |\n| `$binary` | shorthand for `$input.item.binary`. incoming binary data from a node | |\n| `$input.item` | the input item of the current node that's being processed. refer to [item linking](../data-item-linking/) for more information on paired items and item linking. | |\n| `$input.all()` | all input items in current node. | |\n| `$input.first()` | first input item in current node. | |\n| `$input.last()` | last input item in current node. | |\n| `$input.params` | object containing the query settings of the previous node. this includes data such as the operation it ran, result limits, and so on. | |\n| `$json` | shorthand for `$input.item.json`. incoming json data from a node. refer to [data structure](../../data-structure/) for information on item structure. | (when running once for each item) |\n| `$input.context.noitemsleft` | boolean. only available when working with the loop over items node. provides information about what's happening in the node. use this to determine whether the node is still processing items. | |\n\n| method | description |\n| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `_input.item` | the input item of the current node that's being processed. refer to [item linking](../data-item-linking/) for more information on paired items and item linking. |\n| `_input.all()` | all input items in current node. |\n| `_input.first()` | first input item in current node. |\n| `_input.last()` | last input item in current node. |\n| `_input.params` | object containing the query settings of the previous node. this includes data such as the operation it ran, result limits, and so on. |\n| `_json` | shorthand for `_input.item.json`. incoming json data from a node. refer to [data structure](../../data-structure/) for information on item structure. available when you set **mode** to **run once for each item**. |\n| `_input.context.noitemsleft` | boolean. only available when working with the loop over items node. provides information about what's happening in the node. use this to determine whether the node is still processing items. |\n\n## output of other nodes\n\nmethods for working with the output of other nodes. some methods and variables aren't available in the code node.\n\n| method | description | available in code node? |\n| ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- |\n| `$(\"<node-name>\").all(branchindex?, runindex?)` | returns all items from a given node. if `branchindex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").first(branchindex?, runindex?)` | the first item output by the given node. if `branchindex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").last(branchindex?, runindex?)` | the last item output by the given node. if `branchindex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").item` | the linked item. this is the item in the specified node used to produce the current item. refer to [item linking](../data-item-linking/) for more information on item linking. | |\n| `$(\"<node-name>\").params` | object containing the query settings of the given node. this includes data such as the operation it ran, result limits, and so on. | |\n| `$(\"<node-name>\").context` | boolean. only available when working with the loop over items node. provides information about what's happening in the node. use this to determine whether the node is still processing items. | |\n| `$(\"<node-name>\").itemmatching(currentnodeinputindex)` | use instead of `$(\"<node-name>\").item` in the code node if you need to trace back from an input item. | |\n referencing previous nodes",
|
|
9866
|
+
"importantTerms": [
|
|
9867
|
+
"node",
|
|
9868
|
+
"item",
|
|
9869
|
+
"input",
|
|
9870
|
+
"data",
|
|
9871
|
+
"name",
|
|
9872
|
+
"current",
|
|
9873
|
+
"from",
|
|
9874
|
+
"items",
|
|
9875
|
+
"linking",
|
|
9876
|
+
"code",
|
|
9877
|
+
"with",
|
|
9878
|
+
"information",
|
|
9879
|
+
"json",
|
|
9880
|
+
"available",
|
|
9881
|
+
"first",
|
|
9882
|
+
"last",
|
|
9883
|
+
"previous",
|
|
9884
|
+
"methods",
|
|
9885
|
+
"this",
|
|
9886
|
+
"output",
|
|
9887
|
+
"given",
|
|
9888
|
+
"nodes",
|
|
9889
|
+
"when",
|
|
9890
|
+
"working",
|
|
9891
|
+
"structure",
|
|
9892
|
+
"branchindex",
|
|
9893
|
+
"referencing",
|
|
9894
|
+
"binary",
|
|
9895
|
+
"that",
|
|
9896
|
+
"refer",
|
|
9897
|
+
"method",
|
|
9898
|
+
"description",
|
|
9899
|
+
"specified",
|
|
9900
|
+
"access",
|
|
9901
|
+
"other",
|
|
9902
|
+
"being",
|
|
9903
|
+
"processed",
|
|
9904
|
+
"shorthand",
|
|
9905
|
+
"incoming",
|
|
9906
|
+
"more",
|
|
9907
|
+
"params",
|
|
9908
|
+
"object",
|
|
9909
|
+
"containing",
|
|
9910
|
+
"query",
|
|
9911
|
+
"settings",
|
|
9912
|
+
"includes",
|
|
9913
|
+
"such",
|
|
9914
|
+
"operation",
|
|
9915
|
+
"result",
|
|
9916
|
+
"limits"
|
|
9917
|
+
]
|
|
9918
|
+
}
|
|
9919
|
+
},
|
|
9920
|
+
{
|
|
9921
|
+
"id": "page-0106",
|
|
9922
|
+
"title": "Linking data items",
|
|
9923
|
+
"url": "https://docs.n8n.io/data/data-mapping/data-item-linking/index.md",
|
|
9924
|
+
"urlPath": "data/data-mapping/data-item-linking/index.md",
|
|
9925
|
+
"category": "data",
|
|
9926
|
+
"subcategory": null,
|
|
9927
|
+
"nodeName": null,
|
|
9928
|
+
"nodeType": null,
|
|
9929
|
+
"content": {
|
|
9930
|
+
"markdown": "# Linking data items\n\nAn item is a single piece of data. Nodes receive one or more items, operate on them, and output new items. Each item links back to the items in the previous nodes that generated it.\n\nUsually this just works. You need to understand this behavior in detail if you're:\n\n- Using the Code node for complex behaviors with input and output data.\n- Building a programmatic-style node.\n\nThis section provides:\n\n- A conceptual overview of [Item linking concepts](item-linking-concepts/).\n- Information on [Item linking for node creators](item-linking-node-building/).\n- Support for end users who need to [work with the data path](item-linking-code-node/) to retrieve item data from previous nodes and link items when using the Code node.\n- Guidance on troubleshooting [errors](item-linking-errors/).\n",
|
|
9931
|
+
"excerpt": "# Linking data items An item is a single piece of data. Nodes receive one or more items, operate on them, and output new items. Each item links back to the items in the previous nodes that generated it. Usually this just works. You need to understand this behavior in detail if you're: - Using the Code node for complex behaviors with input and output data. - Building a programmatic-style node. This section provides: - A conceptual overview of [Item linking concepts](item-linking-concepts/)....",
|
|
9932
|
+
"sections": [
|
|
9933
|
+
{
|
|
9934
|
+
"title": "Linking data items",
|
|
9935
|
+
"level": 1,
|
|
9936
|
+
"content": "An item is a single piece of data. Nodes receive one or more items, operate on them, and output new items. Each item links back to the items in the previous nodes that generated it.\n\nUsually this just works. You need to understand this behavior in detail if you're:\n\n- Using the Code node for complex behaviors with input and output data.\n- Building a programmatic-style node.\n\nThis section provides:\n\n- A conceptual overview of [Item linking concepts](item-linking-concepts/).\n- Information on [Item linking for node creators](item-linking-node-building/).\n- Support for end users who need to [work with the data path](item-linking-code-node/) to retrieve item data from previous nodes and link items when using the Code node.\n- Guidance on troubleshooting [errors](item-linking-errors/)."
|
|
9937
|
+
}
|
|
9938
|
+
]
|
|
9939
|
+
},
|
|
9940
|
+
"metadata": {
|
|
9941
|
+
"keywords": [
|
|
9942
|
+
"linking",
|
|
9943
|
+
"data",
|
|
9944
|
+
"items"
|
|
9945
|
+
],
|
|
9946
|
+
"useCases": [],
|
|
9947
|
+
"operations": [],
|
|
9948
|
+
"codeExamples": 0,
|
|
9949
|
+
"complexity": "beginner",
|
|
9950
|
+
"readingTime": "1 min",
|
|
9951
|
+
"contentLength": 812,
|
|
9952
|
+
"relatedPages": []
|
|
9953
|
+
},
|
|
9954
|
+
"searchIndex": {
|
|
9955
|
+
"fullText": "linking data items # linking data items\n\nan item is a single piece of data. nodes receive one or more items, operate on them, and output new items. each item links back to the items in the previous nodes that generated it.\n\nusually this just works. you need to understand this behavior in detail if you're:\n\n- using the code node for complex behaviors with input and output data.\n- building a programmatic-style node.\n\nthis section provides:\n\n- a conceptual overview of [item linking concepts](item-linking-concepts/).\n- information on [item linking for node creators](item-linking-node-building/).\n- support for end users who need to [work with the data path](item-linking-code-node/) to retrieve item data from previous nodes and link items when using the code node.\n- guidance on troubleshooting [errors](item-linking-errors/).\n linking data items",
|
|
9956
|
+
"importantTerms": [
|
|
9957
|
+
"linking",
|
|
9958
|
+
"item",
|
|
9959
|
+
"data",
|
|
9960
|
+
"items",
|
|
9961
|
+
"node",
|
|
9962
|
+
"nodes",
|
|
9963
|
+
"this",
|
|
9964
|
+
"code"
|
|
9965
|
+
]
|
|
9966
|
+
}
|
|
9967
|
+
},
|
|
9968
|
+
{
|
|
9969
|
+
"id": "page-0107",
|
|
9713
9970
|
"title": "Referencing data",
|
|
9714
9971
|
"url": "https://docs.n8n.io/data/data-mapping/index.md",
|
|
9715
9972
|
"urlPath": "data/data-mapping/index.md",
|
|
@@ -9754,263 +10011,6 @@
|
|
|
9754
10011
|
]
|
|
9755
10012
|
}
|
|
9756
10013
|
},
|
|
9757
|
-
{
|
|
9758
|
-
"id": "page-0104",
|
|
9759
|
-
"title": "Referencing data in the UI",
|
|
9760
|
-
"url": "https://docs.n8n.io/data/data-mapping/data-mapping-ui/index.md",
|
|
9761
|
-
"urlPath": "data/data-mapping/data-mapping-ui/index.md",
|
|
9762
|
-
"category": "data",
|
|
9763
|
-
"subcategory": null,
|
|
9764
|
-
"nodeName": null,
|
|
9765
|
-
"nodeType": null,
|
|
9766
|
-
"content": {
|
|
9767
|
-
"markdown": "# Referencing data in the UI\n\nData mapping means referencing data from previous nodes. It doesn't include changing (transforming) data, just referencing it.\n\nWhen you need data from a particular node in your workflow, you can [reference nodes by name](../referencing-other-nodes/). This is useful when your workflow has multiple branches or when you need to access data from several steps back.\n\nYou can map data in the following ways:\n\n- Using the expressions editor.\n- By dragging and dropping data from the **INPUT** pane into node parameters. This generates the expression for you.\n\nFor information on errors with mapping and linking items, refer to [Item linking errors](../data-item-linking/item-linking-errors/).\n\nSee [Common ways of referencing](../referencing-other-nodes/#common-ways-of-referencing).\n",
|
|
9768
|
-
"excerpt": "# Referencing data in the UI Data mapping means referencing data from previous nodes. It doesn't include changing (transforming) data, just referencing it. When you need data from a particular node in your workflow, you can [reference nodes by name](../referencing-other-nodes/). This is useful when your workflow has multiple branches or when you need to access data from several steps back. You can map data in the following ways: - Using the expressions editor. - By dragging and dropping data...",
|
|
9769
|
-
"sections": [
|
|
9770
|
-
{
|
|
9771
|
-
"title": "Referencing data in the UI",
|
|
9772
|
-
"level": 1,
|
|
9773
|
-
"content": "Data mapping means referencing data from previous nodes. It doesn't include changing (transforming) data, just referencing it.\n\nWhen you need data from a particular node in your workflow, you can [reference nodes by name](../referencing-other-nodes/). This is useful when your workflow has multiple branches or when you need to access data from several steps back.\n\nYou can map data in the following ways:\n\n- Using the expressions editor.\n- By dragging and dropping data from the **INPUT** pane into node parameters. This generates the expression for you.\n\nFor information on errors with mapping and linking items, refer to [Item linking errors](../data-item-linking/item-linking-errors/).\n\nSee [Common ways of referencing](../referencing-other-nodes/#common-ways-of-referencing)."
|
|
9774
|
-
}
|
|
9775
|
-
]
|
|
9776
|
-
},
|
|
9777
|
-
"metadata": {
|
|
9778
|
-
"keywords": [
|
|
9779
|
-
"referencing",
|
|
9780
|
-
"data"
|
|
9781
|
-
],
|
|
9782
|
-
"useCases": [],
|
|
9783
|
-
"operations": [],
|
|
9784
|
-
"codeExamples": 0,
|
|
9785
|
-
"complexity": "beginner",
|
|
9786
|
-
"readingTime": "1 min",
|
|
9787
|
-
"contentLength": 811,
|
|
9788
|
-
"relatedPages": []
|
|
9789
|
-
},
|
|
9790
|
-
"searchIndex": {
|
|
9791
|
-
"fullText": "referencing data in the ui # referencing data in the ui\n\ndata mapping means referencing data from previous nodes. it doesn't include changing (transforming) data, just referencing it.\n\nwhen you need data from a particular node in your workflow, you can [reference nodes by name](../referencing-other-nodes/). this is useful when your workflow has multiple branches or when you need to access data from several steps back.\n\nyou can map data in the following ways:\n\n- using the expressions editor.\n- by dragging and dropping data from the **input** pane into node parameters. this generates the expression for you.\n\nfor information on errors with mapping and linking items, refer to [item linking errors](../data-item-linking/item-linking-errors/).\n\nsee [common ways of referencing](../referencing-other-nodes/#common-ways-of-referencing).\n referencing data in the ui",
|
|
9792
|
-
"importantTerms": [
|
|
9793
|
-
"data",
|
|
9794
|
-
"referencing",
|
|
9795
|
-
"from",
|
|
9796
|
-
"nodes",
|
|
9797
|
-
"linking",
|
|
9798
|
-
"when",
|
|
9799
|
-
"ways",
|
|
9800
|
-
"errors",
|
|
9801
|
-
"item"
|
|
9802
|
-
]
|
|
9803
|
-
}
|
|
9804
|
-
},
|
|
9805
|
-
{
|
|
9806
|
-
"id": "page-0105",
|
|
9807
|
-
"title": "Accessing linked items in the Code node",
|
|
9808
|
-
"url": "https://docs.n8n.io/data/data-mapping/itemmatching/index.md",
|
|
9809
|
-
"urlPath": "data/data-mapping/itemmatching/index.md",
|
|
9810
|
-
"category": "data",
|
|
9811
|
-
"subcategory": null,
|
|
9812
|
-
"nodeName": null,
|
|
9813
|
-
"nodeType": null,
|
|
9814
|
-
"content": {
|
|
9815
|
-
"markdown": "# Accessing linked items in the Code node\n\nEvery item in a node's input data links back to the items used in previous nodes to generate it. This is useful if you need to retrieve linked items from further back than the immediate previous node.\n\nTo access the linked items from earlier in the workflow, use `(\"<node-name>\").itemMatching(currentNodeinputIndex)`.\n\nFor example, consider a workflow that does the following:\n\n1. The Customer Datastore node generates example data:\n\n ```\n [\n \t{\n \t\t\"id\": \"23423532\",\n \t\t\"name\": \"Jay Gatsby\",\n \t\t\"email\": \"gatsby@west-egg.com\",\n \t\t\"notes\": \"Keeps asking about a green light??\",\n \t\t\"country\": \"US\",\n \t\t\"created\": \"1925-04-10\"\n \t},\n \t{\n \t\t\"id\": \"23423533\",\n \t\t\"name\": \"José Arcadio Buendía\",\n \t\t\"email\": \"jab@macondo.co\",\n \t\t\"notes\": \"Lots of people named after him. Very confusing\",\n \t\t\"country\": \"CO\",\n \t\t\"created\": \"1967-05-05\"\n \t},\n \t...\n ]\n ```\n\n1. The Edit Fields node simplifies this data:\n\n ```\n [\n \t{\n \t\t\"name\": \"Jay Gatsby\"\n \t},\n \t{\n \t\t\"name\": \"José Arcadio Buendía\"\n \t},\n ...\n ]\n ```\n\n1. The Code node restores the email address to the correct person:\n\n ```\n [\n \t{\n \t\t\"name\": \"Jay Gatsby\",\n \t\t\"restoreEmail\": \"gatsby@west-egg.com\"\n \t},\n \t{\n \t\t\"name\": \"José Arcadio Buendía\",\n \t\t\"restoreEmail\": \"jab@macondo.co\"\n \t},\n \t...\n ]\n ```\n\nThe Code node does this using the following code:\n\n```\nfor(let i=0; i<$input.all().length; i++) {\n\t$input.all()[i].json.restoreEmail = $('Customer Datastore (n8n training)').itemMatching(i).json.email;\n}\nreturn $input.all();\n```\n\n```\nfor i,item in enumerate(_input.all()):\n\t_input.all()[i].json.restoreEmail = _('Customer Datastore (n8n training)').itemMatching(i).json.email\n\nreturn _input.all();\n```\n\nYou can view and download the example workflow from [n8n website | itemMatching usage example](https://n8n.io/workflows/1966-itemmatching-usage-example/).\n",
|
|
9816
|
-
"excerpt": "# Accessing linked items in the Code node Every item in a node's input data links back to the items used in previous nodes to generate it. This is useful if you need to retrieve linked items from further back than the immediate previous node. To access the linked items from earlier in the workflow, use `(\"<node-name>\").itemMatching(currentNodeinputIndex)`. For example, consider a workflow that does the following: 1. The Customer Datastore node generates example data: ``` [ \t{...",
|
|
9817
|
-
"sections": [
|
|
9818
|
-
{
|
|
9819
|
-
"title": "Accessing linked items in the Code node",
|
|
9820
|
-
"level": 1,
|
|
9821
|
-
"content": "Every item in a node's input data links back to the items used in previous nodes to generate it. This is useful if you need to retrieve linked items from further back than the immediate previous node.\n\nTo access the linked items from earlier in the workflow, use `(\"<node-name>\").itemMatching(currentNodeinputIndex)`.\n\nFor example, consider a workflow that does the following:\n\n1. The Customer Datastore node generates example data:\n\n ```\n [\n \t{\n \t\t\"id\": \"23423532\",\n \t\t\"name\": \"Jay Gatsby\",\n \t\t\"email\": \"gatsby@west-egg.com\",\n \t\t\"notes\": \"Keeps asking about a green light??\",\n \t\t\"country\": \"US\",\n \t\t\"created\": \"1925-04-10\"\n \t},\n \t{\n \t\t\"id\": \"23423533\",\n \t\t\"name\": \"José Arcadio Buendía\",\n \t\t\"email\": \"jab@macondo.co\",\n \t\t\"notes\": \"Lots of people named after him. Very confusing\",\n \t\t\"country\": \"CO\",\n \t\t\"created\": \"1967-05-05\"\n \t},\n \t...\n ]\n ```\n\n1. The Edit Fields node simplifies this data:\n\n ```\n [\n \t{\n \t\t\"name\": \"Jay Gatsby\"\n \t},\n \t{\n \t\t\""
|
|
9822
|
-
}
|
|
9823
|
-
]
|
|
9824
|
-
},
|
|
9825
|
-
"metadata": {
|
|
9826
|
-
"keywords": [
|
|
9827
|
-
"accessing",
|
|
9828
|
-
"linked",
|
|
9829
|
-
"items",
|
|
9830
|
-
"code",
|
|
9831
|
-
"node"
|
|
9832
|
-
],
|
|
9833
|
-
"useCases": [],
|
|
9834
|
-
"operations": [],
|
|
9835
|
-
"codeExamples": 5,
|
|
9836
|
-
"complexity": "beginner",
|
|
9837
|
-
"readingTime": "2 min",
|
|
9838
|
-
"contentLength": 1934,
|
|
9839
|
-
"relatedPages": []
|
|
9840
|
-
},
|
|
9841
|
-
"searchIndex": {
|
|
9842
|
-
"fullText": "accessing linked items in the code node # accessing linked items in the code node\n\nevery item in a node's input data links back to the items used in previous nodes to generate it. this is useful if you need to retrieve linked items from further back than the immediate previous node.\n\nto access the linked items from earlier in the workflow, use `(\"<node-name>\").itemmatching(currentnodeinputindex)`.\n\nfor example, consider a workflow that does the following:\n\n1. the customer datastore node generates example data:\n\n ```\n [\n \t{\n \t\t\"id\": \"23423532\",\n \t\t\"name\": \"jay gatsby\",\n \t\t\"email\": \"gatsby@west-egg.com\",\n \t\t\"notes\": \"keeps asking about a green light??\",\n \t\t\"country\": \"us\",\n \t\t\"created\": \"1925-04-10\"\n \t},\n \t{\n \t\t\"id\": \"23423533\",\n \t\t\"name\": \"josé arcadio buendía\",\n \t\t\"email\": \"jab@macondo.co\",\n \t\t\"notes\": \"lots of people named after him. very confusing\",\n \t\t\"country\": \"co\",\n \t\t\"created\": \"1967-05-05\"\n \t},\n \t...\n ]\n ```\n\n1. the edit fields node simplifies this data:\n\n ```\n [\n \t{\n \t\t\"name\": \"jay gatsby\"\n \t},\n \t{\n \t\t\"name\": \"josé arcadio buendía\"\n \t},\n ...\n ]\n ```\n\n1. the code node restores the email address to the correct person:\n\n ```\n [\n \t{\n \t\t\"name\": \"jay gatsby\",\n \t\t\"restoreemail\": \"gatsby@west-egg.com\"\n \t},\n \t{\n \t\t\"name\": \"josé arcadio buendía\",\n \t\t\"restoreemail\": \"jab@macondo.co\"\n \t},\n \t...\n ]\n ```\n\nthe code node does this using the following code:\n\n```\nfor(let i=0; i<$input.all().length; i++) {\n\t$input.all()[i].json.restoreemail = $('customer datastore (n8n training)').itemmatching(i).json.email;\n}\nreturn $input.all();\n```\n\n```\nfor i,item in enumerate(_input.all()):\n\t_input.all()[i].json.restoreemail = _('customer datastore (n8n training)').itemmatching(i).json.email\n\nreturn _input.all();\n```\n\nyou can view and download the example workflow from [n8n website | itemmatching usage example](https://n8n.io/workflows/1966-itemmatching-usage-example/).\n accessing linked items in the code node",
|
|
9843
|
-
"importantTerms": [
|
|
9844
|
-
"node",
|
|
9845
|
-
"name",
|
|
9846
|
-
"items",
|
|
9847
|
-
"code",
|
|
9848
|
-
"linked",
|
|
9849
|
-
"itemmatching",
|
|
9850
|
-
"example",
|
|
9851
|
-
"gatsby",
|
|
9852
|
-
"email",
|
|
9853
|
-
"input",
|
|
9854
|
-
"restoreemail",
|
|
9855
|
-
"json",
|
|
9856
|
-
"accessing",
|
|
9857
|
-
"data",
|
|
9858
|
-
"this",
|
|
9859
|
-
"from",
|
|
9860
|
-
"workflow",
|
|
9861
|
-
"customer",
|
|
9862
|
-
"datastore",
|
|
9863
|
-
"arcadio",
|
|
9864
|
-
"buend"
|
|
9865
|
-
]
|
|
9866
|
-
}
|
|
9867
|
-
},
|
|
9868
|
-
{
|
|
9869
|
-
"id": "page-0106",
|
|
9870
|
-
"title": "Referencing previous nodes",
|
|
9871
|
-
"url": "https://docs.n8n.io/data/data-mapping/referencing-other-nodes/index.md",
|
|
9872
|
-
"urlPath": "data/data-mapping/referencing-other-nodes/index.md",
|
|
9873
|
-
"category": "data",
|
|
9874
|
-
"subcategory": null,
|
|
9875
|
-
"nodeName": null,
|
|
9876
|
-
"nodeType": null,
|
|
9877
|
-
"content": {
|
|
9878
|
-
"markdown": "# Referencing previous nodes\n\nWhen working with data in n8n, you'll often need to reference information from the current node or from previous nodes in your workflow.\n\n## Common ways of referencing\n\nThe most frequently used methods for accessing data are:\n\n- **`$json`**: Access JSON data from the current input item\n- **`$('<node-name>').item.json`**: Access JSON data from a [linked item](../data-item-linking/) in a previous node\n\n## Other referencing methods\n\nThese methods work in both expressions and the Code node:\n\n| Method | Description |\n| -------------------------- | ---------------------------------------------- |\n| `$binary` | Access binary data from the current input item |\n| `$input.item` | The input item currently being processed |\n| `$('<node-name>').first()` | Get the first item from a specified node |\n| `$('<node-name>').last()` | Get the last item from a specified node |\n| `$('<node-name>').all()` | Get all items from a specified node |\n\n## Current node input\n\nMethods for working with the input of the current node. Some methods and variables aren't available in the Code node.\n\nPython support\n\nYou can use Python in the Code node. It isn't available in expressions.\n\n| Method | Description | Available in Code node? |\n| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- |\n| `$binary` | Shorthand for `$input.item.binary`. Incoming binary data from a node | |\n| `$input.item` | The input item of the current node that's being processed. Refer to [Item linking](../data-item-linking/) for more information on paired items and item linking. | |\n| `$input.all()` | All input items in current node. | |\n| `$input.first()` | First input item in current node. | |\n| `$input.last()` | Last input item in current node. | |\n| `$input.params` | Object containing the query settings of the previous node. This includes data such as the operation it ran, result limits, and so on. | |\n| `$json` | Shorthand for `$input.item.json`. Incoming JSON data from a node. Refer to [Data structure](../../data-structure/) for information on item structure. | (when running once for each item) |\n| `$input.context.noItemsLeft` | Boolean. Only available when working with the Loop Over Items node. Provides information about what's happening in the node. Use this to determine whether the node is still processing items. | |\n\n| Method | Description |\n| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `_input.item` | The input item of the current node that's being processed. Refer to [Item linking](../data-item-linking/) for more information on paired items and item linking. |\n| `_input.all()` | All input items in current node. |\n| `_input.first()` | First input item in current node. |\n| `_input.last()` | Last input item in current node. |\n| `_input.params` | Object containing the query settings of the previous node. This includes data such as the operation it ran, result limits, and so on. |\n| `_json` | Shorthand for `_input.item.json`. Incoming JSON data from a node. Refer to [Data structure](../../data-structure/) for information on item structure. Available when you set **Mode** to **Run Once for Each Item**. |\n| `_input.context.noItemsLeft` | Boolean. Only available when working with the Loop Over Items node. Provides information about what's happening in the node. Use this to determine whether the node is still processing items. |\n\n## Output of other nodes\n\nMethods for working with the output of other nodes. Some methods and variables aren't available in the Code node.\n\n| Method | Description | Available in Code node? |\n| ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- |\n| `$(\"<node-name>\").all(branchIndex?, runIndex?)` | Returns all items from a given node. If `branchIndex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").first(branchIndex?, runIndex?)` | The first item output by the given node. If `branchIndex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").last(branchIndex?, runIndex?)` | The last item output by the given node. If `branchIndex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").item` | The linked item. This is the item in the specified node used to produce the current item. Refer to [Item linking](../data-item-linking/) for more information on item linking. | |\n| `$(\"<node-name>\").params` | Object containing the query settings of the given node. This includes data such as the operation it ran, result limits, and so on. | |\n| `$(\"<node-name>\").context` | Boolean. Only available when working with the Loop Over Items node. Provides information about what's happening in the node. Use this to determine whether the node is still processing items. | |\n| `$(\"<node-name>\").itemMatching(currentNodeInputIndex)` | Use instead of `$(\"<node-name>\").item` in the Code node if you need to trace back from an input item. | |\n",
|
|
9879
|
-
"excerpt": "# Referencing previous nodes When working with data in n8n, you'll often need to reference information from the current node or from previous nodes in your workflow. ## Common ways of referencing The most frequently used methods for accessing data are: - **`$json`**: Access JSON data from the current input item - **`$('<node-name>').item.json`**: Access JSON data from a [linked item](../data-item-linking/) in a previous node ## Other referencing methods These methods work in both expressio...",
|
|
9880
|
-
"sections": [
|
|
9881
|
-
{
|
|
9882
|
-
"title": "Referencing previous nodes",
|
|
9883
|
-
"level": 1,
|
|
9884
|
-
"content": "When working with data in n8n, you'll often need to reference information from the current node or from previous nodes in your workflow."
|
|
9885
|
-
}
|
|
9886
|
-
]
|
|
9887
|
-
},
|
|
9888
|
-
"metadata": {
|
|
9889
|
-
"keywords": [
|
|
9890
|
-
"referencing",
|
|
9891
|
-
"previous",
|
|
9892
|
-
"nodes",
|
|
9893
|
-
"common",
|
|
9894
|
-
"ways",
|
|
9895
|
-
"other",
|
|
9896
|
-
"methods",
|
|
9897
|
-
"current",
|
|
9898
|
-
"node",
|
|
9899
|
-
"input",
|
|
9900
|
-
"output"
|
|
9901
|
-
],
|
|
9902
|
-
"useCases": [],
|
|
9903
|
-
"operations": [],
|
|
9904
|
-
"codeExamples": 0,
|
|
9905
|
-
"complexity": "beginner",
|
|
9906
|
-
"readingTime": "4 min",
|
|
9907
|
-
"contentLength": 8812,
|
|
9908
|
-
"relatedPages": []
|
|
9909
|
-
},
|
|
9910
|
-
"searchIndex": {
|
|
9911
|
-
"fullText": "referencing previous nodes # referencing previous nodes\n\nwhen working with data in n8n, you'll often need to reference information from the current node or from previous nodes in your workflow.\n\n## common ways of referencing\n\nthe most frequently used methods for accessing data are:\n\n- **`$json`**: access json data from the current input item\n- **`$('<node-name>').item.json`**: access json data from a [linked item](../data-item-linking/) in a previous node\n\n## other referencing methods\n\nthese methods work in both expressions and the code node:\n\n| method | description |\n| -------------------------- | ---------------------------------------------- |\n| `$binary` | access binary data from the current input item |\n| `$input.item` | the input item currently being processed |\n| `$('<node-name>').first()` | get the first item from a specified node |\n| `$('<node-name>').last()` | get the last item from a specified node |\n| `$('<node-name>').all()` | get all items from a specified node |\n\n## current node input\n\nmethods for working with the input of the current node. some methods and variables aren't available in the code node.\n\npython support\n\nyou can use python in the code node. it isn't available in expressions.\n\n| method | description | available in code node? |\n| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- |\n| `$binary` | shorthand for `$input.item.binary`. incoming binary data from a node | |\n| `$input.item` | the input item of the current node that's being processed. refer to [item linking](../data-item-linking/) for more information on paired items and item linking. | |\n| `$input.all()` | all input items in current node. | |\n| `$input.first()` | first input item in current node. | |\n| `$input.last()` | last input item in current node. | |\n| `$input.params` | object containing the query settings of the previous node. this includes data such as the operation it ran, result limits, and so on. | |\n| `$json` | shorthand for `$input.item.json`. incoming json data from a node. refer to [data structure](../../data-structure/) for information on item structure. | (when running once for each item) |\n| `$input.context.noitemsleft` | boolean. only available when working with the loop over items node. provides information about what's happening in the node. use this to determine whether the node is still processing items. | |\n\n| method | description |\n| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `_input.item` | the input item of the current node that's being processed. refer to [item linking](../data-item-linking/) for more information on paired items and item linking. |\n| `_input.all()` | all input items in current node. |\n| `_input.first()` | first input item in current node. |\n| `_input.last()` | last input item in current node. |\n| `_input.params` | object containing the query settings of the previous node. this includes data such as the operation it ran, result limits, and so on. |\n| `_json` | shorthand for `_input.item.json`. incoming json data from a node. refer to [data structure](../../data-structure/) for information on item structure. available when you set **mode** to **run once for each item**. |\n| `_input.context.noitemsleft` | boolean. only available when working with the loop over items node. provides information about what's happening in the node. use this to determine whether the node is still processing items. |\n\n## output of other nodes\n\nmethods for working with the output of other nodes. some methods and variables aren't available in the code node.\n\n| method | description | available in code node? |\n| ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- |\n| `$(\"<node-name>\").all(branchindex?, runindex?)` | returns all items from a given node. if `branchindex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").first(branchindex?, runindex?)` | the first item output by the given node. if `branchindex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").last(branchindex?, runindex?)` | the last item output by the given node. if `branchindex` isn't given it will default to the output that connects `node-name` with the node where you use the expression or code. | |\n| `$(\"<node-name>\").item` | the linked item. this is the item in the specified node used to produce the current item. refer to [item linking](../data-item-linking/) for more information on item linking. | |\n| `$(\"<node-name>\").params` | object containing the query settings of the given node. this includes data such as the operation it ran, result limits, and so on. | |\n| `$(\"<node-name>\").context` | boolean. only available when working with the loop over items node. provides information about what's happening in the node. use this to determine whether the node is still processing items. | |\n| `$(\"<node-name>\").itemmatching(currentnodeinputindex)` | use instead of `$(\"<node-name>\").item` in the code node if you need to trace back from an input item. | |\n referencing previous nodes",
|
|
9912
|
-
"importantTerms": [
|
|
9913
|
-
"node",
|
|
9914
|
-
"item",
|
|
9915
|
-
"input",
|
|
9916
|
-
"data",
|
|
9917
|
-
"name",
|
|
9918
|
-
"current",
|
|
9919
|
-
"from",
|
|
9920
|
-
"items",
|
|
9921
|
-
"linking",
|
|
9922
|
-
"code",
|
|
9923
|
-
"with",
|
|
9924
|
-
"information",
|
|
9925
|
-
"json",
|
|
9926
|
-
"available",
|
|
9927
|
-
"first",
|
|
9928
|
-
"last",
|
|
9929
|
-
"previous",
|
|
9930
|
-
"methods",
|
|
9931
|
-
"this",
|
|
9932
|
-
"output",
|
|
9933
|
-
"given",
|
|
9934
|
-
"nodes",
|
|
9935
|
-
"when",
|
|
9936
|
-
"working",
|
|
9937
|
-
"structure",
|
|
9938
|
-
"branchindex",
|
|
9939
|
-
"referencing",
|
|
9940
|
-
"binary",
|
|
9941
|
-
"that",
|
|
9942
|
-
"refer",
|
|
9943
|
-
"method",
|
|
9944
|
-
"description",
|
|
9945
|
-
"specified",
|
|
9946
|
-
"access",
|
|
9947
|
-
"other",
|
|
9948
|
-
"being",
|
|
9949
|
-
"processed",
|
|
9950
|
-
"shorthand",
|
|
9951
|
-
"incoming",
|
|
9952
|
-
"more",
|
|
9953
|
-
"params",
|
|
9954
|
-
"object",
|
|
9955
|
-
"containing",
|
|
9956
|
-
"query",
|
|
9957
|
-
"settings",
|
|
9958
|
-
"includes",
|
|
9959
|
-
"such",
|
|
9960
|
-
"operation",
|
|
9961
|
-
"result",
|
|
9962
|
-
"limits"
|
|
9963
|
-
]
|
|
9964
|
-
}
|
|
9965
|
-
},
|
|
9966
|
-
{
|
|
9967
|
-
"id": "page-0107",
|
|
9968
|
-
"title": "Linking data items",
|
|
9969
|
-
"url": "https://docs.n8n.io/data/data-mapping/data-item-linking/index.md",
|
|
9970
|
-
"urlPath": "data/data-mapping/data-item-linking/index.md",
|
|
9971
|
-
"category": "data",
|
|
9972
|
-
"subcategory": null,
|
|
9973
|
-
"nodeName": null,
|
|
9974
|
-
"nodeType": null,
|
|
9975
|
-
"content": {
|
|
9976
|
-
"markdown": "# Linking data items\n\nAn item is a single piece of data. Nodes receive one or more items, operate on them, and output new items. Each item links back to the items in the previous nodes that generated it.\n\nUsually this just works. You need to understand this behavior in detail if you're:\n\n- Using the Code node for complex behaviors with input and output data.\n- Building a programmatic-style node.\n\nThis section provides:\n\n- A conceptual overview of [Item linking concepts](item-linking-concepts/).\n- Information on [Item linking for node creators](item-linking-node-building/).\n- Support for end users who need to [work with the data path](item-linking-code-node/) to retrieve item data from previous nodes and link items when using the Code node.\n- Guidance on troubleshooting [errors](item-linking-errors/).\n",
|
|
9977
|
-
"excerpt": "# Linking data items An item is a single piece of data. Nodes receive one or more items, operate on them, and output new items. Each item links back to the items in the previous nodes that generated it. Usually this just works. You need to understand this behavior in detail if you're: - Using the Code node for complex behaviors with input and output data. - Building a programmatic-style node. This section provides: - A conceptual overview of [Item linking concepts](item-linking-concepts/)....",
|
|
9978
|
-
"sections": [
|
|
9979
|
-
{
|
|
9980
|
-
"title": "Linking data items",
|
|
9981
|
-
"level": 1,
|
|
9982
|
-
"content": "An item is a single piece of data. Nodes receive one or more items, operate on them, and output new items. Each item links back to the items in the previous nodes that generated it.\n\nUsually this just works. You need to understand this behavior in detail if you're:\n\n- Using the Code node for complex behaviors with input and output data.\n- Building a programmatic-style node.\n\nThis section provides:\n\n- A conceptual overview of [Item linking concepts](item-linking-concepts/).\n- Information on [Item linking for node creators](item-linking-node-building/).\n- Support for end users who need to [work with the data path](item-linking-code-node/) to retrieve item data from previous nodes and link items when using the Code node.\n- Guidance on troubleshooting [errors](item-linking-errors/)."
|
|
9983
|
-
}
|
|
9984
|
-
]
|
|
9985
|
-
},
|
|
9986
|
-
"metadata": {
|
|
9987
|
-
"keywords": [
|
|
9988
|
-
"linking",
|
|
9989
|
-
"data",
|
|
9990
|
-
"items"
|
|
9991
|
-
],
|
|
9992
|
-
"useCases": [],
|
|
9993
|
-
"operations": [],
|
|
9994
|
-
"codeExamples": 0,
|
|
9995
|
-
"complexity": "beginner",
|
|
9996
|
-
"readingTime": "1 min",
|
|
9997
|
-
"contentLength": 812,
|
|
9998
|
-
"relatedPages": []
|
|
9999
|
-
},
|
|
10000
|
-
"searchIndex": {
|
|
10001
|
-
"fullText": "linking data items # linking data items\n\nan item is a single piece of data. nodes receive one or more items, operate on them, and output new items. each item links back to the items in the previous nodes that generated it.\n\nusually this just works. you need to understand this behavior in detail if you're:\n\n- using the code node for complex behaviors with input and output data.\n- building a programmatic-style node.\n\nthis section provides:\n\n- a conceptual overview of [item linking concepts](item-linking-concepts/).\n- information on [item linking for node creators](item-linking-node-building/).\n- support for end users who need to [work with the data path](item-linking-code-node/) to retrieve item data from previous nodes and link items when using the code node.\n- guidance on troubleshooting [errors](item-linking-errors/).\n linking data items",
|
|
10002
|
-
"importantTerms": [
|
|
10003
|
-
"linking",
|
|
10004
|
-
"item",
|
|
10005
|
-
"data",
|
|
10006
|
-
"items",
|
|
10007
|
-
"node",
|
|
10008
|
-
"nodes",
|
|
10009
|
-
"this",
|
|
10010
|
-
"code"
|
|
10011
|
-
]
|
|
10012
|
-
}
|
|
10013
|
-
},
|
|
10014
10014
|
{
|
|
10015
10015
|
"id": "page-0108",
|
|
10016
10016
|
"title": "Preserving linking in the Code node",
|
|
@@ -11786,6 +11786,115 @@
|
|
|
11786
11786
|
},
|
|
11787
11787
|
{
|
|
11788
11788
|
"id": "page-0131",
|
|
11789
|
+
"title": "Query JSON with JMESPath",
|
|
11790
|
+
"url": "https://docs.n8n.io/data/specific-data-types/jmespath/index.md",
|
|
11791
|
+
"urlPath": "data/specific-data-types/jmespath/index.md",
|
|
11792
|
+
"category": "data",
|
|
11793
|
+
"subcategory": null,
|
|
11794
|
+
"nodeName": null,
|
|
11795
|
+
"nodeType": null,
|
|
11796
|
+
"content": {
|
|
11797
|
+
"markdown": "# Query JSON with JMESPath\n\n[JMESPath](https://jmespath.org/) is a query language for JSON that you can use to extract and transform elements from a JSON document. For full details of how to use JMESPath, refer to the [JMESPath documentation](https://jmespath.org/tutorial.html).\n\n## The `jmespath()` method\n\nn8n provides a custom method, `jmespath()`. Use this method to perform a search on a JSON object using the JMESPath query language.\n\nThe basic syntax is:\n\n```\n$jmespath(object, searchString)\n```\n\n```\n_jmespath(object, searchString)\n```\n\nTo help understand what the method does, here is the equivalent longer JavaScript:\n\n```\nvar jmespath = require('jmespath');\njmespath.search(object, searchString);\n```\n\nExpressions must be single-line\n\nThe longer code example doesn't work in Expressions, as they must be single-line.\n\n`object` is a JSON object, such as the output of a previous node. `searchString` is an expression written in the JMESPath query language. The [JMESPath Specification](https://jmespath.org/specification.html#jmespath-specification) provides a list of supported expressions, while their [Tutorial](https://jmespath.org/tutorial.html) and [Examples](https://jmespath.org/examples.html) provide interactive examples.\n\nSearch parameter order\n\nThe examples in the [JMESPath Specification](https://jmespath.org/specification.html#jmespath-specification) follow the pattern `search(searchString, object)`. The [JMESPath JavaScript library](https://github.com/jmespath/jmespath.js/), which n8n uses, supports `search(object, searchString)` instead. This means that when using examples from the JMESPath documentation, you may need to change the order of the search function parameters.\n\n## Common tasks\n\nThis section provides examples for some common operations. More examples, and detailed guidance, are available in [JMESPath's own documentation](https://jmespath.org/tutorial.html).\n\nWhen trying out these examples, you need to set the Code node **Mode** to **Run Once for Each Item**.\n\n### Apply a JMESPath expression to a collection of elements with projections\n\nFrom the [JMESPath projections documentation](https://jmespath.org/tutorial.html#projections):\n\n> Projections are one of the key features of JMESPath. Use it to apply an expression to a collection of elements. JMESPath supports five kinds of projections:\n>\n> - List Projections\n> - Slice Projections\n> - Object Projections\n> - Flatten Projections\n> - Filter Projections\n\nThe following example shows basic usage of list, slice, and object projections. Refer to the [JMESPath projections documentation](https://jmespath.org/tutorial.html#projections) for detailed explanations of each projection type, and more examples.\n\nGiven this JSON from a webhook node:\n\n```\n[\n {\n \"headers\": {\n \"host\": \"n8n.instance.address\",\n ...\n },\n \"params\": {},\n \"query\": {},\n \"body\": {\n \"people\": [\n {\n \"first\": \"James\",\n \"last\": \"Green\"\n },\n {\n \"first\": \"Jacob\",\n \"last\": \"Jones\"\n },\n {\n \"first\": \"Jayden\",\n \"last\": \"Smith\"\n }\n ],\n \"dogs\": {\n \"Fido\": {\n \"color\": \"brown\",\n \"age\": 7\n },\n \"Spot\": {\n \"color\": \"black and white\",\n \"age\": 5\n }\n }\n }\n }\n]\n```\n\nRetrieve a [list](https://jmespath.org/tutorial.html#list-and-slice-projections) of all the people's first names:\n\n```\n{{$jmespath($json.body.people, \"[*].first\" )}}\n// Returns [\"James\", \"Jacob\", \"Jayden\"]\n```\n\n```\nlet firstNames = $jmespath($json.body.people, \"[*].first\" )\nreturn {firstNames};\n/* Returns:\n[\n\t{\n\t\t\"firstNames\": [\n\t\t\t\"James\",\n\t\t\t\"Jacob\",\n\t\t\t\"Jayden\"\n\t\t]\n\t}\n]\n*/\n```\n\n```\nfirstNames = _jmespath(_json.body.people, \"[*].first\" )\nreturn {\"firstNames\":firstNames}\n\"\"\"\nReturns:\n[\n \t{\n\t\t\"firstNames\": [\n\t\t\t\"James\",\n\t\t\t\"Jacob\",\n\t\t\t\"Jayden\"\n\t\t]\n\t}\n]\n\"\"\"\n```\n\nGet a [slice](https://jmespath.org/tutorial.html#list-and-slice-projections) of the first names:\n\n```\n{{$jmespath($json.body.people, \"[:2].first\")}}\n// Returns [\"James\", \"Jacob\"]\n```\n\n```\nlet firstTwoNames = $jmespath($json.body.people, \"[:2].first\");\nreturn {firstTwoNames};\n/* Returns:\n[\n\t{\n\t\t\"firstNames\": [\n\t\t\t\"James\",\n\t\t\t\"Jacob\",\n\t\t\t\"Jayden\"\n\t\t]\n\t}\n]\n*/\n```\n\n```\nfirstTwoNames = _jmespath(_json.body.people, \"[:2].first\" )\nreturn {\"firstTwoNames\":firstTwoNames}\n\"\"\"\nReturns:\n[\n\t{\n\t\t\"firstTwoNames\": [\n\t\t\"James\",\n\t\t\"Jacob\"\n\t\t]\n\t}\n]\n\"\"\"\n```\n\nGet a list of the dogs' ages using [object projections](https://jmespath.org/tutorial.html#object-projections):\n\n```\n{{$jmespath($json.body.dogs, \"*.age\")}}\n// Returns [7,5]\n```\n\n```\nlet dogsAges = $jmespath($json.body.dogs, \"*.age\");\nreturn {dogsAges};\n/* Returns:\n[\n\t{\n\t\t\"dogsAges\": [\n\t\t\t7,\n\t\t\t5\n\t\t]\n\t}\n]\n*/\n```\n\n```\ndogsAges = _jmespath(_json.body.dogs, \"*.age\")\nreturn {\"dogsAges\": dogsAges}\n\"\"\"\nReturns:\n[\n\t{\n\t\t\"dogsAges\": [\n\t\t\t7,\n\t\t\t5\n\t\t]\n\t}\n]\n\"\"\"\n```\n\n### Select multiple elements and create a new list or object\n\nUse [Multiselect](https://jmespath.org/tutorial.html#multiselect) to select elements from a JSON object and combine them into a new list or object.\n\nGiven this JSON from a webhook node:\n\n```\n[\n {\n \"headers\": {\n \"host\": \"n8n.instance.address\",\n ...\n },\n \"params\": {},\n \"query\": {},\n \"body\": {\n \"people\": [\n {\n \"first\": \"James\",\n \"last\": \"Green\"\n },\n {\n \"first\": \"Jacob\",\n \"last\": \"Jones\"\n },\n {\n \"first\": \"Jayden\",\n \"last\": \"Smith\"\n }\n ],\n \"dogs\": {\n \"Fido\": {\n \"color\": \"brown\",\n \"age\": 7\n },\n \"Spot\": {\n \"color\": \"black and white\",\n \"age\": 5\n }\n }\n }\n }\n]\n```\n\nUse multiselect list to get the first and last names and create new lists containing both names:\n\n```\n{{$jmespath($json.body.people, \"[].[first, last]\")}}\n// Returns [[\"James\",\"Green\"],[\"Jacob\",\"Jones\"],[\"Jayden\",\"Smith\"]]\n```\n\n```\nlet newList = $jmespath($json.body.people, \"[].[first, last]\");\nreturn {newList};\n/* Returns:\n[\n\t{\n\t\t\"newList\": [\n\t\t\t[\n\t\t\t\t\"James\",\n\t\t\t\t\"Green\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"Jacob\",\n\t\t\t\t\"Jones\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"Jayden\",\n\t\t\t\t\"Smith\"\n\t\t\t]\n\t\t]\n\t}\n]\n*/\n```\n\n```\nnewList = _jmespath(_json.body.people, \"[].[first, last]\")\nreturn {\"newList\":newList}\n\"\"\"\nReturns:\n[\n\t{\n\t\t\"newList\": [\n\t\t\t[\n\t\t\t\t\"James\",\n\t\t\t\t\"Green\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"Jacob\",\n\t\t\t\t\"Jones\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"Jayden\",\n\t\t\t\t\"Smith\"\n\t\t\t]\n\t\t]\n\t}\n]\n\"\"\"\n```\n\n### An alternative to arrow functions in expressions\n\nFor example, generate some input data by returning the below code from the Code node:\n\n```\nreturn[\n {\n \"json\": { \n \"num_categories\": \"0\",\n \"num_products\": \"45\",\n \"category_id\": 5529735,\n \"parent_id\": 1407340,\n \"pos_enabled\": 1,\n \"pos_favorite\": 0,\n \"name\": \"HP\",\n \"description\": \"\",\n \"image\": \"\"\n }\n },\n {\n \"json\": {\n \"num_categories\": \"0\",\n \"num_products\": \"86\",\n \"category_id\": 5529740,\n \"parent_id\": 1407340,\n \"pos_enabled\": 1,\n \"pos_favorite\": 0,\n \"name\": \"Lenovo\",\n \"description\": \"\",\n \"image\": \"\"\n }\n } \n]\n```\n\nYou could do a search like \"find the item with the name Lenovo and tell me their category ID.\"\n\n```\n{{ $jmespath($(\"Code\").all(), \"[?json.name=='Lenovo'].json.category_id\") }}\n```\n",
|
|
11798
|
+
"excerpt": "# Query JSON with JMESPath [JMESPath](https://jmespath.org/) is a query language for JSON that you can use to extract and transform elements from a JSON document. For full details of how to use JMESPath, refer to the [JMESPath documentation](https://jmespath.org/tutorial.html). ## The `jmespath()` method n8n provides a custom method, `jmespath()`. Use this method to perform a search on a JSON object using the JMESPath query language. The basic syntax is: ``` $jmespath(object, searchString)...",
|
|
11799
|
+
"sections": [
|
|
11800
|
+
{
|
|
11801
|
+
"title": "Query JSON with JMESPath",
|
|
11802
|
+
"level": 1,
|
|
11803
|
+
"content": "[JMESPath](https://jmespath.org/) is a query language for JSON that you can use to extract and transform elements from a JSON document. For full details of how to use JMESPath, refer to the [JMESPath documentation](https://jmespath.org/tutorial.html)."
|
|
11804
|
+
}
|
|
11805
|
+
]
|
|
11806
|
+
},
|
|
11807
|
+
"metadata": {
|
|
11808
|
+
"keywords": [
|
|
11809
|
+
"query",
|
|
11810
|
+
"json",
|
|
11811
|
+
"with",
|
|
11812
|
+
"jmespath",
|
|
11813
|
+
"`jmespath()`",
|
|
11814
|
+
"method",
|
|
11815
|
+
"common",
|
|
11816
|
+
"tasks",
|
|
11817
|
+
"apply",
|
|
11818
|
+
"expression",
|
|
11819
|
+
"collection",
|
|
11820
|
+
"elements",
|
|
11821
|
+
"projections",
|
|
11822
|
+
"select",
|
|
11823
|
+
"multiple",
|
|
11824
|
+
"create",
|
|
11825
|
+
"list",
|
|
11826
|
+
"object",
|
|
11827
|
+
"alternative",
|
|
11828
|
+
"arrow",
|
|
11829
|
+
"functions",
|
|
11830
|
+
"expressions"
|
|
11831
|
+
],
|
|
11832
|
+
"useCases": [],
|
|
11833
|
+
"operations": [],
|
|
11834
|
+
"codeExamples": 19,
|
|
11835
|
+
"complexity": "intermediate",
|
|
11836
|
+
"readingTime": "5 min",
|
|
11837
|
+
"contentLength": 7321,
|
|
11838
|
+
"relatedPages": []
|
|
11839
|
+
},
|
|
11840
|
+
"searchIndex": {
|
|
11841
|
+
"fullText": "query json with jmespath # query json with jmespath\n\n[jmespath](https://jmespath.org/) is a query language for json that you can use to extract and transform elements from a json document. for full details of how to use jmespath, refer to the [jmespath documentation](https://jmespath.org/tutorial.html).\n\n## the `jmespath()` method\n\nn8n provides a custom method, `jmespath()`. use this method to perform a search on a json object using the jmespath query language.\n\nthe basic syntax is:\n\n```\n$jmespath(object, searchstring)\n```\n\n```\n_jmespath(object, searchstring)\n```\n\nto help understand what the method does, here is the equivalent longer javascript:\n\n```\nvar jmespath = require('jmespath');\njmespath.search(object, searchstring);\n```\n\nexpressions must be single-line\n\nthe longer code example doesn't work in expressions, as they must be single-line.\n\n`object` is a json object, such as the output of a previous node. `searchstring` is an expression written in the jmespath query language. the [jmespath specification](https://jmespath.org/specification.html#jmespath-specification) provides a list of supported expressions, while their [tutorial](https://jmespath.org/tutorial.html) and [examples](https://jmespath.org/examples.html) provide interactive examples.\n\nsearch parameter order\n\nthe examples in the [jmespath specification](https://jmespath.org/specification.html#jmespath-specification) follow the pattern `search(searchstring, object)`. the [jmespath javascript library](https://github.com/jmespath/jmespath.js/), which n8n uses, supports `search(object, searchstring)` instead. this means that when using examples from the jmespath documentation, you may need to change the order of the search function parameters.\n\n## common tasks\n\nthis section provides examples for some common operations. more examples, and detailed guidance, are available in [jmespath's own documentation](https://jmespath.org/tutorial.html).\n\nwhen trying out these examples, you need to set the code node **mode** to **run once for each item**.\n\n### apply a jmespath expression to a collection of elements with projections\n\nfrom the [jmespath projections documentation](https://jmespath.org/tutorial.html#projections):\n\n> projections are one of the key features of jmespath. use it to apply an expression to a collection of elements. jmespath supports five kinds of projections:\n>\n> - list projections\n> - slice projections\n> - object projections\n> - flatten projections\n> - filter projections\n\nthe following example shows basic usage of list, slice, and object projections. refer to the [jmespath projections documentation](https://jmespath.org/tutorial.html#projections) for detailed explanations of each projection type, and more examples.\n\ngiven this json from a webhook node:\n\n```\n[\n {\n \"headers\": {\n \"host\": \"n8n.instance.address\",\n ...\n },\n \"params\": {},\n \"query\": {},\n \"body\": {\n \"people\": [\n {\n \"first\": \"james\",\n \"last\": \"green\"\n },\n {\n \"first\": \"jacob\",\n \"last\": \"jones\"\n },\n {\n \"first\": \"jayden\",\n \"last\": \"smith\"\n }\n ],\n \"dogs\": {\n \"fido\": {\n \"color\": \"brown\",\n \"age\": 7\n },\n \"spot\": {\n \"color\": \"black and white\",\n \"age\": 5\n }\n }\n }\n }\n]\n```\n\nretrieve a [list](https://jmespath.org/tutorial.html#list-and-slice-projections) of all the people's first names:\n\n```\n{{$jmespath($json.body.people, \"[*].first\" )}}\n// returns [\"james\", \"jacob\", \"jayden\"]\n```\n\n```\nlet firstnames = $jmespath($json.body.people, \"[*].first\" )\nreturn {firstnames};\n/* returns:\n[\n\t{\n\t\t\"firstnames\": [\n\t\t\t\"james\",\n\t\t\t\"jacob\",\n\t\t\t\"jayden\"\n\t\t]\n\t}\n]\n*/\n```\n\n```\nfirstnames = _jmespath(_json.body.people, \"[*].first\" )\nreturn {\"firstnames\":firstnames}\n\"\"\"\nreturns:\n[\n \t{\n\t\t\"firstnames\": [\n\t\t\t\"james\",\n\t\t\t\"jacob\",\n\t\t\t\"jayden\"\n\t\t]\n\t}\n]\n\"\"\"\n```\n\nget a [slice](https://jmespath.org/tutorial.html#list-and-slice-projections) of the first names:\n\n```\n{{$jmespath($json.body.people, \"[:2].first\")}}\n// returns [\"james\", \"jacob\"]\n```\n\n```\nlet firsttwonames = $jmespath($json.body.people, \"[:2].first\");\nreturn {firsttwonames};\n/* returns:\n[\n\t{\n\t\t\"firstnames\": [\n\t\t\t\"james\",\n\t\t\t\"jacob\",\n\t\t\t\"jayden\"\n\t\t]\n\t}\n]\n*/\n```\n\n```\nfirsttwonames = _jmespath(_json.body.people, \"[:2].first\" )\nreturn {\"firsttwonames\":firsttwonames}\n\"\"\"\nreturns:\n[\n\t{\n\t\t\"firsttwonames\": [\n\t\t\"james\",\n\t\t\"jacob\"\n\t\t]\n\t}\n]\n\"\"\"\n```\n\nget a list of the dogs' ages using [object projections](https://jmespath.org/tutorial.html#object-projections):\n\n```\n{{$jmespath($json.body.dogs, \"*.age\")}}\n// returns [7,5]\n```\n\n```\nlet dogsages = $jmespath($json.body.dogs, \"*.age\");\nreturn {dogsages};\n/* returns:\n[\n\t{\n\t\t\"dogsages\": [\n\t\t\t7,\n\t\t\t5\n\t\t]\n\t}\n]\n*/\n```\n\n```\ndogsages = _jmespath(_json.body.dogs, \"*.age\")\nreturn {\"dogsages\": dogsages}\n\"\"\"\nreturns:\n[\n\t{\n\t\t\"dogsages\": [\n\t\t\t7,\n\t\t\t5\n\t\t]\n\t}\n]\n\"\"\"\n```\n\n### select multiple elements and create a new list or object\n\nuse [multiselect](https://jmespath.org/tutorial.html#multiselect) to select elements from a json object and combine them into a new list or object.\n\ngiven this json from a webhook node:\n\n```\n[\n {\n \"headers\": {\n \"host\": \"n8n.instance.address\",\n ...\n },\n \"params\": {},\n \"query\": {},\n \"body\": {\n \"people\": [\n {\n \"first\": \"james\",\n \"last\": \"green\"\n },\n {\n \"first\": \"jacob\",\n \"last\": \"jones\"\n },\n {\n \"first\": \"jayden\",\n \"last\": \"smith\"\n }\n ],\n \"dogs\": {\n \"fido\": {\n \"color\": \"brown\",\n \"age\": 7\n },\n \"spot\": {\n \"color\": \"black and white\",\n \"age\": 5\n }\n }\n }\n }\n]\n```\n\nuse multiselect list to get the first and last names and create new lists containing both names:\n\n```\n{{$jmespath($json.body.people, \"[].[first, last]\")}}\n// returns [[\"james\",\"green\"],[\"jacob\",\"jones\"],[\"jayden\",\"smith\"]]\n```\n\n```\nlet newlist = $jmespath($json.body.people, \"[].[first, last]\");\nreturn {newlist};\n/* returns:\n[\n\t{\n\t\t\"newlist\": [\n\t\t\t[\n\t\t\t\t\"james\",\n\t\t\t\t\"green\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"jacob\",\n\t\t\t\t\"jones\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"jayden\",\n\t\t\t\t\"smith\"\n\t\t\t]\n\t\t]\n\t}\n]\n*/\n```\n\n```\nnewlist = _jmespath(_json.body.people, \"[].[first, last]\")\nreturn {\"newlist\":newlist}\n\"\"\"\nreturns:\n[\n\t{\n\t\t\"newlist\": [\n\t\t\t[\n\t\t\t\t\"james\",\n\t\t\t\t\"green\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"jacob\",\n\t\t\t\t\"jones\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"jayden\",\n\t\t\t\t\"smith\"\n\t\t\t]\n\t\t]\n\t}\n]\n\"\"\"\n```\n\n### an alternative to arrow functions in expressions\n\nfor example, generate some input data by returning the below code from the code node:\n\n```\nreturn[\n {\n \"json\": { \n \"num_categories\": \"0\",\n \"num_products\": \"45\",\n \"category_id\": 5529735,\n \"parent_id\": 1407340,\n \"pos_enabled\": 1,\n \"pos_favorite\": 0,\n \"name\": \"hp\",\n \"description\": \"\",\n \"image\": \"\"\n }\n },\n {\n \"json\": {\n \"num_categories\": \"0\",\n \"num_products\": \"86\",\n \"category_id\": 5529740,\n \"parent_id\": 1407340,\n \"pos_enabled\": 1,\n \"pos_favorite\": 0,\n \"name\": \"lenovo\",\n \"description\": \"\",\n \"image\": \"\"\n }\n } \n]\n```\n\nyou could do a search like \"find the item with the name lenovo and tell me their category id.\"\n\n```\n{{ $jmespath($(\"code\").all(), \"[?json.name=='lenovo'].json.category_id\") }}\n```\n query json with jmespath",
|
|
11842
|
+
"importantTerms": [
|
|
11843
|
+
"jmespath",
|
|
11844
|
+
"json",
|
|
11845
|
+
"first",
|
|
11846
|
+
"projections",
|
|
11847
|
+
"object",
|
|
11848
|
+
"https",
|
|
11849
|
+
"body",
|
|
11850
|
+
"html",
|
|
11851
|
+
"people",
|
|
11852
|
+
"returns",
|
|
11853
|
+
"james",
|
|
11854
|
+
"jacob",
|
|
11855
|
+
"tutorial",
|
|
11856
|
+
"list",
|
|
11857
|
+
"last",
|
|
11858
|
+
"examples",
|
|
11859
|
+
"jayden",
|
|
11860
|
+
"return",
|
|
11861
|
+
"query",
|
|
11862
|
+
"firstnames",
|
|
11863
|
+
"from",
|
|
11864
|
+
"search",
|
|
11865
|
+
"dogsages",
|
|
11866
|
+
"newlist",
|
|
11867
|
+
"searchstring",
|
|
11868
|
+
"specification",
|
|
11869
|
+
"dogs",
|
|
11870
|
+
"firsttwonames",
|
|
11871
|
+
"with",
|
|
11872
|
+
"elements",
|
|
11873
|
+
"documentation",
|
|
11874
|
+
"this",
|
|
11875
|
+
"code",
|
|
11876
|
+
"node",
|
|
11877
|
+
"slice",
|
|
11878
|
+
"green",
|
|
11879
|
+
"jones",
|
|
11880
|
+
"smith",
|
|
11881
|
+
"method",
|
|
11882
|
+
"expressions",
|
|
11883
|
+
"color",
|
|
11884
|
+
"names",
|
|
11885
|
+
"name",
|
|
11886
|
+
"language",
|
|
11887
|
+
"provides",
|
|
11888
|
+
"using",
|
|
11889
|
+
"example",
|
|
11890
|
+
"expression",
|
|
11891
|
+
"multiselect",
|
|
11892
|
+
"lenovo"
|
|
11893
|
+
]
|
|
11894
|
+
}
|
|
11895
|
+
},
|
|
11896
|
+
{
|
|
11897
|
+
"id": "page-0132",
|
|
11789
11898
|
"title": "Date and time with Luxon",
|
|
11790
11899
|
"url": "https://docs.n8n.io/data/specific-data-types/luxon/index.md",
|
|
11791
11900
|
"urlPath": "data/specific-data-types/luxon/index.md",
|
|
@@ -11940,7 +12049,7 @@
|
|
|
11940
12049
|
}
|
|
11941
12050
|
},
|
|
11942
12051
|
{
|
|
11943
|
-
"id": "page-
|
|
12052
|
+
"id": "page-0133",
|
|
11944
12053
|
"title": "n8n Embed Documentation and Guides",
|
|
11945
12054
|
"url": "https://docs.n8n.io/embed/index.md",
|
|
11946
12055
|
"urlPath": "embed/index.md",
|
|
@@ -11987,7 +12096,7 @@
|
|
|
11987
12096
|
}
|
|
11988
12097
|
},
|
|
11989
12098
|
{
|
|
11990
|
-
"id": "page-
|
|
12099
|
+
"id": "page-0134",
|
|
11991
12100
|
"title": "Configuration",
|
|
11992
12101
|
"url": "https://docs.n8n.io/embed/configuration/index.md",
|
|
11993
12102
|
"urlPath": "embed/configuration/index.md",
|
|
@@ -12095,7 +12204,7 @@
|
|
|
12095
12204
|
}
|
|
12096
12205
|
},
|
|
12097
12206
|
{
|
|
12098
|
-
"id": "page-
|
|
12207
|
+
"id": "page-0135",
|
|
12099
12208
|
"title": "Deployment",
|
|
12100
12209
|
"url": "https://docs.n8n.io/embed/deployment/index.md",
|
|
12101
12210
|
"urlPath": "embed/deployment/index.md",
|
|
@@ -12145,7 +12254,7 @@
|
|
|
12145
12254
|
}
|
|
12146
12255
|
},
|
|
12147
12256
|
{
|
|
12148
|
-
"id": "page-
|
|
12257
|
+
"id": "page-0136",
|
|
12149
12258
|
"title": "Workflow management",
|
|
12150
12259
|
"url": "https://docs.n8n.io/embed/managing-workflows/index.md",
|
|
12151
12260
|
"urlPath": "embed/managing-workflows/index.md",
|
|
@@ -12243,7 +12352,7 @@
|
|
|
12243
12352
|
}
|
|
12244
12353
|
},
|
|
12245
12354
|
{
|
|
12246
|
-
"id": "page-
|
|
12355
|
+
"id": "page-0137",
|
|
12247
12356
|
"title": "Prerequisites",
|
|
12248
12357
|
"url": "https://docs.n8n.io/embed/prerequisites/index.md",
|
|
12249
12358
|
"urlPath": "embed/prerequisites/index.md",
|
|
@@ -12305,115 +12414,6 @@
|
|
|
12305
12414
|
]
|
|
12306
12415
|
}
|
|
12307
12416
|
},
|
|
12308
|
-
{
|
|
12309
|
-
"id": "page-0137",
|
|
12310
|
-
"title": "Query JSON with JMESPath",
|
|
12311
|
-
"url": "https://docs.n8n.io/data/specific-data-types/jmespath/index.md",
|
|
12312
|
-
"urlPath": "data/specific-data-types/jmespath/index.md",
|
|
12313
|
-
"category": "data",
|
|
12314
|
-
"subcategory": null,
|
|
12315
|
-
"nodeName": null,
|
|
12316
|
-
"nodeType": null,
|
|
12317
|
-
"content": {
|
|
12318
|
-
"markdown": "# Query JSON with JMESPath\n\n[JMESPath](https://jmespath.org/) is a query language for JSON that you can use to extract and transform elements from a JSON document. For full details of how to use JMESPath, refer to the [JMESPath documentation](https://jmespath.org/tutorial.html).\n\n## The `jmespath()` method\n\nn8n provides a custom method, `jmespath()`. Use this method to perform a search on a JSON object using the JMESPath query language.\n\nThe basic syntax is:\n\n```\n$jmespath(object, searchString)\n```\n\n```\n_jmespath(object, searchString)\n```\n\nTo help understand what the method does, here is the equivalent longer JavaScript:\n\n```\nvar jmespath = require('jmespath');\njmespath.search(object, searchString);\n```\n\nExpressions must be single-line\n\nThe longer code example doesn't work in Expressions, as they must be single-line.\n\n`object` is a JSON object, such as the output of a previous node. `searchString` is an expression written in the JMESPath query language. The [JMESPath Specification](https://jmespath.org/specification.html#jmespath-specification) provides a list of supported expressions, while their [Tutorial](https://jmespath.org/tutorial.html) and [Examples](https://jmespath.org/examples.html) provide interactive examples.\n\nSearch parameter order\n\nThe examples in the [JMESPath Specification](https://jmespath.org/specification.html#jmespath-specification) follow the pattern `search(searchString, object)`. The [JMESPath JavaScript library](https://github.com/jmespath/jmespath.js/), which n8n uses, supports `search(object, searchString)` instead. This means that when using examples from the JMESPath documentation, you may need to change the order of the search function parameters.\n\n## Common tasks\n\nThis section provides examples for some common operations. More examples, and detailed guidance, are available in [JMESPath's own documentation](https://jmespath.org/tutorial.html).\n\nWhen trying out these examples, you need to set the Code node **Mode** to **Run Once for Each Item**.\n\n### Apply a JMESPath expression to a collection of elements with projections\n\nFrom the [JMESPath projections documentation](https://jmespath.org/tutorial.html#projections):\n\n> Projections are one of the key features of JMESPath. Use it to apply an expression to a collection of elements. JMESPath supports five kinds of projections:\n>\n> - List Projections\n> - Slice Projections\n> - Object Projections\n> - Flatten Projections\n> - Filter Projections\n\nThe following example shows basic usage of list, slice, and object projections. Refer to the [JMESPath projections documentation](https://jmespath.org/tutorial.html#projections) for detailed explanations of each projection type, and more examples.\n\nGiven this JSON from a webhook node:\n\n```\n[\n {\n \"headers\": {\n \"host\": \"n8n.instance.address\",\n ...\n },\n \"params\": {},\n \"query\": {},\n \"body\": {\n \"people\": [\n {\n \"first\": \"James\",\n \"last\": \"Green\"\n },\n {\n \"first\": \"Jacob\",\n \"last\": \"Jones\"\n },\n {\n \"first\": \"Jayden\",\n \"last\": \"Smith\"\n }\n ],\n \"dogs\": {\n \"Fido\": {\n \"color\": \"brown\",\n \"age\": 7\n },\n \"Spot\": {\n \"color\": \"black and white\",\n \"age\": 5\n }\n }\n }\n }\n]\n```\n\nRetrieve a [list](https://jmespath.org/tutorial.html#list-and-slice-projections) of all the people's first names:\n\n```\n{{$jmespath($json.body.people, \"[*].first\" )}}\n// Returns [\"James\", \"Jacob\", \"Jayden\"]\n```\n\n```\nlet firstNames = $jmespath($json.body.people, \"[*].first\" )\nreturn {firstNames};\n/* Returns:\n[\n\t{\n\t\t\"firstNames\": [\n\t\t\t\"James\",\n\t\t\t\"Jacob\",\n\t\t\t\"Jayden\"\n\t\t]\n\t}\n]\n*/\n```\n\n```\nfirstNames = _jmespath(_json.body.people, \"[*].first\" )\nreturn {\"firstNames\":firstNames}\n\"\"\"\nReturns:\n[\n \t{\n\t\t\"firstNames\": [\n\t\t\t\"James\",\n\t\t\t\"Jacob\",\n\t\t\t\"Jayden\"\n\t\t]\n\t}\n]\n\"\"\"\n```\n\nGet a [slice](https://jmespath.org/tutorial.html#list-and-slice-projections) of the first names:\n\n```\n{{$jmespath($json.body.people, \"[:2].first\")}}\n// Returns [\"James\", \"Jacob\"]\n```\n\n```\nlet firstTwoNames = $jmespath($json.body.people, \"[:2].first\");\nreturn {firstTwoNames};\n/* Returns:\n[\n\t{\n\t\t\"firstNames\": [\n\t\t\t\"James\",\n\t\t\t\"Jacob\",\n\t\t\t\"Jayden\"\n\t\t]\n\t}\n]\n*/\n```\n\n```\nfirstTwoNames = _jmespath(_json.body.people, \"[:2].first\" )\nreturn {\"firstTwoNames\":firstTwoNames}\n\"\"\"\nReturns:\n[\n\t{\n\t\t\"firstTwoNames\": [\n\t\t\"James\",\n\t\t\"Jacob\"\n\t\t]\n\t}\n]\n\"\"\"\n```\n\nGet a list of the dogs' ages using [object projections](https://jmespath.org/tutorial.html#object-projections):\n\n```\n{{$jmespath($json.body.dogs, \"*.age\")}}\n// Returns [7,5]\n```\n\n```\nlet dogsAges = $jmespath($json.body.dogs, \"*.age\");\nreturn {dogsAges};\n/* Returns:\n[\n\t{\n\t\t\"dogsAges\": [\n\t\t\t7,\n\t\t\t5\n\t\t]\n\t}\n]\n*/\n```\n\n```\ndogsAges = _jmespath(_json.body.dogs, \"*.age\")\nreturn {\"dogsAges\": dogsAges}\n\"\"\"\nReturns:\n[\n\t{\n\t\t\"dogsAges\": [\n\t\t\t7,\n\t\t\t5\n\t\t]\n\t}\n]\n\"\"\"\n```\n\n### Select multiple elements and create a new list or object\n\nUse [Multiselect](https://jmespath.org/tutorial.html#multiselect) to select elements from a JSON object and combine them into a new list or object.\n\nGiven this JSON from a webhook node:\n\n```\n[\n {\n \"headers\": {\n \"host\": \"n8n.instance.address\",\n ...\n },\n \"params\": {},\n \"query\": {},\n \"body\": {\n \"people\": [\n {\n \"first\": \"James\",\n \"last\": \"Green\"\n },\n {\n \"first\": \"Jacob\",\n \"last\": \"Jones\"\n },\n {\n \"first\": \"Jayden\",\n \"last\": \"Smith\"\n }\n ],\n \"dogs\": {\n \"Fido\": {\n \"color\": \"brown\",\n \"age\": 7\n },\n \"Spot\": {\n \"color\": \"black and white\",\n \"age\": 5\n }\n }\n }\n }\n]\n```\n\nUse multiselect list to get the first and last names and create new lists containing both names:\n\n```\n{{$jmespath($json.body.people, \"[].[first, last]\")}}\n// Returns [[\"James\",\"Green\"],[\"Jacob\",\"Jones\"],[\"Jayden\",\"Smith\"]]\n```\n\n```\nlet newList = $jmespath($json.body.people, \"[].[first, last]\");\nreturn {newList};\n/* Returns:\n[\n\t{\n\t\t\"newList\": [\n\t\t\t[\n\t\t\t\t\"James\",\n\t\t\t\t\"Green\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"Jacob\",\n\t\t\t\t\"Jones\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"Jayden\",\n\t\t\t\t\"Smith\"\n\t\t\t]\n\t\t]\n\t}\n]\n*/\n```\n\n```\nnewList = _jmespath(_json.body.people, \"[].[first, last]\")\nreturn {\"newList\":newList}\n\"\"\"\nReturns:\n[\n\t{\n\t\t\"newList\": [\n\t\t\t[\n\t\t\t\t\"James\",\n\t\t\t\t\"Green\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"Jacob\",\n\t\t\t\t\"Jones\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"Jayden\",\n\t\t\t\t\"Smith\"\n\t\t\t]\n\t\t]\n\t}\n]\n\"\"\"\n```\n\n### An alternative to arrow functions in expressions\n\nFor example, generate some input data by returning the below code from the Code node:\n\n```\nreturn[\n {\n \"json\": { \n \"num_categories\": \"0\",\n \"num_products\": \"45\",\n \"category_id\": 5529735,\n \"parent_id\": 1407340,\n \"pos_enabled\": 1,\n \"pos_favorite\": 0,\n \"name\": \"HP\",\n \"description\": \"\",\n \"image\": \"\"\n }\n },\n {\n \"json\": {\n \"num_categories\": \"0\",\n \"num_products\": \"86\",\n \"category_id\": 5529740,\n \"parent_id\": 1407340,\n \"pos_enabled\": 1,\n \"pos_favorite\": 0,\n \"name\": \"Lenovo\",\n \"description\": \"\",\n \"image\": \"\"\n }\n } \n]\n```\n\nYou could do a search like \"find the item with the name Lenovo and tell me their category ID.\"\n\n```\n{{ $jmespath($(\"Code\").all(), \"[?json.name=='Lenovo'].json.category_id\") }}\n```\n",
|
|
12319
|
-
"excerpt": "# Query JSON with JMESPath [JMESPath](https://jmespath.org/) is a query language for JSON that you can use to extract and transform elements from a JSON document. For full details of how to use JMESPath, refer to the [JMESPath documentation](https://jmespath.org/tutorial.html). ## The `jmespath()` method n8n provides a custom method, `jmespath()`. Use this method to perform a search on a JSON object using the JMESPath query language. The basic syntax is: ``` $jmespath(object, searchString)...",
|
|
12320
|
-
"sections": [
|
|
12321
|
-
{
|
|
12322
|
-
"title": "Query JSON with JMESPath",
|
|
12323
|
-
"level": 1,
|
|
12324
|
-
"content": "[JMESPath](https://jmespath.org/) is a query language for JSON that you can use to extract and transform elements from a JSON document. For full details of how to use JMESPath, refer to the [JMESPath documentation](https://jmespath.org/tutorial.html)."
|
|
12325
|
-
}
|
|
12326
|
-
]
|
|
12327
|
-
},
|
|
12328
|
-
"metadata": {
|
|
12329
|
-
"keywords": [
|
|
12330
|
-
"query",
|
|
12331
|
-
"json",
|
|
12332
|
-
"with",
|
|
12333
|
-
"jmespath",
|
|
12334
|
-
"`jmespath()`",
|
|
12335
|
-
"method",
|
|
12336
|
-
"common",
|
|
12337
|
-
"tasks",
|
|
12338
|
-
"apply",
|
|
12339
|
-
"expression",
|
|
12340
|
-
"collection",
|
|
12341
|
-
"elements",
|
|
12342
|
-
"projections",
|
|
12343
|
-
"select",
|
|
12344
|
-
"multiple",
|
|
12345
|
-
"create",
|
|
12346
|
-
"list",
|
|
12347
|
-
"object",
|
|
12348
|
-
"alternative",
|
|
12349
|
-
"arrow",
|
|
12350
|
-
"functions",
|
|
12351
|
-
"expressions"
|
|
12352
|
-
],
|
|
12353
|
-
"useCases": [],
|
|
12354
|
-
"operations": [],
|
|
12355
|
-
"codeExamples": 19,
|
|
12356
|
-
"complexity": "intermediate",
|
|
12357
|
-
"readingTime": "5 min",
|
|
12358
|
-
"contentLength": 7321,
|
|
12359
|
-
"relatedPages": []
|
|
12360
|
-
},
|
|
12361
|
-
"searchIndex": {
|
|
12362
|
-
"fullText": "query json with jmespath # query json with jmespath\n\n[jmespath](https://jmespath.org/) is a query language for json that you can use to extract and transform elements from a json document. for full details of how to use jmespath, refer to the [jmespath documentation](https://jmespath.org/tutorial.html).\n\n## the `jmespath()` method\n\nn8n provides a custom method, `jmespath()`. use this method to perform a search on a json object using the jmespath query language.\n\nthe basic syntax is:\n\n```\n$jmespath(object, searchstring)\n```\n\n```\n_jmespath(object, searchstring)\n```\n\nto help understand what the method does, here is the equivalent longer javascript:\n\n```\nvar jmespath = require('jmespath');\njmespath.search(object, searchstring);\n```\n\nexpressions must be single-line\n\nthe longer code example doesn't work in expressions, as they must be single-line.\n\n`object` is a json object, such as the output of a previous node. `searchstring` is an expression written in the jmespath query language. the [jmespath specification](https://jmespath.org/specification.html#jmespath-specification) provides a list of supported expressions, while their [tutorial](https://jmespath.org/tutorial.html) and [examples](https://jmespath.org/examples.html) provide interactive examples.\n\nsearch parameter order\n\nthe examples in the [jmespath specification](https://jmespath.org/specification.html#jmespath-specification) follow the pattern `search(searchstring, object)`. the [jmespath javascript library](https://github.com/jmespath/jmespath.js/), which n8n uses, supports `search(object, searchstring)` instead. this means that when using examples from the jmespath documentation, you may need to change the order of the search function parameters.\n\n## common tasks\n\nthis section provides examples for some common operations. more examples, and detailed guidance, are available in [jmespath's own documentation](https://jmespath.org/tutorial.html).\n\nwhen trying out these examples, you need to set the code node **mode** to **run once for each item**.\n\n### apply a jmespath expression to a collection of elements with projections\n\nfrom the [jmespath projections documentation](https://jmespath.org/tutorial.html#projections):\n\n> projections are one of the key features of jmespath. use it to apply an expression to a collection of elements. jmespath supports five kinds of projections:\n>\n> - list projections\n> - slice projections\n> - object projections\n> - flatten projections\n> - filter projections\n\nthe following example shows basic usage of list, slice, and object projections. refer to the [jmespath projections documentation](https://jmespath.org/tutorial.html#projections) for detailed explanations of each projection type, and more examples.\n\ngiven this json from a webhook node:\n\n```\n[\n {\n \"headers\": {\n \"host\": \"n8n.instance.address\",\n ...\n },\n \"params\": {},\n \"query\": {},\n \"body\": {\n \"people\": [\n {\n \"first\": \"james\",\n \"last\": \"green\"\n },\n {\n \"first\": \"jacob\",\n \"last\": \"jones\"\n },\n {\n \"first\": \"jayden\",\n \"last\": \"smith\"\n }\n ],\n \"dogs\": {\n \"fido\": {\n \"color\": \"brown\",\n \"age\": 7\n },\n \"spot\": {\n \"color\": \"black and white\",\n \"age\": 5\n }\n }\n }\n }\n]\n```\n\nretrieve a [list](https://jmespath.org/tutorial.html#list-and-slice-projections) of all the people's first names:\n\n```\n{{$jmespath($json.body.people, \"[*].first\" )}}\n// returns [\"james\", \"jacob\", \"jayden\"]\n```\n\n```\nlet firstnames = $jmespath($json.body.people, \"[*].first\" )\nreturn {firstnames};\n/* returns:\n[\n\t{\n\t\t\"firstnames\": [\n\t\t\t\"james\",\n\t\t\t\"jacob\",\n\t\t\t\"jayden\"\n\t\t]\n\t}\n]\n*/\n```\n\n```\nfirstnames = _jmespath(_json.body.people, \"[*].first\" )\nreturn {\"firstnames\":firstnames}\n\"\"\"\nreturns:\n[\n \t{\n\t\t\"firstnames\": [\n\t\t\t\"james\",\n\t\t\t\"jacob\",\n\t\t\t\"jayden\"\n\t\t]\n\t}\n]\n\"\"\"\n```\n\nget a [slice](https://jmespath.org/tutorial.html#list-and-slice-projections) of the first names:\n\n```\n{{$jmespath($json.body.people, \"[:2].first\")}}\n// returns [\"james\", \"jacob\"]\n```\n\n```\nlet firsttwonames = $jmespath($json.body.people, \"[:2].first\");\nreturn {firsttwonames};\n/* returns:\n[\n\t{\n\t\t\"firstnames\": [\n\t\t\t\"james\",\n\t\t\t\"jacob\",\n\t\t\t\"jayden\"\n\t\t]\n\t}\n]\n*/\n```\n\n```\nfirsttwonames = _jmespath(_json.body.people, \"[:2].first\" )\nreturn {\"firsttwonames\":firsttwonames}\n\"\"\"\nreturns:\n[\n\t{\n\t\t\"firsttwonames\": [\n\t\t\"james\",\n\t\t\"jacob\"\n\t\t]\n\t}\n]\n\"\"\"\n```\n\nget a list of the dogs' ages using [object projections](https://jmespath.org/tutorial.html#object-projections):\n\n```\n{{$jmespath($json.body.dogs, \"*.age\")}}\n// returns [7,5]\n```\n\n```\nlet dogsages = $jmespath($json.body.dogs, \"*.age\");\nreturn {dogsages};\n/* returns:\n[\n\t{\n\t\t\"dogsages\": [\n\t\t\t7,\n\t\t\t5\n\t\t]\n\t}\n]\n*/\n```\n\n```\ndogsages = _jmespath(_json.body.dogs, \"*.age\")\nreturn {\"dogsages\": dogsages}\n\"\"\"\nreturns:\n[\n\t{\n\t\t\"dogsages\": [\n\t\t\t7,\n\t\t\t5\n\t\t]\n\t}\n]\n\"\"\"\n```\n\n### select multiple elements and create a new list or object\n\nuse [multiselect](https://jmespath.org/tutorial.html#multiselect) to select elements from a json object and combine them into a new list or object.\n\ngiven this json from a webhook node:\n\n```\n[\n {\n \"headers\": {\n \"host\": \"n8n.instance.address\",\n ...\n },\n \"params\": {},\n \"query\": {},\n \"body\": {\n \"people\": [\n {\n \"first\": \"james\",\n \"last\": \"green\"\n },\n {\n \"first\": \"jacob\",\n \"last\": \"jones\"\n },\n {\n \"first\": \"jayden\",\n \"last\": \"smith\"\n }\n ],\n \"dogs\": {\n \"fido\": {\n \"color\": \"brown\",\n \"age\": 7\n },\n \"spot\": {\n \"color\": \"black and white\",\n \"age\": 5\n }\n }\n }\n }\n]\n```\n\nuse multiselect list to get the first and last names and create new lists containing both names:\n\n```\n{{$jmespath($json.body.people, \"[].[first, last]\")}}\n// returns [[\"james\",\"green\"],[\"jacob\",\"jones\"],[\"jayden\",\"smith\"]]\n```\n\n```\nlet newlist = $jmespath($json.body.people, \"[].[first, last]\");\nreturn {newlist};\n/* returns:\n[\n\t{\n\t\t\"newlist\": [\n\t\t\t[\n\t\t\t\t\"james\",\n\t\t\t\t\"green\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"jacob\",\n\t\t\t\t\"jones\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"jayden\",\n\t\t\t\t\"smith\"\n\t\t\t]\n\t\t]\n\t}\n]\n*/\n```\n\n```\nnewlist = _jmespath(_json.body.people, \"[].[first, last]\")\nreturn {\"newlist\":newlist}\n\"\"\"\nreturns:\n[\n\t{\n\t\t\"newlist\": [\n\t\t\t[\n\t\t\t\t\"james\",\n\t\t\t\t\"green\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"jacob\",\n\t\t\t\t\"jones\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t\"jayden\",\n\t\t\t\t\"smith\"\n\t\t\t]\n\t\t]\n\t}\n]\n\"\"\"\n```\n\n### an alternative to arrow functions in expressions\n\nfor example, generate some input data by returning the below code from the code node:\n\n```\nreturn[\n {\n \"json\": { \n \"num_categories\": \"0\",\n \"num_products\": \"45\",\n \"category_id\": 5529735,\n \"parent_id\": 1407340,\n \"pos_enabled\": 1,\n \"pos_favorite\": 0,\n \"name\": \"hp\",\n \"description\": \"\",\n \"image\": \"\"\n }\n },\n {\n \"json\": {\n \"num_categories\": \"0\",\n \"num_products\": \"86\",\n \"category_id\": 5529740,\n \"parent_id\": 1407340,\n \"pos_enabled\": 1,\n \"pos_favorite\": 0,\n \"name\": \"lenovo\",\n \"description\": \"\",\n \"image\": \"\"\n }\n } \n]\n```\n\nyou could do a search like \"find the item with the name lenovo and tell me their category id.\"\n\n```\n{{ $jmespath($(\"code\").all(), \"[?json.name=='lenovo'].json.category_id\") }}\n```\n query json with jmespath",
|
|
12363
|
-
"importantTerms": [
|
|
12364
|
-
"jmespath",
|
|
12365
|
-
"json",
|
|
12366
|
-
"first",
|
|
12367
|
-
"projections",
|
|
12368
|
-
"object",
|
|
12369
|
-
"https",
|
|
12370
|
-
"body",
|
|
12371
|
-
"html",
|
|
12372
|
-
"people",
|
|
12373
|
-
"returns",
|
|
12374
|
-
"james",
|
|
12375
|
-
"jacob",
|
|
12376
|
-
"tutorial",
|
|
12377
|
-
"list",
|
|
12378
|
-
"last",
|
|
12379
|
-
"examples",
|
|
12380
|
-
"jayden",
|
|
12381
|
-
"return",
|
|
12382
|
-
"query",
|
|
12383
|
-
"firstnames",
|
|
12384
|
-
"from",
|
|
12385
|
-
"search",
|
|
12386
|
-
"dogsages",
|
|
12387
|
-
"newlist",
|
|
12388
|
-
"searchstring",
|
|
12389
|
-
"specification",
|
|
12390
|
-
"dogs",
|
|
12391
|
-
"firsttwonames",
|
|
12392
|
-
"with",
|
|
12393
|
-
"elements",
|
|
12394
|
-
"documentation",
|
|
12395
|
-
"this",
|
|
12396
|
-
"code",
|
|
12397
|
-
"node",
|
|
12398
|
-
"slice",
|
|
12399
|
-
"green",
|
|
12400
|
-
"jones",
|
|
12401
|
-
"smith",
|
|
12402
|
-
"method",
|
|
12403
|
-
"expressions",
|
|
12404
|
-
"color",
|
|
12405
|
-
"names",
|
|
12406
|
-
"name",
|
|
12407
|
-
"language",
|
|
12408
|
-
"provides",
|
|
12409
|
-
"using",
|
|
12410
|
-
"example",
|
|
12411
|
-
"expression",
|
|
12412
|
-
"multiselect",
|
|
12413
|
-
"lenovo"
|
|
12414
|
-
]
|
|
12415
|
-
}
|
|
12416
|
-
},
|
|
12417
12417
|
{
|
|
12418
12418
|
"id": "page-0138",
|
|
12419
12419
|
"title": "White labelling",
|
|
@@ -29355,78 +29355,6 @@
|
|
|
29355
29355
|
},
|
|
29356
29356
|
{
|
|
29357
29357
|
"id": "page-0370",
|
|
29358
|
-
"title": "Medium",
|
|
29359
|
-
"url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.medium/index.md",
|
|
29360
|
-
"urlPath": "integrations/builtin/app-nodes/n8n-nodes-base.medium/index.md",
|
|
29361
|
-
"category": "integrations",
|
|
29362
|
-
"subcategory": "app-nodes",
|
|
29363
|
-
"nodeName": "medium",
|
|
29364
|
-
"nodeType": "n8n-nodes-base.medium",
|
|
29365
|
-
"content": {
|
|
29366
|
-
"markdown": "# Medium node\n\nUse the Medium node to automate work in Medium, and integrate Medium with other applications. n8n has built-in support for a wide range of Medium features, including creating posts, and getting publications.\n\nOn this page, you'll find a list of operations the Medium node supports and links to more resources.\n\nMedium API no longer supported\n\nMedium has stopped supporting the Medium API. The Medium node still appears within n8n, but you won't be able to configure new API keys to authenticate with.\n\nRefer to [Medium credentials](../../credentials/medium/) for guidance on setting up existing API keys.\n\nThis node can be used as an AI tool\n\nThis node can be used to enhance the capabilities of an AI agent. When used in this way, many parameters can be set automatically, or with information directed by AI - find out more in the [AI tool parameters documentation](../../../../advanced-ai/examples/using-the-fromai-function/).\n\n## Operations\n\n- Post\n - Create a post\n- Publication\n - Get all publications\n\n## Templates and examples\n\n**Cross-post your blog posts**\n\nby amudhan\n\n[View template details](https://n8n.io/workflows/418-cross-post-your-blog-posts/)\n\n**Posting from Wordpress to Medium**\n\nby Zacharia Kimotho\n\n[View template details](https://n8n.io/workflows/2062-posting-from-wordpress-to-medium/)\n\n**Publish a post to a publication on Medium**\n\nby Harshil Agrawal\n\n[View template details](https://n8n.io/workflows/594-publish-a-post-to-a-publication-on-medium/)\n\n[Browse Medium integration templates](https://n8n.io/integrations/medium/), or [search all templates](https://n8n.io/workflows/)\n\n## What to do if your operation isn't supported\n\nIf this node doesn't support the operation you want to do, you can use the [HTTP Request node](../../core-nodes/n8n-nodes-base.httprequest/) to call the service's API.\n\nYou can use the credential you created for this service in the HTTP Request node:\n\n1. In the HTTP Request node, select **Authentication** > **Predefined Credential Type**.\n1. Select the service you want to connect to.\n1. Select your credential.\n\nRefer to [Custom API operations](../../../custom-operations/) for more information.\n",
|
|
29367
|
-
"excerpt": "# Medium node Use the Medium node to automate work in Medium, and integrate Medium with other applications. n8n has built-in support for a wide range of Medium features, including creating posts, and getting publications. On this page, you'll find a list of operations the Medium node supports and links to more resources. Medium API no longer supported Medium has stopped supporting the Medium API. The Medium node still appears within n8n, but you won't be able to configure new API keys to aut...",
|
|
29368
|
-
"sections": [
|
|
29369
|
-
{
|
|
29370
|
-
"title": "Medium node",
|
|
29371
|
-
"level": 1,
|
|
29372
|
-
"content": "Use the Medium node to automate work in Medium, and integrate Medium with other applications. n8n has built-in support for a wide range of Medium features, including creating posts, and getting publications.\n\nOn this page, you'll find a list of operations the Medium node supports and links to more resources.\n\nMedium API no longer supported\n\nMedium has stopped supporting the Medium API. The Medium node still appears within n8n, but you won't be able to configure new API keys to authenticate with.\n\nRefer to [Medium credentials](../../credentials/medium/) for guidance on setting up existing API keys.\n\nThis node can be used as an AI tool\n\nThis node can be used to enhance the capabilities of an AI agent. When used in this way, many parameters can be set automatically, or with information directed by AI - find out more in the [AI tool parameters documentation](../../../../advanced-ai/examples/using-the-fromai-function/)."
|
|
29373
|
-
}
|
|
29374
|
-
]
|
|
29375
|
-
},
|
|
29376
|
-
"metadata": {
|
|
29377
|
-
"keywords": [
|
|
29378
|
-
"medium",
|
|
29379
|
-
"node",
|
|
29380
|
-
"operations",
|
|
29381
|
-
"templates",
|
|
29382
|
-
"examples",
|
|
29383
|
-
"what",
|
|
29384
|
-
"your",
|
|
29385
|
-
"operation",
|
|
29386
|
-
"isn't",
|
|
29387
|
-
"supported"
|
|
29388
|
-
],
|
|
29389
|
-
"useCases": [],
|
|
29390
|
-
"operations": [
|
|
29391
|
-
"",
|
|
29392
|
-
"what to do if your isn't supported"
|
|
29393
|
-
],
|
|
29394
|
-
"codeExamples": 0,
|
|
29395
|
-
"complexity": "intermediate",
|
|
29396
|
-
"readingTime": "2 min",
|
|
29397
|
-
"contentLength": 2171,
|
|
29398
|
-
"relatedPages": []
|
|
29399
|
-
},
|
|
29400
|
-
"searchIndex": {
|
|
29401
|
-
"fullText": "medium # medium node\n\nuse the medium node to automate work in medium, and integrate medium with other applications. n8n has built-in support for a wide range of medium features, including creating posts, and getting publications.\n\non this page, you'll find a list of operations the medium node supports and links to more resources.\n\nmedium api no longer supported\n\nmedium has stopped supporting the medium api. the medium node still appears within n8n, but you won't be able to configure new api keys to authenticate with.\n\nrefer to [medium credentials](../../credentials/medium/) for guidance on setting up existing api keys.\n\nthis node can be used as an ai tool\n\nthis node can be used to enhance the capabilities of an ai agent. when used in this way, many parameters can be set automatically, or with information directed by ai - find out more in the [ai tool parameters documentation](../../../../advanced-ai/examples/using-the-fromai-function/).\n\n## operations\n\n- post\n - create a post\n- publication\n - get all publications\n\n## templates and examples\n\n**cross-post your blog posts**\n\nby amudhan\n\n[view template details](https://n8n.io/workflows/418-cross-post-your-blog-posts/)\n\n**posting from wordpress to medium**\n\nby zacharia kimotho\n\n[view template details](https://n8n.io/workflows/2062-posting-from-wordpress-to-medium/)\n\n**publish a post to a publication on medium**\n\nby harshil agrawal\n\n[view template details](https://n8n.io/workflows/594-publish-a-post-to-a-publication-on-medium/)\n\n[browse medium integration templates](https://n8n.io/integrations/medium/), or [search all templates](https://n8n.io/workflows/)\n\n## what to do if your operation isn't supported\n\nif this node doesn't support the operation you want to do, you can use the [http request node](../../core-nodes/n8n-nodes-base.httprequest/) to call the service's api.\n\nyou can use the credential you created for this service in the http request node:\n\n1. in the http request node, select **authentication** > **predefined credential type**.\n1. select the service you want to connect to.\n1. select your credential.\n\nrefer to [custom api operations](../../../custom-operations/) for more information.\n medium node",
|
|
29402
|
-
"importantTerms": [
|
|
29403
|
-
"medium",
|
|
29404
|
-
"node",
|
|
29405
|
-
"this",
|
|
29406
|
-
"post",
|
|
29407
|
-
"https",
|
|
29408
|
-
"operations",
|
|
29409
|
-
"your",
|
|
29410
|
-
"workflows",
|
|
29411
|
-
"with",
|
|
29412
|
-
"posts",
|
|
29413
|
-
"more",
|
|
29414
|
-
"used",
|
|
29415
|
-
"publication",
|
|
29416
|
-
"templates",
|
|
29417
|
-
"view",
|
|
29418
|
-
"template",
|
|
29419
|
-
"details",
|
|
29420
|
-
"http",
|
|
29421
|
-
"request",
|
|
29422
|
-
"service",
|
|
29423
|
-
"credential",
|
|
29424
|
-
"select"
|
|
29425
|
-
]
|
|
29426
|
-
}
|
|
29427
|
-
},
|
|
29428
|
-
{
|
|
29429
|
-
"id": "page-0371",
|
|
29430
29358
|
"title": "MessageBird",
|
|
29431
29359
|
"url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.messagebird/index.md",
|
|
29432
29360
|
"urlPath": "integrations/builtin/app-nodes/n8n-nodes-base.messagebird/index.md",
|
|
@@ -29474,7 +29402,7 @@
|
|
|
29474
29402
|
}
|
|
29475
29403
|
},
|
|
29476
29404
|
{
|
|
29477
|
-
"id": "page-
|
|
29405
|
+
"id": "page-0371",
|
|
29478
29406
|
"title": "Metabase",
|
|
29479
29407
|
"url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.metabase/index.md",
|
|
29480
29408
|
"urlPath": "integrations/builtin/app-nodes/n8n-nodes-base.metabase/index.md",
|
|
@@ -29534,6 +29462,78 @@
|
|
|
29534
29462
|
]
|
|
29535
29463
|
}
|
|
29536
29464
|
},
|
|
29465
|
+
{
|
|
29466
|
+
"id": "page-0372",
|
|
29467
|
+
"title": "Medium",
|
|
29468
|
+
"url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.medium/index.md",
|
|
29469
|
+
"urlPath": "integrations/builtin/app-nodes/n8n-nodes-base.medium/index.md",
|
|
29470
|
+
"category": "integrations",
|
|
29471
|
+
"subcategory": "app-nodes",
|
|
29472
|
+
"nodeName": "medium",
|
|
29473
|
+
"nodeType": "n8n-nodes-base.medium",
|
|
29474
|
+
"content": {
|
|
29475
|
+
"markdown": "# Medium node\n\nUse the Medium node to automate work in Medium, and integrate Medium with other applications. n8n has built-in support for a wide range of Medium features, including creating posts, and getting publications.\n\nOn this page, you'll find a list of operations the Medium node supports and links to more resources.\n\nMedium API no longer supported\n\nMedium has stopped supporting the Medium API. The Medium node still appears within n8n, but you won't be able to configure new API keys to authenticate with.\n\nRefer to [Medium credentials](../../credentials/medium/) for guidance on setting up existing API keys.\n\nThis node can be used as an AI tool\n\nThis node can be used to enhance the capabilities of an AI agent. When used in this way, many parameters can be set automatically, or with information directed by AI - find out more in the [AI tool parameters documentation](../../../../advanced-ai/examples/using-the-fromai-function/).\n\n## Operations\n\n- Post\n - Create a post\n- Publication\n - Get all publications\n\n## Templates and examples\n\n**Cross-post your blog posts**\n\nby amudhan\n\n[View template details](https://n8n.io/workflows/418-cross-post-your-blog-posts/)\n\n**Posting from Wordpress to Medium**\n\nby Zacharia Kimotho\n\n[View template details](https://n8n.io/workflows/2062-posting-from-wordpress-to-medium/)\n\n**Publish a post to a publication on Medium**\n\nby Harshil Agrawal\n\n[View template details](https://n8n.io/workflows/594-publish-a-post-to-a-publication-on-medium/)\n\n[Browse Medium integration templates](https://n8n.io/integrations/medium/), or [search all templates](https://n8n.io/workflows/)\n\n## What to do if your operation isn't supported\n\nIf this node doesn't support the operation you want to do, you can use the [HTTP Request node](../../core-nodes/n8n-nodes-base.httprequest/) to call the service's API.\n\nYou can use the credential you created for this service in the HTTP Request node:\n\n1. In the HTTP Request node, select **Authentication** > **Predefined Credential Type**.\n1. Select the service you want to connect to.\n1. Select your credential.\n\nRefer to [Custom API operations](../../../custom-operations/) for more information.\n",
|
|
29476
|
+
"excerpt": "# Medium node Use the Medium node to automate work in Medium, and integrate Medium with other applications. n8n has built-in support for a wide range of Medium features, including creating posts, and getting publications. On this page, you'll find a list of operations the Medium node supports and links to more resources. Medium API no longer supported Medium has stopped supporting the Medium API. The Medium node still appears within n8n, but you won't be able to configure new API keys to aut...",
|
|
29477
|
+
"sections": [
|
|
29478
|
+
{
|
|
29479
|
+
"title": "Medium node",
|
|
29480
|
+
"level": 1,
|
|
29481
|
+
"content": "Use the Medium node to automate work in Medium, and integrate Medium with other applications. n8n has built-in support for a wide range of Medium features, including creating posts, and getting publications.\n\nOn this page, you'll find a list of operations the Medium node supports and links to more resources.\n\nMedium API no longer supported\n\nMedium has stopped supporting the Medium API. The Medium node still appears within n8n, but you won't be able to configure new API keys to authenticate with.\n\nRefer to [Medium credentials](../../credentials/medium/) for guidance on setting up existing API keys.\n\nThis node can be used as an AI tool\n\nThis node can be used to enhance the capabilities of an AI agent. When used in this way, many parameters can be set automatically, or with information directed by AI - find out more in the [AI tool parameters documentation](../../../../advanced-ai/examples/using-the-fromai-function/)."
|
|
29482
|
+
}
|
|
29483
|
+
]
|
|
29484
|
+
},
|
|
29485
|
+
"metadata": {
|
|
29486
|
+
"keywords": [
|
|
29487
|
+
"medium",
|
|
29488
|
+
"node",
|
|
29489
|
+
"operations",
|
|
29490
|
+
"templates",
|
|
29491
|
+
"examples",
|
|
29492
|
+
"what",
|
|
29493
|
+
"your",
|
|
29494
|
+
"operation",
|
|
29495
|
+
"isn't",
|
|
29496
|
+
"supported"
|
|
29497
|
+
],
|
|
29498
|
+
"useCases": [],
|
|
29499
|
+
"operations": [
|
|
29500
|
+
"",
|
|
29501
|
+
"what to do if your isn't supported"
|
|
29502
|
+
],
|
|
29503
|
+
"codeExamples": 0,
|
|
29504
|
+
"complexity": "intermediate",
|
|
29505
|
+
"readingTime": "2 min",
|
|
29506
|
+
"contentLength": 2171,
|
|
29507
|
+
"relatedPages": []
|
|
29508
|
+
},
|
|
29509
|
+
"searchIndex": {
|
|
29510
|
+
"fullText": "medium # medium node\n\nuse the medium node to automate work in medium, and integrate medium with other applications. n8n has built-in support for a wide range of medium features, including creating posts, and getting publications.\n\non this page, you'll find a list of operations the medium node supports and links to more resources.\n\nmedium api no longer supported\n\nmedium has stopped supporting the medium api. the medium node still appears within n8n, but you won't be able to configure new api keys to authenticate with.\n\nrefer to [medium credentials](../../credentials/medium/) for guidance on setting up existing api keys.\n\nthis node can be used as an ai tool\n\nthis node can be used to enhance the capabilities of an ai agent. when used in this way, many parameters can be set automatically, or with information directed by ai - find out more in the [ai tool parameters documentation](../../../../advanced-ai/examples/using-the-fromai-function/).\n\n## operations\n\n- post\n - create a post\n- publication\n - get all publications\n\n## templates and examples\n\n**cross-post your blog posts**\n\nby amudhan\n\n[view template details](https://n8n.io/workflows/418-cross-post-your-blog-posts/)\n\n**posting from wordpress to medium**\n\nby zacharia kimotho\n\n[view template details](https://n8n.io/workflows/2062-posting-from-wordpress-to-medium/)\n\n**publish a post to a publication on medium**\n\nby harshil agrawal\n\n[view template details](https://n8n.io/workflows/594-publish-a-post-to-a-publication-on-medium/)\n\n[browse medium integration templates](https://n8n.io/integrations/medium/), or [search all templates](https://n8n.io/workflows/)\n\n## what to do if your operation isn't supported\n\nif this node doesn't support the operation you want to do, you can use the [http request node](../../core-nodes/n8n-nodes-base.httprequest/) to call the service's api.\n\nyou can use the credential you created for this service in the http request node:\n\n1. in the http request node, select **authentication** > **predefined credential type**.\n1. select the service you want to connect to.\n1. select your credential.\n\nrefer to [custom api operations](../../../custom-operations/) for more information.\n medium node",
|
|
29511
|
+
"importantTerms": [
|
|
29512
|
+
"medium",
|
|
29513
|
+
"node",
|
|
29514
|
+
"this",
|
|
29515
|
+
"post",
|
|
29516
|
+
"https",
|
|
29517
|
+
"operations",
|
|
29518
|
+
"your",
|
|
29519
|
+
"workflows",
|
|
29520
|
+
"with",
|
|
29521
|
+
"posts",
|
|
29522
|
+
"more",
|
|
29523
|
+
"used",
|
|
29524
|
+
"publication",
|
|
29525
|
+
"templates",
|
|
29526
|
+
"view",
|
|
29527
|
+
"template",
|
|
29528
|
+
"details",
|
|
29529
|
+
"http",
|
|
29530
|
+
"request",
|
|
29531
|
+
"service",
|
|
29532
|
+
"credential",
|
|
29533
|
+
"select"
|
|
29534
|
+
]
|
|
29535
|
+
}
|
|
29536
|
+
},
|
|
29537
29537
|
{
|
|
29538
29538
|
"id": "page-0373",
|
|
29539
29539
|
"title": "Microsoft Dynamics CRM",
|
|
@@ -86144,6 +86144,73 @@
|
|
|
86144
86144
|
},
|
|
86145
86145
|
{
|
|
86146
86146
|
"id": "page-1179",
|
|
86147
|
+
"title": "Install private nodes",
|
|
86148
|
+
"url": "https://docs.n8n.io/integrations/creating-nodes/deploy/install-private-nodes/index.md",
|
|
86149
|
+
"urlPath": "integrations/creating-nodes/deploy/install-private-nodes/index.md",
|
|
86150
|
+
"category": "other",
|
|
86151
|
+
"subcategory": null,
|
|
86152
|
+
"nodeName": null,
|
|
86153
|
+
"nodeType": null,
|
|
86154
|
+
"content": {
|
|
86155
|
+
"markdown": "# Install private nodes\n\nYou can build your own nodes and install them in your n8n instance without publishing them on npm. This is useful for nodes that you create for internal use only at your company.\n\n## Install your node in a Docker n8n instance\n\nIf you're running n8n using Docker, you need to create a Docker image with the node installed in n8n.\n\n1. Create a Dockerfile and paste the code from [this Dockerfile](https://github.com/n8n-io/n8n/blob/master/docker/images/n8n/Dockerfile).\n\n Your Dockerfile should look like this:\n\n ```\n FROM node:16-alpine\n\n ARG N8N_VERSION\n\n RUN if [ -z \"$N8N_VERSION\" ] ; then echo \"The N8N_VERSION argument is missing!\" ; exit 1; fi\n\n # Update everything and install needed dependencies\n RUN apk add --update graphicsmagick tzdata git tini su-exec\n\n # Set a custom user to not have n8n run as root\n USER root\n\n # Install n8n and the packages it needs to build it correctly.\n RUN apk --update add --virtual build-dependencies python3 build-base ca-certificates && \\\n \tnpm config set python \"$(which python3)\" && \\\n \tnpm_config_user=root npm install -g full-icu n8n@${N8N_VERSION} && \\\n \tapk del build-dependencies \\\n \t&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root;\n\n\n # Install fonts\n RUN apk --no-cache add --virtual fonts msttcorefonts-installer fontconfig && \\\n \tupdate-ms-fonts && \\\n \tfc-cache -f && \\\n \tapk del fonts && \\\n \tfind /usr/share/fonts/truetype/msttcorefonts/ -type l -exec unlink {} \\; \\\n \t&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root\n\n ENV NODE_ICU_DATA /usr/local/lib/node_modules/full-icu\n\n WORKDIR /data\n\n COPY docker-entrypoint.sh /docker-entrypoint.sh\n ENTRYPOINT [\"tini\", \"--\", \"/docker-entrypoint.sh\"]\n\n EXPOSE 5678/tcp\n ```\n\n1. Compile your custom node code (`npm run build` if you are using nodes starter). Copy the **node** and **credential** folders from within the **dist** folder into your container's `~/.n8n/custom/` directory. This makes them available to Docker.\n\n1. Download the [docker-entrypoint.sh](https://github.com/n8n-io/n8n/blob/master/docker/images/n8n/docker-entrypoint.sh) file, and place it in the same directory as your Dockerfile.\n\n1. Build your Docker image:\n\n ```\n # Replace <n8n-version-number> with the n8n release version number. \n # For example, N8N_VERSION=0.177.0\n docker build --build-arg N8N_VERSION=<n8n-version-number> --tag=customizedn8n .\n ```\n\nYou can now use your node in Docker.\n\n## Install your node in a global n8n instance\n\nIf you've installed n8n globally, make sure that you install your node inside n8n. n8n will find the module and load it automatically.\n",
|
|
86156
|
+
"excerpt": "# Install private nodes You can build your own nodes and install them in your n8n instance without publishing them on npm. This is useful for nodes that you create for internal use only at your company. ## Install your node in a Docker n8n instance If you're running n8n using Docker, you need to create a Docker image with the node installed in n8n. 1. Create a Dockerfile and paste the code from [this Dockerfile](https://github.com/n8n-io/n8n/blob/master/docker/images/n8n/Dockerfile). You...",
|
|
86157
|
+
"sections": [
|
|
86158
|
+
{
|
|
86159
|
+
"title": "Install private nodes",
|
|
86160
|
+
"level": 1,
|
|
86161
|
+
"content": "You can build your own nodes and install them in your n8n instance without publishing them on npm. This is useful for nodes that you create for internal use only at your company."
|
|
86162
|
+
}
|
|
86163
|
+
]
|
|
86164
|
+
},
|
|
86165
|
+
"metadata": {
|
|
86166
|
+
"keywords": [
|
|
86167
|
+
"install",
|
|
86168
|
+
"private",
|
|
86169
|
+
"nodes",
|
|
86170
|
+
"your",
|
|
86171
|
+
"node",
|
|
86172
|
+
"docker",
|
|
86173
|
+
"instance",
|
|
86174
|
+
"global"
|
|
86175
|
+
],
|
|
86176
|
+
"useCases": [],
|
|
86177
|
+
"operations": [],
|
|
86178
|
+
"codeExamples": 2,
|
|
86179
|
+
"complexity": "beginner",
|
|
86180
|
+
"readingTime": "2 min",
|
|
86181
|
+
"contentLength": 2654,
|
|
86182
|
+
"relatedPages": []
|
|
86183
|
+
},
|
|
86184
|
+
"searchIndex": {
|
|
86185
|
+
"fullText": "install private nodes # install private nodes\n\nyou can build your own nodes and install them in your n8n instance without publishing them on npm. this is useful for nodes that you create for internal use only at your company.\n\n## install your node in a docker n8n instance\n\nif you're running n8n using docker, you need to create a docker image with the node installed in n8n.\n\n1. create a dockerfile and paste the code from [this dockerfile](https://github.com/n8n-io/n8n/blob/master/docker/images/n8n/dockerfile).\n\n your dockerfile should look like this:\n\n ```\n from node:16-alpine\n\n arg n8n_version\n\n run if [ -z \"$n8n_version\" ] ; then echo \"the n8n_version argument is missing!\" ; exit 1; fi\n\n # update everything and install needed dependencies\n run apk add --update graphicsmagick tzdata git tini su-exec\n\n # set a custom user to not have n8n run as root\n user root\n\n # install n8n and the packages it needs to build it correctly.\n run apk --update add --virtual build-dependencies python3 build-base ca-certificates && \\\n \tnpm config set python \"$(which python3)\" && \\\n \tnpm_config_user=root npm install -g full-icu n8n@${n8n_version} && \\\n \tapk del build-dependencies \\\n \t&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root;\n\n\n # install fonts\n run apk --no-cache add --virtual fonts msttcorefonts-installer fontconfig && \\\n \tupdate-ms-fonts && \\\n \tfc-cache -f && \\\n \tapk del fonts && \\\n \tfind /usr/share/fonts/truetype/msttcorefonts/ -type l -exec unlink {} \\; \\\n \t&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root\n\n env node_icu_data /usr/local/lib/node_modules/full-icu\n\n workdir /data\n\n copy docker-entrypoint.sh /docker-entrypoint.sh\n entrypoint [\"tini\", \"--\", \"/docker-entrypoint.sh\"]\n\n expose 5678/tcp\n ```\n\n1. compile your custom node code (`npm run build` if you are using nodes starter). copy the **node** and **credential** folders from within the **dist** folder into your container's `~/.n8n/custom/` directory. this makes them available to docker.\n\n1. download the [docker-entrypoint.sh](https://github.com/n8n-io/n8n/blob/master/docker/images/n8n/docker-entrypoint.sh) file, and place it in the same directory as your dockerfile.\n\n1. build your docker image:\n\n ```\n # replace <n8n-version-number> with the n8n release version number. \n # for example, n8n_version=0.177.0\n docker build --build-arg n8n_version=<n8n-version-number> --tag=customizedn8n .\n ```\n\nyou can now use your node in docker.\n\n## install your node in a global n8n instance\n\nif you've installed n8n globally, make sure that you install your node inside n8n. n8n will find the module and load it automatically.\n install private nodes",
|
|
86186
|
+
"importantTerms": [
|
|
86187
|
+
"docker",
|
|
86188
|
+
"your",
|
|
86189
|
+
"install",
|
|
86190
|
+
"build",
|
|
86191
|
+
"node",
|
|
86192
|
+
"root",
|
|
86193
|
+
"nodes",
|
|
86194
|
+
"entrypoint",
|
|
86195
|
+
"dockerfile",
|
|
86196
|
+
"fonts",
|
|
86197
|
+
"this",
|
|
86198
|
+
"update",
|
|
86199
|
+
"cache",
|
|
86200
|
+
"private",
|
|
86201
|
+
"them",
|
|
86202
|
+
"instance",
|
|
86203
|
+
"create",
|
|
86204
|
+
"from",
|
|
86205
|
+
"dependencies",
|
|
86206
|
+
"custom",
|
|
86207
|
+
"version",
|
|
86208
|
+
"number"
|
|
86209
|
+
]
|
|
86210
|
+
}
|
|
86211
|
+
},
|
|
86212
|
+
{
|
|
86213
|
+
"id": "page-1180",
|
|
86147
86214
|
"title": "Submit community nodes",
|
|
86148
86215
|
"url": "https://docs.n8n.io/integrations/creating-nodes/deploy/submit-community-nodes/index.md",
|
|
86149
86216
|
"urlPath": "integrations/creating-nodes/deploy/submit-community-nodes/index.md",
|
|
@@ -86237,7 +86304,7 @@
|
|
|
86237
86304
|
}
|
|
86238
86305
|
},
|
|
86239
86306
|
{
|
|
86240
|
-
"id": "page-
|
|
86307
|
+
"id": "page-1181",
|
|
86241
86308
|
"title": "Plan a node",
|
|
86242
86309
|
"url": "https://docs.n8n.io/integrations/creating-nodes/plan/index.md",
|
|
86243
86310
|
"urlPath": "integrations/creating-nodes/plan/index.md",
|
|
@@ -86280,73 +86347,6 @@
|
|
|
86280
86347
|
]
|
|
86281
86348
|
}
|
|
86282
86349
|
},
|
|
86283
|
-
{
|
|
86284
|
-
"id": "page-1181",
|
|
86285
|
-
"title": "Install private nodes",
|
|
86286
|
-
"url": "https://docs.n8n.io/integrations/creating-nodes/deploy/install-private-nodes/index.md",
|
|
86287
|
-
"urlPath": "integrations/creating-nodes/deploy/install-private-nodes/index.md",
|
|
86288
|
-
"category": "other",
|
|
86289
|
-
"subcategory": null,
|
|
86290
|
-
"nodeName": null,
|
|
86291
|
-
"nodeType": null,
|
|
86292
|
-
"content": {
|
|
86293
|
-
"markdown": "# Install private nodes\n\nYou can build your own nodes and install them in your n8n instance without publishing them on npm. This is useful for nodes that you create for internal use only at your company.\n\n## Install your node in a Docker n8n instance\n\nIf you're running n8n using Docker, you need to create a Docker image with the node installed in n8n.\n\n1. Create a Dockerfile and paste the code from [this Dockerfile](https://github.com/n8n-io/n8n/blob/master/docker/images/n8n/Dockerfile).\n\n Your Dockerfile should look like this:\n\n ```\n FROM node:16-alpine\n\n ARG N8N_VERSION\n\n RUN if [ -z \"$N8N_VERSION\" ] ; then echo \"The N8N_VERSION argument is missing!\" ; exit 1; fi\n\n # Update everything and install needed dependencies\n RUN apk add --update graphicsmagick tzdata git tini su-exec\n\n # Set a custom user to not have n8n run as root\n USER root\n\n # Install n8n and the packages it needs to build it correctly.\n RUN apk --update add --virtual build-dependencies python3 build-base ca-certificates && \\\n \tnpm config set python \"$(which python3)\" && \\\n \tnpm_config_user=root npm install -g full-icu n8n@${N8N_VERSION} && \\\n \tapk del build-dependencies \\\n \t&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root;\n\n\n # Install fonts\n RUN apk --no-cache add --virtual fonts msttcorefonts-installer fontconfig && \\\n \tupdate-ms-fonts && \\\n \tfc-cache -f && \\\n \tapk del fonts && \\\n \tfind /usr/share/fonts/truetype/msttcorefonts/ -type l -exec unlink {} \\; \\\n \t&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root\n\n ENV NODE_ICU_DATA /usr/local/lib/node_modules/full-icu\n\n WORKDIR /data\n\n COPY docker-entrypoint.sh /docker-entrypoint.sh\n ENTRYPOINT [\"tini\", \"--\", \"/docker-entrypoint.sh\"]\n\n EXPOSE 5678/tcp\n ```\n\n1. Compile your custom node code (`npm run build` if you are using nodes starter). Copy the **node** and **credential** folders from within the **dist** folder into your container's `~/.n8n/custom/` directory. This makes them available to Docker.\n\n1. Download the [docker-entrypoint.sh](https://github.com/n8n-io/n8n/blob/master/docker/images/n8n/docker-entrypoint.sh) file, and place it in the same directory as your Dockerfile.\n\n1. Build your Docker image:\n\n ```\n # Replace <n8n-version-number> with the n8n release version number. \n # For example, N8N_VERSION=0.177.0\n docker build --build-arg N8N_VERSION=<n8n-version-number> --tag=customizedn8n .\n ```\n\nYou can now use your node in Docker.\n\n## Install your node in a global n8n instance\n\nIf you've installed n8n globally, make sure that you install your node inside n8n. n8n will find the module and load it automatically.\n",
|
|
86294
|
-
"excerpt": "# Install private nodes You can build your own nodes and install them in your n8n instance without publishing them on npm. This is useful for nodes that you create for internal use only at your company. ## Install your node in a Docker n8n instance If you're running n8n using Docker, you need to create a Docker image with the node installed in n8n. 1. Create a Dockerfile and paste the code from [this Dockerfile](https://github.com/n8n-io/n8n/blob/master/docker/images/n8n/Dockerfile). You...",
|
|
86295
|
-
"sections": [
|
|
86296
|
-
{
|
|
86297
|
-
"title": "Install private nodes",
|
|
86298
|
-
"level": 1,
|
|
86299
|
-
"content": "You can build your own nodes and install them in your n8n instance without publishing them on npm. This is useful for nodes that you create for internal use only at your company."
|
|
86300
|
-
}
|
|
86301
|
-
]
|
|
86302
|
-
},
|
|
86303
|
-
"metadata": {
|
|
86304
|
-
"keywords": [
|
|
86305
|
-
"install",
|
|
86306
|
-
"private",
|
|
86307
|
-
"nodes",
|
|
86308
|
-
"your",
|
|
86309
|
-
"node",
|
|
86310
|
-
"docker",
|
|
86311
|
-
"instance",
|
|
86312
|
-
"global"
|
|
86313
|
-
],
|
|
86314
|
-
"useCases": [],
|
|
86315
|
-
"operations": [],
|
|
86316
|
-
"codeExamples": 2,
|
|
86317
|
-
"complexity": "beginner",
|
|
86318
|
-
"readingTime": "2 min",
|
|
86319
|
-
"contentLength": 2654,
|
|
86320
|
-
"relatedPages": []
|
|
86321
|
-
},
|
|
86322
|
-
"searchIndex": {
|
|
86323
|
-
"fullText": "install private nodes # install private nodes\n\nyou can build your own nodes and install them in your n8n instance without publishing them on npm. this is useful for nodes that you create for internal use only at your company.\n\n## install your node in a docker n8n instance\n\nif you're running n8n using docker, you need to create a docker image with the node installed in n8n.\n\n1. create a dockerfile and paste the code from [this dockerfile](https://github.com/n8n-io/n8n/blob/master/docker/images/n8n/dockerfile).\n\n your dockerfile should look like this:\n\n ```\n from node:16-alpine\n\n arg n8n_version\n\n run if [ -z \"$n8n_version\" ] ; then echo \"the n8n_version argument is missing!\" ; exit 1; fi\n\n # update everything and install needed dependencies\n run apk add --update graphicsmagick tzdata git tini su-exec\n\n # set a custom user to not have n8n run as root\n user root\n\n # install n8n and the packages it needs to build it correctly.\n run apk --update add --virtual build-dependencies python3 build-base ca-certificates && \\\n \tnpm config set python \"$(which python3)\" && \\\n \tnpm_config_user=root npm install -g full-icu n8n@${n8n_version} && \\\n \tapk del build-dependencies \\\n \t&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root;\n\n\n # install fonts\n run apk --no-cache add --virtual fonts msttcorefonts-installer fontconfig && \\\n \tupdate-ms-fonts && \\\n \tfc-cache -f && \\\n \tapk del fonts && \\\n \tfind /usr/share/fonts/truetype/msttcorefonts/ -type l -exec unlink {} \\; \\\n \t&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root\n\n env node_icu_data /usr/local/lib/node_modules/full-icu\n\n workdir /data\n\n copy docker-entrypoint.sh /docker-entrypoint.sh\n entrypoint [\"tini\", \"--\", \"/docker-entrypoint.sh\"]\n\n expose 5678/tcp\n ```\n\n1. compile your custom node code (`npm run build` if you are using nodes starter). copy the **node** and **credential** folders from within the **dist** folder into your container's `~/.n8n/custom/` directory. this makes them available to docker.\n\n1. download the [docker-entrypoint.sh](https://github.com/n8n-io/n8n/blob/master/docker/images/n8n/docker-entrypoint.sh) file, and place it in the same directory as your dockerfile.\n\n1. build your docker image:\n\n ```\n # replace <n8n-version-number> with the n8n release version number. \n # for example, n8n_version=0.177.0\n docker build --build-arg n8n_version=<n8n-version-number> --tag=customizedn8n .\n ```\n\nyou can now use your node in docker.\n\n## install your node in a global n8n instance\n\nif you've installed n8n globally, make sure that you install your node inside n8n. n8n will find the module and load it automatically.\n install private nodes",
|
|
86324
|
-
"importantTerms": [
|
|
86325
|
-
"docker",
|
|
86326
|
-
"your",
|
|
86327
|
-
"install",
|
|
86328
|
-
"build",
|
|
86329
|
-
"node",
|
|
86330
|
-
"root",
|
|
86331
|
-
"nodes",
|
|
86332
|
-
"entrypoint",
|
|
86333
|
-
"dockerfile",
|
|
86334
|
-
"fonts",
|
|
86335
|
-
"this",
|
|
86336
|
-
"update",
|
|
86337
|
-
"cache",
|
|
86338
|
-
"private",
|
|
86339
|
-
"them",
|
|
86340
|
-
"instance",
|
|
86341
|
-
"create",
|
|
86342
|
-
"from",
|
|
86343
|
-
"dependencies",
|
|
86344
|
-
"custom",
|
|
86345
|
-
"version",
|
|
86346
|
-
"number"
|
|
86347
|
-
]
|
|
86348
|
-
}
|
|
86349
|
-
},
|
|
86350
86350
|
{
|
|
86351
86351
|
"id": "page-1182",
|
|
86352
86352
|
"title": "Choose a node building style",
|
|
@@ -92421,7 +92421,7 @@
|
|
|
92421
92421
|
"page-0208"
|
|
92422
92422
|
],
|
|
92423
92423
|
"2022": [
|
|
92424
|
-
"page-
|
|
92424
|
+
"page-0132"
|
|
92425
92425
|
],
|
|
92426
92426
|
"12345678": [
|
|
92427
92427
|
"page-0204"
|
|
@@ -92501,7 +92501,7 @@
|
|
|
92501
92501
|
"page-0002",
|
|
92502
92502
|
"page-0003",
|
|
92503
92503
|
"page-0013",
|
|
92504
|
-
"page-
|
|
92504
|
+
"page-0133",
|
|
92505
92505
|
"page-0149",
|
|
92506
92506
|
"page-0208",
|
|
92507
92507
|
"page-0531",
|
|
@@ -92525,7 +92525,7 @@
|
|
|
92525
92525
|
"page-0086",
|
|
92526
92526
|
"page-0097",
|
|
92527
92527
|
"page-0101",
|
|
92528
|
-
"page-
|
|
92528
|
+
"page-0104",
|
|
92529
92529
|
"page-0108",
|
|
92530
92530
|
"page-0130",
|
|
92531
92531
|
"page-0148",
|
|
@@ -92582,8 +92582,8 @@
|
|
|
92582
92582
|
"page-0097",
|
|
92583
92583
|
"page-0099",
|
|
92584
92584
|
"page-0101",
|
|
92585
|
+
"page-0104",
|
|
92585
92586
|
"page-0105",
|
|
92586
|
-
"page-0106",
|
|
92587
92587
|
"page-0108",
|
|
92588
92588
|
"page-0111",
|
|
92589
92589
|
"page-0143",
|
|
@@ -93316,7 +93316,7 @@
|
|
|
93316
93316
|
"page-0522",
|
|
93317
93317
|
"page-0632",
|
|
93318
93318
|
"page-0636",
|
|
93319
|
-
"page-
|
|
93319
|
+
"page-1179"
|
|
93320
93320
|
],
|
|
93321
93321
|
"permissions": [
|
|
93322
93322
|
"page-0002",
|
|
@@ -93386,7 +93386,7 @@
|
|
|
93386
93386
|
"page-0093",
|
|
93387
93387
|
"page-0094",
|
|
93388
93388
|
"page-0096",
|
|
93389
|
-
"page-
|
|
93389
|
+
"page-0136",
|
|
93390
93390
|
"page-0139",
|
|
93391
93391
|
"page-0141",
|
|
93392
93392
|
"page-0146",
|
|
@@ -93442,7 +93442,7 @@
|
|
|
93442
93442
|
"page-0006",
|
|
93443
93443
|
"page-0100",
|
|
93444
93444
|
"page-0112",
|
|
93445
|
-
"page-
|
|
93445
|
+
"page-0131",
|
|
93446
93446
|
"page-0682",
|
|
93447
93447
|
"page-0692",
|
|
93448
93448
|
"page-0713",
|
|
@@ -93562,7 +93562,7 @@
|
|
|
93562
93562
|
"page-0097",
|
|
93563
93563
|
"page-0098",
|
|
93564
93564
|
"page-0101",
|
|
93565
|
-
"page-
|
|
93565
|
+
"page-0105",
|
|
93566
93566
|
"page-0130",
|
|
93567
93567
|
"page-0143",
|
|
93568
93568
|
"page-0144",
|
|
@@ -93598,7 +93598,7 @@
|
|
|
93598
93598
|
"page-1166",
|
|
93599
93599
|
"page-1170",
|
|
93600
93600
|
"page-1179",
|
|
93601
|
-
"page-
|
|
93601
|
+
"page-1180",
|
|
93602
93602
|
"page-1183",
|
|
93603
93603
|
"page-1204",
|
|
93604
93604
|
"page-1205",
|
|
@@ -93615,7 +93615,7 @@
|
|
|
93615
93615
|
"page-0087",
|
|
93616
93616
|
"page-0112",
|
|
93617
93617
|
"page-0117",
|
|
93618
|
-
"page-
|
|
93618
|
+
"page-0132",
|
|
93619
93619
|
"page-0520",
|
|
93620
93620
|
"page-0649",
|
|
93621
93621
|
"page-0660",
|
|
@@ -93635,8 +93635,8 @@
|
|
|
93635
93635
|
],
|
|
93636
93636
|
"functions": [
|
|
93637
93637
|
"page-0002",
|
|
93638
|
-
"page-
|
|
93639
|
-
"page-
|
|
93638
|
+
"page-0131",
|
|
93639
|
+
"page-0134",
|
|
93640
93640
|
"page-0563",
|
|
93641
93641
|
"page-1205"
|
|
93642
93642
|
],
|
|
@@ -93674,10 +93674,10 @@
|
|
|
93674
93674
|
"page-0101",
|
|
93675
93675
|
"page-0102",
|
|
93676
93676
|
"page-0103",
|
|
93677
|
-
"page-
|
|
93677
|
+
"page-0106",
|
|
93678
93678
|
"page-0107",
|
|
93679
93679
|
"page-0130",
|
|
93680
|
-
"page-
|
|
93680
|
+
"page-0135",
|
|
93681
93681
|
"page-0141",
|
|
93682
93682
|
"page-0144",
|
|
93683
93683
|
"page-0146",
|
|
@@ -93942,7 +93942,7 @@
|
|
|
93942
93942
|
],
|
|
93943
93943
|
"behavior": [
|
|
93944
93944
|
"page-0003",
|
|
93945
|
-
"page-
|
|
93945
|
+
"page-0132",
|
|
93946
93946
|
"page-0662",
|
|
93947
93947
|
"page-0680"
|
|
93948
93948
|
],
|
|
@@ -93999,7 +93999,7 @@
|
|
|
93999
93999
|
"page-0097",
|
|
94000
94000
|
"page-0100",
|
|
94001
94001
|
"page-0110",
|
|
94002
|
-
"page-
|
|
94002
|
+
"page-0132",
|
|
94003
94003
|
"page-0144",
|
|
94004
94004
|
"page-0203",
|
|
94005
94005
|
"page-0208",
|
|
@@ -94068,7 +94068,7 @@
|
|
|
94068
94068
|
"page-0014",
|
|
94069
94069
|
"page-0084",
|
|
94070
94070
|
"page-1146",
|
|
94071
|
-
"page-
|
|
94071
|
+
"page-1180",
|
|
94072
94072
|
"page-1244"
|
|
94073
94073
|
],
|
|
94074
94074
|
"workflows": [
|
|
@@ -94151,7 +94151,7 @@
|
|
|
94151
94151
|
"environment": [
|
|
94152
94152
|
"page-0003",
|
|
94153
94153
|
"page-0010",
|
|
94154
|
-
"page-
|
|
94154
|
+
"page-0134",
|
|
94155
94155
|
"page-0155",
|
|
94156
94156
|
"page-0172",
|
|
94157
94157
|
"page-0173",
|
|
@@ -94475,7 +94475,7 @@
|
|
|
94475
94475
|
"page-0014",
|
|
94476
94476
|
"page-0018",
|
|
94477
94477
|
"page-0046",
|
|
94478
|
-
"page-
|
|
94478
|
+
"page-0134",
|
|
94479
94479
|
"page-0193",
|
|
94480
94480
|
"page-0548",
|
|
94481
94481
|
"page-0662",
|
|
@@ -94868,7 +94868,7 @@
|
|
|
94868
94868
|
"page-0006",
|
|
94869
94869
|
"page-0035",
|
|
94870
94870
|
"page-0041",
|
|
94871
|
-
"page-
|
|
94871
|
+
"page-0137",
|
|
94872
94872
|
"page-0208",
|
|
94873
94873
|
"page-0215",
|
|
94874
94874
|
"page-0550",
|
|
@@ -94906,7 +94906,7 @@
|
|
|
94906
94906
|
"configuration": [
|
|
94907
94907
|
"page-0003",
|
|
94908
94908
|
"page-0005",
|
|
94909
|
-
"page-
|
|
94909
|
+
"page-0134",
|
|
94910
94910
|
"page-0155",
|
|
94911
94911
|
"page-0159",
|
|
94912
94912
|
"page-0200",
|
|
@@ -94988,7 +94988,7 @@
|
|
|
94988
94988
|
"files": [
|
|
94989
94989
|
"page-0003",
|
|
94990
94990
|
"page-0093",
|
|
94991
|
-
"page-
|
|
94991
|
+
"page-0134",
|
|
94992
94992
|
"page-0155",
|
|
94993
94993
|
"page-0202",
|
|
94994
94994
|
"page-0203",
|
|
@@ -95028,7 +95028,7 @@
|
|
|
95028
95028
|
"page-0005",
|
|
95029
95029
|
"page-0013",
|
|
95030
95030
|
"page-0051",
|
|
95031
|
-
"page-
|
|
95031
|
+
"page-0134",
|
|
95032
95032
|
"page-0157",
|
|
95033
95033
|
"page-0167",
|
|
95034
95034
|
"page-0180",
|
|
@@ -95046,12 +95046,12 @@
|
|
|
95046
95046
|
],
|
|
95047
95047
|
"hooks": [
|
|
95048
95048
|
"page-0003",
|
|
95049
|
-
"page-
|
|
95049
|
+
"page-0134",
|
|
95050
95050
|
"page-0181"
|
|
95051
95051
|
],
|
|
95052
95052
|
"frontend": [
|
|
95053
95053
|
"page-0003",
|
|
95054
|
-
"page-
|
|
95054
|
+
"page-0134"
|
|
95055
95055
|
],
|
|
95056
95056
|
"release": [
|
|
95057
95057
|
"page-0003",
|
|
@@ -95189,7 +95189,7 @@
|
|
|
95189
95189
|
"page-0364",
|
|
95190
95190
|
"page-0368",
|
|
95191
95191
|
"page-0369",
|
|
95192
|
-
"page-
|
|
95192
|
+
"page-0371",
|
|
95193
95193
|
"page-0372",
|
|
95194
95194
|
"page-0373",
|
|
95195
95195
|
"page-0374",
|
|
@@ -95280,7 +95280,7 @@
|
|
|
95280
95280
|
"page-1158",
|
|
95281
95281
|
"page-1159",
|
|
95282
95282
|
"page-1179",
|
|
95283
|
-
"page-
|
|
95283
|
+
"page-1180",
|
|
95284
95284
|
"page-1182",
|
|
95285
95285
|
"page-1184",
|
|
95286
95286
|
"page-1187",
|
|
@@ -95460,7 +95460,7 @@
|
|
|
95460
95460
|
"list": [
|
|
95461
95461
|
"page-0005",
|
|
95462
95462
|
"page-0018",
|
|
95463
|
-
"page-
|
|
95463
|
+
"page-0131",
|
|
95464
95464
|
"page-0461",
|
|
95465
95465
|
"page-0491",
|
|
95466
95466
|
"page-0532",
|
|
@@ -95493,7 +95493,7 @@
|
|
|
95493
95493
|
"page-0014",
|
|
95494
95494
|
"page-0022",
|
|
95495
95495
|
"page-0100",
|
|
95496
|
-
"page-
|
|
95496
|
+
"page-0136",
|
|
95497
95497
|
"page-0151",
|
|
95498
95498
|
"page-0153",
|
|
95499
95499
|
"page-0166",
|
|
@@ -95853,8 +95853,8 @@
|
|
|
95853
95853
|
"page-0068",
|
|
95854
95854
|
"page-0097",
|
|
95855
95855
|
"page-0100",
|
|
95856
|
-
"page-
|
|
95857
|
-
"page-
|
|
95856
|
+
"page-0134",
|
|
95857
|
+
"page-0136",
|
|
95858
95858
|
"page-0141",
|
|
95859
95859
|
"page-0143",
|
|
95860
95860
|
"page-0196",
|
|
@@ -96206,7 +96206,7 @@
|
|
|
96206
96206
|
"page-0099",
|
|
96207
96207
|
"page-0130",
|
|
96208
96208
|
"page-0131",
|
|
96209
|
-
"page-
|
|
96209
|
+
"page-0132",
|
|
96210
96210
|
"page-0145",
|
|
96211
96211
|
"page-0149",
|
|
96212
96212
|
"page-0171",
|
|
@@ -96459,7 +96459,7 @@
|
|
|
96459
96459
|
"credential": [
|
|
96460
96460
|
"page-0006",
|
|
96461
96461
|
"page-0013",
|
|
96462
|
-
"page-
|
|
96462
|
+
"page-0134",
|
|
96463
96463
|
"page-0166",
|
|
96464
96464
|
"page-0230",
|
|
96465
96465
|
"page-0231",
|
|
@@ -96493,7 +96493,7 @@
|
|
|
96493
96493
|
"page-0006",
|
|
96494
96494
|
"page-0018",
|
|
96495
96495
|
"page-0071",
|
|
96496
|
-
"page-
|
|
96496
|
+
"page-0136",
|
|
96497
96497
|
"page-0703",
|
|
96498
96498
|
"page-1158",
|
|
96499
96499
|
"page-1188",
|
|
@@ -96766,7 +96766,7 @@
|
|
|
96766
96766
|
],
|
|
96767
96767
|
"time": [
|
|
96768
96768
|
"page-0007",
|
|
96769
|
-
"page-
|
|
96769
|
+
"page-0132",
|
|
96770
96770
|
"page-0520",
|
|
96771
96771
|
"page-0649",
|
|
96772
96772
|
"page-0660",
|
|
@@ -96776,7 +96776,7 @@
|
|
|
96776
96776
|
"page-0714",
|
|
96777
96777
|
"page-1142",
|
|
96778
96778
|
"page-1146",
|
|
96779
|
-
"page-
|
|
96779
|
+
"page-1180",
|
|
96780
96780
|
"page-1205",
|
|
96781
96781
|
"page-1245"
|
|
96782
96782
|
],
|
|
@@ -96788,7 +96788,7 @@
|
|
|
96788
96788
|
"page-0018",
|
|
96789
96789
|
"page-0021",
|
|
96790
96790
|
"page-0080",
|
|
96791
|
-
"page-
|
|
96791
|
+
"page-0132",
|
|
96792
96792
|
"page-0157",
|
|
96793
96793
|
"page-0431",
|
|
96794
96794
|
"page-0546",
|
|
@@ -96864,7 +96864,7 @@
|
|
|
96864
96864
|
],
|
|
96865
96865
|
"collection": [
|
|
96866
96866
|
"page-0007",
|
|
96867
|
-
"page-
|
|
96867
|
+
"page-0131",
|
|
96868
96868
|
"page-0228",
|
|
96869
96869
|
"page-0551",
|
|
96870
96870
|
"page-0553",
|
|
@@ -97023,7 +97023,7 @@
|
|
|
97023
97023
|
"page-1153",
|
|
97024
97024
|
"page-1170",
|
|
97025
97025
|
"page-1171",
|
|
97026
|
-
"page-
|
|
97026
|
+
"page-1180",
|
|
97027
97027
|
"page-1204",
|
|
97028
97028
|
"page-1205"
|
|
97029
97029
|
],
|
|
@@ -97160,7 +97160,7 @@
|
|
|
97160
97160
|
"page-0057",
|
|
97161
97161
|
"page-0058",
|
|
97162
97162
|
"page-0099",
|
|
97163
|
-
"page-
|
|
97163
|
+
"page-0134",
|
|
97164
97164
|
"page-0153",
|
|
97165
97165
|
"page-0155",
|
|
97166
97166
|
"page-0172",
|
|
@@ -97296,7 +97296,7 @@
|
|
|
97296
97296
|
"page-0018",
|
|
97297
97297
|
"page-0027",
|
|
97298
97298
|
"page-0059",
|
|
97299
|
-
"page-
|
|
97299
|
+
"page-0104",
|
|
97300
97300
|
"page-1196",
|
|
97301
97301
|
"page-1214"
|
|
97302
97302
|
],
|
|
@@ -97358,7 +97358,7 @@
|
|
|
97358
97358
|
"page-0638",
|
|
97359
97359
|
"page-0756",
|
|
97360
97360
|
"page-0902",
|
|
97361
|
-
"page-
|
|
97361
|
+
"page-1179",
|
|
97362
97362
|
"page-1190",
|
|
97363
97363
|
"page-1198",
|
|
97364
97364
|
"page-1205",
|
|
@@ -97563,7 +97563,7 @@
|
|
|
97563
97563
|
"page-0013",
|
|
97564
97564
|
"page-0021",
|
|
97565
97565
|
"page-0069",
|
|
97566
|
-
"page-
|
|
97566
|
+
"page-0134",
|
|
97567
97567
|
"page-0215",
|
|
97568
97568
|
"page-0660",
|
|
97569
97569
|
"page-0667",
|
|
@@ -97606,7 +97606,7 @@
|
|
|
97606
97606
|
"page-1021",
|
|
97607
97607
|
"page-1146",
|
|
97608
97608
|
"page-1158",
|
|
97609
|
-
"page-
|
|
97609
|
+
"page-1180",
|
|
97610
97610
|
"page-1186",
|
|
97611
97611
|
"page-1204",
|
|
97612
97612
|
"page-1220",
|
|
@@ -97739,7 +97739,7 @@
|
|
|
97739
97739
|
"multiple": [
|
|
97740
97740
|
"page-0013",
|
|
97741
97741
|
"page-0027",
|
|
97742
|
-
"page-
|
|
97742
|
+
"page-0131",
|
|
97743
97743
|
"page-0144",
|
|
97744
97744
|
"page-0645",
|
|
97745
97745
|
"page-0661",
|
|
@@ -97839,7 +97839,7 @@
|
|
|
97839
97839
|
"page-0013",
|
|
97840
97840
|
"page-0021",
|
|
97841
97841
|
"page-0031",
|
|
97842
|
-
"page-
|
|
97842
|
+
"page-0132",
|
|
97843
97843
|
"page-0562",
|
|
97844
97844
|
"page-0564",
|
|
97845
97845
|
"page-0565",
|
|
@@ -97959,7 +97959,7 @@
|
|
|
97959
97959
|
"page-0364",
|
|
97960
97960
|
"page-0368",
|
|
97961
97961
|
"page-0369",
|
|
97962
|
-
"page-
|
|
97962
|
+
"page-0371",
|
|
97963
97963
|
"page-0372",
|
|
97964
97964
|
"page-0373",
|
|
97965
97965
|
"page-0374",
|
|
@@ -98265,7 +98265,7 @@
|
|
|
98265
98265
|
"page-0364",
|
|
98266
98266
|
"page-0368",
|
|
98267
98267
|
"page-0369",
|
|
98268
|
-
"page-
|
|
98268
|
+
"page-0371",
|
|
98269
98269
|
"page-0372",
|
|
98270
98270
|
"page-0373",
|
|
98271
98271
|
"page-0374",
|
|
@@ -98400,7 +98400,7 @@
|
|
|
98400
98400
|
"page-0050",
|
|
98401
98401
|
"page-0108",
|
|
98402
98402
|
"page-0109",
|
|
98403
|
-
"page-
|
|
98403
|
+
"page-0132",
|
|
98404
98404
|
"page-0203",
|
|
98405
98405
|
"page-0546",
|
|
98406
98406
|
"page-0626",
|
|
@@ -98425,8 +98425,8 @@
|
|
|
98425
98425
|
],
|
|
98426
98426
|
"embed": [
|
|
98427
98427
|
"page-0015",
|
|
98428
|
-
"page-
|
|
98429
|
-
"page-
|
|
98428
|
+
"page-0133",
|
|
98429
|
+
"page-0136",
|
|
98430
98430
|
"page-1255"
|
|
98431
98431
|
],
|
|
98432
98432
|
"chatbot": [
|
|
@@ -98467,8 +98467,8 @@
|
|
|
98467
98467
|
"page-0052",
|
|
98468
98468
|
"page-0077",
|
|
98469
98469
|
"page-0131",
|
|
98470
|
-
"page-
|
|
98471
|
-
"page-
|
|
98470
|
+
"page-0132",
|
|
98471
|
+
"page-0136",
|
|
98472
98472
|
"page-0141",
|
|
98473
98473
|
"page-0146",
|
|
98474
98474
|
"page-0166",
|
|
@@ -98532,7 +98532,7 @@
|
|
|
98532
98532
|
],
|
|
98533
98533
|
"that": [
|
|
98534
98534
|
"page-0015",
|
|
98535
|
-
"page-
|
|
98535
|
+
"page-0132",
|
|
98536
98536
|
"page-0219",
|
|
98537
98537
|
"page-0531",
|
|
98538
98538
|
"page-0661",
|
|
@@ -98576,7 +98576,7 @@
|
|
|
98576
98576
|
"page-0066",
|
|
98577
98577
|
"page-0096",
|
|
98578
98578
|
"page-0097",
|
|
98579
|
-
"page-
|
|
98579
|
+
"page-0105",
|
|
98580
98580
|
"page-0110",
|
|
98581
98581
|
"page-0711",
|
|
98582
98582
|
"page-0712",
|
|
@@ -98617,7 +98617,7 @@
|
|
|
98617
98617
|
"page-0015",
|
|
98618
98618
|
"page-0018",
|
|
98619
98619
|
"page-0028",
|
|
98620
|
-
"page-
|
|
98620
|
+
"page-0132",
|
|
98621
98621
|
"page-0146",
|
|
98622
98622
|
"page-0649",
|
|
98623
98623
|
"page-0656",
|
|
@@ -98654,7 +98654,7 @@
|
|
|
98654
98654
|
"page-0044",
|
|
98655
98655
|
"page-0048",
|
|
98656
98656
|
"page-0049",
|
|
98657
|
-
"page-
|
|
98657
|
+
"page-0133",
|
|
98658
98658
|
"page-0230",
|
|
98659
98659
|
"page-0523",
|
|
98660
98660
|
"page-0622",
|
|
@@ -98669,7 +98669,7 @@
|
|
|
98669
98669
|
"page-0017",
|
|
98670
98670
|
"page-0044",
|
|
98671
98671
|
"page-0049",
|
|
98672
|
-
"page-
|
|
98672
|
+
"page-0133",
|
|
98673
98673
|
"page-0230",
|
|
98674
98674
|
"page-1220"
|
|
98675
98675
|
],
|
|
@@ -100203,7 +100203,7 @@
|
|
|
100203
100203
|
"page-0018",
|
|
100204
100204
|
"page-0020",
|
|
100205
100205
|
"page-0099",
|
|
100206
|
-
"page-
|
|
100206
|
+
"page-0137",
|
|
100207
100207
|
"page-0546"
|
|
100208
100208
|
],
|
|
100209
100209
|
"enabling": [
|
|
@@ -100470,7 +100470,7 @@
|
|
|
100470
100470
|
],
|
|
100471
100471
|
"input": [
|
|
100472
100472
|
"page-0018",
|
|
100473
|
-
"page-
|
|
100473
|
+
"page-0105",
|
|
100474
100474
|
"page-0659",
|
|
100475
100475
|
"page-0697",
|
|
100476
100476
|
"page-0711",
|
|
@@ -100517,7 +100517,7 @@
|
|
|
100517
100517
|
"page-0018",
|
|
100518
100518
|
"page-0045",
|
|
100519
100519
|
"page-0050",
|
|
100520
|
-
"page-
|
|
100520
|
+
"page-0107",
|
|
100521
100521
|
"page-0112",
|
|
100522
100522
|
"page-0208",
|
|
100523
100523
|
"page-0240",
|
|
@@ -101140,8 +101140,8 @@
|
|
|
101140
101140
|
],
|
|
101141
101141
|
"user": [
|
|
101142
101142
|
"page-0020",
|
|
101143
|
-
"page-0134",
|
|
101144
101143
|
"page-0135",
|
|
101144
|
+
"page-0136",
|
|
101145
101145
|
"page-0151",
|
|
101146
101146
|
"page-0153",
|
|
101147
101147
|
"page-0158",
|
|
@@ -101240,7 +101240,7 @@
|
|
|
101240
101240
|
"page-0100",
|
|
101241
101241
|
"page-0101",
|
|
101242
101242
|
"page-0110",
|
|
101243
|
-
"page-
|
|
101243
|
+
"page-0131",
|
|
101244
101244
|
"page-0518",
|
|
101245
101245
|
"page-0684",
|
|
101246
101246
|
"page-1204"
|
|
@@ -101282,7 +101282,7 @@
|
|
|
101282
101282
|
"best": [
|
|
101283
101283
|
"page-0021",
|
|
101284
101284
|
"page-0023",
|
|
101285
|
-
"page-
|
|
101285
|
+
"page-0137",
|
|
101286
101286
|
"page-0736",
|
|
101287
101287
|
"page-1166",
|
|
101288
101288
|
"page-1171",
|
|
@@ -101291,7 +101291,7 @@
|
|
|
101291
101291
|
],
|
|
101292
101292
|
"practices": [
|
|
101293
101293
|
"page-0021",
|
|
101294
|
-
"page-
|
|
101294
|
+
"page-0137",
|
|
101295
101295
|
"page-0736",
|
|
101296
101296
|
"page-1171",
|
|
101297
101297
|
"page-1199",
|
|
@@ -101378,7 +101378,7 @@
|
|
|
101378
101378
|
],
|
|
101379
101379
|
"persistence": [
|
|
101380
101380
|
"page-0022",
|
|
101381
|
-
"page-
|
|
101381
|
+
"page-0134"
|
|
101382
101382
|
],
|
|
101383
101383
|
"congratulations!": [
|
|
101384
101384
|
"page-0022"
|
|
@@ -101582,9 +101582,9 @@
|
|
|
101582
101582
|
"common": [
|
|
101583
101583
|
"page-0027",
|
|
101584
101584
|
"page-0100",
|
|
101585
|
-
"page-
|
|
101585
|
+
"page-0105",
|
|
101586
101586
|
"page-0131",
|
|
101587
|
-
"page-
|
|
101587
|
+
"page-0132",
|
|
101588
101588
|
"page-0374",
|
|
101589
101589
|
"page-0491",
|
|
101590
101590
|
"page-0492",
|
|
@@ -101725,7 +101725,7 @@
|
|
|
101725
101725
|
"call": [
|
|
101726
101726
|
"page-0029",
|
|
101727
101727
|
"page-0046",
|
|
101728
|
-
"page-
|
|
101728
|
+
"page-0136",
|
|
101729
101729
|
"page-0146",
|
|
101730
101730
|
"page-0630",
|
|
101731
101731
|
"page-0656",
|
|
@@ -101771,7 +101771,7 @@
|
|
|
101771
101771
|
],
|
|
101772
101772
|
"have": [
|
|
101773
101773
|
"page-0031",
|
|
101774
|
-
"page-
|
|
101774
|
+
"page-0132",
|
|
101775
101775
|
"page-0204"
|
|
101776
101776
|
],
|
|
101777
101777
|
"introduction": [
|
|
@@ -102047,7 +102047,7 @@
|
|
|
102047
102047
|
],
|
|
102048
102048
|
"database": [
|
|
102049
102049
|
"page-0039",
|
|
102050
|
-
"page-
|
|
102050
|
+
"page-0137",
|
|
102051
102051
|
"page-0153",
|
|
102052
102052
|
"page-0156",
|
|
102053
102053
|
"page-0176",
|
|
@@ -102087,7 +102087,7 @@
|
|
|
102087
102087
|
"page-0059",
|
|
102088
102088
|
"page-0064",
|
|
102089
102089
|
"page-0097",
|
|
102090
|
-
"page-
|
|
102090
|
+
"page-0105",
|
|
102091
102091
|
"page-0209",
|
|
102092
102092
|
"page-0542",
|
|
102093
102093
|
"page-0562",
|
|
@@ -102146,12 +102146,12 @@
|
|
|
102146
102146
|
],
|
|
102147
102147
|
"rest": [
|
|
102148
102148
|
"page-0044",
|
|
102149
|
-
"page-
|
|
102149
|
+
"page-0134",
|
|
102150
102150
|
"page-0220"
|
|
102151
102151
|
],
|
|
102152
102152
|
"apis": [
|
|
102153
102153
|
"page-0044",
|
|
102154
|
-
"page-
|
|
102154
|
+
"page-0134",
|
|
102155
102155
|
"page-0204",
|
|
102156
102156
|
"page-1027",
|
|
102157
102157
|
"page-1028",
|
|
@@ -102233,7 +102233,7 @@
|
|
|
102233
102233
|
"other": [
|
|
102234
102234
|
"page-0049",
|
|
102235
102235
|
"page-0101",
|
|
102236
|
-
"page-
|
|
102236
|
+
"page-0105",
|
|
102237
102237
|
"page-0203",
|
|
102238
102238
|
"page-1170",
|
|
102239
102239
|
"page-1204",
|
|
@@ -102242,7 +102242,7 @@
|
|
|
102242
102242
|
],
|
|
102243
102243
|
"technical": [
|
|
102244
102244
|
"page-0049",
|
|
102245
|
-
"page-
|
|
102245
|
+
"page-0132"
|
|
102246
102246
|
],
|
|
102247
102247
|
"developer": [
|
|
102248
102248
|
"page-0049",
|
|
@@ -102368,13 +102368,13 @@
|
|
|
102368
102368
|
"javascript": [
|
|
102369
102369
|
"page-0051",
|
|
102370
102370
|
"page-0100",
|
|
102371
|
-
"page-
|
|
102371
|
+
"page-0132",
|
|
102372
102372
|
"page-0621",
|
|
102373
102373
|
"page-0701"
|
|
102374
102374
|
],
|
|
102375
102375
|
"supported": [
|
|
102376
102376
|
"page-0051",
|
|
102377
|
-
"page-
|
|
102377
|
+
"page-0132",
|
|
102378
102378
|
"page-0156",
|
|
102379
102379
|
"page-0235",
|
|
102380
102380
|
"page-0236",
|
|
@@ -102459,7 +102459,7 @@
|
|
|
102459
102459
|
"page-0364",
|
|
102460
102460
|
"page-0368",
|
|
102461
102461
|
"page-0369",
|
|
102462
|
-
"page-
|
|
102462
|
+
"page-0371",
|
|
102463
102463
|
"page-0372",
|
|
102464
102464
|
"page-0373",
|
|
102465
102465
|
"page-0374",
|
|
@@ -102839,7 +102839,7 @@
|
|
|
102839
102839
|
"page-0055",
|
|
102840
102840
|
"page-0057",
|
|
102841
102841
|
"page-0058",
|
|
102842
|
-
"page-
|
|
102842
|
+
"page-0105",
|
|
102843
102843
|
"page-0155",
|
|
102844
102844
|
"page-0544",
|
|
102845
102845
|
"page-0701",
|
|
@@ -103203,12 +103203,12 @@
|
|
|
103203
103203
|
],
|
|
103204
103204
|
"jmespath": [
|
|
103205
103205
|
"page-0054",
|
|
103206
|
-
"page-
|
|
103206
|
+
"page-0131",
|
|
103207
103207
|
"page-1204"
|
|
103208
103208
|
],
|
|
103209
103209
|
"method": [
|
|
103210
103210
|
"page-0054",
|
|
103211
|
-
"page-
|
|
103211
|
+
"page-0131",
|
|
103212
103212
|
"page-0665",
|
|
103213
103213
|
"page-0694",
|
|
103214
103214
|
"page-0709",
|
|
@@ -103273,8 +103273,8 @@
|
|
|
103273
103273
|
"page-0059",
|
|
103274
103274
|
"page-0066",
|
|
103275
103275
|
"page-0096",
|
|
103276
|
-
"page-
|
|
103277
|
-
"page-
|
|
103276
|
+
"page-0104",
|
|
103277
|
+
"page-0106",
|
|
103278
103278
|
"page-0109",
|
|
103279
103279
|
"page-0110",
|
|
103280
103280
|
"page-0143",
|
|
@@ -103297,8 +103297,8 @@
|
|
|
103297
103297
|
"current": [
|
|
103298
103298
|
"page-0059",
|
|
103299
103299
|
"page-0060",
|
|
103300
|
-
"page-
|
|
103301
|
-
"page-
|
|
103300
|
+
"page-0105",
|
|
103301
|
+
"page-0132",
|
|
103302
103302
|
"page-0168",
|
|
103303
103303
|
"page-0203",
|
|
103304
103304
|
"page-0649",
|
|
@@ -103371,7 +103371,7 @@
|
|
|
103371
103371
|
],
|
|
103372
103372
|
"single": [
|
|
103373
103373
|
"page-0060",
|
|
103374
|
-
"page-
|
|
103374
|
+
"page-0136",
|
|
103375
103375
|
"page-0208",
|
|
103376
103376
|
"page-0217",
|
|
103377
103377
|
"page-0226",
|
|
@@ -103390,7 +103390,7 @@
|
|
|
103390
103390
|
"page-0060",
|
|
103391
103391
|
"page-0112",
|
|
103392
103392
|
"page-0125",
|
|
103393
|
-
"page-
|
|
103393
|
+
"page-0131",
|
|
103394
103394
|
"page-0660",
|
|
103395
103395
|
"page-0667",
|
|
103396
103396
|
"page-0690",
|
|
@@ -103460,7 +103460,7 @@
|
|
|
103460
103460
|
"global": [
|
|
103461
103461
|
"page-0061",
|
|
103462
103462
|
"page-0702",
|
|
103463
|
-
"page-
|
|
103463
|
+
"page-1179"
|
|
103464
103464
|
],
|
|
103465
103465
|
"static": [
|
|
103466
103466
|
"page-0061"
|
|
@@ -103595,7 +103595,7 @@
|
|
|
103595
103595
|
],
|
|
103596
103596
|
"query": [
|
|
103597
103597
|
"page-0068",
|
|
103598
|
-
"page-
|
|
103598
|
+
"page-0131",
|
|
103599
103599
|
"page-0139",
|
|
103600
103600
|
"page-0153",
|
|
103601
103601
|
"page-0352",
|
|
@@ -103857,8 +103857,8 @@
|
|
|
103857
103857
|
"referencing": [
|
|
103858
103858
|
"page-0086",
|
|
103859
103859
|
"page-0103",
|
|
103860
|
-
"page-
|
|
103861
|
-
"page-
|
|
103860
|
+
"page-0105",
|
|
103861
|
+
"page-0107"
|
|
103862
103862
|
],
|
|
103863
103863
|
"transforming": [
|
|
103864
103864
|
"page-0086",
|
|
@@ -103966,7 +103966,7 @@
|
|
|
103966
103966
|
],
|
|
103967
103967
|
"prerequisites": [
|
|
103968
103968
|
"page-0091",
|
|
103969
|
-
"page-
|
|
103969
|
+
"page-0137",
|
|
103970
103970
|
"page-0138",
|
|
103971
103971
|
"page-0196",
|
|
103972
103972
|
"page-0200",
|
|
@@ -104308,7 +104308,7 @@
|
|
|
104308
104308
|
],
|
|
104309
104309
|
"elements": [
|
|
104310
104310
|
"page-0096",
|
|
104311
|
-
"page-
|
|
104311
|
+
"page-0131",
|
|
104312
104312
|
"page-0662",
|
|
104313
104313
|
"page-1169"
|
|
104314
104314
|
],
|
|
@@ -104427,12 +104427,12 @@
|
|
|
104427
104427
|
],
|
|
104428
104428
|
"example:": [
|
|
104429
104429
|
"page-0100",
|
|
104430
|
-
"page-
|
|
104430
|
+
"page-0132",
|
|
104431
104431
|
"page-0217"
|
|
104432
104432
|
],
|
|
104433
104433
|
"longer": [
|
|
104434
104434
|
"page-0100",
|
|
104435
|
-
"page-
|
|
104435
|
+
"page-0132",
|
|
104436
104436
|
"page-0569",
|
|
104437
104437
|
"page-1219"
|
|
104438
104438
|
],
|
|
@@ -104452,7 +104452,7 @@
|
|
|
104452
104452
|
],
|
|
104453
104453
|
"json": [
|
|
104454
104454
|
"page-0100",
|
|
104455
|
-
"page-
|
|
104455
|
+
"page-0131",
|
|
104456
104456
|
"page-0518",
|
|
104457
104457
|
"page-0647",
|
|
104458
104458
|
"page-0661",
|
|
@@ -104483,14 +104483,14 @@
|
|
|
104483
104483
|
"page-1205"
|
|
104484
104484
|
],
|
|
104485
104485
|
"linked": [
|
|
104486
|
-
"page-
|
|
104486
|
+
"page-0104"
|
|
104487
104487
|
],
|
|
104488
104488
|
"ways": [
|
|
104489
|
-
"page-
|
|
104489
|
+
"page-0105",
|
|
104490
104490
|
"page-1205"
|
|
104491
104491
|
],
|
|
104492
104492
|
"linking": [
|
|
104493
|
-
"page-
|
|
104493
|
+
"page-0106",
|
|
104494
104494
|
"page-0108",
|
|
104495
104495
|
"page-0109",
|
|
104496
104496
|
"page-0110",
|
|
@@ -104560,7 +104560,7 @@
|
|
|
104560
104560
|
"datetime": [
|
|
104561
104561
|
"page-0112",
|
|
104562
104562
|
"page-0118",
|
|
104563
|
-
"page-
|
|
104563
|
+
"page-0132",
|
|
104564
104564
|
"page-0520",
|
|
104565
104565
|
"page-1169"
|
|
104566
104566
|
],
|
|
@@ -104587,7 +104587,7 @@
|
|
|
104587
104587
|
"string": [
|
|
104588
104588
|
"page-0112",
|
|
104589
104589
|
"page-0128",
|
|
104590
|
-
"page-
|
|
104590
|
+
"page-0132",
|
|
104591
104591
|
"page-0647",
|
|
104592
104592
|
"page-0660",
|
|
104593
104593
|
"page-0667",
|
|
@@ -105200,12 +105200,37 @@
|
|
|
105200
105200
|
"**`active`**": [
|
|
105201
105201
|
"page-0129"
|
|
105202
105202
|
],
|
|
105203
|
-
"
|
|
105203
|
+
"`jmespath()`": [
|
|
105204
|
+
"page-0131"
|
|
105205
|
+
],
|
|
105206
|
+
"tasks": [
|
|
105207
|
+
"page-0131",
|
|
105208
|
+
"page-0132",
|
|
105209
|
+
"page-0327"
|
|
105210
|
+
],
|
|
105211
|
+
"apply": [
|
|
105212
|
+
"page-0131"
|
|
105213
|
+
],
|
|
105214
|
+
"projections": [
|
|
105215
|
+
"page-0131"
|
|
105216
|
+
],
|
|
105217
|
+
"select": [
|
|
105204
105218
|
"page-0131",
|
|
105219
|
+
"page-0518",
|
|
105220
|
+
"page-0519"
|
|
105221
|
+
],
|
|
105222
|
+
"alternative": [
|
|
105223
|
+
"page-0131"
|
|
105224
|
+
],
|
|
105225
|
+
"arrow": [
|
|
105226
|
+
"page-0131"
|
|
105227
|
+
],
|
|
105228
|
+
"luxon": [
|
|
105229
|
+
"page-0132",
|
|
105205
105230
|
"page-1204"
|
|
105206
105231
|
],
|
|
105207
105232
|
"timezone": [
|
|
105208
|
-
"page-
|
|
105233
|
+
"page-0132",
|
|
105209
105234
|
"page-0169",
|
|
105210
105235
|
"page-0192",
|
|
105211
105236
|
"page-0203",
|
|
@@ -105213,43 +105238,38 @@
|
|
|
105213
105238
|
"page-1198",
|
|
105214
105239
|
"page-1245"
|
|
105215
105240
|
],
|
|
105216
|
-
"tasks": [
|
|
105217
|
-
"page-0131",
|
|
105218
|
-
"page-0137",
|
|
105219
|
-
"page-0327"
|
|
105220
|
-
],
|
|
105221
105241
|
"displays": [
|
|
105222
|
-
"page-
|
|
105242
|
+
"page-0132"
|
|
105223
105243
|
],
|
|
105224
105244
|
"<iso": [
|
|
105225
|
-
"page-
|
|
105245
|
+
"page-0132"
|
|
105226
105246
|
],
|
|
105227
105247
|
"formatted": [
|
|
105228
|
-
"page-
|
|
105248
|
+
"page-0132"
|
|
105229
105249
|
],
|
|
105230
105250
|
"timestamp>": [
|
|
105231
|
-
"page-
|
|
105251
|
+
"page-0132"
|
|
105232
105252
|
],
|
|
105233
105253
|
"09t14:00:25": [
|
|
105234
|
-
"page-
|
|
105254
|
+
"page-0132"
|
|
105235
105255
|
],
|
|
105236
105256
|
"058+00:00": [
|
|
105237
|
-
"page-
|
|
105257
|
+
"page-0132"
|
|
105238
105258
|
],
|
|
105239
105259
|
"\"today's": [
|
|
105240
|
-
"page-
|
|
105260
|
+
"page-0132"
|
|
105241
105261
|
],
|
|
105242
105262
|
"<unix": [
|
|
105243
|
-
"page-
|
|
105263
|
+
"page-0132"
|
|
105244
105264
|
],
|
|
105245
105265
|
"timestamp>\"": [
|
|
105246
|
-
"page-
|
|
105266
|
+
"page-0132"
|
|
105247
105267
|
],
|
|
105248
105268
|
"1646834498755\"": [
|
|
105249
|
-
"page-
|
|
105269
|
+
"page-0132"
|
|
105250
105270
|
],
|
|
105251
105271
|
"convert": [
|
|
105252
|
-
"page-
|
|
105272
|
+
"page-0132",
|
|
105253
105273
|
"page-0647",
|
|
105254
105274
|
"page-0666",
|
|
105255
105275
|
"page-1204",
|
|
@@ -105257,38 +105277,38 @@
|
|
|
105257
105277
|
"page-1248"
|
|
105258
105278
|
],
|
|
105259
105279
|
"dates": [
|
|
105260
|
-
"page-
|
|
105280
|
+
"page-0132",
|
|
105261
105281
|
"page-0649",
|
|
105262
105282
|
"page-1184",
|
|
105263
105283
|
"page-1204"
|
|
105264
105284
|
],
|
|
105265
105285
|
"standard": [
|
|
105266
|
-
"page-
|
|
105286
|
+
"page-0132",
|
|
105267
105287
|
"page-0208",
|
|
105268
105288
|
"page-1176"
|
|
105269
105289
|
],
|
|
105270
105290
|
"format:": [
|
|
105271
|
-
"page-
|
|
105291
|
+
"page-0132"
|
|
105272
105292
|
],
|
|
105273
105293
|
"doesn't": [
|
|
105274
|
-
"page-
|
|
105294
|
+
"page-0132",
|
|
105275
105295
|
"page-0702",
|
|
105276
105296
|
"page-0719",
|
|
105277
105297
|
"page-1188",
|
|
105278
105298
|
"page-1202"
|
|
105279
105299
|
],
|
|
105280
105300
|
"days": [
|
|
105281
|
-
"page-
|
|
105301
|
+
"page-0132",
|
|
105282
105302
|
"page-0713"
|
|
105283
105303
|
],
|
|
105284
105304
|
"today": [
|
|
105285
|
-
"page-
|
|
105305
|
+
"page-0132"
|
|
105286
105306
|
],
|
|
105287
105307
|
"readable": [
|
|
105288
|
-
"page-
|
|
105308
|
+
"page-0132"
|
|
105289
105309
|
],
|
|
105290
105310
|
"many": [
|
|
105291
|
-
"page-
|
|
105311
|
+
"page-0132",
|
|
105292
105312
|
"page-0492",
|
|
105293
105313
|
"page-0497",
|
|
105294
105314
|
"page-0498",
|
|
@@ -105315,40 +105335,40 @@
|
|
|
105315
105335
|
"page-1166"
|
|
105316
105336
|
],
|
|
105317
105337
|
"christmas?": [
|
|
105318
|
-
"page-
|
|
105338
|
+
"page-0132"
|
|
105319
105339
|
],
|
|
105320
105340
|
"russia": [
|
|
105321
|
-
"page-
|
|
105341
|
+
"page-0133"
|
|
105322
105342
|
],
|
|
105323
105343
|
"belarus": [
|
|
105324
|
-
"page-
|
|
105344
|
+
"page-0133"
|
|
105325
105345
|
],
|
|
105326
105346
|
"overwrites": [
|
|
105327
|
-
"page-
|
|
105347
|
+
"page-0134"
|
|
105328
105348
|
],
|
|
105329
105349
|
"backend": [
|
|
105330
|
-
"page-
|
|
105350
|
+
"page-0134"
|
|
105331
105351
|
],
|
|
105332
105352
|
"registering": [
|
|
105333
|
-
"page-
|
|
105353
|
+
"page-0134"
|
|
105334
105354
|
],
|
|
105335
105355
|
"hook": [
|
|
105336
|
-
"page-
|
|
105356
|
+
"page-0134"
|
|
105337
105357
|
],
|
|
105338
105358
|
"deployment": [
|
|
105339
|
-
"page-
|
|
105359
|
+
"page-0135",
|
|
105340
105360
|
"page-0177",
|
|
105341
105361
|
"page-0206",
|
|
105342
105362
|
"page-0208"
|
|
105343
105363
|
],
|
|
105344
105364
|
"backups": [
|
|
105345
|
-
"page-
|
|
105365
|
+
"page-0135"
|
|
105346
105366
|
],
|
|
105347
105367
|
"restarting": [
|
|
105348
|
-
"page-
|
|
105368
|
+
"page-0135"
|
|
105349
105369
|
],
|
|
105350
105370
|
"management": [
|
|
105351
|
-
"page-
|
|
105371
|
+
"page-0136",
|
|
105352
105372
|
"page-0151",
|
|
105353
105373
|
"page-0158",
|
|
105354
105374
|
"page-0193",
|
|
@@ -105365,27 +105385,7 @@
|
|
|
105365
105385
|
"page-1223"
|
|
105366
105386
|
],
|
|
105367
105387
|
"obtain": [
|
|
105368
|
-
"page-
|
|
105369
|
-
],
|
|
105370
|
-
"`jmespath()`": [
|
|
105371
|
-
"page-0137"
|
|
105372
|
-
],
|
|
105373
|
-
"apply": [
|
|
105374
|
-
"page-0137"
|
|
105375
|
-
],
|
|
105376
|
-
"projections": [
|
|
105377
|
-
"page-0137"
|
|
105378
|
-
],
|
|
105379
|
-
"select": [
|
|
105380
|
-
"page-0137",
|
|
105381
|
-
"page-0518",
|
|
105382
|
-
"page-0519"
|
|
105383
|
-
],
|
|
105384
|
-
"alternative": [
|
|
105385
|
-
"page-0137"
|
|
105386
|
-
],
|
|
105387
|
-
"arrow": [
|
|
105388
|
-
"page-0137"
|
|
105388
|
+
"page-0136"
|
|
105389
105389
|
],
|
|
105390
105390
|
"white": [
|
|
105391
105391
|
"page-0138"
|
|
@@ -106160,7 +106160,7 @@
|
|
|
106160
106160
|
"page-1152",
|
|
106161
106161
|
"page-1153",
|
|
106162
106162
|
"page-1157",
|
|
106163
|
-
"page-
|
|
106163
|
+
"page-1179"
|
|
106164
106164
|
],
|
|
106165
106165
|
"modules": [
|
|
106166
106166
|
"page-0167"
|
|
@@ -107855,7 +107855,7 @@
|
|
|
107855
107855
|
"existing": [
|
|
107856
107856
|
"page-0231",
|
|
107857
107857
|
"page-1146",
|
|
107858
|
-
"page-
|
|
107858
|
+
"page-1180",
|
|
107859
107859
|
"page-1254"
|
|
107860
107860
|
],
|
|
107861
107861
|
"predefined": [
|
|
@@ -108013,7 +108013,7 @@
|
|
|
108013
108013
|
"page-0364",
|
|
108014
108014
|
"page-0368",
|
|
108015
108015
|
"page-0369",
|
|
108016
|
-
"page-
|
|
108016
|
+
"page-0371",
|
|
108017
108017
|
"page-0372",
|
|
108018
108018
|
"page-0373",
|
|
108019
108019
|
"page-0374",
|
|
@@ -108697,19 +108697,19 @@
|
|
|
108697
108697
|
"page-0870",
|
|
108698
108698
|
"page-1087"
|
|
108699
108699
|
],
|
|
108700
|
-
"medium": [
|
|
108701
|
-
"page-0370",
|
|
108702
|
-
"page-0871"
|
|
108703
|
-
],
|
|
108704
108700
|
"messagebird": [
|
|
108705
|
-
"page-
|
|
108701
|
+
"page-0370",
|
|
108706
108702
|
"page-0872"
|
|
108707
108703
|
],
|
|
108708
108704
|
"metabase": [
|
|
108709
|
-
"page-
|
|
108705
|
+
"page-0371",
|
|
108710
108706
|
"page-0873",
|
|
108711
108707
|
"page-1204"
|
|
108712
108708
|
],
|
|
108709
|
+
"medium": [
|
|
108710
|
+
"page-0372",
|
|
108711
|
+
"page-0871"
|
|
108712
|
+
],
|
|
108713
108713
|
"dynamics": [
|
|
108714
108714
|
"page-0373",
|
|
108715
108715
|
"page-0874"
|
|
@@ -110136,7 +110136,7 @@
|
|
|
110136
110136
|
"plan": [
|
|
110137
110137
|
"page-0564",
|
|
110138
110138
|
"page-0900",
|
|
110139
|
-
"page-
|
|
110139
|
+
"page-1181",
|
|
110140
110140
|
"page-1192"
|
|
110141
110141
|
],
|
|
110142
110142
|
"react": [
|
|
@@ -111148,7 +111148,7 @@
|
|
|
111148
111148
|
"page-0845",
|
|
111149
111149
|
"page-0965",
|
|
111150
111150
|
"page-1008",
|
|
111151
|
-
"page-
|
|
111151
|
+
"page-1179"
|
|
111152
111152
|
],
|
|
111153
111153
|
"meta": [
|
|
111154
111154
|
"page-0799",
|
|
@@ -111472,7 +111472,7 @@
|
|
|
111472
111472
|
"page-1035",
|
|
111473
111473
|
"page-1146",
|
|
111474
111474
|
"page-1171",
|
|
111475
|
-
"page-
|
|
111475
|
+
"page-1180"
|
|
111476
111476
|
],
|
|
111477
111477
|
"poll": [
|
|
111478
111478
|
"page-1042",
|
|
@@ -111524,20 +111524,20 @@
|
|
|
111524
111524
|
"standards": [
|
|
111525
111525
|
"page-1146",
|
|
111526
111526
|
"page-1161",
|
|
111527
|
-
"page-
|
|
111527
|
+
"page-1180",
|
|
111528
111528
|
"page-1184"
|
|
111529
111529
|
],
|
|
111530
111530
|
"submit": [
|
|
111531
111531
|
"page-1146",
|
|
111532
|
-
"page-
|
|
111532
|
+
"page-1180"
|
|
111533
111533
|
],
|
|
111534
111534
|
"ready": [
|
|
111535
111535
|
"page-1146",
|
|
111536
|
-
"page-
|
|
111536
|
+
"page-1180"
|
|
111537
111537
|
],
|
|
111538
111538
|
"submit?": [
|
|
111539
111539
|
"page-1146",
|
|
111540
|
-
"page-
|
|
111540
|
+
"page-1180"
|
|
111541
111541
|
],
|
|
111542
111542
|
"risks": [
|
|
111543
111543
|
"page-1147"
|
|
@@ -112496,11 +112496,11 @@
|
|
|
112496
112496
|
"page-0013",
|
|
112497
112497
|
"page-0014",
|
|
112498
112498
|
"page-0015",
|
|
112499
|
-
"page-0132",
|
|
112500
112499
|
"page-0133",
|
|
112501
112500
|
"page-0134",
|
|
112502
112501
|
"page-0135",
|
|
112503
112502
|
"page-0136",
|
|
112503
|
+
"page-0137",
|
|
112504
112504
|
"page-0138",
|
|
112505
112505
|
"page-0139",
|
|
112506
112506
|
"page-0148",
|
|
@@ -113124,7 +113124,7 @@
|
|
|
113124
113124
|
"page-0129",
|
|
113125
113125
|
"page-0130",
|
|
113126
113126
|
"page-0131",
|
|
113127
|
-
"page-
|
|
113127
|
+
"page-0132"
|
|
113128
113128
|
],
|
|
113129
113129
|
"flow-logic": [
|
|
113130
113130
|
"page-0140",
|
|
@@ -114175,13 +114175,13 @@
|
|
|
114175
114175
|
"mautic": [
|
|
114176
114176
|
"page-0369"
|
|
114177
114177
|
],
|
|
114178
|
-
"
|
|
114178
|
+
"messagebird": [
|
|
114179
114179
|
"page-0370"
|
|
114180
114180
|
],
|
|
114181
|
-
"
|
|
114181
|
+
"metabase": [
|
|
114182
114182
|
"page-0371"
|
|
114183
114183
|
],
|
|
114184
|
-
"
|
|
114184
|
+
"medium": [
|
|
114185
114185
|
"page-0372"
|
|
114186
114186
|
],
|
|
114187
114187
|
"microsoftdynamicscrm": [
|