Get the catalog
Every gallery video with its prompt or skill, creator, model, stack, effort, colours and media URLs, plus the videos removed as duplicates.
GEThttps://motionvideo.xyz/api/catalog
参数
If-None-Matchstringheader可选The
ETagof an earlier response. If it is still current, the response is a304with no body. Send the value exactly as received (one quoted value): lists, weakW/validators and*always get a full response.
请求示例
curl -X GET 'https://motionvideo.xyz/api/catalog'响应
200
The motion video catalog.
响应头
ETagstringQuoted SHA-256 hex digest of the response body. Changes whenever the data does.
Cache-ControlstringBrowsers reuse a response for 5 minutes and shared caches for an hour, then may serve it stale for up to a day while they revalidate.
可选值:
public, max-age=300, s-maxage=3600, stale-while-revalidate=86400
响应正文application/json
importedAtstringdate-time必填When the catalog was last imported.
videosMotionVideo[]必填Every gallery video, in catalog order.
显示字段
slugstring必填Stable ID: the creator's handle and a short hash. The video's page is
/videos/{slug}under a locale, e.g./en/videos/{slug}.titlestring必填datestringdate必填When the creator posted it (YYYY-MM-DD).
tagsstring[]必填What it shares to remake it: a prompt, a skill, or both.
可选值:
promptskillcontentTagsstring[]必填Gallery categories, at least one.
可选值:
product-uiphonechartsdiagramskinetic-typeshapesparticlescharactersphotosmusiccodepromptSharedboolean必填Whether the creator shared the prompt.
handlestring必填The creator's X handle, without
@.creatorNamestringThe creator's display name on X, when known.
avatarstringuri必填The creator's avatar (WebP).
posterstringuri必填Poster image (WebP).
blurstringA tiny version of the poster as a
data:URI, to show while media loads.previewstringuri必填Small looping preview (MP4).
videostringuri必填The full video (MP4).
widthinteger必填Video width in pixels.
heightinteger必填Video height in pixels.
promptstringThe prompt the creator used, when shared.
skillUrlstringuriThe agent skill the video was made with.
skillInstallstringThe command that installs the skill, e.g.
npx skills add ….tweetUrlstringuriThe source post on X.
descriptionstringmodelstringThe model it was made with, as the creator reported it.
可选值:
Opus 5.5Fable 5.5Gemini 4 ArgonGPT-6 AstrastackstringWhat rendered it, as the creator reported it, e.g.
RemotionorHTML + Playwright.effortstringThe reasoning effort the model ran at.
可选值:
mediumhighmaxiterationsstringHow many rounds of feedback it took.
可选值:
one-shotfew-roundsmany-roundscolorsstring[]Dominant colours as hex without
#, the largest share of the frame first.
removedRemovedVideo[]必填Videos removed as duplicates. Their old page URLs redirect to the video they duplicated.
显示字段
slugstring必填The removed video's slug.
duplicateOfstring必填Slug of the video it duplicated (which may itself be removed later).
tweetUrlstringuri必填
示例
{
"importedAt": "2026-10-24T21:04:06.396Z",
"videos": [
{
"slug": "stephanlivera-df17a2",
"title": "Claude motion designer showreel",
"date": "2026-09-25",
"tags": [
"prompt"
],
"contentTags": [
"kinetic-type",
"shapes",
"music"
],
"promptShared": true,
"handle": "stephanlivera",
"prompt": "make a dynamic 15-second motion graphics video that shows what an incredible motion designer you are, like it's your showreel for a résumé. go all out.",
"avatar": "https://assets.motionvideo.xyz/avatars/stephanlivera-b812a8857d.webp",
"poster": "https://assets.motionvideo.xyz/motion/stephanlivera-df17a2/poster-f2e1162434.webp",
"blur": "data:image/webp;base64,UklGRjwAAABXRUJQVlA4IDAAAAAwAQCdASoQAAkAAoBCJZwAA3AA/vhFoHeXAMvl50Xzx1TOS+ixn4fsDcDIAjAsAAA=",
"preview": "https://assets.motionvideo.xyz/motion/stephanlivera-df17a2/preview-b43ead41b8.mp4",
"video": "https://assets.motionvideo.xyz/motion/stephanlivera-df17a2/video-5f45198f0d.mp4",
"width": 1920,
"height": 1080,
"tweetUrl": "https://x.com/stephanlivera/status/2103315922098470926",
"model": "Opus 5.5",
"effort": "max",
"creatorName": "Stephan Livera",
"colors": [
"0d0d10",
"ed4938",
"8b0703"
]
}
],
"removed": [
{
"slug": "rossaxbt-94583b",
"duplicateOf": "rossaxbt-4e066d",
"tweetUrl": "https://x.com/rossaxbt/status/2108933141406638456"
}
]
}304
Not modified: If-None-Match matched the current ETag. No body; reuse the copy you have.
响应头
ETagstringQuoted SHA-256 hex digest of the response body. Changes whenever the data does.