Checking a link before publishing a campaign
A missing or wrongly-cropped image measurably reduces click-through. Verifying takes seconds and cannot be undone after the post goes out.
Fetches a URL and shows its Open Graph / Twitter card metadata as a preview.
Fetches a URL and shows its Open Graph / Twitter card metadata as a preview.
https://example.com
og:title, og:description, og:image, twitter:card — rendered as a preview card
Missing tags are flagged so you can fix them.
The tags control how links appear when shared.
Your input is sent to YAS infrastructure because the tool requires server-side processing or public network queries. Input is not stored.
curl -X POST "https://yas.sh/api/v1/tools/open-graph-preview" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com"}'const res = await fetch("https://yas.sh/api/v1/tools/open-graph-preview", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"url": "https://example.com"
}),
});
const data = await res.json();import requests
r = requests.post("https://yas.sh/api/v1/tools/open-graph-preview", json={"url":"https://example.com"})
data = r.json()| Field | Type | Required | Description |
|---|---|---|---|
| url | string | Yes | http/https URL |
{ "pageUrl": "...", "openGraph": { "title":"...", "image":"..." }, "twitter": {...}, "fallbackTitle": "..." }Fetch a URL and show its Open Graph / Twitter meta as a preview card.
400 VALIDATION_ERROR — invalid input or unsupported option.413 PAYLOAD_TOO_LARGE — input exceeds the 64 KB limit.429 RATE_LIMIT_EXCEEDED — rate limit exceeded (60 req/min).Open Graph metadata is a set of meta tags with property attributes in the og: namespace — og:title, og:description, og:image, og:url, og:type — that tell social platforms how to render a shared link. Twitter/X layers its own twitter:card tags on top, falling back to Open Graph when they are absent. The preview is assembled by a crawler that fetches the URL and parses only the head, without executing most JavaScript.
That last point drives most failures. Metadata injected client-side after hydration is invisible to crawlers that do not run scripts, so a single-page application must render og tags server-side. Platforms also cache aggressively: once a preview is scraped, updating the tags does not change what is displayed until the cache is invalidated through the platform's own debugger.
A missing or wrongly-cropped image measurably reduces click-through. Verifying takes seconds and cannot be undone after the post goes out.
Usually a stale platform cache or a client-side injected tag. Seeing the tags as a crawler sees them separates the two.
Templates often set og:title from the page title but forget og:image on non-article pages, producing inconsistent shares.
Generated OG images must resolve at an absolute URL with correct dimensions and content type — all three fail quietly.
What this tool deliberately does not do, and where it will disagree with other implementations.