{"workflow":{"id":12927,"name":"Generate and post Apple App Store review replies with Anthropic Claude","views":68,"recentViews":0,"totalViews":68,"createdAt":"2026-01-22T23:48:52.510Z","description":"## Generate and post Apple App Store review replies with Anthropic Claude, Google Drive and App Store Connect API \nThis workflow empowers app developers and community management teams by automating the generation and posting of responses to user reviews on the Apple App Store. Designed to streamline the engagement process, it drastically reduces the manual workload on community managers by integrating AI-driven responses with necessary human oversight. By leveraging n8n's workflow automation capabilities, this solution eliminates the need for costly third-party platforms like AppFollow or Appbot, making it a cost-effective and efficient alternative.\n\n**Pre-requisites**\n* Google Drive & Google Sheets access: To store and manage review spreadsheets.\n* App Store Connect API credentials: To fetch and respond to app reviews.\n* LLM credentials (e.g., Anthropic): Required for generating responses.\n* Slack account\n\n### Workflow steps\n**1. Initialise and trigger workflow:** The process begins daily at 10 AM through a scheduled trigger.\n\n**2. Fetch application data:** Utilizes a data table (Apple App Store apps) to retrieve a list of applications with their app id and name, essential for identifying review sources.\n\n**3. Collect App Store Reviews:** Retrieves previous day's reviews from the App Store Connect API based on app data. Stores the reviews in Google Sheets for further processing.\n\n**4. Generate AI Responses:** AI model generates initial responses based on review content. Responses are structured and stored along with reviews within a Google Spreadsheet located in a Google Drive folder called *ToReview*. A Slack message is sent with the URL of the file\n\n**5. Human Review & Modification:** Community managers review and refine AI-generated responses. Reviewed spreadsheets are moved to the *ToSubmit* Google Drive folder by the editor.\n\n**6. Post Verified Responses:** Workflow triggers again at 5 PM to access reviewed spreadsheets in *ToSubmit* folder. It posts the human-verified responses back to the respective reviews on Apple App Store using App Store Connect API. Logs are maintained, recording each response's success or failure.\n\n**7. Archive processed spreadsheets:** After posting the responses, workflow moves the processed files from *ToSubmit*  to a different folder called *Archived*\n","workflow":{"meta":{"instanceId":"fe52080916406a2a9812a7975b2d9b9e9838f3ce0f0b34614c611fb2ca1528d3"},"nodes":[{"id":"8730f723-83fa-4dcb-8324-bbdc095efa29","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[160,-32],"parameters":{"width":640,"height":928,"content":"## Generate and post Apple App Store review replies with Anthropic Claude, Google Drive and App Store Connect API \nThis workflow empowers app developers and community management teams by automating the generation and posting of responses to user reviews on the Apple App Store. Designed to streamline the engagement process, it drastically reduces the manual workload on community managers by integrating AI-driven responses with necessary human oversight. By leveraging n8n's workflow automation capabilities, this solution eliminates the need for costly third-party platforms like AppFollow or Appbot, making it a cost-effective and efficient alternative.\n\n**Pre-requisites**\n* Google Drive & Google Sheets access: To store and manage review spreadsheets.\n* App Store Connect API credentials: To fetch and respond to app reviews.\n* LLM credentials (e.g., Anthropic): Required for generating responses.\n* Slack account\n\n### Workflow steps\n**1. Initialise and trigger workflow:** The process begins daily at 10 AM through a scheduled trigger.\n\n**2. Fetch application data:** Utilizes a data table (Apple App Store apps) to retrieve a list of applications with their app id and name, essential for identifying review sources.\n\n**3. Collect App Store Reviews:** Retrieves previous day's reviews from the App Store Connect API based on app data. Stores the reviews in Google Sheets for further processing.\n\n**4. Generate AI Responses:** AI model generates initial responses based on review content. Responses are structured and stored along with reviews within a Google Spreadsheet located in a Google Drive folder called *ToReview*. A Slack message is sent with the URL of the file\n\n**5. Human Review & Modification:** Community managers review and refine AI-generated responses. Reviewed spreadsheets are moved to the *ToSubmit* Google Drive folder by the editor.\n\n**6. Post Verified Responses:** Workflow triggers again at 5 PM to access reviewed spreadsheets in *ToSubmit* folder. It posts the human-verified responses back to the respective reviews on Apple App Store using App Store Connect API. Logs are maintained, recording each response's success or failure.\n\n**7. Archive processed spreadsheets:** After posting the responses, workflow moves the processed files from *ToSubmit*  to a different folder called *Archived*\n"},"typeVersion":1},{"id":"e53b3d28-02d2-40b2-9108-2e19b4f9f082","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[864,-64],"parameters":{"color":6,"width":256,"height":240,"content":"## FIRST STEP: GENERATE AI RESPONSES\nAt 10 am, download the previous day's reviews from Apple App Store and generate AI responses in a spreadsheet in *ToReview* folder. Send a Slack message with the url of the file"},"typeVersion":1},{"id":"49138ab4-878a-434a-bf9d-29a4027375d8","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[864,336],"parameters":{"color":6,"width":256,"height":224,"content":"## SECOND STEP: HUMAN IN THE LOOP\nA human reviews the spreadsheet, makes any required adjustments to the responses and moves the spreadsheet to a different folder called *ToSubmit*"},"typeVersion":1},{"id":"4aac0d74-1e71-4104-8032-e956d9b3cbf5","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[864,704],"parameters":{"color":6,"width":256,"height":224,"content":"## THIRD STEP: POST RESPONSES\nAt 5pm, fetch the spreadsheets in *ToSubmit* folder, post the responses using the Apple App Store Connect API, create execution logs and move the processed spreadsheets to a different folder called *Archived*"},"typeVersion":1},{"id":"e20d885f-8c4f-479c-874a-bef5845079ed","name":"Sticky Note7","type":"n8n-nodes-base.stickyNote","position":[1376,704],"parameters":{"color":7,"width":192,"height":240,"content":"Search the files in *ToSubmit* folder"},"typeVersion":1},{"id":"a2b60e1f-7cd5-4f4f-8e73-dd9b221d6293","name":"Sticky Note8","type":"n8n-nodes-base.stickyNote","position":[1600,704],"parameters":{"color":7,"width":192,"height":240,"content":"Download responses sheet"},"typeVersion":1},{"id":"617041ff-cab9-49b6-92e1-49c68d65be21","name":"Sticky Note10","type":"n8n-nodes-base.stickyNote","position":[2064,688],"parameters":{"color":7,"width":384,"height":256,"content":"Post responses using App Store Connect API: https://developer.apple.com/documentation/appstoreconnectapi/post-v1-customerreviewresponses"},"typeVersion":1},{"id":"f852eebe-7a34-427a-9896-dcb5e9cf5eba","name":"Sticky Note13","type":"n8n-nodes-base.stickyNote","position":[2480,528],"parameters":{"color":7,"width":368,"height":544,"content":"### Data table fields\n* reviewID: App Store Identifier for each review.\n* app_id: Corresponding application's app id.\n* successful: Boolean status indicating the posting success."},"typeVersion":1},{"id":"e10dd702-4236-44c7-a92e-5584fb611090","name":"Trigger posting responses","type":"n8n-nodes-base.scheduleTrigger","notes":"daily at 5pm","position":[1200,768],"parameters":{"rule":{"interval":[{"triggerAtHour":17}]}},"notesInFlow":true,"typeVersion":1.2},{"id":"c3a99a3c-d3aa-4089-865a-de1791889dc8","name":"JWT","type":"n8n-nodes-base.jwt","position":[2160,144],"parameters":{"options":{"kid":"K11111111"},"useJson":true,"claimsJson":"={\n  \"iss\": \"iss_here\",\n  \"aud\": \"appstoreconnect-v1\",\n  \"bid\": \"bundle.id\",\n  \"exp\": {{ Math.floor((new Date().getTime() + 10 * 60 * 1000) / 1000) }}\n}\n"},"credentials":{"jwtAuth":{"id":"credential-id","name":"Apple Connect JWT Auth account"}},"typeVersion":1},{"id":"6ade90b9-751a-4f1f-aa06-ceedf052c626","name":"Fetch app id and name","type":"n8n-nodes-base.set","position":[1680,-16],"parameters":{"options":{},"assignments":{"assignments":[{"id":"4d914a6b-b4cc-411e-9edc-6eae7b19cb4c","name":"app_id","type":"string","value":"={{ $json.app_id }}"},{"id":"c26e6fa1-6a56-433a-9c7c-45cd5009860c","name":"name","type":"string","value":"={{ $json.name }}"}]}},"typeVersion":3.4},{"id":"49b71085-3bc1-4991-ad9e-dbcce799a205","name":"HTTP Request - App Store Reviews","type":"n8n-nodes-base.httpRequest","position":[2368,144],"parameters":{"url":"=https://api.appstoreconnect.apple.com/v1/apps/{{ $('Loop over apps').item.json.app_id }}/customerReviews?sort=-createdDate","options":{"pagination":{"pagination":{"nextURL":"={{$response.body.links[\"next\"]}}","maxRequests":5,"paginationMode":"responseContainsNextURL","limitPagesFetched":true,"completeExpression":"={{$response.body.links[\"next\"] == null}}","paginationCompleteWhen":"other"}}},"authentication":"genericCredentialType","genericAuthType":"httpBearerAuth"},"typeVersion":4.2},{"id":"1154b9d7-77ad-46cb-8274-ed9d796a96a7","name":"Sticky Note14","type":"n8n-nodes-base.stickyNote","position":[1376,-192],"parameters":{"color":7,"width":448,"height":352,"content":"### Data table fields \n* app_id: Apple app id for each app. App id can be found in the Apple App Store url of the app. For example the app id of the app with url https://apps.apple.com/us/app/claude-by-anthropic/id6473753684 is 6473753684\n* name: The application’s name (eg. Claude by Anthropic)"},"typeVersion":1},{"id":"548e6542-150b-43e9-bb0e-aa3c1563584d","name":"Sticky Note15","type":"n8n-nodes-base.stickyNote","position":[2112,-224],"parameters":{"color":7,"width":624,"height":224,"content":"Collect all the reviews and responses in a spreadsheet, sorted by rating"},"typeVersion":1},{"id":"cc9bbad3-9cf5-4ae7-a8cf-52ddabf29251","name":"Sticky Note16","type":"n8n-nodes-base.stickyNote","position":[2752,-224],"parameters":{"color":7,"width":208,"height":224,"content":"Upload the spreadsheet to \"ToReview* folder"},"typeVersion":1},{"id":"59b82ea7-7228-4f32-8717-53b99fa5b3fc","name":"Send to Slack","type":"n8n-nodes-base.slack","position":[3024,-160],"webhookId":"b59220cd-8fa7-417f-a6f9-7096c20ee0aa","parameters":{"text":"=Hello, a new list is ready for review: {{ $json.webViewLink }}","select":"channel","channelId":{"__rl":true,"mode":"id","value":"C11111111111"},"otherOptions":{"includeLinkToWorkflow":false}},"credentials":{"slackApi":{"id":"credential-id","name":"Slack account"}},"typeVersion":2.3},{"id":"be34c4db-073c-488e-85a1-0de8bf5a5cf6","name":"Sticky Note17","type":"n8n-nodes-base.stickyNote","position":[2976,-224],"parameters":{"color":7,"width":224,"height":224,"content":"Send the Google Drive url of the file in a Slack message"},"typeVersion":1},{"id":"4a3091d3-3d2f-4e9a-ab59-cbedceb60366","name":"Sticky Note18","type":"n8n-nodes-base.stickyNote","position":[2112,48],"parameters":{"color":7,"width":416,"height":240,"content":"Fetch reviews from App Store Connect API: https://developer.apple.com/documentation/appstoreconnectapi/get-v1-apps-_id_-customerreviews"},"typeVersion":1},{"id":"abdde680-74ae-4030-9e18-8c1dadd069d2","name":"Split Out fetched reviews","type":"n8n-nodes-base.splitOut","onError":"continueErrorOutput","position":[2592,144],"parameters":{"include":"=","options":{"destinationFieldName":""},"fieldToSplitOut":"data"},"typeVersion":1},{"id":"69752f2d-a82c-42b8-bf10-4e03ad23a36e","name":"Sticky Note19","type":"n8n-nodes-base.stickyNote","position":[2960,32],"parameters":{"color":7,"width":192,"height":256,"content":"If there are no reviews for the app from yesterday, continue the loop with the next app "},"typeVersion":1},{"id":"9aac9cb5-2770-4fd5-9528-0664b1a74140","name":"Fetch list of applications","type":"n8n-nodes-base.dataTable","position":[1440,-16],"parameters":{"operation":"get","returnAll":true,"dataTableId":{"__rl":true,"mode":"list","value":"e7fEo2CHu9iNjHJV","cachedResultUrl":"/projects/Y78nQ4fOsYH80VvD/datatables/e7fEo2CHu9iNjHJV","cachedResultName":"Apple App Store apps"}},"typeVersion":1},{"id":"625eb4c8-1d01-4505-a158-2ca5a64e9edb","name":"Loop over apps","type":"n8n-nodes-base.splitInBatches","position":[1888,-16],"parameters":{"options":{}},"typeVersion":3},{"id":"076db3bc-2b0f-4fc9-9c7f-637cda4cd507","name":"Get rid of empty items","type":"n8n-nodes-base.filter","position":[2160,-160],"parameters":{"options":{},"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"0d37ae77-c69f-4356-b76d-8698d89109d3","operator":{"type":"string","operation":"exists","singleValue":true},"leftValue":"={{ $json.reviewId }}","rightValue":""}]}},"typeVersion":2.3},{"id":"df97eb53-a4d4-4655-a4b5-e9781c252ef1","name":"Sort","type":"n8n-nodes-base.sort","position":[2368,-160],"parameters":{"options":{},"sortFieldsUi":{"sortField":[{"fieldName":"starRating"}]}},"typeVersion":1},{"id":"e7c03979-0c11-4775-8835-4ed88bcc468f","name":"Convert to File","type":"n8n-nodes-base.convertToFile","position":[2592,-160],"parameters":{"options":{"fileName":"=Apple_{{ $now.format('yyyy-MM-dd-HH-mm-ss') }}_all_review_responses","headerRow":true},"operation":"xlsx"},"typeVersion":1.1},{"id":"2a843a6f-d36b-40db-907d-9b4e7ae0014b","name":"Upload file","type":"n8n-nodes-base.googleDrive","position":[2816,-160],"parameters":{"driveId":{"__rl":true,"mode":"list","value":"0AMSgS_z8k1A-Uk9PVA","cachedResultUrl":"https://drive.google.com/drive/folders/0NASgS_z8k1A-Uk9PVA","cachedResultName":"n8n drive"},"options":{},"folderId":{"__rl":true,"mode":"list","value":"1BFjKINf7etQH5Z4E-EW4Inem3sXEzo6-","cachedResultUrl":"https://drive.google.com/drive/folders/1BFjKINf7etQH5Z5D-EW4Inem3sXEzo6-","cachedResultName":"ToReview"},"authentication":"serviceAccount"},"credentials":{"googleApi":{"id":"credential-id","name":"Google Service Account"}},"typeVersion":3},{"id":"67e1ba4d-46a3-4257-af6f-9e4552a3fd1c","name":"Fetch yesterday's reviews","type":"n8n-nodes-base.filter","onError":"continueRegularOutput","position":[2816,144],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"e5cc101a-9e06-4f33-8578-63c4acc66042","operator":{"type":"dateTime","operation":"equals"},"leftValue":"={{ $json.data.attributes.createdDate.toDateTime().format('yyyy-MM-dd') }}","rightValue":"={{$today.minus({days: 1}).format('yyyy-MM-dd')}}\n"}]}},"notesInFlow":false,"typeVersion":2.2,"alwaysOutputData":true},{"id":"aeb78c41-9235-422d-897b-8f742411e9f3","name":"Any reviews yesterday?","type":"n8n-nodes-base.if","position":[3008,144],"parameters":{"options":{},"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"405061bb-27c7-4d37-a0c5-450b7d5db4aa","operator":{"type":"string","operation":"exists","singleValue":true},"leftValue":"={{ $json.data.id }}","rightValue":0}]}},"typeVersion":2.3},{"id":"ad840df5-221a-436d-b734-2080ad620816","name":"Fetch fields required by LLM","type":"n8n-nodes-base.set","position":[3248,128],"parameters":{"options":{},"assignments":{"assignments":[{"id":"85404f02-cef9-459b-bf0c-7c727ffc9652","name":"reviewId","type":"string","value":"={{ $json.data.id }}"},{"id":"72583513-5359-4f3d-b51d-e77675c2ce9e","name":"title","type":"string","value":"={{ $json.data.attributes.title }}"},{"id":"aadd7f83-ce56-4b74-8523-bc00d3e7daf9","name":"body","type":"string","value":"={{ $json.data.attributes.body }}"},{"id":"d02c296d-8842-4f99-9cac-79556cb8a4da","name":"rating","type":"number","value":"={{ $json.data.attributes.rating }}"},{"id":"ba23cd7d-33e0-456f-a121-e01be8a9c768","name":"territory","type":"string","value":"={{ $json.data.attributes.territory }}"},{"id":"a99df95a-f666-4088-aa70-0fd52207cee0","name":"app_id","type":"string","value":"={{ $('Loop over apps').item.json.app_id }}"},{"id":"01d0b8a3-e582-4aad-b22e-16a8f7d70da6","name":"app_name","type":"string","value":"={{ $('Loop over apps').item.json.name }}"}]}},"typeVersion":3.4},{"id":"e409e93c-a51e-48d9-82fb-be178b89659a","name":"Aggregate reviews for LLM use","type":"n8n-nodes-base.aggregate","position":[3456,128],"parameters":{"options":{},"aggregate":"aggregateAllItemData","destinationFieldName":"reviews"},"typeVersion":1},{"id":"5f6cdf29-e9ee-42ef-9c78-cbc51f587f4a","name":"LLM Response Generator","type":"@n8n/n8n-nodes-langchain.chainLlm","onError":"continueErrorOutput","position":[3664,128],"parameters":{"text":"=You are a helpful community manager of a mobile apps company and your job is to read the player reviews on Apple App Store and to generate a response to be posted on behalf of the company's community team.\n\nReviews have the following elements:\n\n* Review id (reviewId): Apple App Store id of the review.\n* Star rating (starRating): an integer from 1 to 5, 1 being the lowest rating and 5 being the highest.\n* Title (title): Title of the review or feedback provided by the player.\n* Body (body): Body of the review or feedback provided by the player. The lower the star rating the more likely that the review will be a negative one. \n* Apple App Store  id of the app (app_id).\n* Name of the app (appName)\n\nFollow these guidelines when generating the response for a review:\n\n* Always start with thanking the user for sharing a review.\n* If the review is a negative one, respond with an apologetic and empathetic tone. Let the user know that we take their feedback seriously and we'd like them to contact us in the app to discuss their feedback. These responses should be 5 sentences max.\n* If the review is a positive one with 5 star rating, respond with a celebratory and grateful tone. These responses should be 2 sentences max.\n* The total length of the responses should be less than 500 characters. \n* Do not use any quotation marks (\", ' etc) in the responses you generate.\n\nHere are some example responses for negative reviews that you can use to generate your responses:\n\n<Add some examples here> \n\nThe response you generate should always be in English, even if the language of the review is a different one. Do not generate a response in any language other than English. \n\nAlways generate a list of customer review responses in JSON format. Each item should contain the following fields:\n- app_id: The Apple id of the application.\n- reviewId: A unique identifier for the review.\n- title: The title of the review submitted by the user.\n- body: The body of the review submitted by the user.\n- starRating: An integer representing the star rating (1-5).\n- response: The generated response to the review.\n\nExample format:\n[\n  {\n    \"app_id\": \"6608975929\",\n    \"app_name\": \"App Name1\",\n    \"reviewId\": \"64f8b751-7fba-43bd-99re-542693b6c01d\",\n    \"title\": \"Highly recommend!\",\n    \"body\": \"Love this app so much!\",\n    \"starRating\": \"5\",\n    \"response\": \"Thank you for your positive feedback.\"\n  },\n  {\n    \"app_id\": \"5508975929\",\n    \"app_name\": \"App Name2t\",\n    \"reviewId\": \"b7a7b009-5086-441d-9635-27239bd54c19\",\n    \"title\": \"Wouldn't recommend!\",\n    \"body\": \"Full of ads!\",\n    \"starRating\": \"2\",\n    \"response\": \"We're sorry for the inconvenience. Please contact us to discuss further.\"\n  }\n]\n\nEnsure all generated responses conform to this format.\n\nHere are the list of reviews you should generate responses for. Generate a different response for each review and include all reviews and responses in your output:\n\n{{ $json.toJsonString() }}\n","batching":{},"promptType":"define","hasOutputParser":true},"retryOnFail":true,"typeVersion":1.7},{"id":"6f5fc2f9-82db-4c1b-a716-4bd89ce376b7","name":"Anthropic Chat Model","type":"@n8n/n8n-nodes-langchain.lmChatAnthropic","position":[3664,352],"parameters":{"model":{"__rl":true,"mode":"list","value":"claude-sonnet-4-5-20250929","cachedResultName":"Claude Sonnet 4.5"},"options":{}},"typeVersion":1.3},{"id":"5742ae4d-66d9-42ef-93be-52e61b83e8cc","name":"Structured Output Parser","type":"@n8n/n8n-nodes-langchain.outputParserStructured","position":[3824,352],"parameters":{"jsonSchemaExample":"[\n  {\n    \"app_id\": \"5508975929\",\n    \"app_name\": \"App Name 1\",\n    \"reviewId\": \"64f8b751-7fba-43bd-99db-654393b6c01d\",\n    \"title\": \"Highly recommend!\",\n    \"body\": \"Love this app so much!\",\n    \"starRating\": \"5\",\n    \"response\": \"Thank you for your positive feedback.\"\n  },\n  {\n    \"app_id\": \"6608975929\",\n    \"app_name\": \"App Name2\",\n    \"reviewId\": \"b7a7b+1234456790d-9635-27239be45c19\",\n    \"title\": \"Wouldn't recommend!\",\n    \"body\": \"Full of ads!\",\n    \"starRating\": \"2\",\n    \"response\": \"We're sorry for the inconvenience. Please contact us to discuss further.\"\n  }\n]\n"},"typeVersion":1.3},{"id":"dca8dcf4-f7f8-4e87-b208-ca52a72c7d46","name":"Split responses","type":"n8n-nodes-base.splitOut","position":[3984,128],"parameters":{"options":{},"fieldToSplitOut":"output"},"typeVersion":1},{"id":"1f488681-a855-4173-a024-3feb0570bb75","name":"Trigger download","type":"n8n-nodes-base.scheduleTrigger","notes":"daily at 10am","position":[1200,-16],"parameters":{"rule":{"interval":[{"triggerAtHour":10}]}},"notesInFlow":true,"typeVersion":1.2},{"id":"8935b8c3-b1d4-4125-b195-7487a6d5c6ec","name":"JWT1","type":"n8n-nodes-base.jwt","position":[2096,768],"parameters":{"options":{"kid":"key_id_here"},"useJson":true,"claimsJson":"={\n  \"iss\": \"iss_here\",\n  \"aud\": \"appstoreconnect-v1\",\n  \"bid\": \"bundle_id_here\",\n  \"exp\": {{ Math.floor((new Date().getTime() + 10 * 60 * 1000) / 1000) }}\n}\n"},"credentials":{"jwtAuth":{"id":"credential-id","name":"Apple Connect JWT Auth account"}},"typeVersion":1},{"id":"87eb3f9f-b743-49db-a967-7aee526bb63b","name":"HTTP Request - Respond to App Store reviews","type":"n8n-nodes-base.httpRequest","onError":"continueErrorOutput","position":[2288,768],"parameters":{"url":"=https://api.appstoreconnect.apple.com/v1/customerReviewResponses","body":"={\n  \"data\": {\n    \"type\": \"customerReviewResponses\",\n    \"relationships\": {\n      \"review\": {\n        \"data\": {\n          \"type\": \"customerReviews\",\n          \"id\": \"{{ $('Switch').item.json.reviewId }}\"\n        }\n      }\n    },\n    \"attributes\": {\n      \"responseBody\": \"{{ $('Switch').item.json.response }}\"\n    }\n  }\n}","method":"POST","options":{},"sendBody":true,"contentType":"raw","sendHeaders":true,"authentication":"genericCredentialType","rawContentType":"application/json","genericAuthType":"httpBearerAuth","headerParameters":{"parameters":[{"name":"Content-Type","value":"application/json"}]}},"credentials":{"httpBearerAuth":{"id":"credential-id","name":"Apple Connect Bearer Auth account"}},"typeVersion":4.2},{"id":"2ddb4501-0666-4c89-9b8f-cf473dc01269","name":"Sticky Note12","type":"n8n-nodes-base.stickyNote","position":[1824,944],"parameters":{"color":7,"width":192,"height":272,"content":"After posting all responses, move the spreadsheet to Archived folder"},"typeVersion":1},{"id":"3e5ede65-72ed-4593-89e4-0313d196fe04","name":"Search responses ready to be posted","type":"n8n-nodes-base.googleDrive","position":[1424,768],"parameters":{"filter":{"driveId":{"__rl":true,"mode":"list","value":"0AMSgS_z8k1A-Uk9FRA","cachedResultUrl":"https://drive.google.com/drive/folders/0ERSgS_z8k1A-Uk9PVA","cachedResultName":"n8n drive"},"whatToSearch":"files"},"options":{"fields":["name","id"]},"resource":"fileFolder","returnAll":true,"queryString":"'1YIAYsqrpcCAgWnkeEfzC1jSqs1uEPplW' in parents","searchMethod":"query","authentication":"serviceAccount"},"credentials":{"googleApi":{"id":"credential-id","name":"Google Service Account"}},"typeVersion":3},{"id":"446dc214-1342-4baa-bbf6-5f1772b601ef","name":"Download file","type":"n8n-nodes-base.googleDrive","position":[1648,768],"parameters":{"fileId":{"__rl":true,"mode":"id","value":"={{ $json.id }}"},"options":{},"operation":"download","authentication":"serviceAccount"},"credentials":{"googleApi":{"id":"credential-id","name":"Google Service Account"}},"typeVersion":3},{"id":"adf83d9e-1c59-4dd0-b1e6-1c76b578c62b","name":"Extract from File","type":"n8n-nodes-base.extractFromFile","position":[1872,768],"parameters":{"options":{"headerRow":true},"operation":"xlsx"},"typeVersion":1.1},{"id":"60b7ee93-9e28-4914-9e92-ef285ee27654","name":"Move spreadsheet to Archived folder","type":"n8n-nodes-base.googleDrive","position":[1872,1040],"parameters":{"fileId":{"__rl":true,"mode":"id","value":"={{ $json.id }}"},"driveId":{"__rl":true,"mode":"list","value":"0AMSgS_z8k1A-Uk9PVA","cachedResultUrl":"https://drive.google.com/drive/folders/0AFRgS_z8k1A-Uk9PVA","cachedResultName":"n8n drive"},"folderId":{"__rl":true,"mode":"list","value":"1_a0VKmCKx8K4VWSh8EJ5B86NhN9PPhxu","cachedResultUrl":"https://drive.google.com/drive/folders/1_a0VKmCKx8K4VWSh6yt5B86NhN9PPhxu","cachedResultName":"Archived"},"operation":"move","authentication":"serviceAccount"},"credentials":{"googleApi":{"id":"credential-id","name":"Google Service Account"}},"typeVersion":3},{"id":"0fd8bee9-f926-45a9-a094-2deb0748012f","name":"Create a success log for the review","type":"n8n-nodes-base.dataTable","position":[2560,688],"parameters":{"columns":{"value":{"app_id":"={{ $('Extract from File1').item.json.app_id }}","reviewID":"={{ $('Extract from File1').item.json.reviewId }}","successful":true},"schema":[{"id":"reviewID","type":"string","display":true,"removed":false,"readOnly":false,"required":false,"displayName":"reviewID","defaultMatch":false},{"id":"app_id","type":"number","display":true,"removed":false,"readOnly":false,"required":false,"displayName":"app_id","defaultMatch":false},{"id":"successful","type":"boolean","display":true,"removed":false,"readOnly":false,"required":false,"displayName":"successful","defaultMatch":false}],"mappingMode":"defineBelow","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"dataTableId":{"__rl":true,"mode":"list","value":"IzigR44QzLukW3V1","cachedResultUrl":"/projects/Y78nQ4fOsYH80VvD/datatables/IzigR44QzLukW3V1","cachedResultName":"Apple App Store review response logs"}},"typeVersion":1},{"id":"b701bacd-df4a-4608-a74d-b918936bd4d3","name":"Create an errror log for the review","type":"n8n-nodes-base.dataTable","position":[2560,880],"parameters":{"columns":{"value":{"app_id":"={{ $('Extract from File1').item.json.app_id }}","reviewID":"={{ $('Extract from File1').item.json.reviewId }}","successful":false},"schema":[{"id":"reviewID","type":"string","display":true,"removed":false,"readOnly":false,"required":false,"displayName":"reviewID","defaultMatch":false},{"id":"app_id","type":"number","display":true,"removed":false,"readOnly":false,"required":false,"displayName":"app_id","defaultMatch":false},{"id":"successful","type":"boolean","display":true,"removed":false,"readOnly":false,"required":false,"displayName":"successful","defaultMatch":false}],"mappingMode":"defineBelow","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"dataTableId":{"__rl":true,"mode":"list","value":"IzigR44QzLukW3V1","cachedResultUrl":"/projects/Y78nQ4fOsYH80VvD/datatables/IzigR44QzLukW3V1","cachedResultName":"Apple App Store review response logs"}},"typeVersion":1}],"pinData":{"Trigger download":[{"Hour":"14","Year":"2025","Month":"November","Minute":"19","Second":"04","Timezone":"Europe/Madrid (UTC+01:00)","timestamp":"2025-11-07T14:19:04.933+01:00","Day of week":"Friday","Day of month":"07","Readable date":"November 7th 2025, 2:19:04 pm","Readable time":"2:19:04 pm"}],"Trigger posting responses":[{"Hour":"14","Year":"2025","Month":"November","Minute":"19","Second":"04","Timezone":"Europe/Madrid (UTC+01:00)","timestamp":"2025-11-07T14:19:04.933+01:00","Day of week":"Friday","Day of month":"07","Readable date":"November 7th 2025, 2:19:04 pm","Readable time":"2:19:04 pm"}]},"connections":{"JWT":{"main":[[{"node":"HTTP Request - App Store Reviews","type":"main","index":0}]]},"JWT1":{"main":[[{"node":"HTTP Request - Respond to App Store reviews","type":"main","index":0}]]},"Sort":{"main":[[{"node":"Convert to File","type":"main","index":0}]]},"Upload file":{"main":[[{"node":"Send to Slack","type":"main","index":0}]]},"Download file":{"main":[[{"node":"Extract from File","type":"main","index":0},{"node":"Move spreadsheet to Archived folder","type":"main","index":0}]]},"Loop over apps":{"main":[[{"node":"Get rid of empty items","type":"main","index":0}],[{"node":"JWT","type":"main","index":0}]]},"Convert to File":{"main":[[{"node":"Upload file","type":"main","index":0}]]},"Split responses":{"main":[[{"node":"Loop over apps","type":"main","index":0}]]},"Trigger download":{"main":[[{"node":"Fetch list of applications","type":"main","index":0}]]},"Extract from File":{"main":[[{"node":"JWT1","type":"main","index":0}]]},"Anthropic Chat Model":{"ai_languageModel":[[{"node":"LLM Response Generator","type":"ai_languageModel","index":0}]]},"Fetch app id and name":{"main":[[{"node":"Loop over apps","type":"main","index":0}]]},"Any reviews yesterday?":{"main":[[{"node":"Fetch fields required by LLM","type":"main","index":0}],[{"node":"Loop over apps","type":"main","index":0}]]},"Get rid of empty items":{"main":[[{"node":"Sort","type":"main","index":0}]]},"LLM Response Generator":{"main":[[{"node":"Split responses","type":"main","index":0}],[{"node":"Loop over apps","type":"main","index":0}]]},"Structured Output Parser":{"ai_outputParser":[[{"node":"LLM Response Generator","type":"ai_outputParser","index":0}]]},"Fetch yesterday's reviews":{"main":[[{"node":"Any reviews yesterday?","type":"main","index":0}]]},"Split Out fetched reviews":{"main":[[{"node":"Fetch yesterday's reviews","type":"main","index":0}],[{"node":"Loop over apps","type":"main","index":0}]]},"Trigger posting responses":{"main":[[{"node":"Search responses ready to be posted","type":"main","index":0}]]},"Fetch list of applications":{"main":[[{"node":"Fetch app id and name","type":"main","index":0}]]},"Fetch fields required by LLM":{"main":[[{"node":"Aggregate reviews for LLM use","type":"main","index":0}]]},"Aggregate reviews for LLM use":{"main":[[{"node":"LLM Response Generator","type":"main","index":0}]]},"HTTP Request - App Store Reviews":{"main":[[{"node":"Split Out fetched reviews","type":"main","index":0}]]},"Search responses ready to be posted":{"main":[[{"node":"Download file","type":"main","index":0}]]},"HTTP Request - Respond to App Store reviews":{"main":[[{"node":"Create a success log for the review","type":"main","index":0}],[{"node":"Create an errror log for the review","type":"main","index":0}]]}}},"lastUpdatedBy":29,"workflowInfo":{"nodeCount":44,"nodeTypes":{"n8n-nodes-base.if":{"count":1},"n8n-nodes-base.jwt":{"count":2},"n8n-nodes-base.set":{"count":2},"n8n-nodes-base.sort":{"count":1},"n8n-nodes-base.slack":{"count":1},"n8n-nodes-base.filter":{"count":2},"n8n-nodes-base.splitOut":{"count":2},"n8n-nodes-base.aggregate":{"count":1},"n8n-nodes-base.dataTable":{"count":3},"n8n-nodes-base.stickyNote":{"count":15},"n8n-nodes-base.googleDrive":{"count":4},"n8n-nodes-base.httpRequest":{"count":2},"n8n-nodes-base.convertToFile":{"count":1},"n8n-nodes-base.splitInBatches":{"count":1},"n8n-nodes-base.extractFromFile":{"count":1},"n8n-nodes-base.scheduleTrigger":{"count":2},"@n8n/n8n-nodes-langchain.chainLlm":{"count":1},"@n8n/n8n-nodes-langchain.lmChatAnthropic":{"count":1},"@n8n/n8n-nodes-langchain.outputParserStructured":{"count":1}}},"status":"published","readyToDemo":null,"user":{"name":"Ertay Kaya","username":"ertay","bio":"","verified":true,"links":["https://www.linkedin.com/in/ertaykaya/"],"avatar":"https://gravatar.com/avatar/d01d304475695d61bcb4137a26c566f98be67300da323a5af4363a9d2ee8ff0c?r=pg&d=retro&size=200"},"nodes":[{"id":19,"icon":"file:httprequest.svg","name":"n8n-nodes-base.httpRequest","codex":{"data":{"alias":["API","Request","URL","Build","cURL"],"resources":{"generic":[{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/","icon":"🧬","label":"Why business process automation with n8n can change your daily life"},{"url":"https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/","icon":"📈","label":"Automatically pulling and visualizing data with n8n"},{"url":"https://n8n.io/blog/learn-how-to-automatically-cross-post-your-content-with-n8n/","icon":"✍️","label":"Learn how to automatically cross-post your content with n8n"},{"url":"https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/","icon":"🧾","label":"Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"},{"url":"https://n8n.io/blog/running-n8n-on-ships-an-interview-with-maranics/","icon":"🛳","label":"Running n8n on ships: An interview with Maranics"},{"url":"https://n8n.io/blog/what-are-apis-how-to-use-them-with-no-code/","icon":" 🪢","label":"What are APIs and how to use them with no code"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/world-poetry-day-workflow/","icon":"📜","label":"Celebrating World Poetry Day with a daily poem in Telegram"},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/automate-designs-with-bannerbear-and-n8n/","icon":"🎨","label":"Automate Designs with Bannerbear and n8n"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/","icon":"📱","label":"Building an expense tracking app in 10 minutes"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/how-to-use-the-http-request-node-the-swiss-army-knife-for-workflow-automation/","icon":"🧰","label":"How to use the HTTP Request Node - The Swiss Army Knife for Workflow Automation"},{"url":"https://n8n.io/blog/learn-how-to-use-webhooks-with-mattermost-slash-commands/","icon":"🦄","label":"Learn how to use webhooks with Mattermost slash commands"},{"url":"https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/","icon":"📈","label":"How a Membership Development Manager automates his work and investments"},{"url":"https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/","icon":"📈","label":"A low-code bitcoin ticker built with QuestDB and n8n.io"},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/automations-for-activists/","icon":"✨","label":"How Common Knowledge use workflow automation for activism"},{"url":"https://n8n.io/blog/creating-scheduled-text-affirmations-with-n8n/","icon":"🤟","label":"Creating scheduled text affirmations with n8n"},{"url":"https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/","icon":"🛵","label":"How Goomer automated their operations with over 200 n8n workflows"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"output\"]","defaults":{"name":"HTTP Request","color":"#0004F5"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00MCAyMEM0MCA4Ljk1MzE0IDMxLjA0NjkgMCAyMCAwQzguOTUzMTQgMCAwIDguOTUzMTQgMCAyMEMwIDMxLjA0NjkgOC45NTMxNCA0MCAyMCA0MEMzMS4wNDY5IDQwIDQwIDMxLjA0NjkgNDAgMjBaTTIwIDM2Ljk0NThDMTguODg1MiAzNi45NDU4IDE3LjEzNzggMzUuOTY3IDE1LjQ5OTggMzIuNjk4NUMxNC43OTY0IDMxLjI5MTggMTQuMTk2MSAyOS41NDMxIDEzLjc1MjYgMjcuNjg0N0gyNi4xODk4QzI1LjgwNDUgMjkuNTQwMyAyNS4yMDQ0IDMxLjI5MDEgMjQuNTAwMiAzMi42OTg1QzIyLjg2MjIgMzUuOTY3IDIxLjExNDggMzYuOTQ1OCAyMCAzNi45NDU4Wk0xMi45MDY0IDIwQzEyLjkwNjQgMjEuNjA5NyAxMy4wMDg3IDIzLjE2NCAxMy4yMDAzIDI0LjYzMDVIMjYuNzk5N0MyNi45OTEzIDIzLjE2NCAyNy4wOTM2IDIxLjYwOTcgMjcuMDkzNiAyMEMyNy4wOTM2IDE4LjM5MDMgMjYuOTkxMyAxNi44MzYgMjYuNzk5NyAxNS4zNjk1SDEzLjIwMDNDMTMuMDA4NyAxNi44MzYgMTIuOTA2NCAxOC4zOTAzIDEyLjkwNjQgMjBaTTIwIDMuMDU0MTlDMjEuMTE0OSAzLjA1NDE5IDIyLjg2MjIgNC4wMzA3OCAyNC41MDAxIDcuMzAwMzlDMjUuMjA2NiA4LjcxNDA4IDI1LjgwNzIgMTAuNDA2NyAyNi4xOTIgMTIuMzE1M0gxMy43NTAxQzE0LjE5MzMgMTAuNDA0NyAxNC43OTQyIDguNzEyNTQgMTUuNDk5OCA3LjMwMDY0QzE3LjEzNzcgNC4wMzA4MyAxOC44ODUxIDMuMDU0MTkgMjAgMy4wNTQxOVpNMzAuMTQ3OCAyMEMzMC4xNDc4IDE4LjQwOTkgMzAuMDU0MyAxNi44NjE3IDI5LjgyMjcgMTUuMzY5NUgzNi4zMDQyQzM2LjcyNTIgMTYuODQyIDM2Ljk0NTggMTguMzk2NCAzNi45NDU4IDIwQzM2Ljk0NTggMjEuNjAzNiAzNi43MjUyIDIzLjE1OCAzNi4zMDQyIDI0LjYzMDVIMjkuODIyN0MzMC4wNTQzIDIzLjEzODMgMzAuMTQ3OCAyMS41OTAxIDMwLjE0NzggMjBaTTI2LjI3NjcgNC4yNTUxMkMyNy42MzY1IDYuMzYwMTkgMjguNzExIDkuMTMyIDI5LjM3NzQgMTIuMzE1M0gzNS4xMDQ2QzMzLjI1MTEgOC42NjggMzAuMTA3IDUuNzgzNDYgMjYuMjc2NyA0LjI1NTEyWk0xMC42MjI2IDEyLjMxNTNINC44OTI5M0M2Ljc1MTQ3IDguNjY3ODQgOS44OTM1MSA1Ljc4MzQxIDEzLjcyMzIgNC4yNTUxM0MxMi4zNjM1IDYuMzYwMjEgMTEuMjg5IDkuMTMyMDEgMTAuNjIyNiAxMi4zMTUzWk0zLjA1NDE5IDIwQzMuMDU0MTkgMjEuNjAzIDMuMjc3NDMgMjMuMTU3NSAzLjY5NDg0IDI0LjYzMDVIMTAuMTIxN0M5Ljk0NjE5IDIzLjE0MiA5Ljg1MjIyIDIxLjU5NDMgOS44NTIyMiAyMEM5Ljg1MjIyIDE4LjQwNTcgOS45NDYxOSAxNi44NTggMTAuMTIxNyAxNS4zNjk1SDMuNjk0ODRDMy4yNzc0MyAxNi44NDI1IDMuMDU0MTkgMTguMzk3IDMuMDU0MTkgMjBaTTI2LjI3NjYgMzUuNzQyN0MyNy42MzY1IDMzLjYzOTMgMjguNzExIDMwLjg2OCAyOS4zNzc0IDI3LjY4NDdIMzUuMTA0NkMzMy4yNTEgMzEuMzMyMiAzMC4xMDY4IDM0LjIxNzkgMjYuMjc2NiAzNS43NDI3Wk0xMy43MjM0IDM1Ljc0MjdDOS44OTM2OSAzNC4yMTc5IDYuNzUxNTUgMzEuMzMyNCA0Ljg5MjkzIDI3LjY4NDdIMTAuNjIyNkMxMS4yODkgMzAuODY4IDEyLjM2MzUgMzMuNjM5MyAxMy43MjM0IDM1Ljc0MjdaIiBmaWxsPSIjM0E0MkU5Ii8+Cjwvc3ZnPgo="},"displayName":"HTTP Request","typeVersion":4,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]},{"id":20,"icon":"fa:map-signs","name":"n8n-nodes-base.if","codex":{"data":{"alias":["Router","Filter","Condition","Logic","Boolean","Branch"],"details":"The IF node can be used to implement binary conditional logic in your workflow. You can set up one-to-many conditions to evaluate each item of data being inputted into the node. That data will either evaluate to TRUE or FALSE and route out of the node accordingly.\n\nThis node has multiple types of conditions: Bool, String, Number, and Date & Time.","resources":{"generic":[{"url":"https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/","icon":"🏭","label":"Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"},{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/","icon":"🧬","label":"Why business process automation with n8n can change your daily life"},{"url":"https://n8n.io/blog/create-a-toxic-language-detector-for-telegram/","icon":"🤬","label":"Create a toxic language detector for Telegram in 4 step"},{"url":"https://n8n.io/blog/no-code-ecommerce-workflow-automations/","icon":"store","label":"6 e-commerce workflows to power up your Shopify s"},{"url":"https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/","icon":"🔗","label":"How to build a low-code, self-hosted URL shortener in 3 steps"},{"url":"https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/","icon":"⚙️","label":"Automate your data processing pipeline in 9 steps"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/","icon":"🏷️","label":"How to automatically manage contributions to open-source projects"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/","icon":"🧠","label":"Why this Product Manager loves workflow automation with n8n"},{"url":"https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/","icon":"🙌","label":"Sending Automated Congratulations with Google Sheets, Twilio, and n8n "},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.if/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"transform\"]","defaults":{"name":"If","color":"#408000"},"iconData":{"icon":"map-signs","type":"icon"},"displayName":"If","typeVersion":2,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":38,"icon":"fa:pen","name":"n8n-nodes-base.set","codex":{"data":{"alias":["Set","JS","JSON","Filter","Transform","Map"],"resources":{"generic":[{"url":"https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/","icon":"🏭","label":"Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"},{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/","icon":"📈","label":"Automatically pulling and visualizing data with n8n"},{"url":"https://n8n.io/blog/database-monitoring-and-alerting-with-n8n/","icon":"📡","label":"Database Monitoring and Alerting with n8n"},{"url":"https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/","icon":"🧾","label":"Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"},{"url":"https://n8n.io/blog/no-code-ecommerce-workflow-automations/","icon":"store","label":"6 e-commerce workflows to power up your Shopify s"},{"url":"https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/","icon":"🔗","label":"How to build a low-code, self-hosted URL shortener in 3 steps"},{"url":"https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/","icon":"⚙️","label":"Automate your data processing pipeline in 9 steps"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/","icon":"📱","label":"Building an expense tracking app in 10 minutes"},{"url":"https://n8n.io/blog/the-ultimate-guide-to-automate-your-video-collaboration-with-whereby-mattermost-and-n8n/","icon":"📹","label":"The ultimate guide to automate your video collaboration with Whereby, Mattermost, and n8n"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/learn-to-build-powerful-api-endpoints-using-webhooks/","icon":"🧰","label":"Learn to Build Powerful API Endpoints Using Webhooks"},{"url":"https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/","icon":"📈","label":"How a Membership Development Manager automates his work and investments"},{"url":"https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/","icon":"📈","label":"A low-code bitcoin ticker built with QuestDB and n8n.io"},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"},{"url":"https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/","icon":"🛵","label":"How Goomer automated their operations with over 200 n8n workflows"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.set/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"input\"]","defaults":{"name":"Edit Fields"},"iconData":{"icon":"pen","type":"icon"},"displayName":"Edit Fields (Set)","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":39,"icon":"fa:sync","name":"n8n-nodes-base.splitInBatches","codex":{"data":{"alias":["Loop","Concatenate","Batch","Split","Split In Batches"],"resources":{"generic":[{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"organization\"]","defaults":{"name":"Loop Over Items","color":"#007755"},"iconData":{"icon":"sync","type":"icon"},"displayName":"Loop Over Items (Split in Batches)","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":40,"icon":"file:slack.svg","name":"n8n-nodes-base.slack","codex":{"data":{"alias":["human","form","wait","hitl","approval"],"resources":{"generic":[{"url":"https://n8n.io/blog/no-code-ecommerce-workflow-automations/","icon":"store","label":"6 e-commerce workflows to power up your Shopify s"},{"url":"https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/","icon":"⚙️","label":"Automate your data processing pipeline in 9 steps"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/","icon":"👦","label":"Build your own virtual assistant with n8n: A step by step guide"},{"url":"https://n8n.io/blog/how-to-automatically-give-kudos-to-contributors-with-github-slack-and-n8n/","icon":"👏","label":"How to automatically give kudos to contributors with GitHub, Slack, and n8n"},{"url":"https://n8n.io/blog/automations-for-activists/","icon":"✨","label":"How Common Knowledge use workflow automation for activism"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.slack/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/slack/"}]},"categories":["Communication","HITL"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"HITL":["Human in the Loop"]}}},"group":"[\"output\"]","defaults":{"name":"Slack"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMTUwLjg1MiAxNTAuODUyIj48dXNlIHhsaW5rOmhyZWY9IiNhIiB4PSIuOTI2IiB5PSIuOTI2Ii8+PHN5bWJvbCBpZD0iYSIgb3ZlcmZsb3c9InZpc2libGUiPjxnIHN0cm9rZS13aWR0aD0iMS44NTIiPjxwYXRoIGZpbGw9IiNlMDFlNWEiIHN0cm9rZT0iI2UwMWU1YSIgZD0iTTQwLjc0MSA5My41NWMwLTguNzM1IDYuNjA3LTE1Ljc3MiAxNC44MTUtMTUuNzcyczE0LjgxNSA3LjAzNyAxNC44MTUgMTUuNzcydjM4LjgyNGMwIDguNzM3LTYuNjA3IDE1Ljc3NC0xNC44MTUgMTUuNzc0cy0xNC44MTUtNy4wMzctMTQuODE1LTE1Ljc3MnoiLz48cGF0aCBmaWxsPSIjZWNiMjJkIiBzdHJva2U9IiNlY2IyMmQiIGQ9Ik05My41NSAxMDcuNDA4Yy04LjczNSAwLTE1Ljc3Mi02LjYwNy0xNS43NzItMTQuODE1czcuMDM3LTE0LjgxNSAxNS43NzItMTQuODE1aDM4LjgyNmM4LjczNSAwIDE1Ljc3MiA2LjYwNyAxNS43NzIgMTQuODE1cy03LjAzNyAxNC44MTUtMTUuNzcyIDE0LjgxNXoiLz48cGF0aCBmaWxsPSIjMmZiNjdjIiBzdHJva2U9IiMyZmI2N2MiIGQ9Ik03Ny43NzggMTUuNzcyQzc3Ljc3OCA3LjAzNyA4NC4zODUgMCA5Mi41OTMgMHMxNC44MTUgNy4wMzcgMTQuODE1IDE1Ljc3MnYzOC44MjZjMCA4LjczNS02LjYwNyAxNS43NzItMTQuODE1IDE1Ljc3MnMtMTQuODE1LTcuMDM3LTE0LjgxNS0xNS43NzJ6Ii8+PHBhdGggZmlsbD0iIzM2YzVmMSIgc3Ryb2tlPSIjMzZjNWYxIiBkPSJNMTUuNzcyIDcwLjM3MUM3LjAzNyA3MC4zNzEgMCA2My43NjMgMCA1NS41NTZzNy4wMzctMTQuODE1IDE1Ljc3Mi0xNC44MTVoMzguODI2YzguNzM1IDAgMTUuNzcyIDYuNjA3IDE1Ljc3MiAxNC44MTVzLTcuMDM3IDE0LjgxNS0xNS43NzIgMTQuODE1eiIvPjxnIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiPjxwYXRoIGZpbGw9IiNlY2IyMmQiIHN0cm9rZT0iI2VjYjIyZCIgZD0iTTc3Ljc3OCAxMzMuMzMzYzAgOC4yMDggNi42MDcgMTQuODE1IDE0LjgxNSAxNC44MTVzMTQuODE1LTYuNjA3IDE0LjgxNS0xNC44MTUtNi42MDctMTQuODE1LTE0LjgxNS0xNC44MTVINzcuNzc4eiIvPjxwYXRoIGZpbGw9IiMyZmI2N2MiIHN0cm9rZT0iIzJmYjY3YyIgZD0iTTEzMy4zMzQgNzAuMzcxaC0xNC44MTVWNTUuNTU2YzAtOC4yMDcgNi42MDctMTQuODE1IDE0LjgxNS0xNC44MTVzMTQuODE1IDYuNjA3IDE0LjgxNSAxNC44MTUtNi42MDcgMTQuODE1LTE0LjgxNSAxNC44MTV6Ii8+PHBhdGggZmlsbD0iI2UwMWU1YSIgc3Ryb2tlPSIjZTAxZTVhIiBkPSJNMTQuODE1IDc3Ljc3OEgyOS42M3YxNC44MTVjMCA4LjIwNy02LjYwNyAxNC44MTUtMTQuODE1IDE0LjgxNVMwIDEwMC44IDAgOTIuNTkzczYuNjA3LTE0LjgxNSAxNC44MTUtMTQuODE1eiIvPjxwYXRoIGZpbGw9IiMzNmM1ZjEiIHN0cm9rZT0iIzM2YzVmMSIgZD0iTTcwLjM3MSAxNC44MTVWMjkuNjNINTUuNTU2Yy04LjIwNyAwLTE0LjgxNS02LjYwNy0xNC44MTUtMTQuODE1UzQ3LjM0OCAwIDU1LjU1NiAwczE0LjgxNSA2LjYwNyAxNC44MTUgMTQuODE1eiIvPjwvZz48L2c+PC9zeW1ib2w+PC9zdmc+"},"displayName":"Slack","typeVersion":2,"nodeCategories":[{"id":6,"name":"Communication"},{"id":28,"name":"HITL"}]},{"id":58,"icon":"file:googleDrive.svg","name":"n8n-nodes-base.googleDrive","codex":{"data":{"resources":{"generic":[{"url":"https://n8n.io/blog/your-business-doesnt-need-you-to-operate/","icon":" 🖥️","label":"Hey founders! Your business doesn't need you to operate"},{"url":"https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/","icon":"🧠","label":"Why this Product Manager loves workflow automation with n8n"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.googledrive/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"}]},"categories":["Data & Storage"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"input\"]","defaults":{"name":"Google Drive"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgODEgNzMiPjx1c2UgeGxpbms6aHJlZj0iI2EiIHg9Ii41IiB5PSIuNSIvPjxzeW1ib2wgaWQ9ImEiIG92ZXJmbG93PSJ2aXNpYmxlIj48ZyBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSI+PHBhdGggZmlsbD0iIzAwNjZkYSIgZD0ibTYuMDQ4IDYxLjI2IDMuNTI4IDYuMDk0Yy43MzMgMS4yODMgMS43ODcgMi4yOTEgMy4wMjQgMy4wMjRsMTIuNi0yMS44MUgwYTguMyA4LjMgMCAwIDAgMS4xIDQuMTI0eiIvPjxwYXRoIGZpbGw9IiMwMGFjNDciIGQ9Ik00MCAyMi45MSAyNy40IDEuMWMtMS4yMzcuNzMzLTIuMjkxIDEuNzQxLTMuMDI0IDMuMDI0TDEuMSA0NC40NDVBOC4zIDguMyAwIDAgMCAwIDQ4LjU2OGgyNS4yeiIvPjxwYXRoIGZpbGw9IiNlYTQzMzUiIGQ9Ik02Ny40IDcwLjM3OGMxLjIzNy0uNzMzIDIuMjkxLTEuNzQxIDMuMDI0LTMuMDI0bDEuNDY2LTIuNTIgNy4wMS0xMi4xNDJhOC4zIDguMyAwIDAgMCAxLjEtNC4xMjRINTQuNzk4bDUuMzYzIDEwLjUzOHoiLz48cGF0aCBmaWxsPSIjMDA4MzJkIiBkPSJNNDAgMjIuOTEgNTIuNiAxLjFDNTEuMzYzLjM2NyA0OS45NDMgMCA0OC40NzcgMEgzMS41MjRjLTEuNDY2IDAtMi44ODcuNDEyLTQuMTI0IDEuMXoiLz48cGF0aCBmaWxsPSIjMjY4NGZjIiBkPSJNNTQuNzk5IDQ4LjU2OEgyNS4ybC0xMi42IDIxLjgxYzEuMjM3LjczMyAyLjY1NyAxLjEgNC4xMjQgMS4xaDQ2LjU1MmMxLjQ2NiAwIDIuODg3LS40MTIgNC4xMjQtMS4xeiIvPjxwYXRoIGZpbGw9IiNmZmJhMDAiIGQ9Ik02Ny4yNjIgMjQuMjg0IDU1LjYyNCA0LjEyNEM1NC44OTEgMi44NDEgNTMuODM3IDEuODMzIDUyLjYgMS4xTDQwIDIyLjkxbDE0LjggMjUuNjU5aDI1LjE1NWE4LjMgOC4zIDAgMCAwLTEuMS00LjEyNHoiLz48L2c+PC9zeW1ib2w+PC9zdmc+"},"displayName":"Google Drive","typeVersion":3,"nodeCategories":[{"id":3,"name":"Data & Storage"}]},{"id":565,"icon":"fa:sticky-note","name":"n8n-nodes-base.stickyNote","codex":{"data":{"alias":["Comments","Notes","Sticky"],"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"input\"]","defaults":{"name":"Sticky Note","color":"#FFD233"},"iconData":{"icon":"sticky-note","type":"icon"},"displayName":"Sticky Note","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":839,"icon":"fa:clock","name":"n8n-nodes-base.scheduleTrigger","codex":{"data":{"alias":["Time","Scheduler","Polling","Cron","Interval"],"resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"trigger\",\"schedule\"]","defaults":{"name":"Schedule Trigger","color":"#31C49F"},"iconData":{"icon":"clock","type":"icon"},"displayName":"Schedule Trigger","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":844,"icon":"fa:filter","name":"n8n-nodes-base.filter","codex":{"data":{"alias":["Router","Filter","Condition","Logic","Boolean","Branch"],"details":"The Filter node can be used to filter items based on a condition. If the condition is met, the item will be passed on to the next node. If the condition is not met, the item will be omitted. Conditions can be combined together by AND(meet all conditions), or OR(meet at least one condition).","resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.filter/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow","Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Filter","color":"#229eff"},"iconData":{"icon":"filter","type":"icon"},"displayName":"Filter","typeVersion":2,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1123,"icon":"fa:link","name":"@n8n/n8n-nodes-langchain.chainLlm","codex":{"data":{"alias":["LangChain"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.chainllm/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Chains","Root Nodes"]}}},"group":"[\"transform\"]","defaults":{"name":"Basic LLM Chain","color":"#909298"},"iconData":{"icon":"link","type":"icon"},"displayName":"Basic LLM Chain","typeVersion":2,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1145,"icon":"file:anthropic.svg","name":"@n8n/n8n-nodes-langchain.lmChatAnthropic","codex":{"data":{"alias":["claude","sonnet","opus"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatanthropic/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Language Models","Root Nodes"],"Language Models":["Chat Models (Recommended)"]}}},"group":"[\"transform\"]","defaults":{"name":"Anthropic Chat Model"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NiIgaGVpZ2h0PSIzMiIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iIzdEN0Q4NyIgZD0iTTMyLjczIDBoLTYuOTQ1TDM4LjQ1IDMyaDYuOTQ1ek0xMi42NjUgMCAwIDMyaDcuMDgybDIuNTktNi43MmgxMy4yNWwyLjU5IDYuNzJoNy4wODJMMTkuOTI5IDB6bS0uNzAyIDE5LjMzNyA0LjMzNC0xMS4yNDYgNC4zMzQgMTEuMjQ2eiIvPjwvc3ZnPg=="},"displayName":"Anthropic Chat Model","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1179,"icon":"fa:code","name":"@n8n/n8n-nodes-langchain.outputParserStructured","codex":{"data":{"alias":["json","zod"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.outputparserstructured/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Output Parsers"]}}},"group":"[\"transform\"]","defaults":{"name":"Structured Output Parser"},"iconData":{"icon":"code","type":"icon"},"displayName":"Structured Output Parser","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1234,"icon":"file:convertToFile.svg","name":"n8n-nodes-base.convertToFile","codex":{"data":{"alias":["CSV","Spreadsheet","Excel","xls","xlsx","ods","tabular","encode","encoding","Move Binary Data","Binary","File","JSON","HTML","ICS","iCal","RTF","64","Base64"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.converttofile/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Files","Data Transformation"]}}},"group":"[\"input\"]","defaults":{"name":"Convert to File"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjc2MTkgMkMxMy4yNDM3IDIgMTIuODIzNiAyLjQyMDA5IDEyLjgyMzYgMi45MzgzMVYxNS4yNTI2QzEzLjMxOTkgMTUuNDY0MyAxMy43ODUxIDE1Ljc3MiAxNC4xOTEgMTYuMTc1N0wyMS4yMjgzIDIzLjE3MzlDMjIuMDU0OCAyMy45OTU4IDIyLjUxOTUgMjUuMTEzMiAyMi41MTk1IDI2LjI3ODhDMjIuNTE5NSAyNy40NDQzIDIyLjA1NDggMjguNTYxOCAyMS4yMjgzIDI5LjM4MzdMMTQuMTkxIDM2LjM4MTlDMTMuNzg1IDM2Ljc4NTYgMTMuMzE5OSAzNy4wOTMyIDEyLjgyMzYgMzcuMzA1VjM3LjM1MjdDMTIuODIzNiAzNy44NzA5IDEzLjI0MzcgMzguMjkxIDEzLjc2MTkgMzguMjkxSDM5LjA2MTdDMzkuNTc5OSAzOC4yOTEgNDAgMzcuODcwOSA0MCAzNy4zNTI3TDQwIDE1Ljc5NEgyNy4xNDQzQzI2LjYyNjEgMTUuNzk0IDI2LjIwNiAxNS4zNzM5IDI2LjIwNiAxNC44NTU3VjJIMTMuNzYxOVoiIGZpbGw9IiMzQTQyRTkiLz4KPHBhdGggZD0iTTI4Ljg2NDUgMkMyOC43NzgxIDIgMjguNzA4MSAyLjA3MDAyIDI4LjcwODEgMi4xNTYzOVYxMi44MjI3QzI4LjcwODEgMTMuMDgxOCAyOC45MTgyIDEzLjI5MTkgMjkuMTc3MyAxMy4yOTE5SDM5Ljg0MzZDMzkuOTMgMTMuMjkxOSA0MCAxMy4yMjE5IDQwIDEzLjEzNTVMNDAgMTIuNjI2M0M0MCAxMi4zNzc4IDM5LjkwMTQgMTIuMTM5NSAzOS43MjYgMTEuOTYzNkwzMC4wNjEgMi4yNzU2MUMyOS44ODUgMi4wOTkxNiAyOS42NDYgMiAyOS4zOTY3IDJIMjguODY0NVoiIGZpbGw9IiMzQTQyRTkiLz4KPHBhdGggZD0iTTkuNzcyNjggMzQuNjAwM0M5LjA0MTg2IDMzLjg2NTQgOS4wNDUxNyAzMi42NzcyIDkuNzgwMDcgMzEuOTQ2NEwxMy42MzE1IDI4LjExNjNMMC45MzgzMTEgMjguMTE2M0MwLjQyMDA5NiAyOC4xMTYzIC0yLjI2NTE5ZS0wOCAyNy42OTYyIDAgMjcuMTc4TDguMjAyOTdlLTA4IDI1LjMwMTRDMS4wNDY4MmUtMDcgMjQuNzgzMiAwLjQyMDA5NSAyNC4zNjMxIDAuOTM4MzExIDI0LjM2MzFIMTMuNTUyOUw5Ljc4MDA3IDIwLjYxMTJDOS4wNDUxNyAxOS44ODA0IDkuMDQxODYgMTguNjkyMiA5Ljc3MjY4IDE3Ljk1NzNDMTAuNTAzNSAxNy4yMjI0IDExLjY5MTcgMTcuMjE5MSAxMi40MjY2IDE3Ljk0OTlMMTkuNDYzOSAyNC45NDgxQzE5LjgxODEgMjUuMzAwNCAyMC4wMTczIDI1Ljc3OTMgMjAuMDE3MyAyNi4yNzg4QzIwLjAxNzMgMjYuNzc4MyAxOS44MTgxIDI3LjI1NzIgMTkuNDYzOSAyNy42MDk1TDEyLjQyNjYgMzQuNjA3N0MxMS42OTE3IDM1LjMzODUgMTAuNTAzNSAzNS4zMzUyIDkuNzcyNjggMzQuNjAwM1oiIGZpbGw9IiMzQTQyRTkiLz4KPC9zdmc+Cg=="},"displayName":"Convert to File","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1235,"icon":"file:extractFromFile.svg","name":"n8n-nodes-base.extractFromFile","codex":{"data":{"alias":["CSV","Spreadsheet","Excel","xls","xlsx","ods","tabular","decode","decoding","Move Binary Data","Binary","File","PDF","JSON","HTML","ICS","iCal","txt","Text","RTF","XML","64","Base64","Convert"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.extractfromfile/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Files","Data Transformation"]}}},"group":"[\"input\"]","defaults":{"name":"Extract from File"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAuOTM3NSAyQzAuNDE5NzMzIDIgMCAyLjQxOTczIDAgMi45Mzc1VjM3LjMyMjFDMCAzNy44Mzk5IDAuNDE5NzMzIDM4LjI1OTYgMC45Mzc1IDM4LjI1OTZIMjYuMjE1NEMyNi43MzMyIDM4LjI1OTYgMjcuMTUyOSAzNy44Mzk5IDI3LjE1MjkgMzcuMzIyMUwyNy4xNTI5IDMwLjY3MTlMMTYuNzk2OSAzMC42NzE5QzE0Ljg5ODQgMzAuNjcxOSAxMy4zNTk0IDI5LjEzMjkgMTMuMzU5NCAyNy4yMzQ0VjI1LjM1OTRDMTMuMzU5NCAyMy40NjA5IDE0Ljg5ODQgMjEuOTIxOSAxNi43OTY5IDIxLjkyMTlIMjcuMTUyOUwyNy4xNTI5IDE1Ljc4MjFIMTQuMzA4M0MxMy43OTA2IDE1Ljc4MjEgMTMuMzcwOCAxNS4zNjI0IDEzLjM3MDggMTQuODQ0NlYySDAuOTM3NVoiIGZpbGw9IiMzNTNGNkUiLz4KPHBhdGggZD0iTTE2LjAyNzEgMkMxNS45NDA4IDIgMTUuODcwOCAyLjA2OTk2IDE1Ljg3MDggMi4xNTYyNVYxMi44MTM0QzE1Ljg3MDggMTMuMDcyMyAxNi4wODA3IDEzLjI4MjEgMTYuMzM5NiAxMy4yODIxSDI2Ljk5NjdDMjcuMDgzIDEzLjI4MjEgMjcuMTUyOSAxMy4yMTIyIDI3LjE1MjkgMTMuMTI1OUwyNy4xNTI5IDEyLjYxNzFDMjcuMTUyOSAxMi4zNjg4IDI3LjA1NDUgMTIuMTMwNyAyNi44NzkxIDExLjk1NUwxNy4yMjI1IDIuMjc1MzhDMTcuMDQ2NiAyLjA5OTA4IDE2LjgwNzkgMiAxNi41NTg4IDJIMTYuMDI3MVoiIGZpbGw9IiMzNTNGNkUiLz4KPHBhdGggZD0iTTI5Ljc2NDIgMzQuNjUwM0MyOS4wMzQgMzMuOTE2IDI5LjAzNzQgMzIuNzI4OCAyOS43NzE2IDMxLjk5ODZMMzMuNjE5NyAyOC4xNzE5TDE2Ljc5NjkgMjguMTcxOUMxNi4yNzkxIDI4LjE3MTkgMTUuODU5NCAyNy43NTIxIDE1Ljg1OTQgMjcuMjM0NFYyNS4zNTk0QzE1Ljg1OTQgMjQuODQxNiAxNi4yNzkxIDI0LjQyMTkgMTYuNzk2OSAyNC40MjE5TDMzLjU0MTIgMjQuNDIxOUwyOS43NzE2IDIwLjY3MzNDMjkuMDM3NCAxOS45NDMxIDI5LjAzNCAxOC43NTU5IDI5Ljc2NDIgMTguMDIxNkMzMC40OTQ0IDE3LjI4NzQgMzEuNjgxNiAxNy4yODQgMzIuNDE1OSAxOC4wMTQyTDM5LjQ0NzEgMjUuMDA2NEMzOS44MDEgMjUuMzU4MyA0MCAyNS44MzY4IDQwIDI2LjMzNTlDNDAgMjYuODM1IDM5LjgwMSAyNy4zMTM1IDM5LjQ0NzEgMjcuNjY1NUwzMi40MTU5IDM0LjY1NzZDMzEuNjgxNiAzNS4zODc4IDMwLjQ5NDQgMzUuMzg0NSAyOS43NjQyIDM0LjY1MDNaIiBmaWxsPSIjMzUzRjZFIi8+Cjwvc3ZnPgo="},"displayName":"Extract from File","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1236,"icon":"file:aggregate.svg","name":"n8n-nodes-base.aggregate","codex":{"data":{"alias":["Aggregate","Combine","Flatten","Transform","Array","List","Item"],"details":"","resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.aggregate/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Aggregate"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJub25lIj48ZyBmaWxsPSIjRkY2RDVBIiBjbGlwLXBhdGg9InVybCgjYSkiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTMyIDE0OGMwLTYuNjI3IDUuMzczLTEyIDEyLTEyaDE0NmM2LjYyNyAwIDEyIDUuMzczIDEyIDEydjI0YzAgNi42MjctNS4zNzMgMTItMTIgMTJINDRjLTYuNjI3IDAtMTItNS4zNzMtMTItMTJ6bTAgOTZjMC02LjYyNyA1LjM3My0xMiAxMi0xMmgxNDZjNi42MjcgMCAxMiA1LjM3MyAxMiAxMnYyNGMwIDYuNjI3LTUuMzczIDEyLTEyIDEySDQ0Yy02LjYyNyAwLTEyLTUuMzczLTEyLTEyem0wIDk2YzAtNi42MjcgNS4zNzMtMTIgMTItMTJoMTQ2YzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MjRjMCA2LjYyNy01LjM3MyAxMi0xMiAxMkg0NGMtNi42MjcgMC0xMi01LjM3My0xMi0xMnoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjxwYXRoIGQ9Ik03NCA3NmMwIDYuNjI3IDUuMzczIDEyIDEyIDEyaDExNi4yMTdjMTcuNjczIDAgMzIgMTQuMzI3IDMyIDMydjU2YzAgMjYuOTc4IDEwLjI3MiA1MS41NTcgMjcuMTE5IDcwLjAzOSA1LjA1NSA1LjU0NSA1LjA1NSAxNC4zNzcgMCAxOS45MjItMTYuODQ3IDE4LjQ4Mi0yNy4xMTkgNDMuMDYxLTI3LjExOSA3MC4wMzl2NTZjMCAxNy42NzMtMTQuMzI3IDMyLTMyIDMySDg2Yy02LjYyNyAwLTEyIDUuMzczLTEyIDEydjI0YzAgNi42MjcgNS4zNzMgMTIgMTIgMTJoMTE2LjIxN2M0NC4xODMgMCA4MC0zNS44MTcgODAtODB2LTU2YzAtMzAuOTI4IDI1LjA3Mi01NiA1Ni01NmE1Ljc4MyA1Ljc4MyAwIDAgMCA1Ljc4My01Ljc4M3YtMzYuNDM0YTUuNzgzIDUuNzgzIDAgMCAwLTUuNzgzLTUuNzgzYy0zMC45MjggMC01Ni0yNS4wNzItNTYtNTZ2LTU2YzAtNDQuMTgzLTM1LjgxNy04MC04MC04MEg4NmMtNi42MjcgMC0xMiA1LjM3My0xMiAxMnoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zNzYgMjQ0YzAtNi42MjcgNS4zNzMtMTIgMTItMTJoMTEyYzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MjRjMCA2LjYyNy01LjM3MyAxMi0xMiAxMkgzODhjLTYuNjI3IDAtMTItNS4zNzMtMTItMTJ6IiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48L2c+PGRlZnM+PGNsaXBQYXRoIGlkPSJhIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUxMnY1MTJIMHoiLz48L2NsaXBQYXRoPjwvZGVmcz48L3N2Zz4="},"displayName":"Aggregate","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1239,"icon":"file:splitOut.svg","name":"n8n-nodes-base.splitOut","codex":{"data":{"alias":["Split","Nested","Transform","Array","List","Item"],"details":"","resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.splitout/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Split Out"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJub25lIj48ZyBmaWxsPSIjOUI2REQ1IiBjbGlwLXBhdGg9InVybCgjYSkiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTQ4MCAxNDhjMC02LjYyNy01LjM3My0xMi0xMi0xMkgzMjJjLTYuNjI3IDAtMTIgNS4zNzMtMTIgMTJ2MjRjMCA2LjYyNyA1LjM3MyAxMiAxMiAxMmgxNDZjNi42MjcgMCAxMi01LjM3MyAxMi0xMnptMCA5NmMwLTYuNjI3LTUuMzczLTEyLTEyLTEySDMyMmMtNi42MjcgMC0xMiA1LjM3My0xMiAxMnYyNGMwIDYuNjI3IDUuMzczIDEyIDEyIDEyaDE0NmM2LjYyNyAwIDEyLTUuMzczIDEyLTEyem0wIDk2YzAtNi42MjctNS4zNzMtMTItMTItMTJIMzIyYy02LjYyNyAwLTEyIDUuMzczLTEyIDEydjI0YzAgNi42MjcgNS4zNzMgMTIgMTIgMTJoMTQ2YzYuNjI3IDAgMTItNS4zNzMgMTItMTJ6IiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48cGF0aCBkPSJNNDM4IDc2YzAgNi42MjctNS4zNzMgMTItMTIgMTJIMzA5Ljc4M2MtMTcuNjczIDAtMzIgMTQuMzI3LTMyIDMydjU2YzAgMjYuOTc4LTEwLjI3MiA1MS41NTctMjcuMTE5IDcwLjAzOS01LjA1NSA1LjU0NS01LjA1NSAxNC4zNzcgMCAxOS45MjIgMTYuODQ3IDE4LjQ4MiAyNy4xMTkgNDMuMDYxIDI3LjExOSA3MC4wMzl2NTZjMCAxNy42NzMgMTQuMzI3IDMyIDMyIDMySDQyNmM2LjYyNyAwIDEyIDUuMzczIDEyIDEydjI0YzAgNi42MjctNS4zNzMgMTItMTIgMTJIMzA5Ljc4M2MtNDQuMTgzIDAtODAtMzUuODE3LTgwLTgwdi01NmMwLTMwLjkyOC0yNS4wNzItNTYtNTYtNTZhNS43ODMgNS43ODMgMCAwIDEtNS43ODMtNS43ODN2LTM2LjQzNGE1Ljc4MyA1Ljc4MyAwIDAgMSA1Ljc4My01Ljc4M2MzMC45MjggMCA1Ni0yNS4wNzIgNTYtNTZ2LTU2YzAtNDQuMTgzIDM1LjgxNy04MCA4MC04MEg0MjZjNi42MjcgMCAxMiA1LjM3MyAxMiAxMnoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMzYgMjQ0YzAtNi42MjctNS4zNzMtMTItMTItMTJIMTJjLTYuNjI3IDAtMTIgNS4zNzMtMTIgMTJ2MjRjMCA2LjYyNyA1LjM3MyAxMiAxMiAxMmgxMTJjNi42MjcgMCAxMi01LjM3MyAxMi0xMnoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImEiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik01MTIgMEgwdjUxMmg1MTJ6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+"},"displayName":"Split Out","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1240,"icon":"file:sort.svg","name":"n8n-nodes-base.sort","codex":{"data":{"alias":["Sort","Order","Transform","Array","List","Item","Random"],"details":"","resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.sort/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Sort"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjODI4N0VCIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMzAuNSA0MjIuNWMtNi42MjcgMC0xMi01LjM3My0xMi0xMnYtMzUxYzAtNi42MjcgNS4zNzMtMTIgMTItMTJoMjRjNi42MjcgMCAxMiA1LjM3MyAxMiAxMnYzNTFjMCA2LjYyNy01LjM3MyAxMi0xMiAxMnoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjxwYXRoIGZpbGw9IiM4Mjg3RUIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTM2LjA3NyAzMzMuNDgyYzkuMzk4LTkuMzQ2IDI0LjU5NC05LjMwNCAzMy45NC4wOTVsNzIuNDgzIDcyLjg4NyA3Mi40ODItNzIuODg3YzkuMzQ3LTkuMzk5IDI0LjU0My05LjQ0MSAzMy45NDEtLjA5NXM5LjQ0MSAyNC41NDMuMDk1IDMzLjk0MWwtODkuNSA5MGEyNCAyNCAwIDAgMS0zNC4wMzYgMGwtODkuNS05MGMtOS4zNDYtOS4zOTgtOS4zMDQtMjQuNTk0LjA5NS0zMy45NDFNMzgxLjUgODkuNWM2LjYyNyAwIDEyIDUuMzczIDEyIDEydjM1MWMwIDYuNjI3LTUuMzczIDEyLTEyIDEyaC0yNGMtNi42MjcgMC0xMi01LjM3My0xMi0xMnYtMzUxYzAtNi42MjcgNS4zNzMtMTIgMTItMTJ6IiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48cGF0aCBmaWxsPSIjODI4N0VCIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00NzUuOTIzIDE3OC41MThjLTkuMzk4IDkuMzQ2LTI0LjU5NCA5LjMwNC0zMy45NDEtLjA5NUwzNjkuNSAxMDUuNTM2bC03Mi40ODIgNzIuODg3Yy05LjM0NyA5LjM5OS0yNC41NDMgOS40NDEtMzMuOTQxLjA5NXMtOS40NDEtMjQuNTQzLS4wOTUtMzMuOTQxbDg5LjUtOTBhMjQgMjQgMCAwIDEgMzQuMDM2IDBsODkuNSA5MGM5LjM0NiA5LjM5OCA5LjMwNCAyNC41OTQtLjA5NSAzMy45NDEiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg=="},"displayName":"Sort","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1254,"icon":"file:jwt.svg","name":"n8n-nodes-base.jwt","codex":{"data":{"alias":["Token","Key","JSON","Payload","Sign","Verify","Decode"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.jwt/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/jwt/"}]},"categories":["Development"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"transform\"]","defaults":{"name":"JWT"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgd2lkdGg9IjIwMHB4IgogICBoZWlnaHQ9IjIwMHB4IgogICB2aWV3Qm94PSIwIDAgMjAwIDIwMCIKICAgdmVyc2lvbj0iMS4xIgogICBpZD0ic3ZnMTAiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iPgogIDwhLS0gR2VuZXJhdG9yOiBTa2V0Y2ggMy4zLjIgKDEyMDQzKSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICA8dGl0bGUKICAgICBpZD0idGl0bGUxIj5Hcm91cDwvdGl0bGU+CiAgPGRlc2MKICAgICBpZD0iZGVzYzEiPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMxIj4KICAgIDxmaWx0ZXIKICAgICAgIHN0eWxlPSJjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM6c1JHQiIKICAgICAgIGlkPSJmaWx0ZXIxMSIKICAgICAgIHg9Ii0wLjE4MzQ2NzUzIgogICAgICAgeT0iLTAuMDc2NTIzMDE0IgogICAgICAgd2lkdGg9IjEuMzY2OTM1MSIKICAgICAgIGhlaWdodD0iMS4xNTMwNDYiPgogICAgICA8ZmVHYXVzc2lhbkJsdXIKICAgICAgICAgc3RkRGV2aWF0aW9uPSIxLjIyMzA5MjYiCiAgICAgICAgIGlkPSJmZUdhdXNzaWFuQmx1cjExIiAvPgogICAgPC9maWx0ZXI+CiAgICA8ZmlsdGVyCiAgICAgICBzdHlsZT0iY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzOnNSR0IiCiAgICAgICBpZD0iZmlsdGVyMTIiCiAgICAgICB4PSItMC4xODM0Njc1MyIKICAgICAgIHk9Ii0wLjA3NjUyMzAxNCIKICAgICAgIHdpZHRoPSIxLjM2NjkzNTEiCiAgICAgICBoZWlnaHQ9IjEuMTUzMDQ2Ij4KICAgICAgPGZlR2F1c3NpYW5CbHVyCiAgICAgICAgIHN0ZERldmlhdGlvbj0iMS4yMjMwOTI2IgogICAgICAgICBpZD0iZmVHYXVzc2lhbkJsdXIxMiIgLz4KICAgIDwvZmlsdGVyPgogIDwvZGVmcz4KICA8ZwogICAgIGlkPSJsYXllcjEiIC8+CiAgPGcKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1Ny42MjY0NTYsNDguOTQ4MzExKSIKICAgICBpZD0iU2hhcGUtNiI+CiAgICA8ZwogICAgICAgaWQ9ImcxMiIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDEuODc5MTU0NiwwLDAsMS44NzkxNTQ2LC01MS41ODQxODYsLTQyLjg2MjIyNykiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDQyLjIyMzU0NCwyNy40MzU0OTMgViAtMC4zMDMzMTEgSCA1OC4yMjMyMjYgViAyNy40MzU0OTMgTCA1MC4yMjMzODUsMzguMDU2NjggWiIKICAgICAgICAgZmlsbD0iI2ZmZmZmZiIKICAgICAgICAgaWQ9InBhdGgxMSIKICAgICAgICAgc3R5bGU9ImZpbGw6I2VjZWNlYztzdHJva2Utd2lkdGg6MS4wNDg3NjtmaWx0ZXI6dXJsKCNmaWx0ZXIxMikiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gNTcuNSwyNi45IFYgMCBoIC0xNSBWIDI2LjkgTCA1MCwzNy4yIFoiCiAgICAgICAgIGZpbGw9IiNmZmZmZmYiCiAgICAgICAgIGlkPSJwYXRoMS03IiAvPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDQyLjIyMzU0NCw3Mi41MTc4NzYgViAxMDAuMjU2NjggSCA1OC4yMjMyMjYgViA3Mi41MTc4NzYgTCA1MC4yMjMzODUsNjEuODk2Njg5IFoiCiAgICAgICAgIGZpbGw9IiNmZmZmZmYiCiAgICAgICAgIGlkPSJwYXRoMTAiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNlY2VjZWM7c3Ryb2tlLXdpZHRoOjEuMDQ4NzY7ZmlsdGVyOnVybCgjZmlsdGVyMTEpIiAvPgogICAgICA8cGF0aAogICAgICAgICBkPSJtIDQyLjYyMzMxOSw3My4xNTY5MzYgdiAyNi45MDAwMDQgaCAxNSBWIDczLjE1NjkzNiBsIC03LjUsLTEwLjMgeiIKICAgICAgICAgZmlsbD0iI2ZmZmZmZiIKICAgICAgICAgaWQ9InBhdGgyLTUiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gNTcuNSw3My4xIDczLjMsOTQuOSA4NS41LDg2IDY5LjYsNjQuMyA1Ny41LDYwLjMgWiIKICAgICAgICAgZmlsbD0iIzAwZjJlNiIKICAgICAgICAgaWQ9InBhdGgzLTMiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gNDIuNSwyNi45IDI2LjcsNS4xIDE0LjUsMTQgbCAxNS45LDIxLjcgMTIuMSw0IHoiCiAgICAgICAgIGZpbGw9IiMwMGYyZTYiCiAgICAgICAgIGlkPSJwYXRoNC01IiAvPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDMwLjQsMzUuNyA0LjgsMjcuNCAwLjEsNDEuNyAyNS43LDUwIDM3LjksNDYuMSBaIgogICAgICAgICBmaWxsPSIjMDBiOWYxIgogICAgICAgICBpZD0icGF0aDUtNiIgLz4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSA2Mi4xLDUzLjkgNjkuNiw2NC4zIDk1LjIsNzIuNiA5OS45LDU4LjMgNzQuMyw1MCBaIgogICAgICAgICBmaWxsPSIjMDBiOWYxIgogICAgICAgICBpZD0icGF0aDYtMiIgLz4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSA3NC4zLDUwIDk5LjksNDEuNyA5NS4yLDI3LjQgNjkuNiwzNS43IDYyLjEsNDYuMSBaIgogICAgICAgICBmaWxsPSIjZDYzYWZmIgogICAgICAgICBpZD0icGF0aDctOSIgLz4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAyNS43LDUwIDAuMSw1OC4zIDQuOCw3Mi42IDMwLjQsNjQuMyAzNy45LDUzLjkgWiIKICAgICAgICAgZmlsbD0iI2Q2M2FmZiIKICAgICAgICAgaWQ9InBhdGg4LTEiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMzAuNCw2NC4zIDE0LjUsODYgMjYuNyw5NC45IDQyLjUsNzMuMSBWIDYwLjMgWiIKICAgICAgICAgZmlsbD0iI2ZiMDE1YiIKICAgICAgICAgaWQ9InBhdGg5LTIiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gNjkuNiwzNS43IDg1LjUsMTQgNzMuMyw1LjEgNTcuNSwyNi45IHYgMTIuOCB6IgogICAgICAgICBmaWxsPSIjZmIwMTViIgogICAgICAgICBpZD0icGF0aDEwLTciIC8+CiAgICA8L2c+CiAgPC9nPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTEyIj4KICAgIDxyZGY6UkRGPgogICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOnRpdGxlPkdyb3VwPC9kYzp0aXRsZT4KICAgICAgPC9jYzpXb3JrPgogICAgPC9yZGY6UkRGPgogIDwvbWV0YWRhdGE+Cjwvc3ZnPgo="},"displayName":"JWT","typeVersion":1,"nodeCategories":[{"id":5,"name":"Development"}]},{"id":1315,"icon":"fa:table","name":"n8n-nodes-base.dataTable","codex":{"data":{"alias":["data","table","knowledge","data table","table","sheet","database","data base","mysql","postgres","postgresql","airtable","supabase","noco","notion"],"details":"Data table","resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.datatable/"}]},"categories":["Core Nodes","Development"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"input\",\"transform\"]","defaults":{"name":"Data table"},"iconData":{"icon":"table","type":"icon"},"displayName":"Data table","typeVersion":1,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]}],"categories":[{"id":41,"name":"Ticket Management"},{"id":49,"name":"AI Summarization"}],"image":[]}}