From f65b5c8ecd29d52299d51e91f2f8f31502c5a0dc Mon Sep 17 00:00:00 2001 From: Abdelrahman Essawy Date: Fri, 18 Sep 2026 10:03:57 +0300 Subject: [PATCH] docs: merge the hand-written JSON-LD into Mintlify's node Every page carried two Article nodes for one URL. Mintlify generates a full @graph with @id ".../slug#article"; the hand-written block in each MDX used ".../slug/#article", one slash apart, so nothing merged them. Deleting the hand-written block was the obvious fix and the wrong one. It is the only source of datePublished and author, which Mintlify does not emit. Aligning the @id merges the two instead, but naively doing that would have introduced two conflicts on the merged node, so all three changes go together: - @id: drop the slash before #article, so the nodes merge (30 pages) - dateModified: removed. It was a static date, while Mintlify emits a live build-time value that now also renders as the visible "Last modified on" stamp. Two values for one property on one node is a conflict, not detail. - isPartOf: removed. It pointed at https://rendobar.com/#website, the APEX WebSite node, which does not exist on a docs page. Mintlify's node already carries the correct isPartOf -> /docs#website. (31 pages, including the FAQ.) Net: one Article node per page instead of two, now carrying datePublished and author as well. support/faq.mdx is the odd one out, an FAQPage rather than an Article. Its @id had the same trailing slash and the node was floating unconnected, so it now matches the canonical form and points at Mintlify's WebPage node. snippets/org-jsonld.mdx is deleted. Nothing has ever imported it, and it declared a third Organization plus a fourth WebSite that would have conflicted with both graphs had anything used it. --- automation/activepieces.mdx | 6 ++---- automation/index.mdx | 6 ++---- automation/n8n.mdx | 6 ++---- build-with-ai.mdx | 6 ++---- cli.mdx | 6 ++---- concepts/credits.mdx | 6 ++---- concepts/generation.mdx | 6 ++---- concepts/job.mdx | 6 ++---- concepts/scopes.mdx | 6 ++---- guides/callbacks.mdx | 6 ++---- guides/webhooks.mdx | 6 ++---- jobs/captions/animate.mdx | 6 ++---- jobs/captions/burn.mdx | 6 ++---- jobs/compose.mdx | 6 ++---- jobs/compress.mdx | 6 ++---- jobs/ffmpeg.mdx | 6 ++---- jobs/ffprobe.mdx | 6 ++---- jobs/image-edit.mdx | 6 ++---- jobs/image-generate.mdx | 6 ++---- jobs/image-upscale.mdx | 6 ++---- mcp-server.mdx | 6 ++---- quickstart.mdx | 6 ++---- sdk.mdx | 6 ++---- snippets/org-jsonld.mdx | 25 ------------------------- storage/amazon-s3.mdx | 6 ++---- storage/cloudflare-r2.mdx | 6 ++---- storage/index.mdx | 6 ++---- storage/s3-compatible.mdx | 6 ++---- storage/supabase.mdx | 6 ++---- support/errors.mdx | 6 ++---- support/faq.mdx | 4 ++-- support/limits.mdx | 6 ++---- 32 files changed, 62 insertions(+), 147 deletions(-) delete mode 100644 snippets/org-jsonld.mdx diff --git a/automation/activepieces.mdx b/automation/activepieces.mdx index 62ab054..c33deda 100644 --- a/automation/activepieces.mdx +++ b/automation/activepieces.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/automation/activepieces" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/automation/activepieces/#article", + "@id": "https://rendobar.com/docs/automation/activepieces#article", "headline": "Run media jobs from Activepieces", "description": "Install the Rendobar piece on Activepieces, add an API key, and run media jobs that pause the flow until they finish, with a trigger for finished jobs.", "datePublished": "2026-09-15", - "dateModified": "2026-09-15", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/automation/index.mdx b/automation/index.mdx index b048802..0e33117 100644 --- a/automation/index.mdx +++ b/automation/index.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/automation" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/automation/#article", + "@id": "https://rendobar.com/docs/automation#article", "headline": "Automate media jobs without code", "description": "Run Rendobar video and image jobs from n8n or Activepieces, and start from ready-made workflows that import and run on n8n Cloud.", "datePublished": "2026-09-15", - "dateModified": "2026-09-15", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/automation/n8n.mdx b/automation/n8n.mdx index afd5349..466d081 100644 --- a/automation/n8n.mdx +++ b/automation/n8n.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/automation/n8n" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/automation/n8n/#article", + "@id": "https://rendobar.com/docs/automation/n8n#article", "headline": "Run media jobs from n8n", "description": "Install the verified Rendobar node on n8n Cloud or self-hosted n8n, add an API key, then run media jobs, wait without polling and hand the node to an AI Agent.", "datePublished": "2026-06-22", - "dateModified": "2026-09-15", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/build-with-ai.mdx b/build-with-ai.mdx index 549c9c3..0570222 100644 --- a/build-with-ai.mdx +++ b/build-with-ai.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/build-with-ai" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/build-with-ai/#article", + "@id": "https://rendobar.com/docs/build-with-ai#article", "headline": "Let your AI agent integrate the API", "description": "Add media processing to your app by handing your AI agent one prompt. Open it in ChatGPT or Cursor, paste it into Claude, or save it as a repo rule.", "datePublished": "2026-08-15", - "dateModified": "2026-08-15", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/cli.mdx b/cli.mdx index 5ed15ab..d9a4c4f 100644 --- a/cli.mdx +++ b/cli.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/cli" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/cli/#article", + "@id": "https://rendobar.com/docs/cli#article", "headline": "Run FFmpeg from your terminal", "description": "Install the rb binary, sign in, and run any ffmpeg command in the cloud from your shell. Local files upload and download for you.", "datePublished": "2026-06-22", - "dateModified": "2026-09-13", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/concepts/credits.mdx b/concepts/credits.mdx index 69c0502..2a7f3de 100644 --- a/concepts/credits.mdx +++ b/concepts/credits.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/concepts/credits" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/concepts/credits/#article", + "@id": "https://rendobar.com/docs/concepts/credits#article", "headline": "Credits and billing", "description": "Get per-job nanodollar billing from a prepaid credit balance. Free includes a signup grant, Pro adds monthly credits, and credits never expire.", "datePublished": "2026-03-20", - "dateModified": "2026-05-24", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/concepts/generation.mdx b/concepts/generation.mdx index 2f51ff8..b4ba98c 100644 --- a/concepts/generation.mdx +++ b/concepts/generation.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/concepts/generation" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/concepts/generation/#article", + "@id": "https://rendobar.com/docs/concepts/generation#article", "headline": "The Generation API", "description": "Generate images from a text prompt or edit them from an instruction on hosted diffusion models. One async API, one job shape, many models.", "datePublished": "2026-07-26", - "dateModified": "2026-07-31", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/concepts/job.mdx b/concepts/job.mdx index 561260c..e8d1985 100644 --- a/concepts/job.mdx +++ b/concepts/job.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/concepts/job" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/concepts/job/#article", + "@id": "https://rendobar.com/docs/concepts/job#article", "headline": "How a job works", "description": "Run a job from a typed request, through async execution on our runners, to a signed output. The lifecycle, the statuses, and the output shape, in one place.", "datePublished": "2026-06-22", - "dateModified": "2026-06-22", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/concepts/scopes.mdx b/concepts/scopes.mdx index 0a9e95a..8f6f19f 100644 --- a/concepts/scopes.mdx +++ b/concepts/scopes.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/concepts/scopes" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/concepts/scopes/#article", + "@id": "https://rendobar.com/docs/concepts/scopes#article", "headline": "Scopes and access", "description": "Configure an API key to hold only what your code needs, see what an app asks for before you allow it, and read the 403 that names a missing scope.", "datePublished": "2026-09-01", - "dateModified": "2026-09-13", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/guides/callbacks.mdx b/guides/callbacks.mdx index af25fe2..16eb913 100644 --- a/guides/callbacks.mdx +++ b/guides/callbacks.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/guides/callbacks" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/guides/callbacks/#article", + "@id": "https://rendobar.com/docs/guides/callbacks#article", "headline": "Per-job completion callbacks", "description": "Attach a per-job completion callback that POSTs the job result to a URL you choose, and resume a Cloudflare Workflow without polling.", "datePublished": "2026-07-25", - "dateModified": "2026-07-25", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/guides/webhooks.mdx b/guides/webhooks.mdx index 6165bd9..27e956b 100644 --- a/guides/webhooks.mdx +++ b/guides/webhooks.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/guides/webhooks" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/guides/webhooks/#article", + "@id": "https://rendobar.com/docs/guides/webhooks#article", "headline": "Webhooks for job events", "description": "Receive job status events via signed HMAC POST. Create an endpoint in the dashboard, verify the signature, and handle retries.", "datePublished": "2026-03-20", - "dateModified": "2026-07-25", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/jobs/captions/animate.mdx b/jobs/captions/animate.mdx index b1b4efa..a074aac 100644 --- a/jobs/captions/animate.mdx +++ b/jobs/captions/animate.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/jobs/captions/animate" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/jobs/captions/animate/#article", + "@id": "https://rendobar.com/docs/jobs/captions/animate#article", "headline": "Animated word-level captions", "description": "Generate animated word-level captions from a video, with 11 style presets, custom fonts, auto-emphasis, and translation.", "datePublished": "2026-06-22", - "dateModified": "2026-06-22", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/jobs/captions/burn.mdx b/jobs/captions/burn.mdx index 75e56b2..b347418 100644 --- a/jobs/captions/burn.mdx +++ b/jobs/captions/burn.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/jobs/captions/burn" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/jobs/captions/burn/#article", + "@id": "https://rendobar.com/docs/jobs/captions/burn#article", "headline": "Burn captions into a video", "description": "Burn subtitles into a video from an SRT, VTT, or ASS file, or auto-transcribe in any language, with full styling control.", "datePublished": "2026-06-22", - "dateModified": "2026-06-22", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/jobs/compose.mdx b/jobs/compose.mdx index cc761cc..7a73390 100644 --- a/jobs/compose.mdx +++ b/jobs/compose.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/jobs/compose" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/jobs/compose/#article", + "@id": "https://rendobar.com/docs/jobs/compose#article", "headline": "Compose: render from a timeline", "description": "Render a video from a declarative JSON timeline. Tracks, clips, transitions, text, and per-clip effects.", "datePublished": "2026-06-21", - "dateModified": "2026-07-30", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/jobs/compress.mdx b/jobs/compress.mdx index b5f4984..b025c13 100644 --- a/jobs/compress.mdx +++ b/jobs/compress.mdx @@ -14,14 +14,12 @@ tag: "Live" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/jobs/compress/#article", + "@id": "https://rendobar.com/docs/jobs/compress#article", "headline": "Compress media to a target quality or size", "description": "Compress an image, video, or audio file to the smallest size that clears a perceptual quality bar, or hit a byte budget and get the quality scored. AVIF, JPEG XL, AV1, Opus, and more.", "datePublished": "2026-07-25", - "dateModified": "2026-07-25", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/jobs/ffmpeg.mdx b/jobs/ffmpeg.mdx index e51737a..adba725 100644 --- a/jobs/ffmpeg.mdx +++ b/jobs/ffmpeg.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/jobs/ffmpeg" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/jobs/ffmpeg/#article", + "@id": "https://rendobar.com/docs/jobs/ffmpeg#article", "headline": "Run any FFmpeg command", "description": "Run any FFmpeg command in the cloud. Whitelisted flags, sandboxed execution, signed download URL. Same FFmpeg syntax you already know.", "datePublished": "2026-03-20", - "dateModified": "2026-06-21", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/jobs/ffprobe.mdx b/jobs/ffprobe.mdx index 8f595bf..e10efe3 100644 --- a/jobs/ffprobe.mdx +++ b/jobs/ffprobe.mdx @@ -14,14 +14,12 @@ tag: "Live" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/jobs/ffprobe/#article", + "@id": "https://rendobar.com/docs/jobs/ffprobe#article", "headline": "Probe media metadata", "description": "Run ffprobe on a video, audio, or image URL and get a normalized summary plus the full raw report: codec, resolution, duration, fps, rotation, HDR, audio.", "datePublished": "2026-07-17", - "dateModified": "2026-07-21", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/jobs/image-edit.mdx b/jobs/image-edit.mdx index f0b782e..8ca7d83 100644 --- a/jobs/image-edit.mdx +++ b/jobs/image-edit.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/jobs/image-edit" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/jobs/image-edit/#article", + "@id": "https://rendobar.com/docs/jobs/image-edit#article", "headline": "Edit an image with an instruction", "description": "Use a written instruction to edit one to four reference images on hosted diffusion models. Swap a background, restyle, or compose.", "datePublished": "2026-07-26", - "dateModified": "2026-07-31", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/jobs/image-generate.mdx b/jobs/image-generate.mdx index e3adeb1..987fdd4 100644 --- a/jobs/image-generate.mdx +++ b/jobs/image-generate.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/jobs/image-generate" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/jobs/image-generate/#article", + "@id": "https://rendobar.com/docs/jobs/image-generate#article", "headline": "Generate an image from a prompt", "description": "Generate a webp image from a text prompt on hosted diffusion models. Pick an economy, standard, or premium tier, or pin an exact model id.", "datePublished": "2026-07-26", - "dateModified": "2026-07-31", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/jobs/image-upscale.mdx b/jobs/image-upscale.mdx index 127c03e..215bfa1 100644 --- a/jobs/image-upscale.mdx +++ b/jobs/image-upscale.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/jobs/image-upscale" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/jobs/image-upscale/#article", + "@id": "https://rendobar.com/docs/jobs/image-upscale#article", "headline": "Upscale an image", "description": "Run an image through a one-step diffusion restoration model to raise its resolution. Ask for a factor or a target height, and transparency survives.", "datePublished": "2026-08-03", - "dateModified": "2026-08-03", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/mcp-server.mdx b/mcp-server.mdx index a28c0e9..ac2a6a9 100644 --- a/mcp-server.mdx +++ b/mcp-server.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/mcp-server" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/mcp-server/#article", + "@id": "https://rendobar.com/docs/mcp-server#article", "headline": "Connect AI agents with the MCP server", "description": "Connect Claude Code, claude.ai, or any MCP client to Rendobar over OAuth, then submit jobs, upload files, and chain job outputs from the chat.", "datePublished": "2026-06-22", - "dateModified": "2026-09-13", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/quickstart.mdx b/quickstart.mdx index 8eb3c86..715721e 100644 --- a/quickstart.mdx +++ b/quickstart.mdx @@ -14,14 +14,12 @@ canonical: "https://rendobar.com/docs/quickstart" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/quickstart/#article", + "@id": "https://rendobar.com/docs/quickstart#article", "headline": "API quickstart guide", "description": "Submit your first ffmpeg job, poll to completion, and download the result. Under 5 minutes from API key to finished MP4.", "datePublished": "2026-03-20", - "dateModified": "2026-08-15", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/sdk.mdx b/sdk.mdx index f3dc719..c3d0343 100644 --- a/sdk.mdx +++ b/sdk.mdx @@ -13,14 +13,12 @@ canonical: "https://rendobar.com/docs/sdk" __html: JSON.stringify({ "@context": "https://schema.org", "@type": "TechArticle", - "@id": "https://rendobar.com/docs/sdk/#article", + "@id": "https://rendobar.com/docs/sdk#article", "headline": "Use the TypeScript SDK", "description": "Submit a job from Node, Deno, Bun, or Workers with @rendobar/sdk, wait for it to finish, and read the signed output URL.", "datePublished": "2026-06-22", - "dateModified": "2026-07-21", "author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" }, - "isPartOf": { "@id": "https://rendobar.com/#website" } + "publisher": { "@type": "Organization", "@id": "https://rendobar.com/#organization" } }) }} /> diff --git a/snippets/org-jsonld.mdx b/snippets/org-jsonld.mdx deleted file mode 100644 index c39be61..0000000 --- a/snippets/org-jsonld.mdx +++ /dev/null @@ -1,25 +0,0 @@ -