Objective: Call a public API and see how n8n receives and displays JSON data from an external server.
- Nodes Used:
When clicking "Execute Workflow" → Get Cat Fact
- Concept: Simple GET request to a public API endpoint and inspecting the JSON response.
- Exercise Steps:
- [ ] Create a new workflow named
Lab 4 - Public Fetcher.
- [ ] Add a Manual Trigger node and rename it to
When clicking "Execute Workflow".
- [ ] Add an HTTP Request node called
Get Cat Fact after the trigger.
- [ ] In
Get Cat Fact set:
- URL:
https://catfact.ninja/fact
- Method:
GET
- [ ] Leave Authentication and Options as default.
- [ ] Execute the workflow from
When clicking "Execute Workflow".
- [ ] Open the
Get Cat Fact node output and view the Body in both Table and JSON view.
- [ ] Confirm there is a
fact field containing a sentence about cats.

{
"nodes": [
{
"parameters": {},
"id": "6e0bb2a0-9729-4836-b5e0-04505ff910c1",
"name": "When clicking \\"Execute Workflow\\"",
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [
-272,
-48
]
},
{
"parameters": {
"url": "<https://catfact.ninja/fact>",
"options": {}
},
"id": "76b7aca2-6024-4a68-9cc6-211f39be8a1d",
"name": "Get Cat Fact",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.1,
"position": [
-48,
-48
]
},
{
"parameters": {
"content": "## Lab 4: Public fetcher (HTTP request)\\n1. **HTTP Request Node:** Connects to the outside world.\\n2. **Method:** GET (Retrieving data).\\n3. **URL:** `https://catfact.ninja/fact` (A free public API).\\n\\n**Goal:** Observe how n8n receives and structures data from an external server.",
"height": 432,
"width": 624,
"color": 6
},
"id": "0e3905b9-71da-4651-ae67-f0d3454b8732",
"type": "n8n-nodes-base.stickyNote",
"typeVersion": 1,
"position": [
-416,
-272
],
"name": "Instructions"
}
],
"connections": {
"When clicking \\"Execute Workflow\\"": {
"main": [
[
{
"node": "Get Cat Fact",
"type": "main",
"index": 0
}
]
]
}
},
"pinData": {},
"meta": {
"instanceId": "82cc682d3f33add4f11a78e1f29750bf4ba4e425478ba4b17330f9bf15960ec6"
}
}