feat(integrations): add brandfetch integration#3402
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
Greptile SummaryThis PR adds a Brandfetch integration with two operations — Get Brand (lookup by domain, ticker, ISIN, or crypto symbol) and Search Brands (lookup by name) — following the established block/tool architecture used by other integrations in the codebase. It includes the block config, both tool implementations, shared TypeScript types, icon components for both apps, documentation, and registry entries.
Confidence Score: 4/5
Important Files Changed
Sequence DiagramsequenceDiagram
participant User
participant BrandfetchBlock
participant GetBrandTool
participant SearchTool
participant BrandfetchAPI
User->>BrandfetchBlock: Select operation + provide params
alt operation = get_brand
BrandfetchBlock->>GetBrandTool: identifier, apiKey
GetBrandTool->>BrandfetchAPI: GET /v2/brands/{identifier}<br/>Authorization: Bearer {apiKey}
BrandfetchAPI-->>GetBrandTool: { id, name, domain, logos, colors, fonts, company, ... }
GetBrandTool-->>BrandfetchBlock: BrandfetchGetBrandResponse
else operation = search
BrandfetchBlock->>SearchTool: name, apiKey
SearchTool->>BrandfetchAPI: GET /v2/search/{name}<br/>Authorization: Bearer {apiKey}
BrandfetchAPI-->>SearchTool: [ { brandId, name, domain, claimed, icon }, ... ]
SearchTool-->>BrandfetchBlock: BrandfetchSearchResponse
end
BrandfetchBlock-->>User: Output (brand assets or search results)
Last reviewed commit: 9006f1b |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Autofix Details
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: Search Tool Uses Wrong Authentication Method
- Changed authentication from Bearer token in Authorization header to clientId query parameter (?c=) as required by Brandfetch Search API v2.
Or push these changes by commenting:
@cursor push 5ff54bf5ed
Preview (5ff54bf5ed)
diff --git a/apps/sim/tools/brandfetch/search.ts b/apps/sim/tools/brandfetch/search.ts
--- a/apps/sim/tools/brandfetch/search.ts
+++ b/apps/sim/tools/brandfetch/search.ts
@@ -24,10 +24,9 @@
request: {
url: (params) =>
- `https://api.brandfetch.io/v2/search/${encodeURIComponent(params.name.trim())}`,
+ `https://api.brandfetch.io/v2/search/${encodeURIComponent(params.name.trim())}?c=${params.apiKey}`,
method: 'GET',
- headers: (params) => ({
- Authorization: `Bearer ${params.apiKey}`,
+ headers: () => ({
Accept: 'application/json',
}),
},|
@greptile |
|
@cursor review |
|
@greptile |
|
@cursor review |

Summary
Type of Change
Testing
Tested manually
Checklist