[{"data":1,"prerenderedAt":1582},["ShallowReactive",2],{"blog-\u002Fblog\u002Fexport-youtube-channel-videos-to-csv":3,"blog-related-\u002Fblog\u002Fexport-youtube-channel-videos-to-csv":1311},{"id":4,"title":5,"author":6,"body":7,"category":1295,"cover":1296,"description":1297,"draft":1298,"extension":1299,"image":1295,"launchCta":1295,"listingCover":1295,"meta":1300,"navigation":552,"ogImage":1295,"path":1301,"publishedAt":1302,"readTime":1295,"seo":1303,"stem":1304,"tags":1305,"toolCategory":1295,"updatedAt":1295,"__hash__":1310},"blogUnlisted\u002Fblog\u002Fexport-youtube-channel-videos-to-csv.md","Export a YouTube Channel's Videos to CSV in One Run","The Monid Team",{"type":8,"value":9,"toc":1280},"minimark",[10,15,72,79,94,99,168,172,187,191,196,205,213,221,225,281,289,293,304,364,374,378,391,439,442,466,469,500,507,511,517,647,650,656,660,670,728,741,745,748,1184,1190,1194,1204,1208,1227,1237,1261,1276],[11,12,14],"p",{"style":13},"font-size:18px !important;line-height:1.65 !important;margin:0 0 24px;color:inherit;","Copy this line to your agent to export a YouTube channel's full video list to CSV.",[16,17,22],"pre",{"className":18,"code":19,"language":20,"meta":21,"style":21},"language-sh shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","set up https:\u002F\u002Fmonid.ai\u002FSKILL.md and use tikhub \u002Fapi\u002Fv1\u002Fyoutube\u002Fweb_v2\u002Fget_channel_videos to export a channel's videos to a CSV\n","sh","",[23,24,25],"code",{"__ignoreMap":21},[26,27,30,34,38,41,44,47,50,53,56,59,62,65,69],"span",{"class":28,"line":29},"line",1,[26,31,33],{"class":32},"s2Zo4","set",[26,35,37],{"class":36},"sfazB"," up",[26,39,40],{"class":36}," https:\u002F\u002Fmonid.ai\u002FSKILL.md",[26,42,43],{"class":36}," and",[26,45,46],{"class":36}," use",[26,48,49],{"class":36}," tikhub",[26,51,52],{"class":36}," \u002Fapi\u002Fv1\u002Fyoutube\u002Fweb_v2\u002Fget_channel_videos",[26,54,55],{"class":36}," to",[26,57,58],{"class":36}," export",[26,60,61],{"class":36}," a",[26,63,64],{"class":36}," channel",[26,66,68],{"class":67},"sMK4o","'",[26,70,71],{"class":36},"s videos to a CSV\n",[11,73,74,75,78],{},"You can go from a YouTube channel id to a clean ",[23,76,77],{},"videos.csv"," with title, videoId, url, published, views, and duration in a single paginated run, no Google Cloud project and no quota units to budget. This is the whole recipe, start to finish, with the exact commands you run. The one thing that trips people up (the fields come back as human strings, not numbers) is handled in the flatten step below.",[11,80,81,82,89,90,93],{},"Monid is a pay-per-call data API marketplace: one interface and one wallet to discover and run hundreds of external data endpoints without a separate signup per vendor. Here you point one ",[83,84,88],"a",{"href":85,"rel":86},"https:\u002F\u002Ftikhub.io",[87],"nofollow","TikHub"," endpoint at a channel, page through it with a ",[23,91,92],{},"continuation_token",", and pipe the result into CSV.",[95,96,98],"h2",{"id":97},"tldr","TL;DR",[100,101,102,131,138,144,160],"ul",{},[103,104,105,106,109,110,113,114,113,117,113,120,113,123,126,127,130],"li",{},"One endpoint, ",[23,107,108],{},"tikhub \u002Fapi\u002Fv1\u002Fyoutube\u002Fweb_v2\u002Fget_channel_videos",", returns a channel's videos with ",[23,111,112],{},"video_id",", ",[23,115,116],{},"title",[23,118,119],{},"url",[23,121,122],{},"duration",[23,124,125],{},"view_count",", and ",[23,128,129],{},"published_time",".",[103,132,133,134,137],{},"The first response also carries a ",[23,135,136],{},"channel"," block; paginated pages drop it, so cache page one as your source of truth for channel-level data.",[103,139,140,141,143],{},"Feed the returned ",[23,142,92],{}," back in to walk the whole catalog, and stop when it comes back empty.",[103,145,146,148,149,152,153,155,156,159],{},[23,147,125],{}," arrives as ",[23,150,151],{},"\"343,369 views\""," and ",[23,154,129],{}," as ",[23,157,158],{},"\"18 hours ago\"",", so the flatten step strips the count to a plain integer.",[103,161,162,163,130],{},"Free to inspect, billed only on the paid run at a fraction of a cent per call. Live pricing is at ",[83,164,167],{"href":165,"rel":166},"https:\u002F\u002Fmonid.ai\u002Ftools",[87],"monid.ai\u002Ftools",[95,169,171],{"id":170},"why-not-the-official-api","Why not the official API",[11,173,174,175,180,181,186],{},"The ",[83,176,179],{"href":177,"rel":178},"https:\u002F\u002Fdevelopers.google.com\u002Fyoutube\u002Fv3\u002Fgetting-started",[87],"YouTube Data API v3"," can list a channel's uploads, but it makes you stand up a Google Cloud project, wire OAuth or an API key, and then spend from a fixed daily quota. Each project gets 10,000 units a day, and operations are priced in units, so a listing-heavy job burns through the ceiling faster than you would guess (",[83,182,185],{"href":183,"rel":184},"https:\u002F\u002Fdevelopers.google.com\u002Fyoutube\u002Fv3\u002Fdetermine_quota_cost",[87],"unit costs","). For a one-off export of channels you do not own, that setup is a lot of ceremony before the first row lands. The endpoint below skips all of it: no project, no OAuth, no unit accounting.",[95,188,190],{"id":189},"set-up-monid-once","Set up Monid once",[192,193,195],"h3",{"id":194},"for-agents","For agents",[11,197,198,199,204],{},"Grab an API key at ",[83,200,203],{"href":201,"rel":202},"https:\u002F\u002Fapp.monid.ai\u002F",[87],"app.monid.ai",", then paste this to your agent and hand it the key:",[16,206,211],{"className":207,"code":209,"language":210},[208],"language-text","set up https:\u002F\u002Fmonid.ai\u002FSKILL.md\n","text",[23,212,209],{"__ignoreMap":21},[11,214,215,216,130],{},"It learns the whole discover, inspect, run workflow itself. More details in the ",[83,217,220],{"href":218,"rel":219},"https:\u002F\u002Fmonid.ai\u002Fdocs\u002Fguide\u002Fquickstart-skill",[87],"agent quickstart",[192,222,224],{"id":223},"for-humans","For humans",[16,226,230],{"className":227,"code":228,"language":229,"meta":21,"style":21},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npm install -g @monid-ai\u002Fcli\nmonid keys add --label main --key \u003Cyour-api-key>\n","bash",[23,231,232,247],{"__ignoreMap":21},[26,233,234,238,241,244],{"class":28,"line":29},[26,235,237],{"class":236},"sBMFI","npm",[26,239,240],{"class":36}," install",[26,242,243],{"class":36}," -g",[26,245,246],{"class":36}," @monid-ai\u002Fcli\n",[26,248,250,253,256,259,262,265,268,271,274,278],{"class":28,"line":249},2,[26,251,252],{"class":236},"monid",[26,254,255],{"class":36}," keys",[26,257,258],{"class":36}," add",[26,260,261],{"class":36}," --label",[26,263,264],{"class":36}," main",[26,266,267],{"class":36}," --key",[26,269,270],{"class":67}," \u003C",[26,272,273],{"class":36},"your-api-ke",[26,275,277],{"class":276},"sTEyZ","y",[26,279,280],{"class":67},">\n",[11,282,283,284,130],{},"More details in the ",[83,285,288],{"href":286,"rel":287},"https:\u002F\u002Fmonid.ai\u002Fdocs\u002Fguide\u002Fquickstart-cli",[87],"CLI quickstart",[95,290,292],{"id":291},"step-1-get-the-channel-id","Step 1: get the channel id",[11,294,295,296,299,300,303],{},"The endpoint keys off a channel id (the ",[23,297,298],{},"UC..."," string), not a ",[23,301,302],{},"@handle",". If all you have is the handle, pull the id straight from the channel page:",[16,305,307],{"className":227,"code":306,"language":229,"meta":21,"style":21},"curl -s \"https:\u002F\u002Fwww.youtube.com\u002F@maizenofficial\u002Fvideos\" \\\n  | grep -o '\"channelId\":\"UC[^\"]*\"' | head -1\n# -> \"channelId\":\"UCJHBJ7F-nAIlMGolm0Hu4vg\"\n",[23,308,309,329,357],{"__ignoreMap":21},[26,310,311,314,317,320,323,326],{"class":28,"line":29},[26,312,313],{"class":236},"curl",[26,315,316],{"class":36}," -s",[26,318,319],{"class":67}," \"",[26,321,322],{"class":36},"https:\u002F\u002Fwww.youtube.com\u002F@maizenofficial\u002Fvideos",[26,324,325],{"class":67},"\"",[26,327,328],{"class":276}," \\\n",[26,330,331,334,337,340,343,346,348,351,354],{"class":28,"line":249},[26,332,333],{"class":67},"  |",[26,335,336],{"class":236}," grep",[26,338,339],{"class":36}," -o",[26,341,342],{"class":67}," '",[26,344,345],{"class":36},"\"channelId\":\"UC[^\"]*\"",[26,347,68],{"class":67},[26,349,350],{"class":67}," |",[26,352,353],{"class":236}," head",[26,355,356],{"class":36}," -1\n",[26,358,360],{"class":28,"line":359},3,[26,361,363],{"class":362},"sHwdD","# -> \"channelId\":\"UCJHBJ7F-nAIlMGolm0Hu4vg\"\n",[11,365,366,367,369,370,373],{},"Copy the ",[23,368,298],{}," value. If the channel URL is already in ",[23,371,372],{},"\u002Fchannel\u002FUC..."," form, the id is right there in the path and you can skip the grep.",[95,375,377],{"id":376},"step-2-one-call-to-see-the-shape","Step 2: one call to see the shape",[11,379,380,381,126,384,387,388,390],{},"Run a single call first. This is a query-param endpoint, so the body goes in ",[23,382,383],{},"--query",[23,385,386],{},"-w"," waits inline so the JSON comes straight back. Omit ",[23,389,92],{}," on the first request to get page one.",[16,392,394],{"className":227,"code":393,"language":229,"meta":21,"style":21},"monid run -p tikhub -e \u002Fapi\u002Fv1\u002Fyoutube\u002Fweb_v2\u002Fget_channel_videos \\\n  --query '{\"channel_id\":\"UCJHBJ7F-nAIlMGolm0Hu4vg\",\"country_code\":\"US\"}' \\\n  -w -o page_1.json\n",[23,395,396,415,429],{"__ignoreMap":21},[26,397,398,400,403,406,408,411,413],{"class":28,"line":29},[26,399,252],{"class":236},[26,401,402],{"class":36}," run",[26,404,405],{"class":36}," -p",[26,407,49],{"class":36},[26,409,410],{"class":36}," -e",[26,412,52],{"class":36},[26,414,328],{"class":276},[26,416,417,420,422,425,427],{"class":28,"line":249},[26,418,419],{"class":36},"  --query",[26,421,342],{"class":67},[26,423,424],{"class":36},"{\"channel_id\":\"UCJHBJ7F-nAIlMGolm0Hu4vg\",\"country_code\":\"US\"}",[26,426,68],{"class":67},[26,428,328],{"class":276},[26,430,431,434,436],{"class":28,"line":359},[26,432,433],{"class":36},"  -w",[26,435,339],{"class":36},[26,437,438],{"class":36}," page_1.json\n",[11,440,441],{},"Look at what landed before you spend anything more:",[16,443,445],{"className":227,"code":444,"language":229,"meta":21,"style":21},"jq '{channel: .channel.name, videos: (.videos | length), next: (.continuation_token != null)}' page_1.json\n# -> { \"channel\": \"Maizen\", \"videos\": 30, \"next\": true }\n",[23,446,447,461],{"__ignoreMap":21},[26,448,449,452,454,457,459],{"class":28,"line":29},[26,450,451],{"class":236},"jq",[26,453,342],{"class":67},[26,455,456],{"class":36},"{channel: .channel.name, videos: (.videos | length), next: (.continuation_token != null)}",[26,458,68],{"class":67},[26,460,438],{"class":36},[26,462,463],{"class":28,"line":249},[26,464,465],{"class":362},"# -> { \"channel\": \"Maizen\", \"videos\": 30, \"next\": true }\n",[11,467,468],{},"Two things about this response are worth knowing up front, because they decide how the rest of the script behaves:",[100,470,471,482],{},[103,472,473,474,476,477,481],{},"The top-level ",[23,475,136],{}," object (name, description, handle, verified badge) is ",[478,479,480],"strong",{},"only on the first page",". Paginated responses omit it, so treat page one as the record for channel-level data and do not expect it again.",[103,483,484,485,487,488,126,490,492,493,495,496,499],{},"Each video's ",[23,486,125],{}," is a display string like ",[23,489,151],{},[23,491,129],{}," is relative, like ",[23,494,158],{},", not an absolute date. YouTube stopped shipping a per-video description in channel listings in 2026, so ",[23,497,498],{},"description"," is always empty here.",[11,501,502],{},[503,504],"img",{"alt":505,"src":506},"One videos entry fanning out into the six CSV columns that matter: title, videoId, url, published, views, and duration","\u002Fimg\u002Fblog\u002Fexport-youtube-channel-videos-to-csv-fig-fields.png",[95,508,510],{"id":509},"step-3-page-through-the-whole-catalog","Step 3: page through the whole catalog",[11,512,513,514,516],{},"One page is 30-ish videos. To get the full list, take the ",[23,515,92],{}," from each response and pass it into the next call. When the token comes back empty, you have reached the end.",[16,518,520],{"className":227,"code":519,"language":229,"meta":21,"style":21},"token=$(jq -r '.continuation_token \u002F\u002F empty' page_1.json)\n\nmonid run -p tikhub -e \u002Fapi\u002Fv1\u002Fyoutube\u002Fweb_v2\u002Fget_channel_videos \\\n  --query \"{\\\"channel_id\\\":\\\"UCJHBJ7F-nAIlMGolm0Hu4vg\\\",\\\"country_code\\\":\\\"US\\\",\\\"continuation_token\\\":\\\"$token\\\"}\" \\\n  -w -o page_2.json\n",[23,521,522,548,554,570,637],{"__ignoreMap":21},[26,523,524,527,530,532,535,537,540,542,545],{"class":28,"line":29},[26,525,526],{"class":276},"token",[26,528,529],{"class":67},"=$(",[26,531,451],{"class":236},[26,533,534],{"class":36}," -r",[26,536,342],{"class":67},[26,538,539],{"class":36},".continuation_token \u002F\u002F empty",[26,541,68],{"class":67},[26,543,544],{"class":36}," page_1.json",[26,546,547],{"class":67},")\n",[26,549,550],{"class":28,"line":249},[26,551,553],{"emptyLinePlaceholder":552},true,"\n",[26,555,556,558,560,562,564,566,568],{"class":28,"line":359},[26,557,252],{"class":236},[26,559,402],{"class":36},[26,561,405],{"class":36},[26,563,49],{"class":36},[26,565,410],{"class":36},[26,567,52],{"class":36},[26,569,328],{"class":276},[26,571,573,575,577,580,583,586,588,591,593,596,598,601,603,606,608,610,612,615,617,619,621,623,625,627,630,633,635],{"class":28,"line":572},4,[26,574,419],{"class":36},[26,576,319],{"class":67},[26,578,579],{"class":36},"{",[26,581,582],{"class":276},"\\\"",[26,584,585],{"class":36},"channel_id",[26,587,582],{"class":276},[26,589,590],{"class":36},":",[26,592,582],{"class":276},[26,594,595],{"class":36},"UCJHBJ7F-nAIlMGolm0Hu4vg",[26,597,582],{"class":276},[26,599,600],{"class":36},",",[26,602,582],{"class":276},[26,604,605],{"class":36},"country_code",[26,607,582],{"class":276},[26,609,590],{"class":36},[26,611,582],{"class":276},[26,613,614],{"class":36},"US",[26,616,582],{"class":276},[26,618,600],{"class":36},[26,620,582],{"class":276},[26,622,92],{"class":36},[26,624,582],{"class":276},[26,626,590],{"class":36},[26,628,629],{"class":276},"\\\"$token\\\"",[26,631,632],{"class":36},"}",[26,634,325],{"class":67},[26,636,328],{"class":276},[26,638,640,642,644],{"class":28,"line":639},5,[26,641,433],{"class":36},[26,643,339],{"class":36},[26,645,646],{"class":36}," page_2.json\n",[11,648,649],{},"That is the whole pagination contract: read token, pass token, repeat. Step 5 wraps it in a loop so you do not do it by hand.",[11,651,652],{},[503,653],{"alt":654,"src":655},"The pagination loop: the first call returns video rows, each next call with the continuation token loops back, and when the token is empty the run writes videos.csv","\u002Fimg\u002Fblog\u002Fexport-youtube-channel-videos-to-csv-fig-pager.png",[95,657,659],{"id":658},"step-4-flatten-one-page-to-csv-columns","Step 4: flatten one page to CSV columns",[11,661,662,663,665,666,669],{},"Pick the six columns you actually want and let ",[23,664,451],{}," emit proper CSV. The one transform that matters is on views: ",[23,667,668],{},"gsub(\"[^0-9]\";\"\")"," throws away the commas and the word \"views\" so you get a plain integer you can sort and sum.",[16,671,673],{"className":227,"code":672,"language":229,"meta":21,"style":21},"jq -r '.videos[] | [\n  .title,\n  .video_id,\n  .url,\n  .published_time,\n  (.view_count | gsub(\"[^0-9]\";\"\")),\n  .duration\n] | @csv' page_1.json\n",[23,674,675,686,691,696,701,706,712,718],{"__ignoreMap":21},[26,676,677,679,681,683],{"class":28,"line":29},[26,678,451],{"class":236},[26,680,534],{"class":36},[26,682,342],{"class":67},[26,684,685],{"class":36},".videos[] | [\n",[26,687,688],{"class":28,"line":249},[26,689,690],{"class":36},"  .title,\n",[26,692,693],{"class":28,"line":359},[26,694,695],{"class":36},"  .video_id,\n",[26,697,698],{"class":28,"line":572},[26,699,700],{"class":36},"  .url,\n",[26,702,703],{"class":28,"line":639},[26,704,705],{"class":36},"  .published_time,\n",[26,707,709],{"class":28,"line":708},6,[26,710,711],{"class":36},"  (.view_count | gsub(\"[^0-9]\";\"\")),\n",[26,713,715],{"class":28,"line":714},7,[26,716,717],{"class":36},"  .duration\n",[26,719,721,724,726],{"class":28,"line":720},8,[26,722,723],{"class":36},"] | @csv",[26,725,68],{"class":67},[26,727,438],{"class":36},[11,729,730,733,734,736,737,740],{},[23,731,732],{},"@csv"," quotes and escapes for you, so a comma inside a video title will not shift your columns. ",[23,735,122],{}," stays as ",[23,738,739],{},"\"16:57\""," (minutes and seconds), which spreadsheets read fine as text; convert it to seconds later if you need to do math on it.",[95,742,744],{"id":743},"step-5-the-full-export-script","Step 5: the full export script",[11,746,747],{},"Now assemble it. Write the header once, then loop: run a page, append its rows, read the next token, and break when the token runs dry.",[16,749,751],{"className":227,"code":750,"language":229,"meta":21,"style":21},"CHANNEL=\"UCJHBJ7F-nAIlMGolm0Hu4vg\"\necho 'title,videoId,url,published,views,duration' > videos.csv\n\ntoken=\"\"\npage=1\nwhile : ; do\n  if [ -z \"$token\" ]; then\n    q=\"{\\\"channel_id\\\":\\\"$CHANNEL\\\",\\\"country_code\\\":\\\"US\\\"}\"\n  else\n    q=\"{\\\"channel_id\\\":\\\"$CHANNEL\\\",\\\"country_code\\\":\\\"US\\\",\\\"continuation_token\\\":\\\"$token\\\"}\"\n  fi\n\n  monid run -p tikhub -e \u002Fapi\u002Fv1\u002Fyoutube\u002Fweb_v2\u002Fget_channel_videos \\\n    --query \"$q\" -w -o \"page_$page.json\"\n\n  jq -r '.videos[] | [.title, .video_id, .url, .published_time,\n    (.view_count | gsub(\"[^0-9]\";\"\")), .duration] | @csv' \\\n    \"page_$page.json\" >> videos.csv\n\n  token=$(jq -r '.continuation_token \u002F\u002F empty' \"page_$page.json\")\n  [ -z \"$token\" ] && break\n  page=$((page + 1))\ndone\n\necho \"done: $(( $(wc -l \u003C videos.csv) - 1 )) videos in videos.csv\"\n",[23,752,753,768,786,790,799,809,824,848,890,896,949,955,960,978,1009,1014,1027,1037,1056,1061,1091,1114,1135,1141,1146],{"__ignoreMap":21},[26,754,755,758,761,763,765],{"class":28,"line":29},[26,756,757],{"class":276},"CHANNEL",[26,759,760],{"class":67},"=",[26,762,325],{"class":67},[26,764,595],{"class":36},[26,766,767],{"class":67},"\"\n",[26,769,770,773,775,778,780,783],{"class":28,"line":249},[26,771,772],{"class":32},"echo",[26,774,342],{"class":67},[26,776,777],{"class":36},"title,videoId,url,published,views,duration",[26,779,68],{"class":67},[26,781,782],{"class":67}," >",[26,784,785],{"class":36}," videos.csv\n",[26,787,788],{"class":28,"line":359},[26,789,553],{"emptyLinePlaceholder":552},[26,791,792,794,796],{"class":28,"line":572},[26,793,526],{"class":276},[26,795,760],{"class":67},[26,797,798],{"class":67},"\"\"\n",[26,800,801,804,806],{"class":28,"line":639},[26,802,803],{"class":276},"page",[26,805,760],{"class":67},[26,807,808],{"class":36},"1\n",[26,810,811,815,818,821],{"class":28,"line":708},[26,812,814],{"class":813},"s7zQu","while",[26,816,817],{"class":32}," :",[26,819,820],{"class":67}," ;",[26,822,823],{"class":813}," do\n",[26,825,826,829,832,835,837,840,842,845],{"class":28,"line":714},[26,827,828],{"class":813},"  if",[26,830,831],{"class":67}," [",[26,833,834],{"class":67}," -z",[26,836,319],{"class":67},[26,838,839],{"class":276},"$token",[26,841,325],{"class":67},[26,843,844],{"class":67}," ];",[26,846,847],{"class":813}," then\n",[26,849,850,853,855,857,859,861,863,865,867,870,872,874,876,878,880,882,884,886,888],{"class":28,"line":720},[26,851,852],{"class":276},"    q",[26,854,760],{"class":67},[26,856,325],{"class":67},[26,858,579],{"class":36},[26,860,582],{"class":276},[26,862,585],{"class":36},[26,864,582],{"class":276},[26,866,590],{"class":36},[26,868,869],{"class":276},"\\\"$CHANNEL\\\"",[26,871,600],{"class":36},[26,873,582],{"class":276},[26,875,605],{"class":36},[26,877,582],{"class":276},[26,879,590],{"class":36},[26,881,582],{"class":276},[26,883,614],{"class":36},[26,885,582],{"class":276},[26,887,632],{"class":36},[26,889,767],{"class":67},[26,891,893],{"class":28,"line":892},9,[26,894,895],{"class":813},"  else\n",[26,897,899,901,903,905,907,909,911,913,915,917,919,921,923,925,927,929,931,933,935,937,939,941,943,945,947],{"class":28,"line":898},10,[26,900,852],{"class":276},[26,902,760],{"class":67},[26,904,325],{"class":67},[26,906,579],{"class":36},[26,908,582],{"class":276},[26,910,585],{"class":36},[26,912,582],{"class":276},[26,914,590],{"class":36},[26,916,869],{"class":276},[26,918,600],{"class":36},[26,920,582],{"class":276},[26,922,605],{"class":36},[26,924,582],{"class":276},[26,926,590],{"class":36},[26,928,582],{"class":276},[26,930,614],{"class":36},[26,932,582],{"class":276},[26,934,600],{"class":36},[26,936,582],{"class":276},[26,938,92],{"class":36},[26,940,582],{"class":276},[26,942,590],{"class":36},[26,944,629],{"class":276},[26,946,632],{"class":36},[26,948,767],{"class":67},[26,950,952],{"class":28,"line":951},11,[26,953,954],{"class":813},"  fi\n",[26,956,958],{"class":28,"line":957},12,[26,959,553],{"emptyLinePlaceholder":552},[26,961,963,966,968,970,972,974,976],{"class":28,"line":962},13,[26,964,965],{"class":236},"  monid",[26,967,402],{"class":36},[26,969,405],{"class":36},[26,971,49],{"class":36},[26,973,410],{"class":36},[26,975,52],{"class":36},[26,977,328],{"class":276},[26,979,981,984,986,989,991,994,996,998,1001,1004,1007],{"class":28,"line":980},14,[26,982,983],{"class":36},"    --query",[26,985,319],{"class":67},[26,987,988],{"class":276},"$q",[26,990,325],{"class":67},[26,992,993],{"class":36}," -w",[26,995,339],{"class":36},[26,997,319],{"class":67},[26,999,1000],{"class":36},"page_",[26,1002,1003],{"class":276},"$page",[26,1005,1006],{"class":36},".json",[26,1008,767],{"class":67},[26,1010,1012],{"class":28,"line":1011},15,[26,1013,553],{"emptyLinePlaceholder":552},[26,1015,1017,1020,1022,1024],{"class":28,"line":1016},16,[26,1018,1019],{"class":236},"  jq",[26,1021,534],{"class":36},[26,1023,342],{"class":67},[26,1025,1026],{"class":36},".videos[] | [.title, .video_id, .url, .published_time,\n",[26,1028,1030,1033,1035],{"class":28,"line":1029},17,[26,1031,1032],{"class":36},"    (.view_count | gsub(\"[^0-9]\";\"\")), .duration] | @csv",[26,1034,68],{"class":67},[26,1036,328],{"class":276},[26,1038,1040,1043,1045,1047,1049,1051,1054],{"class":28,"line":1039},18,[26,1041,1042],{"class":67},"    \"",[26,1044,1000],{"class":36},[26,1046,1003],{"class":276},[26,1048,1006],{"class":36},[26,1050,325],{"class":67},[26,1052,1053],{"class":67}," >>",[26,1055,785],{"class":36},[26,1057,1059],{"class":28,"line":1058},19,[26,1060,553],{"emptyLinePlaceholder":552},[26,1062,1064,1067,1069,1071,1073,1075,1077,1079,1081,1083,1085,1087,1089],{"class":28,"line":1063},20,[26,1065,1066],{"class":276},"  token",[26,1068,529],{"class":67},[26,1070,451],{"class":236},[26,1072,534],{"class":36},[26,1074,342],{"class":67},[26,1076,539],{"class":36},[26,1078,68],{"class":67},[26,1080,319],{"class":67},[26,1082,1000],{"class":36},[26,1084,1003],{"class":276},[26,1086,1006],{"class":36},[26,1088,325],{"class":67},[26,1090,547],{"class":67},[26,1092,1094,1097,1099,1101,1103,1105,1108,1111],{"class":28,"line":1093},21,[26,1095,1096],{"class":67},"  [",[26,1098,834],{"class":67},[26,1100,319],{"class":67},[26,1102,839],{"class":276},[26,1104,325],{"class":67},[26,1106,1107],{"class":67}," ]",[26,1109,1110],{"class":67}," &&",[26,1112,1113],{"class":813}," break\n",[26,1115,1117,1120,1123,1125,1128,1132],{"class":28,"line":1116},22,[26,1118,1119],{"class":276},"  page",[26,1121,1122],{"class":67},"=$((",[26,1124,803],{"class":236},[26,1126,1127],{"class":36}," +",[26,1129,1131],{"class":1130},"sbssI"," 1",[26,1133,1134],{"class":67},"))\n",[26,1136,1138],{"class":28,"line":1137},23,[26,1139,1140],{"class":813},"done\n",[26,1142,1144],{"class":28,"line":1143},24,[26,1145,553],{"emptyLinePlaceholder":552},[26,1147,1149,1151,1153,1156,1159,1162,1165,1168,1171,1174,1177,1179,1182],{"class":28,"line":1148},25,[26,1150,772],{"class":32},[26,1152,319],{"class":67},[26,1154,1155],{"class":36},"done: ",[26,1157,1158],{"class":67},"$((",[26,1160,1161],{"class":236}," $(wc",[26,1163,1164],{"class":36}," -l ",[26,1166,1167],{"class":67},"\u003C",[26,1169,1170],{"class":36}," videos.csv",[26,1172,1173],{"class":67},")",[26,1175,1176],{"class":36}," - 1 ",[26,1178,1173],{"class":67},[26,1180,1181],{"class":36},") videos in videos.csv",[26,1183,767],{"class":67},[11,1185,1186,1187,1189],{},"Open ",[23,1188,77],{}," in any spreadsheet and you have the channel's catalog: sort by the views column to find the outliers, filter by duration for shorts versus long-form, or keep the file and diff it next week to see what shipped. To limit an export to just the newest videos, stop the loop after one or two pages instead of running it to the end.",[95,1191,1193],{"id":1192},"cost-tally","Cost tally",[11,1195,1196,1197,1199,1200,1203],{},"Everything before the run is free. Discovery and inspection cost nothing, so reading the schema and shaping the ",[23,1198,451],{}," in Steps 2 and 4 does not touch your wallet. The run is the only billed step, priced per call at a fraction of a cent. A single channel's full catalog is a handful of pages, so a complete export lands in the single-digit-cents range, and a batch of a few dozen channels is still a few dollars. There is no monthly floor and no per-vendor signup. Check current per-call pricing on ",[83,1201,167],{"href":165,"rel":1202},[87]," before you widen the sweep.",[95,1205,1207],{"id":1206},"faq","FAQ",[11,1209,1210,1216,1217,1220,1221,1223,1224,1226],{},[478,1211,1212,1213,1215],{},"How do I turn a ",[23,1214,302],{}," into the channel id it needs?","\nFetch the channel page and grep for ",[23,1218,1219],{},"\"channelId\":\"UC...\"",", as in Step 1, or read it out of a ",[23,1222,372],{}," URL directly. The endpoint always wants the ",[23,1225,298],{}," id, not the handle.",[11,1228,1229,1232,1233,1236],{},[478,1230,1231],{},"Why does the channel name disappear after the first page?","\nYouTube only returns channel-level metadata on the initial listing request. Paginated responses carry just the ",[23,1234,1235],{},"videos"," array and the next token, so cache page one for the channel name, bio, and verified badge.",[11,1238,1239,1246,1247,1249,1250,1253,1254,1256,1257,1260],{},[478,1240,1241,1242,1245],{},"Is ",[23,1243,1244],{},"published"," an exact date?","\nNo. ",[23,1248,129],{}," is a relative string like ",[23,1251,1252],{},"\"2 weeks ago\"",", which is what the channel listing exposes. If you need an exact upload timestamp, take the ",[23,1255,112],{}," and call a video-detail endpoint; a free ",[23,1258,1259],{},"monid discover"," search shows the options.",[11,1262,1263,1266,1267,1270,1271,130],{},[478,1264,1265],{},"How much does a full export cost?","\nInspect is free, and runs are billed per call at a fraction of a cent, so one channel's whole catalog is cents and a batch is a few dollars. Live pricing is on ",[83,1268,167],{"href":165,"rel":1269},[87],". Start at ",[83,1272,1275],{"href":1273,"rel":1274},"https:\u002F\u002Fmonid.ai",[87],"monid.ai",[1277,1278,1279],"style",{},"html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":21,"searchDepth":249,"depth":249,"links":1281},[1282,1283,1284,1288,1289,1290,1291,1292,1293,1294],{"id":97,"depth":249,"text":98},{"id":170,"depth":249,"text":171},{"id":189,"depth":249,"text":190,"children":1285},[1286,1287],{"id":194,"depth":359,"text":195},{"id":223,"depth":359,"text":224},{"id":291,"depth":249,"text":292},{"id":376,"depth":249,"text":377},{"id":509,"depth":249,"text":510},{"id":658,"depth":249,"text":659},{"id":743,"depth":249,"text":744},{"id":1192,"depth":249,"text":1193},{"id":1206,"depth":249,"text":1207},null,"\u002Fimg\u002Fblog\u002Fexport-youtube-channel-videos-to-csv.png","A copy-paste cookbook: turn a YouTube channel id into a videos.csv with title, url, views, and duration, paging with continuation_token.",false,"md",{},"\u002Fblog\u002Fexport-youtube-channel-videos-to-csv","2026-07-22",{"title":5,"description":1297},"blog\u002Fexport-youtube-channel-videos-to-csv",[1306,1307,1308,1309],"youtube","csv export","tikhub","data pipeline","SWHqYGfJ4HfLQYg4jttAIall4-6rW7hIVsUNp0ydOfU",[1312,1375,1443,1509],{"id":1313,"title":1314,"author":1295,"body":1315,"category":1295,"cover":1360,"description":21,"draft":1298,"extension":1299,"image":1295,"launchCta":1361,"listingCover":1295,"meta":1364,"navigation":552,"ogImage":1295,"path":1365,"publishedAt":1366,"readTime":1295,"seo":1367,"stem":1368,"tags":1369,"toolCategory":1295,"updatedAt":1295,"__hash__":1374},"blog\u002Fblog\u002Fakta-pro-is-now-available-on-monid.md","Introducing private markets\ndata for agents",{"type":8,"value":1316,"toc":1356},[1317,1321,1329,1332,1336,1343,1350,1353],[95,1318,1320],{"id":1319},"what-is-aktapro","What is akta.pro",[11,1322,1323,1328],{},[83,1324,1327],{"href":1325,"rel":1326},"https:\u002F\u002Fwww.akta.pro\u002F",[87],"akta.pro"," is a private company data and signals API for\nAI agents. Company Database covers 20M+ companies with 75+ structured fields\neach. News Signals delivers deduplicated, entity-resolved company news,\nindustry news, and signals on open-ended topics, all scored for impact and\nsentiment.",[11,1330,1331],{},"Private-company research is usually scattered across databases, news feeds,\nreview sites, and web search. akta.pro turns that into structured API calls, so\nan agent gets the right company context and keeps moving.",[95,1333,1335],{"id":1334},"what-is-monid","What is Monid",[11,1337,1338,1342],{},[83,1339,1341],{"href":1273,"rel":1340},[87],"Monid"," is the tool layer for agents. It lets agents connect\nto all the tools and APIs they need, without managing signups, API keys, or\nsubscriptions.",[11,1344,1345,1346,130],{},"Today, Monid provides tools for social media scraping, web search, image and\nmusic generation, people data search, weather APIs, ",[83,1347,1349],{"href":165,"rel":1348},[87],"and more",[1351,1352],"hr",{},[11,1354,1355],{},"On Monid, akta.pro becomes available as part of that same layer. Your agent can\nrequest private-company context, call akta.pro through Monid, receive structured\nmarket data, and continue the task. Private markets research should feel like\nany other tool call: describe the company or sector, get the signal, keep\nbuilding.",{"title":21,"searchDepth":249,"depth":249,"links":1357},[1358,1359],{"id":1319,"depth":249,"text":1320},{"id":1334,"depth":249,"text":1335},"\u002Fimg\u002Fblog\u002Fakta-pro-is-now-available-on-monid-v2.png",{"label":1362,"command":1363},"Give your agent this line to get started.","set up https:\u002F\u002Fmonid.ai\u002FSKILL.md and use akta.pro to research recent news, company enrichment, and alternative signals for Databricks",{},"\u002Fblog\u002Fakta-pro-is-now-available-on-monid","2026-07-07",{"title":1314,"description":21},"blog\u002Fakta-pro-is-now-available-on-monid",[1370,1371,1372,1373],"agents","partner-tools","private-markets","data","05ST9oH9qSQ4_vNxcczvHDEyev2JDIqBwMiM-zelWJo",{"id":1376,"title":1377,"author":1295,"body":1378,"category":1295,"cover":1432,"description":1433,"draft":1298,"extension":1299,"image":1295,"launchCta":1295,"listingCover":1295,"meta":1434,"navigation":552,"ogImage":1295,"path":1435,"publishedAt":1436,"readTime":1295,"seo":1437,"stem":1438,"tags":1439,"toolCategory":1295,"updatedAt":1295,"__hash__":1442},"blog\u002Fblog\u002Fyour-claude-code-can-now-make-phone-calls.md","Your Claude Code can now make phone calls",{"type":8,"value":1379,"toc":1428},[1380,1383,1392,1396,1404,1407,1409,1414,1420,1422,1425],[11,1381,1382],{"style":13},"Copy this line to your agent to make your first phone call.",[16,1384,1386],{"className":18,"code":1385,"language":20,"meta":21,"style":21},"set up https:\u002F\u002Fmonid.ai\u002FSKILL.md and use Saperly to call my phone number to confirm the connection works\n",[23,1387,1388],{"__ignoreMap":21},[26,1389,1390],{"class":28,"line":29},[26,1391,1385],{},[95,1393,1395],{"id":1394},"what-is-saperly","What is Saperly",[11,1397,1398,1403],{},[83,1399,1402],{"href":1400,"rel":1401},"https:\u002F\u002Fsaperly.com\u002F",[87],"Saperly"," is phone infrastructure for AI agents. It gives\nan agent a real phone number with voice, SMS, routing, spend controls, and\ncompliance built in, without making the builder manage carrier accounts or\ntelephony paperwork.",[11,1405,1406],{},"Your agent can confirm an appointment, follow up on a lead, check availability,\nor route a conversation without leaving the workflow it is already running.",[95,1408,1335],{"id":1334},[11,1410,1411,1342],{},[83,1412,1341],{"href":1273,"rel":1413},[87],[11,1415,1416,1417,130],{},"Today, Monid provides tools for social media scraping, web search, image \u002F\nmusic \u002F 3d model generation, people data search, weather APIs, ",[83,1418,1349],{"href":165,"rel":1419},[87],[1351,1421],{},[11,1423,1424],{},"On Monid, Saperly becomes available as part of that same layer. Your agent can\nrequest a phone call, use Saperly through Monid, receive the result, and keep\ngoing. Calling should feel like any other tool call: describe the outcome, let\nthe agent handle the phone work, and continue the task.",[1277,1426,1427],{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":21,"searchDepth":249,"depth":249,"links":1429},[1430,1431],{"id":1394,"depth":249,"text":1395},{"id":1334,"depth":249,"text":1335},"\u002Fimg\u002Fblog\u002Fyour-claude-code-can-now-make-phone-calls.png","Saperly is now available on Monid. Your agent can now make phone calls for you.",{},"\u002Fblog\u002Fyour-claude-code-can-now-make-phone-calls","2026-07-05",{"title":1377,"description":1433},"blog\u002Fyour-claude-code-can-now-make-phone-calls",[1370,1371,1440,1441],"voice","phone","Wp96EVH5j2eyHDSu2f5Rtv0RYmyWX7frAhalel9fOus",{"id":1444,"title":1445,"author":1295,"body":1446,"category":1295,"cover":1498,"description":1499,"draft":1298,"extension":1299,"image":1295,"launchCta":1295,"listingCover":1295,"meta":1500,"navigation":552,"ogImage":1295,"path":1501,"publishedAt":1502,"readTime":1295,"seo":1503,"stem":1504,"tags":1505,"toolCategory":1295,"updatedAt":1295,"__hash__":1508},"blog\u002Fblog\u002Fintroducing-suzanne-chatgpt-for-3d-models.md","Introducing\nClaude for 3D models",{"type":8,"value":1447,"toc":1494},[1448,1451,1460,1464,1472,1475,1477,1482,1487,1489,1492],[11,1449,1450],{"style":13},"Copy this line to your agent to generate your 3D model.",[16,1452,1454],{"className":18,"code":1453,"language":20,"meta":21,"style":21},"set up https:\u002F\u002Fmonid.ai\u002FSKILL.md and create a 3D model for a rabbit\n",[23,1455,1456],{"__ignoreMap":21},[26,1457,1458],{"class":28,"line":29},[26,1459,1453],{},[95,1461,1463],{"id":1462},"what-is-suzanne","What is Suzanne",[11,1465,1466,1471],{},[83,1467,1470],{"href":1468,"rel":1469},"https:\u002F\u002Fwww.suzanne3d.com",[87],"Suzanne"," is an AI-native 3D modeling tool that turns a prompt into a\nusable 3D asset. Instead of opening a modeling tool, blocking out forms,\nadding details, and exporting by hand, you describe what you want and let\nSuzanne generate the model for you.",[11,1473,1474],{},"That changes who can create 3D objects. Product teams can prototype visual\nideas faster. Game builders can rough out props and characters without\nwaiting on a full art pass. Agents can generate assets as part of a larger\nworkflow, then hand those files to downstream tools for rendering, testing,\nor iteration.",[95,1476,1335],{"id":1334},[11,1478,1479,1342],{},[83,1480,1341],{"href":1273,"rel":1481},[87],[11,1483,1345,1484,130],{},[83,1485,1349],{"href":165,"rel":1486},[87],[1351,1488],{},[11,1490,1491],{},"On Monid, Suzanne becomes available as part of that same layer. Your agent can\nask for the 3D asset it needs, call Suzanne through Monid, and continue the task.\n3D creation should feel as direct as text generation: describe the thing, get\nthe artifact, keep building.",[1277,1493,1427],{},{"title":21,"searchDepth":249,"depth":249,"links":1495},[1496,1497],{"id":1462,"depth":249,"text":1463},{"id":1334,"depth":249,"text":1335},"\u002Fimg\u002Fblog\u002Fintroducing-suzanne-chatgpt-for-3d-models.png","Suzanne is now available on Monid. Turn any idea into a production-ready 3D model in one prompt.",{},"\u002Fblog\u002Fintroducing-suzanne-chatgpt-for-3d-models","2026-06-25",{"title":1445,"description":1499},"blog\u002Fintroducing-suzanne-chatgpt-for-3d-models",[1506,1370,1507],"3d","creative-tools","Mz475YlhLBgR80gyiTlL2MhfALZKYwbl4Rfwy96HZG0",{"id":1510,"title":1511,"author":1295,"body":1512,"category":1295,"cover":1571,"description":1572,"draft":1298,"extension":1299,"image":1295,"launchCta":1295,"listingCover":1295,"meta":1573,"navigation":552,"ogImage":1295,"path":1574,"publishedAt":1575,"readTime":1295,"seo":1576,"stem":1577,"tags":1578,"toolCategory":1295,"updatedAt":1295,"__hash__":1581},"blog\u002Fblog\u002Fminimax-is-now-available-on-monid.md","MiniMax is now available on Monid",{"type":8,"value":1513,"toc":1566},[1514,1517,1526,1530,1538,1542,1545,1547,1553,1559,1561,1564],[11,1515,1516],{"style":13},"Copy this line to your agent to create music.",[16,1518,1520],{"className":18,"code":1519,"language":20,"meta":21,"style":21},"set up https:\u002F\u002Fmonid.ai\u002FSKILL.md and create a song with MiniMax Music 2.6\n",[23,1521,1522],{"__ignoreMap":21},[26,1523,1524],{"class":28,"line":29},[26,1525,1519],{},[95,1527,1529],{"id":1528},"minimax-music-26","MiniMax Music 2.6",[11,1531,1532,1537],{},[83,1533,1536],{"href":1534,"rel":1535},"https:\u002F\u002Fwww.minimax.io",[87],"MiniMax"," Music 2.6 turns a prompt into music your agent can use right away. Describe the style, mood, lyrics, or use case, and generate a track inside the same workflow.",[95,1539,1541],{"id":1540},"minimax-text-to-image-image-01","MiniMax Text-to-Image image-01",[11,1543,1544],{},"MiniMax image-01 turns text prompts into images. Ask for a concept, scene, product visual, or creative asset, and let your agent generate it through Monid.",[95,1546,1335],{"id":1334},[11,1548,1549,1552],{},[83,1550,1341],{"href":1273,"rel":1551},[87]," is the tool layer for agents. It lets agents connect to all the tools and APIs they need, without managing signups, API keys, or subscriptions.",[11,1554,1555,1556,130],{},"Today, Monid provides tools for social media scraping, web search, image and music generation, people data search, weather APIs, ",[83,1557,1349],{"href":165,"rel":1558},[87],[1351,1560],{},[11,1562,1563],{},"On Monid, MiniMax becomes part of the same tool layer your agent already uses. Describe what you need, generate the image or music, and keep building.",[1277,1565,1427],{},{"title":21,"searchDepth":249,"depth":249,"links":1567},[1568,1569,1570],{"id":1528,"depth":249,"text":1529},{"id":1540,"depth":249,"text":1541},{"id":1334,"depth":249,"text":1335},"\u002Fimg\u002Fblog\u002Fminimax-is-now-available-on-monid.png","Create images and music with MiniMax models through Monid.",{},"\u002Fblog\u002Fminimax-is-now-available-on-monid","2026-06-24",{"title":1511,"description":1572},"blog\u002Fminimax-is-now-available-on-monid",[1370,1507,1579,1580],"image-generation","music-generation","B3dZqIjNJNK7Y9ysAenI0XzKobOZMlEP87FRWrW19Vc",1786670265481]