{"name":"Dynamic credentials using expressions","nodes":[{"id":"cc6f2b1e-0ed0-4d22-8a44-d7223ba283b4","name":"n8n Form Trigger","type":"n8n-nodes-base.formTrigger","position":[560,520],"webhookId":"da4071f2-7550-4dae-aa48-8bced4291643","parameters":{"path":"da4071f2-7550-4dae-aa48-8bced4291643","formTitle":"Test dynamic credentials","formFields":{"values":[{"fieldLabel":"Enter your NASA API key","requiredField":true}]},"responseMode":"responseNode","formDescription":"This form is for testing an n8n workflow that demonstrates setting credentials with expressions."},"typeVersion":2,"notes":"This formTrigger node performs automated tasks as part of the workflow."},{"id":"ef336bae-3d4f-419c-ab5c-b9f0de89f170","name":"NASA","type":"n8n-nodes-base.nasa","position":[900,520],"parameters":{"additionalFields":{}},"credentials":{"nasaApi":{"id":"QDDBOZOD6k3ijL5t","name":"NASA account"}},"typeVersion":1,"notes":"This nasa node performs automated tasks as part of the workflow."},{"id":"143bcdb6-aca0-4dd8-9204-9777271cd230","name":"Respond to Webhook","type":"n8n-nodes-base.respondToWebhook","position":[1220,520],"parameters":{"options":{},"redirectURL":"{{ $env.BASE_URL }}","respondWith":"redirect"},"typeVersion":1,"notes":"This respondToWebhook node performs automated tasks as part of the workflow."},{"id":"0a0dee23-fa16-4f09-b5e0-856f47fb53d0","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[120,140],"parameters":{"color":4,"width":322,"height":564,"content":"This workflow shows how to set credentials dynamically using expressions.\n\n\nFirst, set up your NASA credential: \n\n1. Create a new NASA credential.\n1. Hover over **API Key**.\n1. Toggle **Expression** on.\n1. In the **API Key** field, enter `{{ $json[\"Enter your NASA API key\"] }}`.\n\n\nThen, test the workflow:\n\n1. Get an [API key from NASA]({{ $env.API_BASE_URL }}\n2. Select **Test workflow**\n3. Enter your key using the form.\n4. The workflow runs and sends you to the NASA picture of the day.\n\n\nFor more information on expressions, refer to [n8n documentation | Expressions]({{ $env.WEBHOOK_URL }}"},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."},{"id":"dd766e32-334d-4e46-9daa-7800b134a3a5","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[500,380],"parameters":{"height":319,"content":"User submits an API key using the form"},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."},{"id":"3d8f02e6-e029-41dc-89ad-0f5cffe09348","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[820,380],"parameters":{"color":5,"height":319,"content":"The workflow passes the key to the NASA node. You can reference the value using the expression `$json[\"Enter your NASA API key\"]`. This is also available to the node credential. "},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."},{"id":"096eb6ab-c276-4687-9dc0-50e16a8f709a","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[1140,380],"parameters":{"height":319,"content":"The Respond to Webhook node controls the form response (in this example, redirecting the user to an image)"},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."}],"connections":{"Respond to Webhook":{"main":[[],[],[],[],[],[],[],[],[]]}},"settings":{"executionOrder":"v1","saveManualExecutions":true,"callerPolicy":"workflowsFromSameOwner","errorWorkflow":null,"timezone":"UTC","executionTimeout":3600,"maxExecutions":1000,"retryOnFail":true,"retryCount":3,"retryDelay":1000},"description":"Automated workflow: Dynamic credentials using expressions. This workflow integrates 5 different services: stickyNote, formTrigger, respondToWebhook, stopAndError, nasa. It contains 9 nodes and follows best practices for error handling and security.","meta":{"instanceId":"workflow-23ee5122","versionId":"1.0.0","createdAt":"2025-09-29T07:07:44.925849","updatedAt":"2025-09-29T07:07:44.925867","owner":"n8n-user","license":"MIT","category":"automation","status":"active","priority":"high","environment":"production"},"notes":"Excellent quality workflow: Dynamic credentials using expressions. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}