{"workflow":{"id":14629,"name":"Create branded social proof Instagram posts from Airtable reviews with Bannerbear and UploadToURL","views":0,"recentViews":0,"totalViews":0,"createdAt":"2026-04-02T10:18:45.982Z","description":"# Branded Social Proof Automation via Bannerbear and uploadtourl\n\nConvert your customer satisfaction into high-converting social media content with this fully automated social proof pipeline. This workflow scans your database for top-tier reviews, generates a branded quote card, and publishes it directly to Instagram, ensuring a consistent stream of credibility for your brand.\n\n---\n\n## 🎯 What This Workflow Does\n\nThis template manages the entire lifecycle of a testimonial post, from data retrieval to final notification:\n\n---\n\n### 🔄 Review Dispatch Automation\n\n- **Schedule Trigger:** Automatically fires daily at 10:00 AM; cadence can be adjusted via cron expression.\n- **Airtable — Fetch Review:** Retrieves the oldest 5-star, unposted record using a specific filter formula to prevent duplicates.\n- **IF — Has Valid Review?:** Validates the data; the workflow exits gracefully if no new reviews are found and only proceeds when a 5-star review is ready.\n\n---\n\n### ✍️🎨 Dynamic Asset Generation\n\n- **Code — Prepare Payload:** Formats review data into a JSON body, mapping fields like name and truncated text to Bannerbear layers while generating the final Instagram caption.\n- **HTTP — Create Image Job:** Submits the request to the Bannerbear API and retrieves a unique job `uid` for asynchronous processing.\n\n---\n\n### 🔁 Status Verification & Media Hosting\n\n- **HTTP — Poll Status:** Regularly checks the job status via the Bannerbear API to see if the rendering is finished.\n- **IF — Image Ready?:** Confirms completion; if still processing, it triggers a \"Wait 3s + re-poll\" loop for up to 5 retries before passing the `image_url` forward.\n- **uploadtourl Bridge:** Mandatory CDN step that uploads the rendered image binary and returns a stable public URL, which is required for Instagram's API to access the file.\n\n---\n\n### 📸 Instagram Publishing & Tracking\n\n- **IG — Create & Publish:** Executes the two-step Instagram Graph API flow to create a media container and publish it to your feed after a safe 6-second buffer.\n- **Airtable — Mark as Posted:** Updates the original record with the Post ID and timestamp to prevent duplicate posting.\n- **Slack Notification:** Sends a final team alert with a preview of the card and the live link.\n\n---\n\n## ✨ Key Features\n\n- **Adaptive Polling:** Instead of a static wait time, the workflow intelligently polls Bannerbear until the image is confirmed ready.\n- **Automated CDN Bridge:** Uses uploadtourl to bypass Instagram's rejection of base64/binary payloads by providing a direct public URL.\n- **Intelligent Truncation:** Automatically shortens long reviews to 180 characters to ensure perfect readability on your branded quote card.\n- **Full Audit Trail:** Every post is logged back to Airtable with its live Instagram ID and CDN URL for easy reporting.\n\n---\n\n## 💼 Perfect For\n\n- **SaaS Companies:** Showcasing user feedback and \"Love letters\" from customers.\n- **E-commerce Brands:** Sharing 5-star product reviews to build buyer confidence.\n- **Service Providers:** Highlighting client testimonials on a regular schedule.\n- **Digital Marketers:** Automating the \"Social Proof\" pillar of a social media strategy.\n\n---\n\n## 🔧 What You'll Need\n\n### Required Integrations\n\n- **Bannerbear:** API key and a Template ID with layers named `reviewer_name`, `review_text`, and `star_label`.\n- **Instagram Graph API:** A Business or Creator account access token.\n- **uploadtourl:** Credentials configured in n8n for mandatory media hosting.\n- **Airtable:** A base with a `Reviews` table containing fields for the name, text, and rating.","workflow":{"meta":{"instanceId":"277842713620d9f5554de3b1518b865a152c8c4db680008bd8aec536fc18b4a8","templateCredsSetupCompleted":true},"nodes":[{"id":"ddbe3e51-4161-460d-99a1-a6e483e0d881","name":"Upload to URL","type":"n8n-nodes-uploadtourl.uploadToUrl","position":[8288,3424],"parameters":{"binaryPropertyName":"cardImage"},"typeVersion":1},{"id":"c9d602f5-fa62-4ceb-867c-c43e44731ae3","name":"Template Overview1","type":"n8n-nodes-base.stickyNote","position":[5728,2384],"parameters":{"width":480,"height":800,"content":"##  Branded Social Proof Automation\n### Bannerbear + Upload to URL  Instagram\n\n**What this does:**\nDaily schedule fetches the oldest unposted 5-star review from Airtable, generates a branded quote card via Bannerbear, uploads it via Upload to URL to get a public CDN link, then publishes to Instagram. Marks the review as posted and notifies Slack.\n\n**Flow:**\n1.  Schedule -- daily at 10 AM\n2.  Airtable -- fetch oldest unposted 5 review\n3.  IF -- skip gracefully if none found\n4.  Code -- build Bannerbear payload + IG caption\n5.  HTTP -- Bannerbear: submit image generation job\n6.  Wait 5s -- initial render buffer\n7.  HTTP -- Bannerbear: poll for completed status\n8.  IF -- completed vs still pending\n9.  HTTP -- fetch rendered image as binary\n10.  Upload to URL -- upload binary, get public CDN URL\n11.  Code -- merge CDN URL + caption fields\n12.  HTTP -- IG: create media container\n13.  Wait 6s -- IG processing buffer\n14.  HTTP -- IG: publish container\n15.  Airtable -- mark review as posted\n16.  Slack -- notify team\n\n**Required env vars:**\n'IG_USER_ID' 'IG_ACCESS_TOKEN'\n'BANNERBEAR_API_KEY' 'BANNERBEAR_TEMPLATE_ID'\n'AIRTABLE_BASE_ID' 'SLACK_CHANNEL_ID'\n\n**Airtable Reviews table fields:**\n'Reviewer Name' . 'Review Text' . 'Rating'\n'Posted' (checkbox) . 'Submitted At' (date)\n'Instagram Post ID' . 'Posted At' . 'Card Image URL'\n\n**Bannerbear template layer names:**\n'reviewer_name' . 'review_text' . 'star_label'"},"typeVersion":1},{"id":"cdf0a485-7827-4883-a7ba-0941a8694c60","name":"Sticky Nodes 1-","type":"n8n-nodes-base.stickyNote","position":[6320,3200],"parameters":{"color":7,"width":560,"height":380,"content":"###  Nodes 1-3: Schedule, Fetch & Gate\n\n**Schedule Trigger** fires daily at 10 AM.\n\n**Airtable -- Fetch Review** uses 'filterByFormula' to retrieve only the oldest unposted 5-star record. 'AND({Rating}=5, {Posted}=FALSE())' + sort by 'Submitted At asc' + 'maxRecords: 1' ensures FIFO queue dispatch.\n\n**IF -- Has Valid Review?** exits cleanly on false branch if no records are found."},"typeVersion":1},{"id":"d26ae5a7-904b-4468-bf14-e4d9df09508f","name":"Sticky Nodes 4-","type":"n8n-nodes-base.stickyNote","position":[6960,3232],"parameters":{"color":7,"width":408,"height":340,"content":"###  Nodes 4-5: Build Payload & Generate Image\n\n**Code -- Prepare Payload** formats review data into Bannerbear modifications array, truncates card text to 180 chars, and builds the full Instagram caption (max 2200 chars).\n\n**HTTP -- Bannerbear Create Job** POSTs to '/v2/images'. Returns a 'uid' for polling. Generation is async -- initial response is 'pending'."},"typeVersion":1},{"id":"78dc78cc-4973-435c-92b9-9fe61abb279a","name":"Sticky Nodes 6-","type":"n8n-nodes-base.stickyNote","position":[7408,3200],"parameters":{"color":7,"width":500,"height":380,"content":"###  Nodes 6-8: Poll Loop\n\n**Wait 5s** -- initial render buffer.\n\n**HTTP -- Poll Status** calls 'GET /v2/images/{uid}'. Returns 'status: pending' or 'status: completed'.\n\n**IF -- Image Ready?** branches on 'completed'. False branch exits -- extend with a loop back to Wait for full retry logic.\n\nWhen completed, 'image_url' is the rendered PNG CDN link."},"typeVersion":1},{"id":"05441a5f-7a54-4e80-81d0-5b63feb34c98","name":"Sticky Nodes 9-","type":"n8n-nodes-base.stickyNote","position":[8032,3184],"parameters":{"color":7,"width":540,"height":420,"content":"###  Nodes 9-11: Fetch Binary  Upload to URL  Merge\n\n**HTTP Fetch Rendered Card** downloads the Bannerbear image as a binary ('responseFormat: file', stored in 'cardImage').\n\n**Upload to URL** -- the mandatory CDN bridge. Instagram's API requires a direct public HTTPS image URL; it rejects base64 and binary. This node uploads the binary and returns a 'public_url'.\n\n**Code -- Merge** combines the CDN URL with caption and metadata from the earlier Code node."},"typeVersion":1},{"id":"b1a9d493-79ac-46d2-8c66-1ab34a00d87c","name":"Sticky Nodes 12-","type":"n8n-nodes-base.stickyNote","position":[8720,3152],"parameters":{"color":7,"width":1068,"height":440,"content":"###  Nodes 12-16: Publish, Log & Notify\n\n**IG Create Media Container** POSTs to '/media' with CDN URL + caption. Returns 'container_id'.\n\n**Wait 6s** -- IG processing buffer.\n\n**IG Publish Container** calls '/media_publish' with 'creation_id'. Returns live Post ID.\n\n**Airtable -- Mark as Posted** updates record: 'Posted=true', Post ID, timestamp, card URL. Prevents re-posting.\n\n**Slack -- Notify Team** sends reviewer name, review snippet, Post ID, and card URL."},"typeVersion":1},{"id":"682ccf50-9530-4130-9c32-4265737b0f1b","name":"Schedule Trigger1","type":"n8n-nodes-base.scheduleTrigger","position":[6352,3424],"parameters":{"rule":{"interval":[{"triggerAtHour":10}]}},"typeVersion":1.1},{"id":"67376d29-bd02-478a-94e8-8e524264d847","name":"Airtable Fetch Review1","type":"n8n-nodes-base.airtable","position":[6528,3424],"parameters":{"base":{"__rl":true,"mode":"id","value":"={{ $env.AIRTABLE_BASE_ID }}"},"table":{"__rl":true,"mode":"name","value":"Reviews"},"operation":"list"},"typeVersion":2},{"id":"74751a43-093e-4ec5-bad5-e51d981bcfd7","name":"IF Has Valid Review1","type":"n8n-nodes-base.if","position":[6752,3424],"parameters":{"options":{},"conditions":{"options":{"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"cond-has-review","operator":{"type":"string","operation":"notEmpty"},"leftValue":"={{ $json.id }}","rightValue":""}]}},"typeVersion":2},{"id":"c6ac9392-9df0-41c3-babf-2abb3004fbe7","name":"Code Prepare Bannerbear Payload1","type":"n8n-nodes-base.code","position":[7008,3424],"parameters":{"jsCode":"//  Prepare Bannerbear payload + IG caption \nconst review = $input.first().json;\nconst fields = review.fields || review;\n\nconst reviewerName = fields['Reviewer Name'] || 'A Happy Customer';\nconst reviewText   = fields['Review Text']   || '';\nconst rating       = Number(fields['Rating'] || 5);\nconst recordId     = review.id;\n\n// Truncate review text for card layer (180 char max)\nconst cardText = reviewText.length > 180\n  ? reviewText.substring(0, 177) + '...'\n  : reviewText;\n\n// Stars string for card layer\nconst stars = ''.repeat(Math.min(rating, 5));\n\n// Bannerbear modifications  layer names must match your template\nconst modifications = [\n  { name: 'reviewer_name', text: ' ' + reviewerName },\n  { name: 'review_text',   text: '\"' + cardText + '\"' },\n  { name: 'star_label',    text: stars },\n];\n\n// Full Instagram caption (2200 char limit)\nconst captionReview = reviewText.length > 300\n  ? reviewText.substring(0, 297) + '...'\n  : reviewText;\n\nconst hashtagBlock = '#customerreview #5stars #testimonial #socialproof #happycustomer #review #customerexperience';\n\nlet finalCaption = [\n  stars + ' Real words from a real customer.',\n  '',\n  '\"' + captionReview + '\"',\n  ' ' + reviewerName,\n  '',\n  ' See why hundreds of customers trust us.',\n  ' Link in bio.',\n  '',\n  hashtagBlock,\n].join('\\n').trim();\n\nif (finalCaption.length > 2200) {\n  finalCaption = finalCaption.substring(0, 2196) + '...';\n}\n\nconsole.log('[Payload] Reviewer:', reviewerName, '| Record:', recordId);\n\nreturn [{\n  json: {\n    record_id:              recordId,\n    reviewer_name:          reviewerName,\n    review_text:            reviewText,\n    card_text:              cardText,\n    stars:                  stars,\n    modifications:          modifications,\n    final_caption:          finalCaption,\n    ig_user_id:             $env.IG_USER_ID,\n    bannerbear_template_id: $env.BANNERBEAR_TEMPLATE_ID,\n  }\n}];"},"typeVersion":2},{"id":"4770b12d-463e-49b1-b90f-495d66f4e105","name":"HTTP Bannerbear Create Job1","type":"n8n-nodes-base.httpRequest","position":[7232,3424],"parameters":{"url":"https://api.bannerbear.com/v2/images","body":"={{ JSON.stringify({ template: $json.bannerbear_template_id, modifications: $json.modifications }) }}","method":"POST","options":{},"sendBody":true,"contentType":"raw","sendHeaders":true,"rawContentType":"application/json","headerParameters":{"parameters":[{"name":"Authorization","value":"=Bearer {{ $env.BANNERBEAR_API_KEY }}"},{"name":"Content-Type","value":"application/json"}]}},"typeVersion":4.1},{"id":"861f9015-8ce5-45aa-a5cb-5c00b8502552","name":"Wait Before Poll1","type":"n8n-nodes-base.wait","position":[7440,3424],"webhookId":"810e759f-5b2b-44a5-b41e-9e2334811327","parameters":{"unit":"seconds","amount":5},"typeVersion":1},{"id":"1cb0e82b-e0cb-4d7a-8ca2-14023323a997","name":"HTTP Bannerbear Poll Status1","type":"n8n-nodes-base.httpRequest","position":[7600,3424],"parameters":{"url":"=https://api.bannerbear.com/v2/images/{{ $('HTTP Bannerbear Create Job1').first().json.uid }}","options":{},"sendHeaders":true,"headerParameters":{"parameters":[{"name":"Authorization","value":"=Bearer {{ $env.BANNERBEAR_API_KEY }}"}]}},"typeVersion":4.1},{"id":"d0edef0c-82cb-4abc-97e5-399940d387b1","name":"IF Image Ready1","type":"n8n-nodes-base.if","position":[7792,3424],"parameters":{"options":{},"conditions":{"options":{"leftValue":"","caseSensitive":false,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"cond-image-ready","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.status }}","rightValue":"completed"}]}},"typeVersion":2},{"id":"2b1a94a8-57d9-47a9-8c30-65cc33059a66","name":"HTTP Fetch Rendered Card1","type":"n8n-nodes-base.httpRequest","position":[8096,3424],"parameters":{"url":"={{ $json.image_url }}","options":{"response":{"response":{"responseFormat":"file","outputPropertyName":"cardImage"}}}},"typeVersion":4.1},{"id":"67a627e7-1f27-4c92-82e6-d101da62b3a6","name":"Code Merge Upload and Caption1","type":"n8n-nodes-base.code","position":[8448,3424],"parameters":{"jsCode":"//  Merge CDN URL from Upload to URL + caption from Code node \nconst uploadResult = $input.first().json;\nconst prepData     = $('Code Prepare Bannerbear Payload1').first().json;\n\n// Upload to URL returns the public URL under one of these field names\nconst publicImageUrl =\n  uploadResult.public_url   ||\n  uploadResult.url          ||\n  uploadResult.file_url     ||\n  uploadResult.cdn_url      ||\n  uploadResult.imageUrl     ||\n  '';\n\nif (!publicImageUrl) {\n  throw new Error(\n    'Upload to URL returned no public URL. Available fields: ' +\n    JSON.stringify(Object.keys(uploadResult))\n  );\n}\n\nconsole.log('[Merge] CDN URL:', publicImageUrl);\n\nreturn [{\n  json: {\n    public_image_url: publicImageUrl,\n    final_caption:    prepData.final_caption,\n    ig_user_id:       prepData.ig_user_id,\n    record_id:        prepData.record_id,\n    reviewer_name:    prepData.reviewer_name,\n    review_text:      prepData.review_text,\n  }\n}];"},"typeVersion":2},{"id":"4a29c68e-c112-4e18-b6dc-ef91dd6442b8","name":"IG Create Media Container1","type":"n8n-nodes-base.httpRequest","position":[8768,3424],"parameters":{"url":"=https://graph.facebook.com/v19.0/{{ $json.ig_user_id }}/media","method":"POST","options":{},"sendQuery":true,"queryParameters":{"parameters":[{"name":"image_url","value":"={{ $json.public_image_url }}"},{"name":"caption","value":"={{ $json.final_caption }}"},{"name":"access_token","value":"={{ $env.IG_ACCESS_TOKEN }}"}]}},"typeVersion":4.1},{"id":"82c6802c-24f9-4527-b60c-c6a9527bd24b","name":"Wait IG Buffer1","type":"n8n-nodes-base.wait","position":[8992,3424],"webhookId":"d197fc05-0d7b-4614-951a-78589ba15918","parameters":{"unit":"seconds","amount":6},"typeVersion":1},{"id":"a6ab9a7b-8e90-4ab9-be81-4d030915d784","name":"IG Publish Container1","type":"n8n-nodes-base.httpRequest","position":[9200,3424],"parameters":{"url":"=https://graph.facebook.com/v19.0/{{ $('Code Merge Upload and Caption1').first().json.ig_user_id }}/media_publish","method":"POST","options":{},"sendQuery":true,"queryParameters":{"parameters":[{"name":"creation_id","value":"={{ $('IG Create Media Container1').first().json.id }}"},{"name":"access_token","value":"={{ $env.IG_ACCESS_TOKEN }}"}]}},"typeVersion":4.1},{"id":"7b4c4b8b-84af-4ddc-9631-e8ae20a401ac","name":"Airtable Mark as Posted1","type":"n8n-nodes-base.airtable","position":[9424,3424],"parameters":{"base":{"__rl":true,"mode":"id","value":"={{ $env.AIRTABLE_BASE_ID }}"},"table":{"__rl":true,"mode":"name","value":"Reviews"},"columns":{"value":{"Posted":true,"Posted At":"={{ new Date().toISOString() }}","Card Image URL":"={{ $('Code Merge Upload and Caption1').first().json.public_image_url }}","Instagram Post ID":"={{ $('IG Publish Container1').first().json.id }}"},"schema":[],"mappingMode":"defineBelow","matchingColumns":["id"]},"options":{},"operation":"update"},"typeVersion":2},{"id":"8b7e37af-9d23-4128-a245-b02757edde95","name":"Slack Notify Team1","type":"n8n-nodes-base.slack","position":[9648,3424],"webhookId":"d513f34b-2797-498e-b088-aadd42db635f","parameters":{"text":"=[5-star] *Social Proof Post Published!*\n\n*Reviewer:* {{ $('Code Merge Upload and Caption1').first().json.reviewer_name }}\n*Post ID:* {{ $('IG Publish Container1').first().json.id }}\n*Posted At:* {{ new Date().toLocaleString() }}\n\n*Review:* {{ $('Code Merge Upload and Caption1').first().json.review_text.substring(0, 120) }}...\n\n*Card URL:* {{ $('Code Merge Upload and Caption1').first().json.public_image_url }}","select":"channel","channelId":{"__rl":true,"mode":"id","value":"={{ $env.SLACK_CHANNEL_ID }}"},"otherOptions":{},"authentication":"oAuth2"},"typeVersion":2.2}],"pinData":{},"connections":{"Upload to URL":{"main":[[{"node":"Code Merge Upload and Caption1","type":"main","index":0}]]},"IF Image Ready1":{"main":[[{"node":"HTTP Fetch Rendered Card1","type":"main","index":0}]]},"Wait IG Buffer1":{"main":[[{"node":"IG Publish Container1","type":"main","index":0}]]},"Schedule Trigger1":{"main":[[{"node":"Airtable Fetch Review1","type":"main","index":0}]]},"Wait Before Poll1":{"main":[[{"node":"HTTP Bannerbear Poll Status1","type":"main","index":0}]]},"IF Has Valid Review1":{"main":[[{"node":"Code Prepare Bannerbear Payload1","type":"main","index":0}]]},"IG Publish Container1":{"main":[[{"node":"Airtable Mark as Posted1","type":"main","index":0}]]},"Airtable Fetch Review1":{"main":[[{"node":"IF Has Valid Review1","type":"main","index":0}]]},"Airtable Mark as Posted1":{"main":[[{"node":"Slack Notify Team1","type":"main","index":0}]]},"HTTP Fetch Rendered Card1":{"main":[[{"node":"Upload to URL","type":"main","index":0}]]},"IG Create Media Container1":{"main":[[{"node":"Wait IG Buffer1","type":"main","index":0}]]},"HTTP Bannerbear Create Job1":{"main":[[{"node":"Wait Before Poll1","type":"main","index":0}]]},"HTTP Bannerbear Poll Status1":{"main":[[{"node":"IF Image Ready1","type":"main","index":0}]]},"Code Merge Upload and Caption1":{"main":[[{"node":"IG Create Media Container1","type":"main","index":0}]]},"Code Prepare Bannerbear Payload1":{"main":[[{"node":"HTTP Bannerbear Create Job1","type":"main","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":22,"nodeTypes":{"n8n-nodes-base.if":{"count":2},"n8n-nodes-base.code":{"count":2},"n8n-nodes-base.wait":{"count":2},"n8n-nodes-base.slack":{"count":1},"n8n-nodes-base.airtable":{"count":2},"n8n-nodes-base.stickyNote":{"count":6},"n8n-nodes-base.httpRequest":{"count":5},"n8n-nodes-base.scheduleTrigger":{"count":1},"n8n-nodes-uploadtourl.uploadToUrl":{"count":1}}},"status":"published","readyToDemo":null,"user":{"name":"Jitesh Dugar","username":"jiteshdugar","bio":"AI Automation Specialist - OpenAI, CRM & Automation Expert with a solid understanding of various tools that include Zapier, Make, Zoho CRM, Hubspot, Google Sheets, Airtable, Pipedrive, Google Analytics, and more.","verified":true,"links":["https://www.linkedin.com/in/jiteshdugar"],"avatar":"https://gravatar.com/avatar/edaa3abb99806b0586dced559d0a5417f24a507e7c4464a63960f0638a4b1b90?r=pg&d=retro&size=200"},"nodes":[{"id":2,"icon":"file:airtable.svg","name":"n8n-nodes-base.airtable","codex":{"data":{"resources":{"generic":[{"url":"https://n8n.io/blog/2021-goals-level-up-your-vocabulary-with-vonage-and-n8n/","icon":"🎯","label":"2021 Goals: Level Up Your Vocabulary With Vonage and n8n"},{"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/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/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/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"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/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/learn-to-build-powerful-api-endpoints-using-webhooks/","icon":"🧰","label":"Learn to Build Powerful API Endpoints Using Webhooks"},{"url":"https://n8n.io/blog/sending-sms-the-low-code-way-with-airtable-twilio-programmable-sms-and-n8n/","icon":"📱","label":"Sending SMS the Low-Code Way with Airtable, Twilio Programmable SMS, and n8n"},{"url":"https://n8n.io/blog/automating-conference-organization-processes-with-n8n/","icon":"🙋‍♀️","label":"Automating Conference Organization Processes with n8n"},{"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/app-nodes/n8n-nodes-base.airtable/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/airtable/"}]},"categories":["Data & Storage"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"input\"]","defaults":{"name":"Airtable"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMDAgMTcwIj48cGF0aCBmaWxsPSIjZmNiNDAwIiBkPSJNODkgNC44IDE2LjIgMzQuOWMtNC4xIDEuNy00IDcuNC4xIDkuMWw3My4yIDI5YzYuNCAyLjYgMTMuNiAyLjYgMjAgMGw3My4yLTI5YzQuMS0xLjYgNC4xLTcuNC4xLTkuMWwtNzMtMzAuMUMxMDMuMiAyIDk1LjcgMiA4OSA0LjgiLz48cGF0aCBmaWxsPSIjMThiZmZmIiBkPSJNMTA1LjkgODguOXY3Mi41YzAgMy40IDMuNSA1LjggNi43IDQuNWw4MS42LTMxLjdjMS45LS43IDMuMS0yLjUgMy4xLTQuNVY1Ny4yYzAtMy40LTMuNS01LjgtNi43LTQuNUwxMDkgODQuM2MtMS45LjgtMy4xIDIuNi0zLjEgNC42Ii8+PHBhdGggZmlsbD0iI2Y4MmI2MCIgZD0ibTg2LjkgOTIuNi0yNC4yIDExLjctMi41IDEuMkw5LjEgMTMwYy0zLjIgMS42LTcuNC0uOC03LjQtNC40VjU3LjVjMC0xLjMuNy0yLjQgMS42LTMuM3EuNi0uNiAxLjItLjljMS4yLS43IDMtLjkgNC40LS4zbDc3LjUgMzAuN2M0IDEuNSA0LjMgNy4xLjUgOC45Ii8+PHBhdGggZmlsbD0iI2JhMWU0NSIgZD0ibTg2LjkgOTIuNi0yNC4yIDExLjctNTkuNC01MHEuNi0uNiAxLjItLjljMS4yLS43IDMtLjkgNC40LS4zbDc3LjUgMzAuN2M0IDEuNCA0LjMgNyAuNSA4LjgiLz48L3N2Zz4="},"displayName":"Airtable","typeVersion":2,"nodeCategories":[{"id":3,"name":"Data & Storage"}]},{"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":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":514,"icon":"fa:pause-circle","name":"n8n-nodes-base.wait","codex":{"data":{"alias":["pause","sleep","delay","timeout"],"resources":{"generic":[{"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/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.wait/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Flow"]}}},"group":"[\"organization\"]","defaults":{"name":"Wait","color":"#804050"},"iconData":{"icon":"pause-circle","type":"icon"},"displayName":"Wait","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"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":834,"icon":"file:code.svg","name":"n8n-nodes-base.code","codex":{"data":{"alias":["cpde","Javascript","JS","Python","Script","Custom Code","Function"],"details":"The Code node allows you to execute JavaScript in your workflow.","resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.code/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Code"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTcxXzQ0MSkiPgo8cGF0aCBkPSJNMTcwLjI4MyA0OEgxOTYuNUMyMDMuMTI3IDQ4IDIwOC41IDQyLjYyNzQgMjA4LjUgMzZWMTJDMjA4LjUgNS4zNzI1OCAyMDMuMTI3IDAgMTk2LjUgMEgxNzAuMjgzQzEyNi4xIDAgOTAuMjgzIDM1LjgxNzIgOTAuMjgzIDgwVjE3NkM5MC4yODMgMjA2LjkyOCA2NS4yMTA5IDIzMiAzNC4yODMgMjMySDIzQzE2LjM3MjYgMjMyIDExIDIzNy4zNzIgMTEgMjQ0VjI2OEMxMSAyNzQuNjI3IDE2LjM3MjQgMjgwIDIyLjk5OTYgMjgwTDM0LjI4MyAyODBDNjUuMjEwOSAyODAgOTAuMjgzIDMwNS4wNzIgOTAuMjgzIDMzNlY0NDBDOTAuMjgzIDQ3OS43NjQgMTIyLjUxOCA1MTIgMTYyLjI4MyA1MTJIMTk2LjVDMjAzLjEyNyA1MTIgMjA4LjUgNTA2LjYyNyAyMDguNSA1MDBWNDc2QzIwOC41IDQ2OS4zNzMgMjAzLjEyNyA0NjQgMTk2LjUgNDY0SDE2Mi4yODNDMTQ5LjAyOCA0NjQgMTM4LjI4MyA0NTMuMjU1IDEzOC4yODMgNDQwVjMzNkMxMzguMjgzIDMwOS4wMjIgMTI4LjAxMSAyODQuNDQzIDExMS4xNjQgMjY1Ljk2MUMxMDYuMTA5IDI2MC40MTYgMTA2LjEwOSAyNTEuNTg0IDExMS4xNjQgMjQ2LjAzOUMxMjguMDExIDIyNy41NTcgMTM4LjI4MyAyMDIuOTc4IDEzOC4yODMgMTc2VjgwQzEzOC4yODMgNjIuMzI2OSAxNTIuNjEgNDggMTcwLjI4MyA0OFoiIGZpbGw9IiNGRjk5MjIiLz4KPHBhdGggZD0iTTMwNSAzNkMzMDUgNDIuNjI3NCAzMTAuMzczIDQ4IDMxNyA0OEgzNDIuOTc5QzM2MC42NTIgNDggMzc0Ljk3OCA2Mi4zMjY5IDM3NC45NzggODBWMTc2QzM3NC45NzggMjAyLjk3OCAzODUuMjUxIDIyNy41NTcgNDAyLjA5OCAyNDYuMDM5QzQwNy4xNTMgMjUxLjU4NCA0MDcuMTUzIDI2MC40MTYgNDAyLjA5OCAyNjUuOTYxQzM4NS4yNTEgMjg0LjQ0MyAzNzQuOTc4IDMwOS4wMjIgMzc0Ljk3OCAzMzZWNDMyQzM3NC45NzggNDQ5LjY3MyAzNjAuNjUyIDQ2NCAzNDIuOTc5IDQ2NEgzMTdDMzEwLjM3MyA0NjQgMzA1IDQ2OS4zNzMgMzA1IDQ3NlY1MDBDMzA1IDUwNi42MjcgMzEwLjM3MyA1MTIgMzE3IDUxMkgzNDIuOTc5QzM4Ny4xNjEgNTEyIDQyMi45NzggNDc2LjE4MyA0MjIuOTc4IDQzMlYzMzZDNDIyLjk3OCAzMDUuMDcyIDQ0OC4wNTEgMjgwIDQ3OC45NzkgMjgwSDQ5MEM0OTYuNjI3IDI4MCA1MDIgMjc0LjYyOCA1MDIgMjY4VjI0NEM1MDIgMjM3LjM3MyA0OTYuNjI4IDIzMiA0OTAgMjMyTDQ3OC45NzkgMjMyQzQ0OC4wNTEgMjMyIDQyMi45NzggMjA2LjkyOCA0MjIuOTc4IDE3NlY4MEM0MjIuOTc4IDM1LjgxNzIgMzg3LjE2MSAwIDM0Mi45NzkgMEgzMTdDMzEwLjM3MyAwIDMwNSA1LjM3MjU4IDMwNSAxMlYzNloiIGZpbGw9IiNGRjk5MjIiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTcxXzQ0MSI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="},"displayName":"Code","typeVersion":2,"nodeCategories":[{"id":5,"name":"Development"},{"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"}]}],"categories":[{"id":33,"name":"Social Media"},{"id":51,"name":"Multimodal AI"}],"image":[]}}