[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"public-branding":3,"content-de-rest-endpoints":8,"public-ads-config":3032},{"siteName":4,"primaryColor":5,"accentColor":6,"faviconUrl":7,"logoUrl":7},"KiroCloud","#ffffff","#888888","",{"id":9,"title":10,"author":11,"body":12,"category":3022,"description":3023,"extension":3024,"lastUpdated":11,"meta":3025,"navigation":277,"order":3027,"path":3028,"readTime":11,"seo":3029,"stem":3030,"__hash__":3031},"docs\u002Fdocs\u002Fde\u002Frest-endpoints.md","KiroCloud REST API Referenz",null,{"type":13,"value":14,"toc":3006},"minimark",[15,20,24,34,37,42,50,55,82,90,92,96,99,103,106,1867,1869,1873,1879,2093,2095,2099,2102,2315,2317,2321,2325,2333,2336,2355,2515,2521,2524,2530,2532,2536,2542,2545,2560,2566,2569,2577,2584,2587,2604,2610,2617,2625,2631,2634,2642,2648,2651,2664,2768,2770,2774,2780,2783,2792,2797,2800,2813,2883,2885,2889,2892,3002],[16,17,19],"h1",{"id":18},"kirocloud-rest-api-sdk-dokumentation","KiroCloud REST API & SDK Dokumentation",[21,22,23],"p",{},"Herzlich willkommen zur offiziellen KiroCloud REST API-Referenz für Entwickler und Bot-Betreiber.\nDiese Dokumentation bietet alle notwendigen Spezifikationen, Endpunkte und SDK-Beispiele, um KiroCloud in eigene Anwendungen, Überwachungs-Tools oder CI\u002FCD-Pipelines zu integrieren.",[25,26,27],"blockquote",{},[21,28,29,33],{},[30,31,32],"span",{},"!IMPORTANT","\nAlle Anfragen an authentifizierte Endpunkte erfordern einen gültigen API-Schlüssel, der im HTTP-Header mitgesendet werden muss. Teile deinen API-Schlüssel niemals öffentlich (z. B. in GitHub-Repositories oder Client-seitigem Frontend-Code).",[35,36],"hr",{},[38,39,41],"h2",{"id":40},"_1-authentifizierung","1. Authentifizierung",[21,43,44,45,49],{},"Um Anfragen an die API zu senden, übergibst du deinen API-Schlüssel im ",[46,47,48],"code",{},"Authorization","-Header als Bearer Token.",[51,52,54],"h3",{"id":53},"header-format","Header-Format",[56,57,61],"pre",{"className":58,"code":59,"language":60,"meta":7,"style":7},"language-http shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","Authorization: Bearer kiro_sec_DEIN_API_SCHLUESSEL\nContent-Type: application\u002Fjson\nAccept: application\u002Fjson\n","http",[46,62,63,70,76],{"__ignoreMap":7},[30,64,67],{"class":65,"line":66},"line",1,[30,68,69],{},"Authorization: Bearer kiro_sec_DEIN_API_SCHLUESSEL\n",[30,71,73],{"class":65,"line":72},2,[30,74,75],{},"Content-Type: application\u002Fjson\n",[30,77,79],{"class":65,"line":78},3,[30,80,81],{},"Accept: application\u002Fjson\n",[21,83,84,85,89],{},"API-Schlüssel können direkt im KiroCloud Dashboard unter den ",[86,87,88],"strong",{},"Entwickler-Einstellungen"," erstellt und mit spezifischen Berechtigungen (Scopes) versehen werden.",[35,91],{},[38,93,95],{"id":94},"_2-fertige-sdk-wrapper-für-deine-projekte","2. Fertige SDK-Wrapper für deine Projekte",[21,97,98],{},"Damit du nicht jeden HTTP-Request manuell implementieren musst, findest du hier produktionsreife Client-Klassen für Node.js \u002F TypeScript, Python und Bash.",[51,100,102],{"id":101},"_21-nodejs-typescript-native-fetch-api","2.1 Node.js \u002F TypeScript (Native Fetch API)",[21,104,105],{},"Optimiert für moderne Node.js-Umgebungen (ab v18) und Edge-Runtimes:",[56,107,111],{"className":108,"code":109,"language":110,"meta":7,"style":7},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F kiroClient.ts\nexport interface BotStatusResponse {\n  success: boolean;\n  data: {\n    id: string;\n    name: string;\n    status: 'online' | 'offline' | 'starting' | 'error';\n    runtimeExpiresAt: string;\n    uptimeSeconds: number;\n  };\n}\n\nexport class KiroClient {\n  private baseUrl: string;\n  private apiKey: string;\n\n  constructor(apiKey: string, baseUrl = 'https:\u002F\u002Fapi.kirocloud.de\u002Fapi\u002Fv1') {\n    this.apiKey = apiKey;\n    this.baseUrl = baseUrl;\n  }\n\n  private async request\u003CT>(method: string, endpoint: string, body?: unknown): Promise\u003CT> {\n    const headers: Record\u003Cstring, string> = {\n      'Authorization': `Bearer ${this.apiKey}`,\n      'Content-Type': 'application\u002Fjson',\n      'Accept': 'application\u002Fjson',\n    };\n\n    const response = await fetch(`${this.baseUrl}${endpoint}`, {\n      method,\n      headers,\n      body: body ? JSON.stringify(body) : undefined,\n    });\n\n    if (!response.ok) {\n      const errorData = await response.json().catch(() => ({}));\n      throw new Error(`KiroCloud API Error [${response.status}]: ${errorData.message || response.statusText}`);\n    }\n\n    return response.json() as Promise\u003CT>;\n  }\n\n  \u002F\u002F --- Public Status & Platform Health ---\n\n  async getPlatformStatus() {\n    return this.request\u003C{ success: boolean; data: Record\u003Cstring, unknown> }>('GET', '\u002Fpublic\u002Fstatus');\n  }\n\n  async getPlatformStats() {\n    return this.request\u003C{ success: boolean; data: { activeBots: number; activeServers: number; uptime: number } }>('GET', '\u002Fpublic\u002Fstats');\n  }\n\n  \u002F\u002F --- Bot Management (Scope: bots:read, bots:write) ---\n\n  async listBots() {\n    return this.request\u003C{ success: boolean; data: Array\u003C{ id: string; name: string; status: string }> }>('GET', '\u002Fbots');\n  }\n\n  async getBot(botId: string) {\n    return this.request\u003CBotStatusResponse>('GET', `\u002Fbots\u002F${botId}`);\n  }\n\n  async startBot(botId: string) {\n    return this.request\u003C{ success: boolean; message: string }>('POST', `\u002Fbots\u002F${botId}\u002Fstart`);\n  }\n\n  async stopBot(botId: string) {\n    return this.request\u003C{ success: boolean; message: string }>('POST', `\u002Fbots\u002F${botId}\u002Fstop`);\n  }\n\n  async restartBot(botId: string) {\n    return this.request\u003C{ success: boolean; message: string }>('POST', `\u002Fbots\u002F${botId}\u002Frestart`);\n  }\n\n  async sendEmbed(botId: string, payload: { channelId: string; embed: Record\u003Cstring, unknown> }) {\n    return this.request\u003C{ success: boolean; messageId: string }>('POST', `\u002Fbots\u002F${botId}\u002Fsend-embed`, payload);\n  }\n\n  \u002F\u002F --- Support Tickets (Scope: tickets:read, tickets:write) ---\n\n  async listTickets() {\n    return this.request\u003C{ success: boolean; data: Array\u003C{ id: string; subject: string; status: string }> }>('GET', '\u002Ftickets');\n  }\n\n  async createTicket(payload: { subject: string; message: string; priority?: 'low' | 'normal' | 'high' }) {\n    return this.request\u003C{ success: boolean; ticketId: string }>('POST', '\u002Ftickets', payload);\n  }\n}\n","typescript",[46,112,113,119,137,152,162,175,187,235,247,260,266,272,279,292,307,321,326,363,378,392,398,403,465,494,526,547,567,573,578,616,624,632,667,677,682,707,752,813,819,824,851,856,861,867,872,885,951,956,961,973,1050,1055,1060,1066,1071,1083,1161,1166,1171,1192,1233,1238,1243,1263,1321,1326,1331,1351,1407,1412,1417,1437,1493,1498,1503,1559,1620,1625,1630,1636,1641,1653,1728,1733,1738,1805,1857,1862],{"__ignoreMap":7},[30,114,115],{"class":65,"line":66},[30,116,118],{"class":117},"sHwdD","\u002F\u002F kiroClient.ts\n",[30,120,121,125,129,133],{"class":65,"line":72},[30,122,124],{"class":123},"s7zQu","export",[30,126,128],{"class":127},"spNyl"," interface",[30,130,132],{"class":131},"sBMFI"," BotStatusResponse",[30,134,136],{"class":135},"sMK4o"," {\n",[30,138,139,143,146,149],{"class":65,"line":78},[30,140,142],{"class":141},"swJcz","  success",[30,144,145],{"class":135},":",[30,147,148],{"class":131}," boolean",[30,150,151],{"class":135},";\n",[30,153,155,158,160],{"class":65,"line":154},4,[30,156,157],{"class":141},"  data",[30,159,145],{"class":135},[30,161,136],{"class":135},[30,163,165,168,170,173],{"class":65,"line":164},5,[30,166,167],{"class":141},"    id",[30,169,145],{"class":135},[30,171,172],{"class":131}," string",[30,174,151],{"class":135},[30,176,178,181,183,185],{"class":65,"line":177},6,[30,179,180],{"class":141},"    name",[30,182,145],{"class":135},[30,184,172],{"class":131},[30,186,151],{"class":135},[30,188,190,193,195,198,202,205,208,210,213,215,217,219,222,224,226,228,231,233],{"class":65,"line":189},7,[30,191,192],{"class":141},"    status",[30,194,145],{"class":135},[30,196,197],{"class":135}," '",[30,199,201],{"class":200},"sfazB","online",[30,203,204],{"class":135},"'",[30,206,207],{"class":135}," |",[30,209,197],{"class":135},[30,211,212],{"class":200},"offline",[30,214,204],{"class":135},[30,216,207],{"class":135},[30,218,197],{"class":135},[30,220,221],{"class":200},"starting",[30,223,204],{"class":135},[30,225,207],{"class":135},[30,227,197],{"class":135},[30,229,230],{"class":200},"error",[30,232,204],{"class":135},[30,234,151],{"class":135},[30,236,238,241,243,245],{"class":65,"line":237},8,[30,239,240],{"class":141},"    runtimeExpiresAt",[30,242,145],{"class":135},[30,244,172],{"class":131},[30,246,151],{"class":135},[30,248,250,253,255,258],{"class":65,"line":249},9,[30,251,252],{"class":141},"    uptimeSeconds",[30,254,145],{"class":135},[30,256,257],{"class":131}," number",[30,259,151],{"class":135},[30,261,263],{"class":65,"line":262},10,[30,264,265],{"class":135},"  };\n",[30,267,269],{"class":65,"line":268},11,[30,270,271],{"class":135},"}\n",[30,273,275],{"class":65,"line":274},12,[30,276,278],{"emptyLinePlaceholder":277},true,"\n",[30,280,282,284,287,290],{"class":65,"line":281},13,[30,283,124],{"class":123},[30,285,286],{"class":127}," class",[30,288,289],{"class":131}," KiroClient",[30,291,136],{"class":135},[30,293,295,298,301,303,305],{"class":65,"line":294},14,[30,296,297],{"class":127},"  private",[30,299,300],{"class":141}," baseUrl",[30,302,145],{"class":135},[30,304,172],{"class":131},[30,306,151],{"class":135},[30,308,310,312,315,317,319],{"class":65,"line":309},15,[30,311,297],{"class":127},[30,313,314],{"class":141}," apiKey",[30,316,145],{"class":135},[30,318,172],{"class":131},[30,320,151],{"class":135},[30,322,324],{"class":65,"line":323},16,[30,325,278],{"emptyLinePlaceholder":277},[30,327,329,332,335,339,341,343,346,348,351,353,356,358,361],{"class":65,"line":328},17,[30,330,331],{"class":127},"  constructor",[30,333,334],{"class":135},"(",[30,336,338],{"class":337},"sHdIc","apiKey",[30,340,145],{"class":135},[30,342,172],{"class":131},[30,344,345],{"class":135},",",[30,347,300],{"class":337},[30,349,350],{"class":135}," =",[30,352,197],{"class":135},[30,354,355],{"class":200},"https:\u002F\u002Fapi.kirocloud.de\u002Fapi\u002Fv1",[30,357,204],{"class":135},[30,359,360],{"class":135},")",[30,362,136],{"class":135},[30,364,366,369,372,374,376],{"class":65,"line":365},18,[30,367,368],{"class":135},"    this.",[30,370,338],{"class":371},"sTEyZ",[30,373,350],{"class":135},[30,375,314],{"class":371},[30,377,151],{"class":135},[30,379,381,383,386,388,390],{"class":65,"line":380},19,[30,382,368],{"class":135},[30,384,385],{"class":371},"baseUrl",[30,387,350],{"class":135},[30,389,300],{"class":371},[30,391,151],{"class":135},[30,393,395],{"class":65,"line":394},20,[30,396,397],{"class":135},"  }\n",[30,399,401],{"class":65,"line":400},21,[30,402,278],{"emptyLinePlaceholder":277},[30,404,406,408,411,414,417,420,423,426,428,430,432,435,437,439,441,444,447,450,453,456,458,460,463],{"class":65,"line":405},22,[30,407,297],{"class":127},[30,409,410],{"class":127}," async",[30,412,413],{"class":141}," request",[30,415,416],{"class":135},"\u003C",[30,418,419],{"class":131},"T",[30,421,422],{"class":135},">(",[30,424,425],{"class":337},"method",[30,427,145],{"class":135},[30,429,172],{"class":131},[30,431,345],{"class":135},[30,433,434],{"class":337}," endpoint",[30,436,145],{"class":135},[30,438,172],{"class":131},[30,440,345],{"class":135},[30,442,443],{"class":337}," body",[30,445,446],{"class":135},"?:",[30,448,449],{"class":131}," unknown",[30,451,452],{"class":135},"):",[30,454,455],{"class":131}," Promise",[30,457,416],{"class":135},[30,459,419],{"class":131},[30,461,462],{"class":135},">",[30,464,136],{"class":135},[30,466,468,471,474,476,479,481,484,486,488,490,492],{"class":65,"line":467},23,[30,469,470],{"class":127},"    const",[30,472,473],{"class":371}," headers",[30,475,145],{"class":135},[30,477,478],{"class":131}," Record",[30,480,416],{"class":135},[30,482,483],{"class":131},"string",[30,485,345],{"class":135},[30,487,172],{"class":131},[30,489,462],{"class":135},[30,491,350],{"class":135},[30,493,136],{"class":135},[30,495,497,500,502,504,506,509,512,515,518,520,523],{"class":65,"line":496},24,[30,498,499],{"class":135},"      '",[30,501,48],{"class":141},[30,503,204],{"class":135},[30,505,145],{"class":135},[30,507,508],{"class":135}," `",[30,510,511],{"class":200},"Bearer ",[30,513,514],{"class":135},"${",[30,516,517],{"class":135},"this.",[30,519,338],{"class":371},[30,521,522],{"class":135},"}`",[30,524,525],{"class":135},",\n",[30,527,529,531,534,536,538,540,543,545],{"class":65,"line":528},25,[30,530,499],{"class":135},[30,532,533],{"class":141},"Content-Type",[30,535,204],{"class":135},[30,537,145],{"class":135},[30,539,197],{"class":135},[30,541,542],{"class":200},"application\u002Fjson",[30,544,204],{"class":135},[30,546,525],{"class":135},[30,548,550,552,555,557,559,561,563,565],{"class":65,"line":549},26,[30,551,499],{"class":135},[30,553,554],{"class":141},"Accept",[30,556,204],{"class":135},[30,558,145],{"class":135},[30,560,197],{"class":135},[30,562,542],{"class":200},[30,564,204],{"class":135},[30,566,525],{"class":135},[30,568,570],{"class":65,"line":569},27,[30,571,572],{"class":135},"    };\n",[30,574,576],{"class":65,"line":575},28,[30,577,278],{"emptyLinePlaceholder":277},[30,579,581,583,586,588,591,595,597,600,602,604,607,610,612,614],{"class":65,"line":580},29,[30,582,470],{"class":127},[30,584,585],{"class":371}," response",[30,587,350],{"class":135},[30,589,590],{"class":123}," await",[30,592,594],{"class":593},"s2Zo4"," fetch",[30,596,334],{"class":141},[30,598,599],{"class":135},"`${",[30,601,517],{"class":135},[30,603,385],{"class":371},[30,605,606],{"class":135},"}${",[30,608,609],{"class":371},"endpoint",[30,611,522],{"class":135},[30,613,345],{"class":135},[30,615,136],{"class":135},[30,617,619,622],{"class":65,"line":618},30,[30,620,621],{"class":371},"      method",[30,623,525],{"class":135},[30,625,627,630],{"class":65,"line":626},31,[30,628,629],{"class":371},"      headers",[30,631,525],{"class":135},[30,633,635,638,640,642,645,648,651,654,656,659,662,664],{"class":65,"line":634},32,[30,636,637],{"class":141},"      body",[30,639,145],{"class":135},[30,641,443],{"class":371},[30,643,644],{"class":135}," ?",[30,646,647],{"class":371}," JSON",[30,649,650],{"class":135},".",[30,652,653],{"class":593},"stringify",[30,655,334],{"class":141},[30,657,658],{"class":371},"body",[30,660,661],{"class":141},") ",[30,663,145],{"class":135},[30,665,666],{"class":135}," undefined,\n",[30,668,670,673,675],{"class":65,"line":669},33,[30,671,672],{"class":135},"    }",[30,674,360],{"class":141},[30,676,151],{"class":135},[30,678,680],{"class":65,"line":679},34,[30,681,278],{"emptyLinePlaceholder":277},[30,683,685,688,691,694,697,699,702,704],{"class":65,"line":684},35,[30,686,687],{"class":123},"    if",[30,689,690],{"class":141}," (",[30,692,693],{"class":135},"!",[30,695,696],{"class":371},"response",[30,698,650],{"class":135},[30,700,701],{"class":371},"ok",[30,703,661],{"class":141},[30,705,706],{"class":135},"{\n",[30,708,710,713,716,718,720,722,724,727,730,732,735,737,739,742,744,747,750],{"class":65,"line":709},36,[30,711,712],{"class":127},"      const",[30,714,715],{"class":371}," errorData",[30,717,350],{"class":135},[30,719,590],{"class":123},[30,721,585],{"class":371},[30,723,650],{"class":135},[30,725,726],{"class":593},"json",[30,728,729],{"class":141},"()",[30,731,650],{"class":135},[30,733,734],{"class":593},"catch",[30,736,334],{"class":141},[30,738,729],{"class":135},[30,740,741],{"class":127}," =>",[30,743,690],{"class":141},[30,745,746],{"class":135},"{}",[30,748,749],{"class":141},"))",[30,751,151],{"class":135},[30,753,755,758,761,764,766,769,772,774,776,778,781,784,787,789,792,794,797,800,802,804,807,809,811],{"class":65,"line":754},37,[30,756,757],{"class":123},"      throw",[30,759,760],{"class":135}," new",[30,762,763],{"class":593}," Error",[30,765,334],{"class":141},[30,767,768],{"class":135},"`",[30,770,771],{"class":200},"KiroCloud API Error [",[30,773,514],{"class":135},[30,775,696],{"class":371},[30,777,650],{"class":135},[30,779,780],{"class":371},"status",[30,782,783],{"class":135},"}",[30,785,786],{"class":200},"]: ",[30,788,514],{"class":135},[30,790,791],{"class":371},"errorData",[30,793,650],{"class":135},[30,795,796],{"class":371},"message ",[30,798,799],{"class":135},"||",[30,801,585],{"class":371},[30,803,650],{"class":135},[30,805,806],{"class":371},"statusText",[30,808,522],{"class":135},[30,810,360],{"class":141},[30,812,151],{"class":135},[30,814,816],{"class":65,"line":815},38,[30,817,818],{"class":135},"    }\n",[30,820,822],{"class":65,"line":821},39,[30,823,278],{"emptyLinePlaceholder":277},[30,825,827,830,832,834,836,839,842,844,846,848],{"class":65,"line":826},40,[30,828,829],{"class":123},"    return",[30,831,585],{"class":371},[30,833,650],{"class":135},[30,835,726],{"class":593},[30,837,838],{"class":141},"() ",[30,840,841],{"class":123},"as",[30,843,455],{"class":131},[30,845,416],{"class":135},[30,847,419],{"class":131},[30,849,850],{"class":135},">;\n",[30,852,854],{"class":65,"line":853},41,[30,855,397],{"class":135},[30,857,859],{"class":65,"line":858},42,[30,860,278],{"emptyLinePlaceholder":277},[30,862,864],{"class":65,"line":863},43,[30,865,866],{"class":117},"  \u002F\u002F --- Public Status & Platform Health ---\n",[30,868,870],{"class":65,"line":869},44,[30,871,278],{"emptyLinePlaceholder":277},[30,873,875,878,881,883],{"class":65,"line":874},45,[30,876,877],{"class":127},"  async",[30,879,880],{"class":141}," getPlatformStatus",[30,882,729],{"class":135},[30,884,136],{"class":135},[30,886,888,890,893,896,899,902,904,906,909,912,914,916,918,920,922,924,926,929,931,933,936,938,940,942,945,947,949],{"class":65,"line":887},46,[30,889,829],{"class":123},[30,891,892],{"class":135}," this.",[30,894,895],{"class":593},"request",[30,897,898],{"class":135},"\u003C{",[30,900,901],{"class":141}," success",[30,903,145],{"class":135},[30,905,148],{"class":131},[30,907,908],{"class":135},";",[30,910,911],{"class":141}," data",[30,913,145],{"class":135},[30,915,478],{"class":131},[30,917,416],{"class":135},[30,919,483],{"class":131},[30,921,345],{"class":135},[30,923,449],{"class":131},[30,925,462],{"class":135},[30,927,928],{"class":135}," }>",[30,930,334],{"class":141},[30,932,204],{"class":135},[30,934,935],{"class":200},"GET",[30,937,204],{"class":135},[30,939,345],{"class":135},[30,941,197],{"class":135},[30,943,944],{"class":200},"\u002Fpublic\u002Fstatus",[30,946,204],{"class":135},[30,948,360],{"class":141},[30,950,151],{"class":135},[30,952,954],{"class":65,"line":953},47,[30,955,397],{"class":135},[30,957,959],{"class":65,"line":958},48,[30,960,278],{"emptyLinePlaceholder":277},[30,962,964,966,969,971],{"class":65,"line":963},49,[30,965,877],{"class":127},[30,967,968],{"class":141}," getPlatformStats",[30,970,729],{"class":135},[30,972,136],{"class":135},[30,974,976,978,980,982,984,986,988,990,992,994,996,999,1002,1004,1006,1008,1011,1013,1015,1017,1020,1022,1024,1027,1029,1031,1033,1035,1037,1039,1041,1044,1046,1048],{"class":65,"line":975},50,[30,977,829],{"class":123},[30,979,892],{"class":135},[30,981,895],{"class":593},[30,983,898],{"class":135},[30,985,901],{"class":141},[30,987,145],{"class":135},[30,989,148],{"class":131},[30,991,908],{"class":135},[30,993,911],{"class":141},[30,995,145],{"class":135},[30,997,998],{"class":135}," {",[30,1000,1001],{"class":141}," activeBots",[30,1003,145],{"class":135},[30,1005,257],{"class":131},[30,1007,908],{"class":135},[30,1009,1010],{"class":141}," activeServers",[30,1012,145],{"class":135},[30,1014,257],{"class":131},[30,1016,908],{"class":135},[30,1018,1019],{"class":141}," uptime",[30,1021,145],{"class":135},[30,1023,257],{"class":131},[30,1025,1026],{"class":135}," }",[30,1028,928],{"class":135},[30,1030,334],{"class":141},[30,1032,204],{"class":135},[30,1034,935],{"class":200},[30,1036,204],{"class":135},[30,1038,345],{"class":135},[30,1040,197],{"class":135},[30,1042,1043],{"class":200},"\u002Fpublic\u002Fstats",[30,1045,204],{"class":135},[30,1047,360],{"class":141},[30,1049,151],{"class":135},[30,1051,1053],{"class":65,"line":1052},51,[30,1054,397],{"class":135},[30,1056,1058],{"class":65,"line":1057},52,[30,1059,278],{"emptyLinePlaceholder":277},[30,1061,1063],{"class":65,"line":1062},53,[30,1064,1065],{"class":117},"  \u002F\u002F --- Bot Management (Scope: bots:read, bots:write) ---\n",[30,1067,1069],{"class":65,"line":1068},54,[30,1070,278],{"emptyLinePlaceholder":277},[30,1072,1074,1076,1079,1081],{"class":65,"line":1073},55,[30,1075,877],{"class":127},[30,1077,1078],{"class":141}," listBots",[30,1080,729],{"class":135},[30,1082,136],{"class":135},[30,1084,1086,1088,1090,1092,1094,1096,1098,1100,1102,1104,1106,1109,1111,1114,1116,1118,1120,1123,1125,1127,1129,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1155,1157,1159],{"class":65,"line":1085},56,[30,1087,829],{"class":123},[30,1089,892],{"class":135},[30,1091,895],{"class":593},[30,1093,898],{"class":135},[30,1095,901],{"class":141},[30,1097,145],{"class":135},[30,1099,148],{"class":131},[30,1101,908],{"class":135},[30,1103,911],{"class":141},[30,1105,145],{"class":135},[30,1107,1108],{"class":131}," Array",[30,1110,898],{"class":135},[30,1112,1113],{"class":141}," id",[30,1115,145],{"class":135},[30,1117,172],{"class":131},[30,1119,908],{"class":135},[30,1121,1122],{"class":141}," name",[30,1124,145],{"class":135},[30,1126,172],{"class":131},[30,1128,908],{"class":135},[30,1130,1131],{"class":141}," status",[30,1133,145],{"class":135},[30,1135,172],{"class":131},[30,1137,928],{"class":135},[30,1139,928],{"class":135},[30,1141,334],{"class":141},[30,1143,204],{"class":135},[30,1145,935],{"class":200},[30,1147,204],{"class":135},[30,1149,345],{"class":135},[30,1151,197],{"class":135},[30,1153,1154],{"class":200},"\u002Fbots",[30,1156,204],{"class":135},[30,1158,360],{"class":141},[30,1160,151],{"class":135},[30,1162,1164],{"class":65,"line":1163},57,[30,1165,397],{"class":135},[30,1167,1169],{"class":65,"line":1168},58,[30,1170,278],{"emptyLinePlaceholder":277},[30,1172,1174,1176,1179,1181,1184,1186,1188,1190],{"class":65,"line":1173},59,[30,1175,877],{"class":127},[30,1177,1178],{"class":141}," getBot",[30,1180,334],{"class":135},[30,1182,1183],{"class":337},"botId",[30,1185,145],{"class":135},[30,1187,172],{"class":131},[30,1189,360],{"class":135},[30,1191,136],{"class":135},[30,1193,1195,1197,1199,1201,1203,1206,1208,1210,1212,1214,1216,1218,1220,1223,1225,1227,1229,1231],{"class":65,"line":1194},60,[30,1196,829],{"class":123},[30,1198,892],{"class":135},[30,1200,895],{"class":593},[30,1202,416],{"class":135},[30,1204,1205],{"class":131},"BotStatusResponse",[30,1207,462],{"class":135},[30,1209,334],{"class":141},[30,1211,204],{"class":135},[30,1213,935],{"class":200},[30,1215,204],{"class":135},[30,1217,345],{"class":135},[30,1219,508],{"class":135},[30,1221,1222],{"class":200},"\u002Fbots\u002F",[30,1224,514],{"class":135},[30,1226,1183],{"class":371},[30,1228,522],{"class":135},[30,1230,360],{"class":141},[30,1232,151],{"class":135},[30,1234,1236],{"class":65,"line":1235},61,[30,1237,397],{"class":135},[30,1239,1241],{"class":65,"line":1240},62,[30,1242,278],{"emptyLinePlaceholder":277},[30,1244,1246,1248,1251,1253,1255,1257,1259,1261],{"class":65,"line":1245},63,[30,1247,877],{"class":127},[30,1249,1250],{"class":141}," startBot",[30,1252,334],{"class":135},[30,1254,1183],{"class":337},[30,1256,145],{"class":135},[30,1258,172],{"class":131},[30,1260,360],{"class":135},[30,1262,136],{"class":135},[30,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1285,1287,1289,1291,1293,1295,1298,1300,1302,1304,1306,1308,1310,1312,1315,1317,1319],{"class":65,"line":1265},64,[30,1267,829],{"class":123},[30,1269,892],{"class":135},[30,1271,895],{"class":593},[30,1273,898],{"class":135},[30,1275,901],{"class":141},[30,1277,145],{"class":135},[30,1279,148],{"class":131},[30,1281,908],{"class":135},[30,1283,1284],{"class":141}," message",[30,1286,145],{"class":135},[30,1288,172],{"class":131},[30,1290,928],{"class":135},[30,1292,334],{"class":141},[30,1294,204],{"class":135},[30,1296,1297],{"class":200},"POST",[30,1299,204],{"class":135},[30,1301,345],{"class":135},[30,1303,508],{"class":135},[30,1305,1222],{"class":200},[30,1307,514],{"class":135},[30,1309,1183],{"class":371},[30,1311,783],{"class":135},[30,1313,1314],{"class":200},"\u002Fstart",[30,1316,768],{"class":135},[30,1318,360],{"class":141},[30,1320,151],{"class":135},[30,1322,1324],{"class":65,"line":1323},65,[30,1325,397],{"class":135},[30,1327,1329],{"class":65,"line":1328},66,[30,1330,278],{"emptyLinePlaceholder":277},[30,1332,1334,1336,1339,1341,1343,1345,1347,1349],{"class":65,"line":1333},67,[30,1335,877],{"class":127},[30,1337,1338],{"class":141}," stopBot",[30,1340,334],{"class":135},[30,1342,1183],{"class":337},[30,1344,145],{"class":135},[30,1346,172],{"class":131},[30,1348,360],{"class":135},[30,1350,136],{"class":135},[30,1352,1354,1356,1358,1360,1362,1364,1366,1368,1370,1372,1374,1376,1378,1380,1382,1384,1386,1388,1390,1392,1394,1396,1398,1401,1403,1405],{"class":65,"line":1353},68,[30,1355,829],{"class":123},[30,1357,892],{"class":135},[30,1359,895],{"class":593},[30,1361,898],{"class":135},[30,1363,901],{"class":141},[30,1365,145],{"class":135},[30,1367,148],{"class":131},[30,1369,908],{"class":135},[30,1371,1284],{"class":141},[30,1373,145],{"class":135},[30,1375,172],{"class":131},[30,1377,928],{"class":135},[30,1379,334],{"class":141},[30,1381,204],{"class":135},[30,1383,1297],{"class":200},[30,1385,204],{"class":135},[30,1387,345],{"class":135},[30,1389,508],{"class":135},[30,1391,1222],{"class":200},[30,1393,514],{"class":135},[30,1395,1183],{"class":371},[30,1397,783],{"class":135},[30,1399,1400],{"class":200},"\u002Fstop",[30,1402,768],{"class":135},[30,1404,360],{"class":141},[30,1406,151],{"class":135},[30,1408,1410],{"class":65,"line":1409},69,[30,1411,397],{"class":135},[30,1413,1415],{"class":65,"line":1414},70,[30,1416,278],{"emptyLinePlaceholder":277},[30,1418,1420,1422,1425,1427,1429,1431,1433,1435],{"class":65,"line":1419},71,[30,1421,877],{"class":127},[30,1423,1424],{"class":141}," restartBot",[30,1426,334],{"class":135},[30,1428,1183],{"class":337},[30,1430,145],{"class":135},[30,1432,172],{"class":131},[30,1434,360],{"class":135},[30,1436,136],{"class":135},[30,1438,1440,1442,1444,1446,1448,1450,1452,1454,1456,1458,1460,1462,1464,1466,1468,1470,1472,1474,1476,1478,1480,1482,1484,1487,1489,1491],{"class":65,"line":1439},72,[30,1441,829],{"class":123},[30,1443,892],{"class":135},[30,1445,895],{"class":593},[30,1447,898],{"class":135},[30,1449,901],{"class":141},[30,1451,145],{"class":135},[30,1453,148],{"class":131},[30,1455,908],{"class":135},[30,1457,1284],{"class":141},[30,1459,145],{"class":135},[30,1461,172],{"class":131},[30,1463,928],{"class":135},[30,1465,334],{"class":141},[30,1467,204],{"class":135},[30,1469,1297],{"class":200},[30,1471,204],{"class":135},[30,1473,345],{"class":135},[30,1475,508],{"class":135},[30,1477,1222],{"class":200},[30,1479,514],{"class":135},[30,1481,1183],{"class":371},[30,1483,783],{"class":135},[30,1485,1486],{"class":200},"\u002Frestart",[30,1488,768],{"class":135},[30,1490,360],{"class":141},[30,1492,151],{"class":135},[30,1494,1496],{"class":65,"line":1495},73,[30,1497,397],{"class":135},[30,1499,1501],{"class":65,"line":1500},74,[30,1502,278],{"emptyLinePlaceholder":277},[30,1504,1506,1508,1511,1513,1515,1517,1519,1521,1524,1526,1528,1531,1533,1535,1537,1540,1542,1544,1546,1548,1550,1552,1554,1557],{"class":65,"line":1505},75,[30,1507,877],{"class":127},[30,1509,1510],{"class":141}," sendEmbed",[30,1512,334],{"class":135},[30,1514,1183],{"class":337},[30,1516,145],{"class":135},[30,1518,172],{"class":131},[30,1520,345],{"class":135},[30,1522,1523],{"class":337}," payload",[30,1525,145],{"class":135},[30,1527,998],{"class":135},[30,1529,1530],{"class":141}," channelId",[30,1532,145],{"class":135},[30,1534,172],{"class":131},[30,1536,908],{"class":135},[30,1538,1539],{"class":141}," embed",[30,1541,145],{"class":135},[30,1543,478],{"class":131},[30,1545,416],{"class":135},[30,1547,483],{"class":131},[30,1549,345],{"class":135},[30,1551,449],{"class":131},[30,1553,462],{"class":135},[30,1555,1556],{"class":135}," })",[30,1558,136],{"class":135},[30,1560,1562,1564,1566,1568,1570,1572,1574,1576,1578,1581,1583,1585,1587,1589,1591,1593,1595,1597,1599,1601,1603,1605,1607,1610,1612,1614,1616,1618],{"class":65,"line":1561},76,[30,1563,829],{"class":123},[30,1565,892],{"class":135},[30,1567,895],{"class":593},[30,1569,898],{"class":135},[30,1571,901],{"class":141},[30,1573,145],{"class":135},[30,1575,148],{"class":131},[30,1577,908],{"class":135},[30,1579,1580],{"class":141}," messageId",[30,1582,145],{"class":135},[30,1584,172],{"class":131},[30,1586,928],{"class":135},[30,1588,334],{"class":141},[30,1590,204],{"class":135},[30,1592,1297],{"class":200},[30,1594,204],{"class":135},[30,1596,345],{"class":135},[30,1598,508],{"class":135},[30,1600,1222],{"class":200},[30,1602,514],{"class":135},[30,1604,1183],{"class":371},[30,1606,783],{"class":135},[30,1608,1609],{"class":200},"\u002Fsend-embed",[30,1611,768],{"class":135},[30,1613,345],{"class":135},[30,1615,1523],{"class":371},[30,1617,360],{"class":141},[30,1619,151],{"class":135},[30,1621,1623],{"class":65,"line":1622},77,[30,1624,397],{"class":135},[30,1626,1628],{"class":65,"line":1627},78,[30,1629,278],{"emptyLinePlaceholder":277},[30,1631,1633],{"class":65,"line":1632},79,[30,1634,1635],{"class":117},"  \u002F\u002F --- Support Tickets (Scope: tickets:read, tickets:write) ---\n",[30,1637,1639],{"class":65,"line":1638},80,[30,1640,278],{"emptyLinePlaceholder":277},[30,1642,1644,1646,1649,1651],{"class":65,"line":1643},81,[30,1645,877],{"class":127},[30,1647,1648],{"class":141}," listTickets",[30,1650,729],{"class":135},[30,1652,136],{"class":135},[30,1654,1656,1658,1660,1662,1664,1666,1668,1670,1672,1674,1676,1678,1680,1682,1684,1686,1688,1691,1693,1695,1697,1699,1701,1703,1705,1707,1709,1711,1713,1715,1717,1719,1722,1724,1726],{"class":65,"line":1655},82,[30,1657,829],{"class":123},[30,1659,892],{"class":135},[30,1661,895],{"class":593},[30,1663,898],{"class":135},[30,1665,901],{"class":141},[30,1667,145],{"class":135},[30,1669,148],{"class":131},[30,1671,908],{"class":135},[30,1673,911],{"class":141},[30,1675,145],{"class":135},[30,1677,1108],{"class":131},[30,1679,898],{"class":135},[30,1681,1113],{"class":141},[30,1683,145],{"class":135},[30,1685,172],{"class":131},[30,1687,908],{"class":135},[30,1689,1690],{"class":141}," subject",[30,1692,145],{"class":135},[30,1694,172],{"class":131},[30,1696,908],{"class":135},[30,1698,1131],{"class":141},[30,1700,145],{"class":135},[30,1702,172],{"class":131},[30,1704,928],{"class":135},[30,1706,928],{"class":135},[30,1708,334],{"class":141},[30,1710,204],{"class":135},[30,1712,935],{"class":200},[30,1714,204],{"class":135},[30,1716,345],{"class":135},[30,1718,197],{"class":135},[30,1720,1721],{"class":200},"\u002Ftickets",[30,1723,204],{"class":135},[30,1725,360],{"class":141},[30,1727,151],{"class":135},[30,1729,1731],{"class":65,"line":1730},83,[30,1732,397],{"class":135},[30,1734,1736],{"class":65,"line":1735},84,[30,1737,278],{"emptyLinePlaceholder":277},[30,1739,1741,1743,1746,1748,1751,1753,1755,1757,1759,1761,1763,1765,1767,1769,1771,1774,1776,1778,1781,1783,1785,1787,1790,1792,1794,1796,1799,1801,1803],{"class":65,"line":1740},85,[30,1742,877],{"class":127},[30,1744,1745],{"class":141}," createTicket",[30,1747,334],{"class":135},[30,1749,1750],{"class":337},"payload",[30,1752,145],{"class":135},[30,1754,998],{"class":135},[30,1756,1690],{"class":141},[30,1758,145],{"class":135},[30,1760,172],{"class":131},[30,1762,908],{"class":135},[30,1764,1284],{"class":141},[30,1766,145],{"class":135},[30,1768,172],{"class":131},[30,1770,908],{"class":135},[30,1772,1773],{"class":141}," priority",[30,1775,446],{"class":135},[30,1777,197],{"class":135},[30,1779,1780],{"class":200},"low",[30,1782,204],{"class":135},[30,1784,207],{"class":135},[30,1786,197],{"class":135},[30,1788,1789],{"class":200},"normal",[30,1791,204],{"class":135},[30,1793,207],{"class":135},[30,1795,197],{"class":135},[30,1797,1798],{"class":200},"high",[30,1800,204],{"class":135},[30,1802,1556],{"class":135},[30,1804,136],{"class":135},[30,1806,1808,1810,1812,1814,1816,1818,1820,1822,1824,1827,1829,1831,1833,1835,1837,1839,1841,1843,1845,1847,1849,1851,1853,1855],{"class":65,"line":1807},86,[30,1809,829],{"class":123},[30,1811,892],{"class":135},[30,1813,895],{"class":593},[30,1815,898],{"class":135},[30,1817,901],{"class":141},[30,1819,145],{"class":135},[30,1821,148],{"class":131},[30,1823,908],{"class":135},[30,1825,1826],{"class":141}," ticketId",[30,1828,145],{"class":135},[30,1830,172],{"class":131},[30,1832,928],{"class":135},[30,1834,334],{"class":141},[30,1836,204],{"class":135},[30,1838,1297],{"class":200},[30,1840,204],{"class":135},[30,1842,345],{"class":135},[30,1844,197],{"class":135},[30,1846,1721],{"class":200},[30,1848,204],{"class":135},[30,1850,345],{"class":135},[30,1852,1523],{"class":371},[30,1854,360],{"class":141},[30,1856,151],{"class":135},[30,1858,1860],{"class":65,"line":1859},87,[30,1861,397],{"class":135},[30,1863,1865],{"class":65,"line":1864},88,[30,1866,271],{"class":135},[35,1868],{},[51,1870,1872],{"id":1871},"_22-python-requests","2.2 Python (Requests)",[21,1874,1875,1876,452],{},"Für Python-basierte Bots, Automatisierungen oder CLI-Werkzeuge (",[46,1877,1878],{},"pip install requests",[56,1880,1884],{"className":1881,"code":1882,"language":1883,"meta":7,"style":7},"language-python shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# kiro_client.py\nimport requests\nfrom typing import Optional, Dict, Any, List\n\nclass KiroClient:\n    def __init__(self, api_key: str, base_url: str = \"https:\u002F\u002Fapi.kirocloud.de\u002Fapi\u002Fv1\"):\n        self.api_key = api_key\n        self.base_url = base_url\n        self.headers = {\n            \"Authorization\": f\"Bearer {api_key}\",\n            \"Content-Type\": \"application\u002Fjson\",\n            \"Accept\": \"application\u002Fjson\",\n        }\n\n    def _request(self, method: str, endpoint: str, data: Optional[Dict[str, Any]] = None) -> Dict[str, Any]:\n        url = f\"{self.base_url}{endpoint}\"\n        resp = requests.request(method, url, headers=self.headers, json=data, timeout=10)\n        if not resp.ok:\n            raise Exception(f\"KiroCloud API Error [{resp.status_code}]: {resp.text}\")\n        return resp.json()\n\n    # --- System Status ---\n    def get_status(self) -> Dict[str, Any]:\n        return self._request(\"GET\", \"\u002Fpublic\u002Fstatus\")\n\n    def get_stats(self) -> Dict[str, Any]:\n        return self._request(\"GET\", \"\u002Fpublic\u002Fstats\")\n\n    # --- Bots ---\n    def list_bots(self) -> List[Dict[str, Any]]:\n        return self._request(\"GET\", \"\u002Fbots\").get(\"data\", [])\n\n    def get_bot(self, bot_id: str) -> Dict[str, Any]:\n        return self._request(\"GET\", f\"\u002Fbots\u002F{bot_id}\")\n\n    def restart_bot(self, bot_id: str) -> Dict[str, Any]:\n        return self._request(\"POST\", f\"\u002Fbots\u002F{bot_id}\u002Frestart\")\n\n    def send_embed(self, bot_id: str, channel_id: str, embed_data: Dict[str, Any]) -> Dict[str, Any]:\n        return self._request(\"POST\", f\"\u002Fbots\u002F{bot_id}\u002Fsend-embed\", {\n            \"channelId\": channel_id,\n            \"embed\": embed_data,\n        })\n","python",[46,1885,1886,1891,1896,1901,1905,1910,1915,1920,1925,1930,1935,1940,1945,1950,1954,1959,1964,1969,1974,1979,1984,1988,1993,1998,2003,2007,2012,2017,2021,2026,2031,2036,2040,2045,2050,2054,2059,2064,2068,2073,2078,2083,2088],{"__ignoreMap":7},[30,1887,1888],{"class":65,"line":66},[30,1889,1890],{},"# kiro_client.py\n",[30,1892,1893],{"class":65,"line":72},[30,1894,1895],{},"import requests\n",[30,1897,1898],{"class":65,"line":78},[30,1899,1900],{},"from typing import Optional, Dict, Any, List\n",[30,1902,1903],{"class":65,"line":154},[30,1904,278],{"emptyLinePlaceholder":277},[30,1906,1907],{"class":65,"line":164},[30,1908,1909],{},"class KiroClient:\n",[30,1911,1912],{"class":65,"line":177},[30,1913,1914],{},"    def __init__(self, api_key: str, base_url: str = \"https:\u002F\u002Fapi.kirocloud.de\u002Fapi\u002Fv1\"):\n",[30,1916,1917],{"class":65,"line":189},[30,1918,1919],{},"        self.api_key = api_key\n",[30,1921,1922],{"class":65,"line":237},[30,1923,1924],{},"        self.base_url = base_url\n",[30,1926,1927],{"class":65,"line":249},[30,1928,1929],{},"        self.headers = {\n",[30,1931,1932],{"class":65,"line":262},[30,1933,1934],{},"            \"Authorization\": f\"Bearer {api_key}\",\n",[30,1936,1937],{"class":65,"line":268},[30,1938,1939],{},"            \"Content-Type\": \"application\u002Fjson\",\n",[30,1941,1942],{"class":65,"line":274},[30,1943,1944],{},"            \"Accept\": \"application\u002Fjson\",\n",[30,1946,1947],{"class":65,"line":281},[30,1948,1949],{},"        }\n",[30,1951,1952],{"class":65,"line":294},[30,1953,278],{"emptyLinePlaceholder":277},[30,1955,1956],{"class":65,"line":309},[30,1957,1958],{},"    def _request(self, method: str, endpoint: str, data: Optional[Dict[str, Any]] = None) -> Dict[str, Any]:\n",[30,1960,1961],{"class":65,"line":323},[30,1962,1963],{},"        url = f\"{self.base_url}{endpoint}\"\n",[30,1965,1966],{"class":65,"line":328},[30,1967,1968],{},"        resp = requests.request(method, url, headers=self.headers, json=data, timeout=10)\n",[30,1970,1971],{"class":65,"line":365},[30,1972,1973],{},"        if not resp.ok:\n",[30,1975,1976],{"class":65,"line":380},[30,1977,1978],{},"            raise Exception(f\"KiroCloud API Error [{resp.status_code}]: {resp.text}\")\n",[30,1980,1981],{"class":65,"line":394},[30,1982,1983],{},"        return resp.json()\n",[30,1985,1986],{"class":65,"line":400},[30,1987,278],{"emptyLinePlaceholder":277},[30,1989,1990],{"class":65,"line":405},[30,1991,1992],{},"    # --- System Status ---\n",[30,1994,1995],{"class":65,"line":467},[30,1996,1997],{},"    def get_status(self) -> Dict[str, Any]:\n",[30,1999,2000],{"class":65,"line":496},[30,2001,2002],{},"        return self._request(\"GET\", \"\u002Fpublic\u002Fstatus\")\n",[30,2004,2005],{"class":65,"line":528},[30,2006,278],{"emptyLinePlaceholder":277},[30,2008,2009],{"class":65,"line":549},[30,2010,2011],{},"    def get_stats(self) -> Dict[str, Any]:\n",[30,2013,2014],{"class":65,"line":569},[30,2015,2016],{},"        return self._request(\"GET\", \"\u002Fpublic\u002Fstats\")\n",[30,2018,2019],{"class":65,"line":575},[30,2020,278],{"emptyLinePlaceholder":277},[30,2022,2023],{"class":65,"line":580},[30,2024,2025],{},"    # --- Bots ---\n",[30,2027,2028],{"class":65,"line":618},[30,2029,2030],{},"    def list_bots(self) -> List[Dict[str, Any]]:\n",[30,2032,2033],{"class":65,"line":626},[30,2034,2035],{},"        return self._request(\"GET\", \"\u002Fbots\").get(\"data\", [])\n",[30,2037,2038],{"class":65,"line":634},[30,2039,278],{"emptyLinePlaceholder":277},[30,2041,2042],{"class":65,"line":669},[30,2043,2044],{},"    def get_bot(self, bot_id: str) -> Dict[str, Any]:\n",[30,2046,2047],{"class":65,"line":679},[30,2048,2049],{},"        return self._request(\"GET\", f\"\u002Fbots\u002F{bot_id}\")\n",[30,2051,2052],{"class":65,"line":684},[30,2053,278],{"emptyLinePlaceholder":277},[30,2055,2056],{"class":65,"line":709},[30,2057,2058],{},"    def restart_bot(self, bot_id: str) -> Dict[str, Any]:\n",[30,2060,2061],{"class":65,"line":754},[30,2062,2063],{},"        return self._request(\"POST\", f\"\u002Fbots\u002F{bot_id}\u002Frestart\")\n",[30,2065,2066],{"class":65,"line":815},[30,2067,278],{"emptyLinePlaceholder":277},[30,2069,2070],{"class":65,"line":821},[30,2071,2072],{},"    def send_embed(self, bot_id: str, channel_id: str, embed_data: Dict[str, Any]) -> Dict[str, Any]:\n",[30,2074,2075],{"class":65,"line":826},[30,2076,2077],{},"        return self._request(\"POST\", f\"\u002Fbots\u002F{bot_id}\u002Fsend-embed\", {\n",[30,2079,2080],{"class":65,"line":853},[30,2081,2082],{},"            \"channelId\": channel_id,\n",[30,2084,2085],{"class":65,"line":858},[30,2086,2087],{},"            \"embed\": embed_data,\n",[30,2089,2090],{"class":65,"line":863},[30,2091,2092],{},"        })\n",[35,2094],{},[51,2096,2098],{"id":2097},"_23-shell-curl-cicd-automatisierung","2.3 Shell \u002F cURL (CI\u002FCD Automatisierung)",[21,2100,2101],{},"Für Deployment-Skripte oder automatisierte Neustarts nach GitHub Actions Builds:",[56,2103,2107],{"className":2104,"code":2105,"language":2106,"meta":7,"style":7},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","#!\u002Fbin\u002Fbash\nset -euo pipefail\n\nAPI_KEY=\"kiro_sec_YOUR_API_KEY_HERE\"\nBASE_URL=\"https:\u002F\u002Fapi.kirocloud.de\u002Fapi\u002Fv1\"\nBOT_ID=\"00000000-0000-0000-0000-000000000000\"\n\necho \"Checking platform health...\"\ncurl -s -f -X GET \"$BASE_URL\u002Fpublic\u002Fstatus\" \\\n  -H \"Accept: application\u002Fjson\" | jq .\n\necho \"Restarting bot instance after deployment...\"\ncurl -s -f -X POST \"$BASE_URL\u002Fbots\u002F$BOT_ID\u002Frestart\" \\\n  -H \"Authorization: Bearer $API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" | jq .\n","bash",[46,2108,2109,2114,2125,2129,2146,2159,2173,2177,2190,2219,2239,2243,2254,2282,2298],{"__ignoreMap":7},[30,2110,2111],{"class":65,"line":66},[30,2112,2113],{"class":117},"#!\u002Fbin\u002Fbash\n",[30,2115,2116,2119,2122],{"class":65,"line":72},[30,2117,2118],{"class":593},"set",[30,2120,2121],{"class":200}," -euo",[30,2123,2124],{"class":200}," pipefail\n",[30,2126,2127],{"class":65,"line":78},[30,2128,278],{"emptyLinePlaceholder":277},[30,2130,2131,2134,2137,2140,2143],{"class":65,"line":154},[30,2132,2133],{"class":371},"API_KEY",[30,2135,2136],{"class":135},"=",[30,2138,2139],{"class":135},"\"",[30,2141,2142],{"class":200},"kiro_sec_YOUR_API_KEY_HERE",[30,2144,2145],{"class":135},"\"\n",[30,2147,2148,2151,2153,2155,2157],{"class":65,"line":164},[30,2149,2150],{"class":371},"BASE_URL",[30,2152,2136],{"class":135},[30,2154,2139],{"class":135},[30,2156,355],{"class":200},[30,2158,2145],{"class":135},[30,2160,2161,2164,2166,2168,2171],{"class":65,"line":177},[30,2162,2163],{"class":371},"BOT_ID",[30,2165,2136],{"class":135},[30,2167,2139],{"class":135},[30,2169,2170],{"class":200},"00000000-0000-0000-0000-000000000000",[30,2172,2145],{"class":135},[30,2174,2175],{"class":65,"line":189},[30,2176,278],{"emptyLinePlaceholder":277},[30,2178,2179,2182,2185,2188],{"class":65,"line":237},[30,2180,2181],{"class":593},"echo",[30,2183,2184],{"class":135}," \"",[30,2186,2187],{"class":200},"Checking platform health...",[30,2189,2145],{"class":135},[30,2191,2192,2195,2198,2201,2204,2207,2209,2212,2214,2216],{"class":65,"line":249},[30,2193,2194],{"class":131},"curl",[30,2196,2197],{"class":200}," -s",[30,2199,2200],{"class":200}," -f",[30,2202,2203],{"class":200}," -X",[30,2205,2206],{"class":200}," GET",[30,2208,2184],{"class":135},[30,2210,2211],{"class":371},"$BASE_URL",[30,2213,944],{"class":200},[30,2215,2139],{"class":135},[30,2217,2218],{"class":371}," \\\n",[30,2220,2221,2224,2226,2229,2231,2233,2236],{"class":65,"line":262},[30,2222,2223],{"class":200},"  -H",[30,2225,2184],{"class":135},[30,2227,2228],{"class":200},"Accept: application\u002Fjson",[30,2230,2139],{"class":135},[30,2232,207],{"class":135},[30,2234,2235],{"class":131}," jq",[30,2237,2238],{"class":200}," .\n",[30,2240,2241],{"class":65,"line":268},[30,2242,278],{"emptyLinePlaceholder":277},[30,2244,2245,2247,2249,2252],{"class":65,"line":274},[30,2246,2181],{"class":593},[30,2248,2184],{"class":135},[30,2250,2251],{"class":200},"Restarting bot instance after deployment...",[30,2253,2145],{"class":135},[30,2255,2256,2258,2260,2262,2264,2267,2269,2271,2273,2276,2278,2280],{"class":65,"line":281},[30,2257,2194],{"class":131},[30,2259,2197],{"class":200},[30,2261,2200],{"class":200},[30,2263,2203],{"class":200},[30,2265,2266],{"class":200}," POST",[30,2268,2184],{"class":135},[30,2270,2211],{"class":371},[30,2272,1222],{"class":200},[30,2274,2275],{"class":371},"$BOT_ID",[30,2277,1486],{"class":200},[30,2279,2139],{"class":135},[30,2281,2218],{"class":371},[30,2283,2284,2286,2288,2291,2294,2296],{"class":65,"line":294},[30,2285,2223],{"class":200},[30,2287,2184],{"class":135},[30,2289,2290],{"class":200},"Authorization: Bearer ",[30,2292,2293],{"class":371},"$API_KEY",[30,2295,2139],{"class":135},[30,2297,2218],{"class":371},[30,2299,2300,2302,2304,2307,2309,2311,2313],{"class":65,"line":309},[30,2301,2223],{"class":200},[30,2303,2184],{"class":135},[30,2305,2306],{"class":200},"Content-Type: application\u002Fjson",[30,2308,2139],{"class":135},[30,2310,207],{"class":135},[30,2312,2235],{"class":131},[30,2314,2238],{"class":200},[35,2316],{},[38,2318,2320],{"id":2319},"_3-endpunkt-spezifikation","3. Endpunkt-Spezifikation",[51,2322,2324],{"id":2323},"_31-plattform-status-metriken-öffentlich","3.1 Plattform-Status & Metriken (Öffentlich)",[2326,2327,2329,2330],"h4",{"id":2328},"get-apiv1publicstatus","GET ",[46,2331,2332],{},"\u002Fapi\u002Fv1\u002Fpublic\u002Fstatus",[21,2334,2335],{},"Liefert den aktuellen Betriebszustand aller KiroCloud-Komponenten (Discord Gateway Proxies, Rechenknoten, Datenbank).",[2337,2338,2339,2346],"ul",{},[2340,2341,2342,2345],"li",{},[86,2343,2344],{},"Authentifizierung:"," Keine erforderlich",[2340,2347,2348,2351,2352],{},[86,2349,2350],{},"Antwort:"," ",[46,2353,2354],{},"200 OK",[56,2356,2359],{"className":2357,"code":2358,"language":726,"meta":7,"style":7},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"success\": true,\n  \"data\": {\n    \"overall\": \"operational\",\n    \"services\": {\n      \"database\": \"operational\",\n      \"botEngine\": \"operational\",\n      \"minecraftNodes\": \"operational\"\n    },\n    \"timestamp\": \"2026-10-09T00:00:00.000Z\"\n  }\n}\n",[46,2360,2361,2365,2380,2393,2414,2427,2448,2467,2484,2489,2507,2511],{"__ignoreMap":7},[30,2362,2363],{"class":65,"line":66},[30,2364,706],{"class":135},[30,2366,2367,2370,2373,2375,2377],{"class":65,"line":72},[30,2368,2369],{"class":135},"  \"",[30,2371,2372],{"class":127},"success",[30,2374,2139],{"class":135},[30,2376,145],{"class":135},[30,2378,2379],{"class":135}," true,\n",[30,2381,2382,2384,2387,2389,2391],{"class":65,"line":78},[30,2383,2369],{"class":135},[30,2385,2386],{"class":127},"data",[30,2388,2139],{"class":135},[30,2390,145],{"class":135},[30,2392,136],{"class":135},[30,2394,2395,2398,2401,2403,2405,2407,2410,2412],{"class":65,"line":154},[30,2396,2397],{"class":135},"    \"",[30,2399,2400],{"class":131},"overall",[30,2402,2139],{"class":135},[30,2404,145],{"class":135},[30,2406,2184],{"class":135},[30,2408,2409],{"class":200},"operational",[30,2411,2139],{"class":135},[30,2413,525],{"class":135},[30,2415,2416,2418,2421,2423,2425],{"class":65,"line":164},[30,2417,2397],{"class":135},[30,2419,2420],{"class":131},"services",[30,2422,2139],{"class":135},[30,2424,145],{"class":135},[30,2426,136],{"class":135},[30,2428,2429,2432,2436,2438,2440,2442,2444,2446],{"class":65,"line":177},[30,2430,2431],{"class":135},"      \"",[30,2433,2435],{"class":2434},"sbssI","database",[30,2437,2139],{"class":135},[30,2439,145],{"class":135},[30,2441,2184],{"class":135},[30,2443,2409],{"class":200},[30,2445,2139],{"class":135},[30,2447,525],{"class":135},[30,2449,2450,2452,2455,2457,2459,2461,2463,2465],{"class":65,"line":189},[30,2451,2431],{"class":135},[30,2453,2454],{"class":2434},"botEngine",[30,2456,2139],{"class":135},[30,2458,145],{"class":135},[30,2460,2184],{"class":135},[30,2462,2409],{"class":200},[30,2464,2139],{"class":135},[30,2466,525],{"class":135},[30,2468,2469,2471,2474,2476,2478,2480,2482],{"class":65,"line":237},[30,2470,2431],{"class":135},[30,2472,2473],{"class":2434},"minecraftNodes",[30,2475,2139],{"class":135},[30,2477,145],{"class":135},[30,2479,2184],{"class":135},[30,2481,2409],{"class":200},[30,2483,2145],{"class":135},[30,2485,2486],{"class":65,"line":249},[30,2487,2488],{"class":135},"    },\n",[30,2490,2491,2493,2496,2498,2500,2502,2505],{"class":65,"line":262},[30,2492,2397],{"class":135},[30,2494,2495],{"class":131},"timestamp",[30,2497,2139],{"class":135},[30,2499,145],{"class":135},[30,2501,2184],{"class":135},[30,2503,2504],{"class":200},"2026-10-09T00:00:00.000Z",[30,2506,2145],{"class":135},[30,2508,2509],{"class":65,"line":268},[30,2510,397],{"class":135},[30,2512,2513],{"class":65,"line":274},[30,2514,271],{"class":135},[2326,2516,2329,2518],{"id":2517},"get-apiv1publicstats",[46,2519,2520],{},"\u002Fapi\u002Fv1\u002Fpublic\u002Fstats",[21,2522,2523],{},"Aggregierte Echtzeit-Statistiken über die Gesamtlaufzeit und aktive Instanzen.",[2337,2525,2526],{},[2340,2527,2528,2345],{},[86,2529,2344],{},[35,2531],{},[51,2533,2535],{"id":2534},"_32-bot-steuerung-instanz-lifecycle","3.2 Bot-Steuerung & Instanz-Lifecycle",[2326,2537,2329,2539],{"id":2538},"get-apiv1bots",[46,2540,2541],{},"\u002Fapi\u002Fv1\u002Fbots",[21,2543,2544],{},"Gibt alle Bots zurück, die dem authentifizierten Benutzer-Account zugeordnet sind.",[2337,2546,2547,2555],{},[2340,2548,2549,2351,2552],{},[86,2550,2551],{},"Scope:",[46,2553,2554],{},"bots:read",[2340,2556,2557,2559],{},[86,2558,2350],{}," Array von Bot-Metadaten (Name, Status, Laufzeitverfallsdatum).",[2326,2561,2329,2563],{"id":2562},"get-apiv1botsid",[46,2564,2565],{},"\u002Fapi\u002Fv1\u002Fbots\u002F:id",[21,2567,2568],{},"Ruft detaillierte Laufzeitdaten und Systemmetriken einer spezifischen Bot-Instanz ab.",[2337,2570,2571],{},[2340,2572,2573,2351,2575],{},[86,2574,2551],{},[46,2576,2554],{},[2326,2578,2580,2581],{"id":2579},"post-apiv1botsidstart","POST ",[46,2582,2583],{},"\u002Fapi\u002Fv1\u002Fbots\u002F:id\u002Fstart",[21,2585,2586],{},"Startet die isolierte Bot-Laufzeitumgebung in einer sicheren cgroups-Sandbox.",[2337,2588,2589,2596],{},[2340,2590,2591,2351,2593],{},[86,2592,2551],{},[46,2594,2595],{},"bots:write",[2340,2597,2598,2351,2601,2603],{},[86,2599,2600],{},"Rückgabe:",[46,2602,2354],{}," bei erfolgreicher Initialisierung.",[2326,2605,2580,2607],{"id":2606},"post-apiv1botsidstop",[46,2608,2609],{},"\u002Fapi\u002Fv1\u002Fbots\u002F:id\u002Fstop",[21,2611,2612,2613,2616],{},"Fährt den laufenden Node.js-Prozess des Bots kontrolliert über ",[46,2614,2615],{},"SIGTERM"," herunter.",[2337,2618,2619],{},[2340,2620,2621,2351,2623],{},[86,2622,2551],{},[46,2624,2595],{},[2326,2626,2580,2628],{"id":2627},"post-apiv1botsidrestart",[46,2629,2630],{},"\u002Fapi\u002Fv1\u002Fbots\u002F:id\u002Frestart",[21,2632,2633],{},"Führt einen kontrollierten Neustart der Instanz aus. Ideal nach dem Aktualisieren von Bot-Modulen oder Umgebungsvariablen.",[2337,2635,2636],{},[2340,2637,2638,2351,2640],{},[86,2639,2551],{},[46,2641,2595],{},[2326,2643,2580,2645],{"id":2644},"post-apiv1botsidsend-embed",[46,2646,2647],{},"\u002Fapi\u002Fv1\u002Fbots\u002F:id\u002Fsend-embed",[21,2649,2650],{},"Sendet ein gestaltetes Discord-Embed über den authentifizierten Bot in einen Zielkanal.",[2337,2652,2653,2659],{},[2340,2654,2655,2351,2657],{},[86,2656,2551],{},[46,2658,2595],{},[2340,2660,2661],{},[86,2662,2663],{},"Payload:",[56,2665,2667],{"className":2357,"code":2666,"language":726,"meta":7,"style":7},"{\n  \"channelId\": \"123456789012345678\",\n  \"embed\": {\n    \"title\": \"Wartungsarbeiten abgeschlossen\",\n    \"description\": \"Alle Systeme laufen wieder mit voller Leistung.\",\n    \"color\": 3447003\n  }\n}\n",[46,2668,2669,2673,2693,2706,2726,2746,2760,2764],{"__ignoreMap":7},[30,2670,2671],{"class":65,"line":66},[30,2672,706],{"class":135},[30,2674,2675,2677,2680,2682,2684,2686,2689,2691],{"class":65,"line":72},[30,2676,2369],{"class":135},[30,2678,2679],{"class":127},"channelId",[30,2681,2139],{"class":135},[30,2683,145],{"class":135},[30,2685,2184],{"class":135},[30,2687,2688],{"class":200},"123456789012345678",[30,2690,2139],{"class":135},[30,2692,525],{"class":135},[30,2694,2695,2697,2700,2702,2704],{"class":65,"line":78},[30,2696,2369],{"class":135},[30,2698,2699],{"class":127},"embed",[30,2701,2139],{"class":135},[30,2703,145],{"class":135},[30,2705,136],{"class":135},[30,2707,2708,2710,2713,2715,2717,2719,2722,2724],{"class":65,"line":154},[30,2709,2397],{"class":135},[30,2711,2712],{"class":131},"title",[30,2714,2139],{"class":135},[30,2716,145],{"class":135},[30,2718,2184],{"class":135},[30,2720,2721],{"class":200},"Wartungsarbeiten abgeschlossen",[30,2723,2139],{"class":135},[30,2725,525],{"class":135},[30,2727,2728,2730,2733,2735,2737,2739,2742,2744],{"class":65,"line":164},[30,2729,2397],{"class":135},[30,2731,2732],{"class":131},"description",[30,2734,2139],{"class":135},[30,2736,145],{"class":135},[30,2738,2184],{"class":135},[30,2740,2741],{"class":200},"Alle Systeme laufen wieder mit voller Leistung.",[30,2743,2139],{"class":135},[30,2745,525],{"class":135},[30,2747,2748,2750,2753,2755,2757],{"class":65,"line":177},[30,2749,2397],{"class":135},[30,2751,2752],{"class":131},"color",[30,2754,2139],{"class":135},[30,2756,145],{"class":135},[30,2758,2759],{"class":2434}," 3447003\n",[30,2761,2762],{"class":65,"line":189},[30,2763,397],{"class":135},[30,2765,2766],{"class":65,"line":237},[30,2767,271],{"class":135},[35,2769],{},[51,2771,2773],{"id":2772},"_33-support-ticket-api","3.3 Support-Ticket API",[2326,2775,2329,2777],{"id":2776},"get-apiv1tickets",[46,2778,2779],{},"\u002Fapi\u002Fv1\u002Ftickets",[21,2781,2782],{},"Listet alle eigenen Support-Tickets inklusive aktuellem Bearbeitungsstatus auf.",[2337,2784,2785],{},[2340,2786,2787,2351,2789],{},[86,2788,2551],{},[46,2790,2791],{},"tickets:read",[2326,2793,2580,2795],{"id":2794},"post-apiv1tickets",[46,2796,2779],{},[21,2798,2799],{},"Eröffnet ein neues Support-Ticket im KiroCloud Helpdesk.",[2337,2801,2802,2809],{},[2340,2803,2804,2351,2806],{},[86,2805,2551],{},[46,2807,2808],{},"tickets:write",[2340,2810,2811],{},[86,2812,2663],{},[56,2814,2816],{"className":2357,"code":2815,"language":726,"meta":7,"style":7},"{\n  \"subject\": \"Frage zur Bot-Skalierung\",\n  \"message\": \"Wie kann ich die Shard-Anzahl für meinen Bot dynamisch anpassen?\",\n  \"priority\": \"normal\"\n}\n",[46,2817,2818,2822,2842,2862,2879],{"__ignoreMap":7},[30,2819,2820],{"class":65,"line":66},[30,2821,706],{"class":135},[30,2823,2824,2826,2829,2831,2833,2835,2838,2840],{"class":65,"line":72},[30,2825,2369],{"class":135},[30,2827,2828],{"class":127},"subject",[30,2830,2139],{"class":135},[30,2832,145],{"class":135},[30,2834,2184],{"class":135},[30,2836,2837],{"class":200},"Frage zur Bot-Skalierung",[30,2839,2139],{"class":135},[30,2841,525],{"class":135},[30,2843,2844,2846,2849,2851,2853,2855,2858,2860],{"class":65,"line":78},[30,2845,2369],{"class":135},[30,2847,2848],{"class":127},"message",[30,2850,2139],{"class":135},[30,2852,145],{"class":135},[30,2854,2184],{"class":135},[30,2856,2857],{"class":200},"Wie kann ich die Shard-Anzahl für meinen Bot dynamisch anpassen?",[30,2859,2139],{"class":135},[30,2861,525],{"class":135},[30,2863,2864,2866,2869,2871,2873,2875,2877],{"class":65,"line":154},[30,2865,2369],{"class":135},[30,2867,2868],{"class":127},"priority",[30,2870,2139],{"class":135},[30,2872,145],{"class":135},[30,2874,2184],{"class":135},[30,2876,1789],{"class":200},[30,2878,2145],{"class":135},[30,2880,2881],{"class":65,"line":164},[30,2882,271],{"class":135},[35,2884],{},[38,2886,2888],{"id":2887},"_4-http-statuscodes-fehlerbehandlung","4. HTTP-Statuscodes & Fehlerbehandlung",[21,2890,2891],{},"Die KiroCloud-API antwortet bei Fehlern stets mit standardisierten RFC-7807-konformen JSON-Objekten:",[2893,2894,2895,2912],"table",{},[2896,2897,2898],"thead",{},[2899,2900,2901,2906,2909],"tr",{},[2902,2903,2905],"th",{"align":2904},"left","Statuscode",[2902,2907,2908],{"align":2904},"Fehler-Code",[2902,2910,2911],{"align":2904},"Ursache & Empfohlene Maßnahme",[2913,2914,2915,2935,2953,2968,2987],"tbody",{},[2899,2916,2917,2923,2928],{},[2918,2919,2920],"td",{"align":2904},[46,2921,2922],{},"401 Unauthorized",[2918,2924,2925],{"align":2904},[46,2926,2927],{},"UNAUTHORIZED",[2918,2929,2930,2931,2934],{"align":2904},"Der API-Schlüssel fehlt, ist ungültig oder abgelaufen. Prüfe den ",[46,2932,2933],{},"Authorization: Bearer","-Header.",[2899,2936,2937,2942,2947],{},[2918,2938,2939],{"align":2904},[46,2940,2941],{},"403 Forbidden",[2918,2943,2944],{"align":2904},[46,2945,2946],{},"FORBIDDEN_SCOPE",[2918,2948,2949,2950,2952],{"align":2904},"Dem Schlüssel fehlt die erforderliche Berechtigung (z. B. ",[46,2951,2595],{}," für Neustarts).",[2899,2954,2955,2960,2965],{},[2918,2956,2957],{"align":2904},[46,2958,2959],{},"404 Not Found",[2918,2961,2962],{"align":2904},[46,2963,2964],{},"NOT_FOUND",[2918,2966,2967],{"align":2904},"Die angefragte Ressource (Bot-ID oder Ticket) existiert nicht oder gehört einem anderen Account.",[2899,2969,2970,2975,2980],{},[2918,2971,2972],{"align":2904},[46,2973,2974],{},"429 Too Many Requests",[2918,2976,2977],{"align":2904},[46,2978,2979],{},"RATE_LIMITED",[2918,2981,2982,2983,2986],{"align":2904},"Anfragelimit erreicht. Implementiere einen exponentiellen Backoff (",[46,2984,2985],{},"Retry-After","-Header beachten).",[2899,2988,2989,2994,2999],{},[2918,2990,2991],{"align":2904},[46,2992,2993],{},"500 Internal Error",[2918,2995,2996],{"align":2904},[46,2997,2998],{},"INTERNAL_ERROR",[2918,3000,3001],{"align":2904},"Vorübergehender Serverfehler. Bitte an den Support wenden oder nach 5 Sekunden erneut versuchen.",[3003,3004,3005],"style",{},"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 .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 .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":7,"searchDepth":72,"depth":72,"links":3007},[3008,3011,3016,3021],{"id":40,"depth":72,"text":41,"children":3009},[3010],{"id":53,"depth":78,"text":54},{"id":94,"depth":72,"text":95,"children":3012},[3013,3014,3015],{"id":101,"depth":78,"text":102},{"id":1871,"depth":78,"text":1872},{"id":2097,"depth":78,"text":2098},{"id":2319,"depth":72,"text":2320,"children":3017},[3018,3019,3020],{"id":2323,"depth":78,"text":2324},{"id":2534,"depth":78,"text":2535},{"id":2772,"depth":78,"text":2773},{"id":2887,"depth":72,"text":2888},"api","Offizielle REST-API-Referenz zur programmatischen Steuerung von Discord Bots, Tickets und Systemmetriken.","md",{"icon":3026},"i-lucide-code-2",0,"\u002Fdocs\u002Fde\u002Frest-endpoints",{"title":10,"description":3023},"docs\u002Fde\u002Frest-endpoints","7eq9LoeJn9at-f0zpuNsivdZsbyJ8Uk46Ygxf9fOm-U",{"enabled":277,"clientPubId":3033,"docsSlotId":7,"newsSlotId":7,"guidesSlotId":7,"dashboardSlotId":7,"docsEnabled":277,"newsEnabled":277,"guidesEnabled":277,"dashboardEnabled":277},"ca-pub-9454065621077312"]