[{"data":1,"prerenderedAt":724},["ShallowReactive",2],{"navigation_docs_en":3,"docs_en_-docs-open-platform-authentication":289,"docs_en_-docs-open-platform-authentication_surround":719},[4,18,51,254,267,276],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":6},"Getting Started",false,"/docs/getting-started","docs/1.getting-started",[10,14],{"title":11,"path":12,"stem":13},"Introduction","/docs/getting-started/introduction","docs/1.getting-started/1.introduction",{"title":15,"path":16,"stem":17},"Quick Start","/docs/getting-started/quick-start","docs/1.getting-started/2.quick-start",{"title":19,"icon":6,"path":20,"stem":21,"children":22,"page":6},"Features","/docs/features","docs/2.features",[23,27,31,35,39,43,47],{"title":24,"path":25,"stem":26},"Alert Triage","/docs/features/alert-triage","docs/2.features/2.alert-triage",{"title":28,"path":29,"stem":30},"Incident Investigation","/docs/features/incident-investigation","docs/2.features/3.incident-investigation",{"title":32,"path":33,"stem":34},"Deployment Verification","/docs/features/deployment-verification","docs/2.features/4.deployment-verification",{"title":36,"path":37,"stem":38},"Data Exploration","/docs/features/data-exploration","docs/2.features/5.data-exploration",{"title":40,"path":41,"stem":42},"Knowledges","/docs/features/knowledges","docs/2.features/6.knowledges",{"title":44,"path":45,"stem":46},"Castrel Proxy","/docs/features/castrel-proxy","docs/2.features/7.castrel-proxy",{"title":48,"path":49,"stem":50},"Automations","/docs/features/automations","docs/2.features/8.automations",{"title":52,"icon":6,"path":53,"stem":54,"children":55},"Integrations","/docs/integrations","docs/3.integrations/index",[56,57,62,67,72,77,81,85,89,94,99,104,109,113,117,122,127,131,136,141,146,151,156,160,165,170,174,178,183,188,193,198,203,208,212,216,220,224,229,234,239,244,249],{"title":52,"path":53,"stem":54},{"title":58,"path":59,"stem":60,"icon":61},"Prometheus","/docs/integrations/prometheus","docs/3.integrations/1.prometheus","i-simple-icons-prometheus",{"title":63,"path":64,"stem":65,"icon":66},"AWS","/docs/integrations/aws","docs/3.integrations/10.aws","i-simple-icons-amazonwebservices",{"title":68,"path":69,"stem":70,"icon":71},"Alibaba Cloud (Aliyun)","/docs/integrations/aliyun","docs/3.integrations/12.aliyun","i-simple-icons-alibabacloud",{"title":73,"path":74,"stem":75,"icon":76},"Tencent Cloud","/docs/integrations/tencent-cloud","docs/3.integrations/13.tencent-cloud","i-lucide-plug",{"title":78,"path":79,"stem":80,"icon":76},"Huawei Cloud","/docs/integrations/huaweicloud","docs/3.integrations/14.huaweicloud",{"title":82,"path":83,"stem":84,"icon":76},"Volcengine","/docs/integrations/volcengine","docs/3.integrations/15.volcengine",{"title":86,"path":87,"stem":88,"icon":76},"QingFanYun (Cloudwise ITSM)","/docs/integrations/qingfanyun","docs/3.integrations/16.qingfanyun",{"title":90,"path":91,"stem":92,"icon":93},"Grafana","/docs/integrations/grafana","docs/3.integrations/17.grafana","i-simple-icons-grafana",{"title":95,"path":96,"stem":97,"icon":98},"VictoriaMetrics","/docs/integrations/victoriametrics","docs/3.integrations/18.victoriametrics","i-simple-icons-victoriametrics",{"title":100,"path":101,"stem":102,"icon":103},"New Relic","/docs/integrations/new-relic","docs/3.integrations/19.new-relic","i-simple-icons-newrelic",{"title":105,"path":106,"stem":107,"icon":108},"Elasticsearch","/docs/integrations/elasticsearch","docs/3.integrations/2.elasticsearch","i-simple-icons-elasticsearch",{"title":110,"path":111,"stem":112,"icon":76},"Zabbix","/docs/integrations/zabbix","docs/3.integrations/20.zabbix",{"title":114,"path":115,"stem":116,"icon":76},"JianKongBao","/docs/integrations/jiankongbao","docs/3.integrations/21.jiankongbao",{"title":118,"path":119,"stem":120,"icon":121},"PagerDuty","/docs/integrations/pagerduty","docs/3.integrations/22.pagerduty","i-simple-icons-pagerduty",{"title":123,"path":124,"stem":125,"icon":126},"Sentry","/docs/integrations/sentry","docs/3.integrations/23.sentry","i-simple-icons-sentry",{"title":128,"path":129,"stem":130,"icon":76},"Freshworks / Freshservice","/docs/integrations/freshworks","docs/3.integrations/24.freshworks",{"title":132,"path":133,"stem":134,"icon":135},"Linear","/docs/integrations/linear","docs/3.integrations/25.linear","i-simple-icons-linear",{"title":137,"path":138,"stem":139,"icon":140},"ClickHouse","/docs/integrations/clickhouse","docs/3.integrations/26.clickhouse","i-simple-icons-clickhouse",{"title":142,"path":143,"stem":144,"icon":145},"Kubernetes","/docs/integrations/kubernetes","docs/3.integrations/27.kubernetes","i-simple-icons-kubernetes",{"title":147,"path":148,"stem":149,"icon":150},"Terraform Cloud / HCP Terraform","/docs/integrations/terraform","docs/3.integrations/28.terraform","i-simple-icons-terraform",{"title":152,"path":153,"stem":154,"icon":155},"Jenkins","/docs/integrations/jenkins","docs/3.integrations/29.jenkins","i-simple-icons-jenkins",{"title":157,"path":158,"stem":159,"icon":93},"Grafana Loki","/docs/integrations/grafana-loki","docs/3.integrations/3.grafana-loki",{"title":161,"path":162,"stem":163,"icon":164},"Ansible / AWX","/docs/integrations/ansible","docs/3.integrations/30.ansible","i-simple-icons-ansible",{"title":166,"path":167,"stem":168,"icon":169},"GitLab","/docs/integrations/gitlab","docs/3.integrations/31.gitlab","i-simple-icons-gitlab",{"title":171,"path":172,"stem":173,"icon":76},"DingTalk","/docs/integrations/dingtalk","docs/3.integrations/32.dingtalk",{"title":175,"path":176,"stem":177,"icon":76},"Feishu / Lark","/docs/integrations/feishu","docs/3.integrations/33.feishu",{"title":179,"path":180,"stem":181,"icon":182},"Telegram","/docs/integrations/telegram","docs/3.integrations/34.telegram","i-simple-icons-telegram",{"title":184,"path":185,"stem":186,"icon":187},"Email","/docs/integrations/email","docs/3.integrations/35.email","i-simple-icons-gmail",{"title":189,"path":190,"stem":191,"icon":192},"WeiXin Clawbot (Enterprise WeChat)","/docs/integrations/weixin-clawbot","docs/3.integrations/36.weixin-clawbot","i-simple-icons-wechat",{"title":194,"path":195,"stem":196,"icon":197},"Notion","/docs/integrations/notion","docs/3.integrations/37.notion","i-simple-icons-notion",{"title":199,"path":200,"stem":201,"icon":202},"Confluence","/docs/integrations/confluence","docs/3.integrations/38.confluence","i-simple-icons-confluence",{"title":204,"path":205,"stem":206,"icon":207},"Google Docs","/docs/integrations/google-docs","docs/3.integrations/39.google-docs","i-simple-icons-googledocs",{"title":209,"path":210,"stem":211,"icon":93},"Grafana Tempo","/docs/integrations/grafana-tempo","docs/3.integrations/4.grafana-tempo",{"title":213,"path":214,"stem":215,"icon":76},"DingTalk Docs","/docs/integrations/dingtalk-docs","docs/3.integrations/40.dingtalk-docs",{"title":217,"path":218,"stem":219,"icon":76},"LDAP","/docs/integrations/ldap","docs/3.integrations/41.ldap",{"title":221,"path":222,"stem":223,"icon":76},"Dify","/docs/integrations/dify","docs/3.integrations/42.dify",{"title":225,"path":226,"stem":227,"icon":228},"Custom MCP","/docs/integrations/custom-mcp","docs/3.integrations/43.custom-mcp","i-simple-icons-anthropic",{"title":230,"path":231,"stem":232,"icon":233},"GitHub","/docs/integrations/github","docs/3.integrations/5.github","i-simple-icons-github",{"title":235,"path":236,"stem":237,"icon":238},"Slack","/docs/integrations/slack","docs/3.integrations/6.slack","i-simple-icons-slack",{"title":240,"path":241,"stem":242,"icon":243},"Vercel","/docs/integrations/vercel","docs/3.integrations/7.vercel","i-simple-icons-vercel",{"title":245,"path":246,"stem":247,"icon":248},"Graylog","/docs/integrations/graylog","docs/3.integrations/8.graylog","i-simple-icons-graylog",{"title":250,"path":251,"stem":252,"icon":253},"Datadog","/docs/integrations/datadog","docs/3.integrations/9.datadog","i-simple-icons-datadog",{"title":255,"path":256,"stem":257,"children":258,"page":6},"Open Platform","/docs/open-platform","docs/4.open-platform",[259,263],{"title":260,"path":261,"stem":262},"Authentication","/docs/open-platform/authentication","docs/4.open-platform/1.authentication",{"title":264,"path":265,"stem":266},"Knowledges API","/docs/open-platform/knowledges","docs/4.open-platform/2.knowledges",{"title":268,"path":269,"stem":270,"children":271,"page":6},"More","/docs/more","docs/5.more",[272],{"title":273,"path":274,"stem":275},"Roadmap","/docs/more/roadmap","docs/5.more/1.roadmap",{"title":277,"path":278,"stem":279,"children":280,"page":6},"Security","/docs/security","docs/6.security",[281,285],{"title":282,"path":283,"stem":284},"Privacy Policy","/docs/security/privacy-policy","docs/6.security/1.privacy-policy",{"title":286,"path":287,"stem":288},"Terms of Service","/docs/security/terms-of-service","docs/6.security/2.terms-of-service",{"id":290,"title":260,"body":291,"description":713,"extension":714,"links":715,"meta":716,"navigation":468,"path":261,"seo":717,"stem":262,"__hash__":718},"docs_en/docs/4.open-platform/1.authentication.md",{"type":292,"value":293,"toc":700},"minimark",[294,299,352,356,364,447,452,533,537,594,598,604,608,628,631,635,638,656,660,674,678,684,690,696],[295,296,298],"h2",{"id":297},"creating-a-personal-access-token","Creating a Personal Access Token",[300,301,302,310,316,343,346],"ol",{},[303,304,305,306],"li",{},"In Castrel, go to ",[307,308,309],"strong",{},"Settings → Access Tokens",[303,311,312,313],{},"Click ",[307,314,315],{},"Create Token",[303,317,318,319],{},"Fill in:\n",[320,321,322,337],"ul",{},[303,323,324,327,328,332,333,336],{},[307,325,326],{},"Token name",": Choose a descriptive name, e.g., ",[329,330,331],"code",{},"ci-script"," or ",[329,334,335],{},"local-dev"," (1–100 characters)",[303,338,339,342],{},[307,340,341],{},"Expiration",": Choose 30 days, 90 days, 1 year, or Never",[303,344,345],{},"Click confirm",[303,347,348,351],{},[307,349,350],{},"Copy and save the token immediately"," — it won't be shown again after you close the dialog",[295,353,355],{"id":354},"using-a-personal-access-token","Using a Personal Access Token",[357,358,359,360,363],"p",{},"Pass the token as a Bearer token in the ",[329,361,362],{},"Authorization"," header:",[365,366,371],"pre",{"className":367,"code":368,"language":369,"meta":370,"style":370},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl -X POST \"https://\u003Cyour-instance>/personal/v1/knowledge/list\" \\\n  -H \"Authorization: Bearer \u003Cyour-token>\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"page_num\": 1, \"page_size\": 20}'\n","bash","",[329,372,373,403,418,432],{"__ignoreMap":370},[374,375,378,382,386,389,393,396,399],"span",{"class":376,"line":377},"line",1,[374,379,381],{"class":380},"sBMFI","curl",[374,383,385],{"class":384},"sfazB"," -X",[374,387,388],{"class":384}," POST",[374,390,392],{"class":391},"sMK4o"," \"",[374,394,395],{"class":384},"https://\u003Cyour-instance>/personal/v1/knowledge/list",[374,397,398],{"class":391},"\"",[374,400,402],{"class":401},"sTEyZ"," \\\n",[374,404,406,409,411,414,416],{"class":376,"line":405},2,[374,407,408],{"class":384},"  -H",[374,410,392],{"class":391},[374,412,413],{"class":384},"Authorization: Bearer \u003Cyour-token>",[374,415,398],{"class":391},[374,417,402],{"class":401},[374,419,421,423,425,428,430],{"class":376,"line":420},3,[374,422,408],{"class":384},[374,424,392],{"class":391},[374,426,427],{"class":384},"Content-Type: application/json",[374,429,398],{"class":391},[374,431,402],{"class":401},[374,433,435,438,441,444],{"class":376,"line":434},4,[374,436,437],{"class":384},"  -d",[374,439,440],{"class":391}," '",[374,442,443],{"class":384},"{\"page_num\": 1, \"page_size\": 20}",[374,445,446],{"class":391},"'\n",[448,449,451],"h3",{"id":450},"python-example","Python Example",[365,453,457],{"className":454,"code":455,"language":456,"meta":370,"style":370},"language-python shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import requests\n\nheaders = {\n    \"Authorization\": \"Bearer \u003Cyour-token>\",\n    \"Content-Type\": \"application/json\",\n}\n\nresp = requests.post(\n    \"https://\u003Cyour-instance>/personal/v1/knowledge/list\",\n    headers=headers,\n    json={\"page_num\": 1, \"page_size\": 20},\n)\nprint(resp.json())\n","python",[329,458,459,464,470,475,480,486,492,497,503,509,515,521,527],{"__ignoreMap":370},[374,460,461],{"class":376,"line":377},[374,462,463],{},"import requests\n",[374,465,466],{"class":376,"line":405},[374,467,469],{"emptyLinePlaceholder":468},true,"\n",[374,471,472],{"class":376,"line":420},[374,473,474],{},"headers = {\n",[374,476,477],{"class":376,"line":434},[374,478,479],{},"    \"Authorization\": \"Bearer \u003Cyour-token>\",\n",[374,481,483],{"class":376,"line":482},5,[374,484,485],{},"    \"Content-Type\": \"application/json\",\n",[374,487,489],{"class":376,"line":488},6,[374,490,491],{},"}\n",[374,493,495],{"class":376,"line":494},7,[374,496,469],{"emptyLinePlaceholder":468},[374,498,500],{"class":376,"line":499},8,[374,501,502],{},"resp = requests.post(\n",[374,504,506],{"class":376,"line":505},9,[374,507,508],{},"    \"https://\u003Cyour-instance>/personal/v1/knowledge/list\",\n",[374,510,512],{"class":376,"line":511},10,[374,513,514],{},"    headers=headers,\n",[374,516,518],{"class":376,"line":517},11,[374,519,520],{},"    json={\"page_num\": 1, \"page_size\": 20},\n",[374,522,524],{"class":376,"line":523},12,[374,525,526],{},")\n",[374,528,530],{"class":376,"line":529},13,[374,531,532],{},"print(resp.json())\n",[448,534,536],{"id":535},"upsert-knowledge","Upsert Knowledge",[365,538,540],{"className":367,"code":539,"language":369,"meta":370,"style":370},"curl -X POST \"https://\u003Cyour-instance>/personal/v1/knowledge/upsert\" \\\n  -H \"Authorization: Bearer \u003Cyour-token>\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"name\": \"Common Ops Commands\", \"content\": \"## Disk Check\\n```bash\\ndf -h\\n```\"}'\n",[329,541,542,559,571,583],{"__ignoreMap":370},[374,543,544,546,548,550,552,555,557],{"class":376,"line":377},[374,545,381],{"class":380},[374,547,385],{"class":384},[374,549,388],{"class":384},[374,551,392],{"class":391},[374,553,554],{"class":384},"https://\u003Cyour-instance>/personal/v1/knowledge/upsert",[374,556,398],{"class":391},[374,558,402],{"class":401},[374,560,561,563,565,567,569],{"class":376,"line":405},[374,562,408],{"class":384},[374,564,392],{"class":391},[374,566,413],{"class":384},[374,568,398],{"class":391},[374,570,402],{"class":401},[374,572,573,575,577,579,581],{"class":376,"line":420},[374,574,408],{"class":384},[374,576,392],{"class":391},[374,578,427],{"class":384},[374,580,398],{"class":391},[374,582,402],{"class":401},[374,584,585,587,589,592],{"class":376,"line":434},[374,586,437],{"class":384},[374,588,440],{"class":391},[374,590,591],{"class":384},"{\"name\": \"Common Ops Commands\", \"content\": \"## Disk Check\\n```bash\\ndf -h\\n```\"}",[374,593,446],{"class":391},[295,595,597],{"id":596},"managing-tokens","Managing Tokens",[357,599,600,601,603],{},"Go to ",[307,602,309],{}," to view and manage your tokens.",[448,605,607],{"id":606},"revoke","Revoke",[320,609,610,619],{},[303,611,612,615,616,618],{},[307,613,614],{},"Single revoke",": Select ",[307,617,607],{}," from the token's action menu",[303,620,621,624,625],{},[307,622,623],{},"Batch revoke",": Check multiple tokens, then click ",[307,626,627],{},"Revoke Selected",[357,629,630],{},"Revoked tokens stop working immediately. This cannot be undone.",[448,632,634],{"id":633},"rotate","Rotate",[357,636,637],{},"Rotation issues a new token and revokes the old one, keeping the same name and expiration window.",[320,639,640,648],{},[303,641,642,615,645,647],{},[307,643,644],{},"Single rotate",[307,646,634],{}," from the token's action menu, then save the new token",[303,649,650,624,653],{},[307,651,652],{},"Batch rotate",[307,654,655],{},"Rotate Selected",[295,657,659],{"id":658},"security-tips","Security Tips",[320,661,662,665,668,671],{},[303,663,664],{},"Save your token to a password manager or environment variable — it's shown only once",[303,666,667],{},"Never hardcode tokens in source code or commit them to version control",[303,669,670],{},"Rotate long-lived tokens regularly and clean up unused ones",[303,672,673],{},"Revoke immediately if you suspect a token has been exposed",[295,675,677],{"id":676},"faq","FAQ",[357,679,680,683],{},[307,681,682],{},"Can I view a token after creation?"," No — it's shown once. Rotate to get a new one if lost.",[357,685,686,689],{},[307,687,688],{},"What happens when a token expires?"," API requests will return 401. Rotate to renew.",[357,691,692,695],{},[307,693,694],{},"Can a token be used across workspaces?"," No — each token is scoped to the workspace where it was created.",[697,698,699],"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);}",{"title":370,"searchDepth":405,"depth":405,"links":701},[702,703,707,711,712],{"id":297,"depth":405,"text":298},{"id":354,"depth":405,"text":355,"children":704},[705,706],{"id":450,"depth":420,"text":451},{"id":535,"depth":420,"text":536},{"id":596,"depth":405,"text":597,"children":708},[709,710],{"id":606,"depth":420,"text":607},{"id":633,"depth":420,"text":634},{"id":658,"depth":405,"text":659},{"id":676,"depth":405,"text":677},"Authenticate with Castrel APIs using Personal Access Tokens.","md",null,{},{"title":260,"description":713},"tBZUsWcBHUYxZyU4sZrXRlggs0zpd6oDjIWQPjXGMw8",[720,722],{"title":250,"path":251,"stem":252,"description":721,"icon":253,"children":-1},"Connect Castrel to Datadog for logs, metrics, and monitoring.",{"title":264,"path":265,"stem":266,"description":723,"children":-1},"Manage your knowledge base programmatically via PAT-authenticated API endpoints.",1782788089156]