unlob for n8n
It is a GET with a header, so the built-in HTTP Request node covers the whole API. Useful for monitoring workflows and scheduled research.
{
"method": "GET",
"url": "https://api.unlob.com/search",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{ "name": "x-api-key", "value": "={{ $credentials.unlobApiKey }}" }
]
},
"sendQuery": true,
"queryParameters": {
"parameters": [
{ "name": "q", "value": "={{ $json.query }}" },
{ "name": "collapse", "value": "story" },
{ "name": "min_independent_sources", "value": "2" },
{ "name": "published_from", "value": "={{ $json.since }}" },
{ "name": "limit", "value": "10" }
]
}
}Setup
Get an API key
10,000 free requests a month.
Store it as a credential
Use an n8n credential rather than a literal value in the node.
Add an HTTP Request node
GET https://api.unlob.com/search with the header and query parameters above.
Schedule it
A cron trigger plus published_from set to the last run makes a monitoring workflow that only ever sees new material.
Worth knowing
- For monitoring, /browse with sort=recency is often better than a search — it needs no query at all.
- Setting published_from to the previous run timestamp is the whole trick to a no-duplicates monitoring loop.
Frequently asked questions
Is there an official n8n node?
Not currently. The HTTP Request node covers the entire API, including the coverage-graph endpoints, because everything is a GET with a header.
Get a key and connect it
10,000 requests a month, no card. The config above works unchanged once you have a key.