Skip to content
unlob

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.

HTTP Request nodejson
{
  "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

  1. Get an API key

    10,000 free requests a month.

  2. Store it as a credential

    Use an n8n credential rather than a literal value in the node.

  3. Add an HTTP Request node

    GET https://api.unlob.com/search with the header and query parameters above.

  4. 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.