[{"data":1,"prerenderedAt":437},["ShallowReactive",2],{"docs-/es/docs/rate-limits":3},{"id":4,"title":5,"body":6,"description":430,"extension":431,"meta":432,"navigation":163,"path":433,"seo":434,"stem":435,"__hash__":436},"content/es/docs/rate-limits.md","Límites de Velocidad - Seedance 2.0 API",{"type":7,"value":8,"toc":423},"minimark",[9,14,18,23,35,127,131,136,353,357,386,390,397,401,419],[10,11,13],"h1",{"id":12},"límites-de-velocidad","Límites de Velocidad",[15,16,17],"p",{},"Los límites de velocidad protegen la API y garantizan un uso justo para todos los usuarios.",[19,20,22],"h2",{"id":21},"manejo-de-límites-de-velocidad","Manejo de Límites de Velocidad",[15,24,25,26,30,31,34],{},"Cuando exceda el límite de velocidad, la API devuelve un código de estado ",[27,28,29],"code",{},"429"," con un ",[27,32,33],{},"rate_limit_error",":",[36,37,42],"pre",{"className":38,"code":39,"language":40,"meta":41,"style":41},"language-json shiki shiki-themes github-dark","{\n    \"error\": {\n        \"code\": 429,\n        \"message\": \"Rate limit exceeded\",\n        \"type\": \"rate_limit_error\",\n        \"fallback_suggestion\": \"retry after 60 seconds\"\n    }\n}\n","json","",[27,43,44,53,63,77,91,104,115,121],{"__ignoreMap":41},[45,46,49],"span",{"class":47,"line":48},"line",1,[45,50,52],{"class":51},"s95oV","{\n",[45,54,56,60],{"class":47,"line":55},2,[45,57,59],{"class":58},"sDLfK","    \"error\"",[45,61,62],{"class":51},": {\n",[45,64,66,69,72,74],{"class":47,"line":65},3,[45,67,68],{"class":58},"        \"code\"",[45,70,71],{"class":51},": ",[45,73,29],{"class":58},[45,75,76],{"class":51},",\n",[45,78,80,83,85,89],{"class":47,"line":79},4,[45,81,82],{"class":58},"        \"message\"",[45,84,71],{"class":51},[45,86,88],{"class":87},"sU2Wk","\"Rate limit exceeded\"",[45,90,76],{"class":51},[45,92,94,97,99,102],{"class":47,"line":93},5,[45,95,96],{"class":58},"        \"type\"",[45,98,71],{"class":51},[45,100,101],{"class":87},"\"rate_limit_error\"",[45,103,76],{"class":51},[45,105,107,110,112],{"class":47,"line":106},6,[45,108,109],{"class":58},"        \"fallback_suggestion\"",[45,111,71],{"class":51},[45,113,114],{"class":87},"\"retry after 60 seconds\"\n",[45,116,118],{"class":47,"line":117},7,[45,119,120],{"class":51},"    }\n",[45,122,124],{"class":47,"line":123},8,[45,125,126],{"class":51},"}\n",[19,128,130],{"id":129},"estrategia-de-reintento-recomendada","Estrategia de Reintento Recomendada",[15,132,133,134,34],{},"Implemente un retroceso exponencial cuando reciba una respuesta ",[27,135,29],{},[36,137,141],{"className":138,"code":139,"language":140,"meta":41,"style":41},"language-python shiki shiki-themes github-dark","import time\nimport requests\n\ndef make_request_with_retry(url, headers, payload, max_retries=3):\n    for attempt in range(max_retries):\n        response = requests.post(url, headers=headers, json=payload)\n\n        if response.status_code == 429:\n            wait_time = 2 ** attempt * 30  # 30s, 60s, 120s\n            print(f\"Rate limited. Retrying in {wait_time}s...\")\n            time.sleep(wait_time)\n            continue\n\n        return response\n\n    raise Exception(\"Max retries exceeded\")\n","python",[27,142,143,152,159,165,186,203,229,233,250,276,306,312,318,323,332,337],{"__ignoreMap":41},[45,144,145,149],{"class":47,"line":48},[45,146,148],{"class":147},"snl16","import",[45,150,151],{"class":51}," time\n",[45,153,154,156],{"class":47,"line":55},[45,155,148],{"class":147},[45,157,158],{"class":51}," requests\n",[45,160,161],{"class":47,"line":65},[45,162,164],{"emptyLinePlaceholder":163},true,"\n",[45,166,167,170,174,177,180,183],{"class":47,"line":79},[45,168,169],{"class":147},"def",[45,171,173],{"class":172},"svObZ"," make_request_with_retry",[45,175,176],{"class":51},"(url, headers, payload, max_retries",[45,178,179],{"class":147},"=",[45,181,182],{"class":58},"3",[45,184,185],{"class":51},"):\n",[45,187,188,191,194,197,200],{"class":47,"line":93},[45,189,190],{"class":147},"    for",[45,192,193],{"class":51}," attempt ",[45,195,196],{"class":147},"in",[45,198,199],{"class":58}," range",[45,201,202],{"class":51},"(max_retries):\n",[45,204,205,208,210,213,217,219,222,224,226],{"class":47,"line":106},[45,206,207],{"class":51},"        response ",[45,209,179],{"class":147},[45,211,212],{"class":51}," requests.post(url, ",[45,214,216],{"class":215},"s9osk","headers",[45,218,179],{"class":147},[45,220,221],{"class":51},"headers, ",[45,223,40],{"class":215},[45,225,179],{"class":147},[45,227,228],{"class":51},"payload)\n",[45,230,231],{"class":47,"line":117},[45,232,164],{"emptyLinePlaceholder":163},[45,234,235,238,241,244,247],{"class":47,"line":123},[45,236,237],{"class":147},"        if",[45,239,240],{"class":51}," response.status_code ",[45,242,243],{"class":147},"==",[45,245,246],{"class":58}," 429",[45,248,249],{"class":51},":\n",[45,251,253,256,258,261,264,266,269,272],{"class":47,"line":252},9,[45,254,255],{"class":51},"            wait_time ",[45,257,179],{"class":147},[45,259,260],{"class":58}," 2",[45,262,263],{"class":147}," **",[45,265,193],{"class":51},[45,267,268],{"class":147},"*",[45,270,271],{"class":58}," 30",[45,273,275],{"class":274},"sAwPA","  # 30s, 60s, 120s\n",[45,277,279,282,285,288,291,294,297,300,303],{"class":47,"line":278},10,[45,280,281],{"class":58},"            print",[45,283,284],{"class":51},"(",[45,286,287],{"class":147},"f",[45,289,290],{"class":87},"\"Rate limited. Retrying in ",[45,292,293],{"class":58},"{",[45,295,296],{"class":51},"wait_time",[45,298,299],{"class":58},"}",[45,301,302],{"class":87},"s...\"",[45,304,305],{"class":51},")\n",[45,307,309],{"class":47,"line":308},11,[45,310,311],{"class":51},"            time.sleep(wait_time)\n",[45,313,315],{"class":47,"line":314},12,[45,316,317],{"class":147},"            continue\n",[45,319,321],{"class":47,"line":320},13,[45,322,164],{"emptyLinePlaceholder":163},[45,324,326,329],{"class":47,"line":325},14,[45,327,328],{"class":147},"        return",[45,330,331],{"class":51}," response\n",[45,333,335],{"class":47,"line":334},15,[45,336,164],{"emptyLinePlaceholder":163},[45,338,340,343,346,348,351],{"class":47,"line":339},16,[45,341,342],{"class":147},"    raise",[45,344,345],{"class":58}," Exception",[45,347,284],{"class":51},[45,349,350],{"class":87},"\"Max retries exceeded\"",[45,352,305],{"class":51},[19,354,356],{"id":355},"mejores-prácticas","Mejores Prácticas",[358,359,360,366,373,376],"ul",{},[361,362,363,364],"li",{},"Implemente retroceso exponencial para respuestas ",[27,365,29],{},[361,367,368,369,372],{},"Use ",[27,370,371],{},"callback_url"," (webhooks) en lugar de consultas frecuentes para reducir el volumen de solicitudes",[361,374,375],{},"Espacie las solicitudes de generación en lugar de enviar ráfagas",[361,377,378,379],{},"Monitoree su uso de créditos a través del ",[380,381,385],"a",{"href":382,"rel":383},"https://evolink.ai/dashboard/billing",[384],"nofollow","panel de EvoLink",[19,387,389],{"id":388},"necesita-límites-más-altos","¿Necesita Límites Más Altos?",[15,391,392,396],{},[380,393,395],{"href":394},"/enterprise","Contacte a nuestro equipo de ventas"," para límites de velocidad personalizados e infraestructura dedicada.",[19,398,400],{"id":399},"relacionado","Relacionado",[358,402,403,410],{},[361,404,405,409],{},[380,406,408],{"href":407},"/docs/error-codes","Códigos de Error"," -- Gestione todos los tipos de error",[361,411,412,416,417],{},[380,413,415],{"href":414},"/docs/webhooks","Webhooks"," -- Reduzca las consultas periódicas con ",[27,418,371],{},[420,421,422],"style",{},"html pre.shiki code .s95oV, html code.shiki .s95oV{--shiki-default:#E1E4E8}html pre.shiki code .sDLfK, html code.shiki .sDLfK{--shiki-default:#79B8FF}html pre.shiki code .sU2Wk, html code.shiki .sU2Wk{--shiki-default:#9ECBFF}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 pre.shiki code .snl16, html code.shiki .snl16{--shiki-default:#F97583}html pre.shiki code .svObZ, html code.shiki .svObZ{--shiki-default:#B392F0}html pre.shiki code .s9osk, html code.shiki .s9osk{--shiki-default:#FFAB70}html pre.shiki code .sAwPA, html code.shiki .sAwPA{--shiki-default:#6A737D}",{"title":41,"searchDepth":55,"depth":55,"links":424},[425,426,427,428,429],{"id":21,"depth":55,"text":22},{"id":129,"depth":55,"text":130},{"id":355,"depth":55,"text":356},{"id":388,"depth":55,"text":389},{"id":399,"depth":55,"text":400},"Comprende los límites de velocidad y cuotas de la Seedance 2.0 API en los diferentes niveles de plan.","md",{},"/es/docs/rate-limits",{"title":5,"description":430},"es/docs/rate-limits","OMB5VBFw9_OdPxRACbnvpbAVU94HyfQfgqGQpfDUt8s",1775067578172]