Hi Clay team, I'm trying to use the ScreenshotOne API inside a HTTP API step to generate a screenshot of each business website. Here is the setup I used: Endpoint: https://api.screenshotone.com/take?access_key=(key)&url=/Website&full_page=true The HTTP API step returns Status Code 200, but inside the cell I only see: {{response: {}` I already created a column called ScreenshotAPI, set to type "Image from URL", but I don’t know how to extract and store the image properly from this. Can you please check if my setup is correct? And if not, what exactly do I need to change so the screenshot appears correctly in the ScreenshotAPI column? Thanks, Dimitris
To display screenshots in your "Image from URL" column, you need to extract the image URL from the API response. Could you share the exact JSON response you're getting from the ScreenshotOne API? This would help me troubleshoot the specific formatting issue.
HTTP API returns Status Code: 200 but when i open the cell it just shows this: {}
The empty {} response suggests the API isn't returning the expected data structure. To troubleshoot this:
1. Check field paths: Use the "Define field paths to return" option in your HTTP API step to specify which parts of the response you want to extract
2. Verify response structure: The ScreenshotOne API likely returns the image URL in a specific field (like url or screenshot_url) that needs to be extracted
3. JSON troubleshooting: Since you're seeing formatting issues, could you copy and paste the actual JSON response from the ScreenshotOne API into the chat? This will help identify the exact structure and extraction path needed
Once we see the response format, we can determine the correct field path to extract the image URL for your "Image from URL" column.
Hi Clay team, I'm using the ScreenshotOne API with this endpoint: https://api.screenshotone.com/take?access_key=...&url=/Website&full_page=true The HTTP API step returns a 200 status, but when I open the cell, I see this: { "{{response": {} } So no actual fields appear, and I can’t extract the image URL or map it to my ScreenshotAPI column (Image from URL type). I’ve already tried using {{response.body}}, setting Define field paths to return to screenshot, and even left it blank — nothing works. Could you please confirm: What field path should I define to get the screenshot URL? And how to route that into my existing column?
For the ScreenshotOne API, try using "body" or "url" in the "Field Paths to Return" section of your HTTP API step. Then map this output to your "ScreenshotAPI" column. Could you share the exact JSON response from the ScreenshotOne API? This would help me identify the correct field path structure.
I'm using the ScreenshotOne API and passing this as the endpoint: https://api.screenshotone.com/take?access_key=...&url=/Website&full_page=true When I run it in Clay, the response has Status Code: 200 but the returned body is not in JSON format — it’s a raw PNG image (as confirmed via DevTools). Clay displays: { "{{response": {} } Since there’s no JSON structure, I can't define a field path to extract the screenshot URL and store it in my ScreenshotAPI column (type: Image from URL). Could you confirm how I can work with APIs that return raw images instead of JSON? Or do I need to use a different ScreenshotOne endpoint that responds with JSON containing a screenshot URL? Thanks, Dimitris
When an API returns a raw image (PNG) instead of JSON, you can't use an "Image from URL" column since there's no URL to extract. Instead, try these approaches: Option 1: Use ScreenshotOne's JSON endpoint Check if ScreenshotOne offers an endpoint that returns JSON with an image URL instead of the raw image data. Option 2: Use Clay's native Screenshot integration We have a built-in Screenshot integration that works with screenshotapi.net - this might be easier than the HTTP API approach. Option 3: Define field paths In your HTTP API step, try using "Define field paths to return" to specify how to handle the response data. The HTTP API integration is designed to work with JSON responses, so raw binary data like PNG images creates formatting challenges. Could you copy and paste the exact response you're seeing in the HTTP API cell? This will help troubleshoot the specific formatting issue.
I’m currently working on an enrichment workflow with two steps: 1. The first step calls ScreenshotOne API and returns a JSON response like: { "cache_url": "https://cache.screenshotone.com/6d04f908d81f7220973b168e858187354eaacc4627487e373b8fa115b1f89772.jpg" } This response is stored inside a cell in the API column, but I’m unsure how to extract this cache_url value properly and store it into a separate column (e.g., ScreenshotAPI) of type “Image from URL” for further use. 2. The second step is an OpenAI GPT-4o API enrichment, which needs to take the screenshot URL from the ScreenshotAPI column and send it as an image URL for GPT to analyze. My questions are: How do I map the nested JSON field cache_url from the ScreenshotOne API response cell to a dedicated column that can be used downstream? Can Clay pass the URL stored in a column like ScreenshotAPI correctly to the OpenAI API, so that GPT-4o can access and analyze the image from the URL? Are there any specific settings or configurations required to make the URL accessible to the OpenAI model via the enrichment? Thanks a lot for your guidance!
To extract the cache_url from your ScreenshotOne API response:
1. In your HTTP API step: Use "Define field paths to return" and specify cache_url as the field path to extract just that value.
2. Create your Image column: Set up a column with type "Image from URL" and map the extracted cache_url field to it.
3. For OpenAI integration: Use the "ChatGPT: Analyze image" action and input your image URL column in the "Raw Image URLs" field. This accepts pure image URLs for GPT-4o to analyze.
The workflow should be: HTTP API (extract cache_url) → Image from URL column → OpenAI Analyze Image action.
Could you copy and paste your exact JSON response from the ScreenshotOne API? This will help verify the correct field path structure.
