[{"data":1,"prerenderedAt":1146},["ShallowReactive",2],{"navigation_docs":3,"-docs-images":102,"-docs-images-surround":1141},[4,8,12,16,20,24,28,32,36,40,44,82,86,90,94,98],{"title":5,"path":6,"stem":7},"Overview","\u002Fdocs","docs\u002Findex",{"title":9,"path":10,"stem":11},"Quickstart","\u002Fdocs\u002Fquickstart","docs\u002F01.quickstart",{"title":13,"path":14,"stem":15},"Authentication and keys","\u002Fdocs\u002Fauthentication","docs\u002F02.authentication",{"title":17,"path":18,"stem":19},"Images","\u002Fdocs\u002Fimages","docs\u002F03.images",{"title":21,"path":22,"stem":23},"Texts","\u002Fdocs\u002Ftexts","docs\u002F04.texts",{"title":25,"path":26,"stem":27},"Migrating from SightEngine","\u002Fdocs\u002Fmigrating-from-sightengine","docs\u002F05.migrating-from-sightengine",{"title":29,"path":30,"stem":31},"Workflows","\u002Fdocs\u002Fworkflows","docs\u002F06.workflows",{"title":33,"path":34,"stem":35},"Responses and errors","\u002Fdocs\u002Fresponses-and-errors","docs\u002F07.responses-and-errors",{"title":37,"path":38,"stem":39},"Limits and quotas","\u002Fdocs\u002Flimits-and-quotas","docs\u002F08.limits-and-quotas",{"title":41,"path":42,"stem":43},"The journal and ref","\u002Fdocs\u002Fjournal-and-ref","docs\u002F09.journal-and-ref",{"title":45,"path":46,"stem":47,"children":48,"page":81},"Integration guides","\u002Fdocs\u002Fintegration-guides","docs\u002F10.integration-guides",[49,53,57,61,65,69,73,77],{"title":50,"path":51,"stem":52},"Node.js and TypeScript","\u002Fdocs\u002Fintegration-guides\u002Fnodejs","docs\u002F10.integration-guides\u002F1.nodejs",{"title":54,"path":55,"stem":56},"Python","\u002Fdocs\u002Fintegration-guides\u002Fpython","docs\u002F10.integration-guides\u002F2.python",{"title":58,"path":59,"stem":60},"PHP","\u002Fdocs\u002Fintegration-guides\u002Fphp","docs\u002F10.integration-guides\u002F3.php",{"title":62,"path":63,"stem":64},"Go","\u002Fdocs\u002Fintegration-guides\u002Fgo","docs\u002F10.integration-guides\u002F4.go",{"title":66,"path":67,"stem":68},"Supabase Edge Functions","\u002Fdocs\u002Fintegration-guides\u002Fsupabase-edge-functions","docs\u002F10.integration-guides\u002F5.supabase-edge-functions",{"title":70,"path":71,"stem":72},"Cloudflare Workers","\u002Fdocs\u002Fintegration-guides\u002Fcloudflare-workers","docs\u002F10.integration-guides\u002F6.cloudflare-workers",{"title":74,"path":75,"stem":76},"Nuxt and Next","\u002Fdocs\u002Fintegration-guides\u002Fnuxt-and-next","docs\u002F10.integration-guides\u002F7.nuxt-and-next",{"title":78,"path":79,"stem":80},"Moderate an AI agent","\u002Fdocs\u002Fintegration-guides\u002Fmoderate-ai-agents","docs\u002F10.integration-guides\u002F8.moderate-ai-agents",false,{"title":83,"path":84,"stem":85},"AI coding agents","\u002Fdocs\u002Fai-agents","docs\u002F11.ai-agents",{"title":87,"path":88,"stem":89},"Best practices","\u002Fdocs\u002Fbest-practices","docs\u002F12.best-practices",{"title":91,"path":92,"stem":93},"Privacy and data","\u002Fdocs\u002Fprivacy-and-data","docs\u002F13.privacy-and-data",{"title":95,"path":96,"stem":97},"API reference","\u002Fdocs\u002Fapi-reference","docs\u002F14.api-reference",{"title":99,"path":100,"stem":101},"Changelog","\u002Fdocs\u002Fchangelog","docs\u002F15.changelog",{"id":103,"title":17,"body":104,"description":1133,"extension":1134,"links":1135,"meta":1136,"navigation":313,"path":18,"seo":1137,"stem":19,"__hash__":1140},"docs\u002Fdocs\u002F03.images.md",{"type":105,"value":106,"toc":1126},"minimark",[107,115,120,203,206,495,499,502,536,558,562,571,575,582,981,985,1112,1118,1122],[108,109,110,114],"p",{},[111,112,113],"code",{},"POST \u002Fv1\u002Fimage"," checks one image and answers with the decision. One image is one check, whatever the number of categories it is checked against.",[116,117,119],"h2",{"id":118},"request","Request",[121,122,123,139],"table",{},[124,125,126],"thead",{},[127,128,129,133,136],"tr",{},[130,131,132],"th",{},"Part",[130,134,135],{},"Where",[130,137,138],{},"Description",[140,141,142,154,175,191],"tbody",{},[127,143,144,148,151],{},[145,146,147],"td",{},"The image",[145,149,150],{},"Body",[145,152,153],{},"The raw bytes. JPEG, PNG, WebP or GIF (the first frame). The API recognises the format from the bytes.",[127,155,156,161,164],{},[145,157,158],{},[111,159,160],{},"workflow",[145,162,163],{},"Query",[145,165,166,167,170,171,174],{},"The ",[168,169,160],"a",{"href":30}," to check against. ",[111,172,173],{},"default"," when absent.",[127,176,177,182,184],{},[145,178,179],{},[111,180,181],{},"ref",[145,183,163],{},[145,185,186,187,190],{},"Your own id for the image, 1 to 128 characters, no control character. It is echoed in the answer and kept in the ",[168,188,189],{"href":42},"journal",".",[127,192,193,198,200],{},[145,194,195],{},[111,196,197],{},"url",[145,199,163],{},[145,201,202],{},"The address of the image, instead of a body. See below.",[108,204,205],{},"Limits: at most 15 MB, 50 megapixels (12 on the free plan) and 16,384 pixels on a side.",[207,208,209,275],"code-group",{},[210,211,217],"pre",{"className":212,"code":213,"filename":214,"language":215,"meta":216,"style":216},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl -X POST \"https:\u002F\u002Fapi.openshield.dev\u002Fv1\u002Fimage?workflow=default&ref=avatar_4821\" \\\n  -H \"Authorization: Bearer $OPENMOD_API_KEY\" \\\n  --data-binary @photo.jpg\n","curl","bash","",[111,218,219,248,266],{"__ignoreMap":216},[220,221,224,227,231,234,238,241,244],"span",{"class":222,"line":223},"line",1,[220,225,214],{"class":226},"sBMFI",[220,228,230],{"class":229},"sfazB"," -X",[220,232,233],{"class":229}," POST",[220,235,237],{"class":236},"sMK4o"," \"",[220,239,240],{"class":229},"https:\u002F\u002Fapi.openshield.dev\u002Fv1\u002Fimage?workflow=default&ref=avatar_4821",[220,242,243],{"class":236},"\"",[220,245,247],{"class":246},"sTEyZ"," \\\n",[220,249,251,254,256,259,262,264],{"class":222,"line":250},2,[220,252,253],{"class":229},"  -H",[220,255,237],{"class":236},[220,257,258],{"class":229},"Authorization: Bearer ",[220,260,261],{"class":246},"$OPENMOD_API_KEY",[220,263,243],{"class":236},[220,265,247],{"class":246},[220,267,269,272],{"class":222,"line":268},3,[220,270,271],{"class":229},"  --data-binary",[220,273,274],{"class":229}," @photo.jpg\n",[210,276,281],{"className":277,"code":278,"filename":279,"language":280,"meta":216,"style":216},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { readFile } from \"node:fs\u002Fpromises\"\n\nconst response = await fetch(\"https:\u002F\u002Fapi.openshield.dev\u002Fv1\u002Fimage?ref=avatar_4821\", {\n  method: \"POST\",\n  headers: { Authorization: `Bearer ${process.env.OPENMOD_API_KEY}` },\n  body: await readFile(\"photo.jpg\"),\n})\nconst answer = await response.json()\nconsole.log(answer.summary.action)\n","TypeScript","ts",[111,282,283,309,315,350,370,413,439,448,471],{"__ignoreMap":216},[220,284,285,289,292,295,298,301,303,306],{"class":222,"line":223},[220,286,288],{"class":287},"s7zQu","import",[220,290,291],{"class":236}," {",[220,293,294],{"class":246}," readFile",[220,296,297],{"class":236}," }",[220,299,300],{"class":287}," from",[220,302,237],{"class":236},[220,304,305],{"class":229},"node:fs\u002Fpromises",[220,307,308],{"class":236},"\"\n",[220,310,311],{"class":222,"line":250},[220,312,314],{"emptyLinePlaceholder":313},true,"\n",[220,316,317,321,324,327,330,334,337,339,342,344,347],{"class":222,"line":268},[220,318,320],{"class":319},"spNyl","const",[220,322,323],{"class":246}," response ",[220,325,326],{"class":236},"=",[220,328,329],{"class":287}," await",[220,331,333],{"class":332},"s2Zo4"," fetch",[220,335,336],{"class":246},"(",[220,338,243],{"class":236},[220,340,341],{"class":229},"https:\u002F\u002Fapi.openshield.dev\u002Fv1\u002Fimage?ref=avatar_4821",[220,343,243],{"class":236},[220,345,346],{"class":236},",",[220,348,349],{"class":236}," {\n",[220,351,353,357,360,362,365,367],{"class":222,"line":352},4,[220,354,356],{"class":355},"swJcz","  method",[220,358,359],{"class":236},":",[220,361,237],{"class":236},[220,363,364],{"class":229},"POST",[220,366,243],{"class":236},[220,368,369],{"class":236},",\n",[220,371,373,376,378,380,383,385,388,391,394,397,399,402,404,407,410],{"class":222,"line":372},5,[220,374,375],{"class":355},"  headers",[220,377,359],{"class":236},[220,379,291],{"class":236},[220,381,382],{"class":355}," Authorization",[220,384,359],{"class":236},[220,386,387],{"class":236}," `",[220,389,390],{"class":229},"Bearer ",[220,392,393],{"class":236},"${",[220,395,396],{"class":246},"process",[220,398,190],{"class":236},[220,400,401],{"class":246},"env",[220,403,190],{"class":236},[220,405,406],{"class":246},"OPENMOD_API_KEY",[220,408,409],{"class":236},"}`",[220,411,412],{"class":236}," },\n",[220,414,416,419,421,423,425,427,429,432,434,437],{"class":222,"line":415},6,[220,417,418],{"class":355},"  body",[220,420,359],{"class":236},[220,422,329],{"class":287},[220,424,294],{"class":332},[220,426,336],{"class":246},[220,428,243],{"class":236},[220,430,431],{"class":229},"photo.jpg",[220,433,243],{"class":236},[220,435,436],{"class":246},")",[220,438,369],{"class":236},[220,440,442,445],{"class":222,"line":441},7,[220,443,444],{"class":236},"}",[220,446,447],{"class":246},")\n",[220,449,451,453,456,458,460,463,465,468],{"class":222,"line":450},8,[220,452,320],{"class":319},[220,454,455],{"class":246}," answer ",[220,457,326],{"class":236},[220,459,329],{"class":287},[220,461,462],{"class":246}," response",[220,464,190],{"class":236},[220,466,467],{"class":332},"json",[220,469,470],{"class":246},"()\n",[220,472,474,477,479,482,485,487,490,492],{"class":222,"line":473},9,[220,475,476],{"class":246},"console",[220,478,190],{"class":236},[220,480,481],{"class":332},"log",[220,483,484],{"class":246},"(answer",[220,486,190],{"class":236},[220,488,489],{"class":246},"summary",[220,491,190],{"class":236},[220,493,494],{"class":246},"action)\n",[116,496,498],{"id":497},"checking-a-public-url","Checking a public URL",[108,500,501],{},"Instead of sending the bytes, pass the address of the image and an empty body. The service downloads it from the public internet:",[210,503,505],{"className":212,"code":504,"language":215,"meta":216,"style":216},"curl -X POST \"https:\u002F\u002Fapi.openshield.dev\u002Fv1\u002Fimage?url=https%3A%2F%2Fexample.com%2Fphoto.jpg\" \\\n  -H \"Authorization: Bearer $OPENMOD_API_KEY\"\n",[111,506,507,524],{"__ignoreMap":216},[220,508,509,511,513,515,517,520,522],{"class":222,"line":223},[220,510,214],{"class":226},[220,512,230],{"class":229},[220,514,233],{"class":229},[220,516,237],{"class":236},[220,518,519],{"class":229},"https:\u002F\u002Fapi.openshield.dev\u002Fv1\u002Fimage?url=https%3A%2F%2Fexample.com%2Fphoto.jpg",[220,521,243],{"class":236},[220,523,247],{"class":246},[220,525,526,528,530,532,534],{"class":222,"line":250},[220,527,253],{"class":229},[220,529,237],{"class":236},[220,531,258],{"class":229},[220,533,261],{"class":246},[220,535,308],{"class":236},[108,537,538,539,542,543,546,547,550,551,554,555,190],{},"The download is guarded: only ",[111,540,541],{},"http"," and ",[111,544,545],{},"https"," addresses of the public internet, at most 15 MB, 3 redirects and 10 seconds, and the answer must have ",[111,548,549],{},"Content-Type: image\u002F*",". A refused address gets ",[111,552,553],{},"400 url_refused",", with the reason in ",[111,556,557],{},"message",[116,559,561],{"id":560},"what-is-checked","What is checked",[108,563,564,565,567,568,570],{},"The categories of the workflow. The ",[111,566,173],{}," workflow checks nudity, gore, weapons, hate symbols and self-harm (rejected at 0.8, sent to review at 0.5), drugs and minors (sent to review at 0.5), and the text and QR codes found in the image: links to adult, unsafe or gambling sites, and extremist text. ",[168,569,29],{"href":30}," explains how to change that.",[116,572,574],{"id":573},"answer","Answer",[108,576,577,578,581],{},"The answer has the ",[168,579,580],{"href":34},"shape described here",". For an image rejected for nudity:",[210,583,586],{"className":584,"code":585,"language":467,"meta":216,"style":216},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"status\": \"success\",\n  \"workflow\": \"default\",\n  \"workflow_version\": 1,\n  \"summary\": {\n    \"action\": \"reject\",\n    \"reject_prob\": 0.97,\n    \"reject_reason\": [\n      {\n        \"id\": \"nudity\",\n        \"text\": \"Nudity\",\n        \"message\": \"This content contains nudity or sexual content.\",\n        \"score\": 0.97,\n        \"threshold\": 0.8,\n        \"source\": \"marqo_nsfw+owen_safety\"\n      }\n    ],\n    \"review_reason\": []\n  },\n  \"scores\": { \"nudity\": 0.97, \"gore\": 0.01, \"weapon\": 0.02 },\n  \"time_ms\": 212,\n  \"request_id\": \"0192b7c4-5f3a-7c1e-9a52-3d8f1e6b0a47\",\n  \"ref\": \"avatar_4821\"\n}\n",[111,587,588,593,614,632,649,661,682,698,712,717,739,760,780,796,813,832,838,844,859,865,919,936,957,975],{"__ignoreMap":216},[220,589,590],{"class":222,"line":223},[220,591,592],{"class":236},"{\n",[220,594,595,598,601,603,605,607,610,612],{"class":222,"line":250},[220,596,597],{"class":236},"  \"",[220,599,600],{"class":319},"status",[220,602,243],{"class":236},[220,604,359],{"class":236},[220,606,237],{"class":236},[220,608,609],{"class":229},"success",[220,611,243],{"class":236},[220,613,369],{"class":236},[220,615,616,618,620,622,624,626,628,630],{"class":222,"line":268},[220,617,597],{"class":236},[220,619,160],{"class":319},[220,621,243],{"class":236},[220,623,359],{"class":236},[220,625,237],{"class":236},[220,627,173],{"class":229},[220,629,243],{"class":236},[220,631,369],{"class":236},[220,633,634,636,639,641,643,647],{"class":222,"line":352},[220,635,597],{"class":236},[220,637,638],{"class":319},"workflow_version",[220,640,243],{"class":236},[220,642,359],{"class":236},[220,644,646],{"class":645},"sbssI"," 1",[220,648,369],{"class":236},[220,650,651,653,655,657,659],{"class":222,"line":372},[220,652,597],{"class":236},[220,654,489],{"class":319},[220,656,243],{"class":236},[220,658,359],{"class":236},[220,660,349],{"class":236},[220,662,663,666,669,671,673,675,678,680],{"class":222,"line":415},[220,664,665],{"class":236},"    \"",[220,667,668],{"class":226},"action",[220,670,243],{"class":236},[220,672,359],{"class":236},[220,674,237],{"class":236},[220,676,677],{"class":229},"reject",[220,679,243],{"class":236},[220,681,369],{"class":236},[220,683,684,686,689,691,693,696],{"class":222,"line":441},[220,685,665],{"class":236},[220,687,688],{"class":226},"reject_prob",[220,690,243],{"class":236},[220,692,359],{"class":236},[220,694,695],{"class":645}," 0.97",[220,697,369],{"class":236},[220,699,700,702,705,707,709],{"class":222,"line":450},[220,701,665],{"class":236},[220,703,704],{"class":226},"reject_reason",[220,706,243],{"class":236},[220,708,359],{"class":236},[220,710,711],{"class":236}," [\n",[220,713,714],{"class":222,"line":473},[220,715,716],{"class":236},"      {\n",[220,718,720,723,726,728,730,732,735,737],{"class":222,"line":719},10,[220,721,722],{"class":236},"        \"",[220,724,725],{"class":645},"id",[220,727,243],{"class":236},[220,729,359],{"class":236},[220,731,237],{"class":236},[220,733,734],{"class":229},"nudity",[220,736,243],{"class":236},[220,738,369],{"class":236},[220,740,742,744,747,749,751,753,756,758],{"class":222,"line":741},11,[220,743,722],{"class":236},[220,745,746],{"class":645},"text",[220,748,243],{"class":236},[220,750,359],{"class":236},[220,752,237],{"class":236},[220,754,755],{"class":229},"Nudity",[220,757,243],{"class":236},[220,759,369],{"class":236},[220,761,763,765,767,769,771,773,776,778],{"class":222,"line":762},12,[220,764,722],{"class":236},[220,766,557],{"class":645},[220,768,243],{"class":236},[220,770,359],{"class":236},[220,772,237],{"class":236},[220,774,775],{"class":229},"This content contains nudity or sexual content.",[220,777,243],{"class":236},[220,779,369],{"class":236},[220,781,783,785,788,790,792,794],{"class":222,"line":782},13,[220,784,722],{"class":236},[220,786,787],{"class":645},"score",[220,789,243],{"class":236},[220,791,359],{"class":236},[220,793,695],{"class":645},[220,795,369],{"class":236},[220,797,799,801,804,806,808,811],{"class":222,"line":798},14,[220,800,722],{"class":236},[220,802,803],{"class":645},"threshold",[220,805,243],{"class":236},[220,807,359],{"class":236},[220,809,810],{"class":645}," 0.8",[220,812,369],{"class":236},[220,814,816,818,821,823,825,827,830],{"class":222,"line":815},15,[220,817,722],{"class":236},[220,819,820],{"class":645},"source",[220,822,243],{"class":236},[220,824,359],{"class":236},[220,826,237],{"class":236},[220,828,829],{"class":229},"marqo_nsfw+owen_safety",[220,831,308],{"class":236},[220,833,835],{"class":222,"line":834},16,[220,836,837],{"class":236},"      }\n",[220,839,841],{"class":222,"line":840},17,[220,842,843],{"class":236},"    ],\n",[220,845,847,849,852,854,856],{"class":222,"line":846},18,[220,848,665],{"class":236},[220,850,851],{"class":226},"review_reason",[220,853,243],{"class":236},[220,855,359],{"class":236},[220,857,858],{"class":236}," []\n",[220,860,862],{"class":222,"line":861},19,[220,863,864],{"class":236},"  },\n",[220,866,868,870,873,875,877,879,881,883,885,887,889,891,893,896,898,900,903,905,907,910,912,914,917],{"class":222,"line":867},20,[220,869,597],{"class":236},[220,871,872],{"class":319},"scores",[220,874,243],{"class":236},[220,876,359],{"class":236},[220,878,291],{"class":236},[220,880,237],{"class":236},[220,882,734],{"class":226},[220,884,243],{"class":236},[220,886,359],{"class":236},[220,888,695],{"class":645},[220,890,346],{"class":236},[220,892,237],{"class":236},[220,894,895],{"class":226},"gore",[220,897,243],{"class":236},[220,899,359],{"class":236},[220,901,902],{"class":645}," 0.01",[220,904,346],{"class":236},[220,906,237],{"class":236},[220,908,909],{"class":226},"weapon",[220,911,243],{"class":236},[220,913,359],{"class":236},[220,915,916],{"class":645}," 0.02",[220,918,412],{"class":236},[220,920,922,924,927,929,931,934],{"class":222,"line":921},21,[220,923,597],{"class":236},[220,925,926],{"class":319},"time_ms",[220,928,243],{"class":236},[220,930,359],{"class":236},[220,932,933],{"class":645}," 212",[220,935,369],{"class":236},[220,937,939,941,944,946,948,950,953,955],{"class":222,"line":938},22,[220,940,597],{"class":236},[220,942,943],{"class":319},"request_id",[220,945,243],{"class":236},[220,947,359],{"class":236},[220,949,237],{"class":236},[220,951,952],{"class":229},"0192b7c4-5f3a-7c1e-9a52-3d8f1e6b0a47",[220,954,243],{"class":236},[220,956,369],{"class":236},[220,958,960,962,964,966,968,970,973],{"class":222,"line":959},23,[220,961,597],{"class":236},[220,963,181],{"class":319},[220,965,243],{"class":236},[220,967,359],{"class":236},[220,969,237],{"class":236},[220,971,972],{"class":229},"avatar_4821",[220,974,308],{"class":236},[220,976,978],{"class":222,"line":977},24,[220,979,980],{"class":236},"}\n",[116,982,984],{"id":983},"errors","Errors",[121,986,987,1002],{},[124,988,989],{},[127,990,991,994,999],{},[130,992,993],{},"Status",[130,995,996],{},[111,997,998],{},"error.type",[130,1000,1001],{},"When",[140,1003,1004,1023,1035,1047,1061,1074,1086,1099],{},[127,1005,1006,1009,1014],{},[145,1007,1008],{},"400",[145,1010,1011],{},[111,1012,1013],{},"bad_request",[145,1015,1016,1017,1019,1020,1022],{},"The body is empty and there is no ",[111,1018,197],{},", or ",[111,1021,181],{}," is refused.",[127,1024,1025,1027,1032],{},[145,1026,1008],{},[145,1028,1029],{},[111,1030,1031],{},"corrupt_media",[145,1033,1034],{},"The file does not decode.",[127,1036,1037,1039,1044],{},[145,1038,1008],{},[145,1040,1041],{},[111,1042,1043],{},"unknown_workflow",[145,1045,1046],{},"There is no workflow of that name.",[127,1048,1049,1051,1056],{},[145,1050,1008],{},[145,1052,1053],{},[111,1054,1055],{},"url_refused",[145,1057,166,1058,1060],{},[111,1059,197],{}," is not public, too large, too slow or not an image.",[127,1062,1063,1066,1071],{},[145,1064,1065],{},"413",[145,1067,1068],{},[111,1069,1070],{},"body_too_large",[145,1072,1073],{},"The body is over 15 MB.",[127,1075,1076,1078,1083],{},[145,1077,1065],{},[145,1079,1080],{},[111,1081,1082],{},"image_too_large",[145,1084,1085],{},"The image has more than 50 megapixels (12 on the free plan), or a side over 16,384 pixels.",[127,1087,1088,1091,1096],{},[145,1089,1090],{},"415",[145,1092,1093],{},[111,1094,1095],{},"unsupported_media",[145,1097,1098],{},"The file is not JPEG, PNG, WebP or GIF.",[127,1100,1101,1104,1109],{},[145,1102,1103],{},"503",[145,1105,1106],{},[111,1107,1108],{},"workflow_unavailable",[145,1110,1111],{},"The workflow has no rule for images, or none this server can check.",[108,1113,1114,1115,190],{},"Authentication, rate limit and quota errors are in ",[168,1116,1117],{"href":34},"responses and errors",[1119,1120,1121],"tip",{},"Downscale large photos to about 1,280 pixels on the longer side before sending them: the upload is smaller and faster. Keep the full size of screenshots, where small text or a QR code matters.",[1123,1124,1125],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}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 pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}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 .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 .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":216,"searchDepth":250,"depth":250,"links":1127},[1128,1129,1130,1131,1132],{"id":118,"depth":250,"text":119},{"id":497,"depth":250,"text":498},{"id":560,"depth":250,"text":561},{"id":573,"depth":250,"text":574},{"id":983,"depth":250,"text":984},"Check an image with POST \u002Fv1\u002Fimage, sent as bytes or as a public URL.","md",null,{},{"title":1138,"description":1139},"Image moderation API: \u002Fv1\u002Fimage","Check an image with POST \u002Fv1\u002Fimage, as bytes or as a public URL. You get accept, review or reject, with the score and the threshold of each category.","ZR18tvFAD5xp1WObqeiGFUo4WtrrAJXj7jwIJPYlgqQ",[1142,1144],{"title":13,"path":14,"stem":15,"description":1143,"children":-1},"How to call the API with a key, what a key may do and how to keep it safe.",{"title":21,"path":22,"stem":23,"description":1145,"children":-1},"Check a text with POST \u002Fv1\u002Ftext, for comments, messages, names and bios.",1792436179911]