[{"data":1,"prerenderedAt":1702},["ShallowReactive",2],{"docs-page-en-\u002Fdocs\u002Fintegrations\u002Fjira":3,"docs-navigation-en":1603,"docs-surround-en-\u002Fdocs\u002Fintegrations\u002Fjira":1697},{"id":4,"title":5,"body":6,"claimDependencies":1580,"description":12,"extension":1584,"locale":1585,"meta":1586,"missingMedia":1587,"navigation":336,"owner":1591,"path":1592,"reviewStatus":1593,"seo":1594,"staleLinks":1595,"stem":1599,"technicalRisk":1600,"translationKey":1601,"__hash__":1602},"docs_en\u002Fdocs\u002F4.integrations\u002F2.jira.md","Jira Integration",{"type":7,"value":8,"toc":1525},"minimark",[9,13,18,21,40,44,47,75,80,91,95,99,112,144,152,156,166,215,218,222,232,267,271,275,278,304,308,563,567,570,682,686,690,693,720,724,727,757,761,765,776,793,797,800,817,821,824,849,853,856,874,879,890,894,898,901,927,931,934,945,949,952,1011,1015,1019,1025,1031,1051,1055,1060,1064,1078,1082,1087,1091,1113,1117,1122,1126,1140,1144,1148,1174,1178,1204,1207,1233,1237,1257,1261,1265,1268,1294,1298,1301,1309,1313,1316,1321,1330,1335,1344,1348,1352,1366,1370,1373,1399,1402,1416,1420,1423,1437,1441,1449,1452,1484,1488,1491,1521],[10,11,12],"p",{},"Jetscale integrates with Jira to automatically create issues for cost optimization recommendations, enabling seamless tracking through your existing project management workflow.",[14,15,17],"h2",{"id":16},"overview","Overview",[10,19,20],{},"The Jira integration allows Jetscale to:",[22,23,24,28,31,34,37],"ul",{},[25,26,27],"li",{},"Create issues for each cost optimization recommendation",[25,29,30],{},"Include detailed cost impact analysis in issue descriptions",[25,32,33],{},"Link issues to generated Terraform code",[25,35,36],{},"Track implementation status through Jira workflows",[25,38,39],{},"Integrate with your existing sprint planning and ticketing processes",[14,41,43],{"id":42},"prerequisites","Prerequisites",[10,45,46],{},"Before connecting Jira, you'll need:",[48,49,50,57,63,69],"ol",{},[25,51,52,56],{},[53,54,55],"strong",{},"Jira Account"," with project access",[25,58,59,62],{},[53,60,61],{},"Jira Project"," where issues will be created",[25,64,65,68],{},[53,66,67],{},"API Token"," for authentication",[25,70,71,74],{},[53,72,73],{},"Email Address"," associated with your Jira account",[76,77,79],"h3",{"id":78},"supported-jira-versions","Supported Jira Versions",[22,81,82,85,88],{},[25,83,84],{},"Jira Cloud (recommended)",[25,86,87],{},"Jira Data Center",[25,89,90],{},"Jira Server (8.0+)",[14,92,94],{"id":93},"setup-guide","Setup Guide",[76,96,98],{"id":97},"step-1-create-a-jira-api-token","Step 1: Create a Jira API Token",[100,101,102],"blockquote",{},[10,103,104,107,108],{},[53,105,106],{},"Image pending:"," Jira API Token Creation\n",[109,110,111],"em",{},"Screenshot placeholder: Jira API token generation page",[48,113,114,124,130,133,138],{},[25,115,116,117],{},"Navigate to ",[118,119,123],"a",{"href":120,"rel":121},"https:\u002F\u002Fid.atlassian.com\u002Fmanage\u002Fapi-tokens",[122],"nofollow","Atlassian Account Settings",[25,125,126,127],{},"Click ",[53,128,129],{},"Create API token",[25,131,132],{},"Give your token a descriptive label (e.g., \"Jetscale Integration\")",[25,134,126,135],{},[53,136,137],{},"Create",[25,139,140,143],{},[53,141,142],{},"Important",": Copy your token immediately - it won't be shown again",[100,145,146],{},[10,147,148,151],{},[53,149,150],{},"Security Note",": API tokens have the same permissions as your Jira account. Jetscale only uses tokens to create and read issues.",[76,153,155],{"id":154},"step-2-connect-jira-in-jetscale","Step 2: Connect Jira in Jetscale",[100,157,158],{},[10,159,160,162,163],{},[53,161,106],{}," Jira Connection Screen\n",[109,164,165],{},"Screenshot placeholder: Jetscale Jira integration page",[48,167,168,178,183,210],{},[25,169,116,170,173,174,177],{},[53,171,172],{},"Settings"," → ",[53,175,176],{},"Integrations"," in Jetscale",[25,179,126,180],{},[53,181,182],{},"Connect Jira",[25,184,185,186],{},"Enter your configuration:\n",[22,187,188,199,205],{},[25,189,190,193,194,198],{},[53,191,192],{},"Jira Server URL",": Your Jira instance URL (e.g., ",[195,196,197],"code",{},"https:\u002F\u002Fyour-company.atlassian.net",")",[25,200,201,204],{},[53,202,203],{},"Email",": The email address associated with your Jira account",[25,206,207,209],{},[53,208,67],{},": The token you created in Step 1",[25,211,126,212],{},[53,213,214],{},"Verify and Connect",[10,216,217],{},"Jetscale will verify your credentials and display available projects.",[76,219,221],{"id":220},"step-3-configure-project-settings","Step 3: Configure Project Settings",[100,223,224],{},[10,225,226,228,229],{},[53,227,106],{}," Project Selection Screen\n",[109,230,231],{},"Screenshot placeholder: Jira project configuration",[48,233,234,241,248,255,262],{},[25,235,236,237,240],{},"Select your ",[53,238,239],{},"default project"," for cost optimization issues",[25,242,243,244,247],{},"Choose the ",[53,245,246],{},"issue type"," (typically \"Task\" or \"Story\")",[25,249,250,251,254],{},"Set ",[53,252,253],{},"default priority"," (optional)",[25,256,257,258,261],{},"Configure ",[53,259,260],{},"default labels"," (e.g., \"jetscale\", \"cost-optimization\")",[25,263,126,264],{},[53,265,266],{},"Save Settings",[14,268,270],{"id":269},"how-it-works","How It Works",[76,272,274],{"id":273},"issue-creation","Issue Creation",[10,276,277],{},"When you approve a cost optimization recommendation in Jetscale:",[48,279,280,286,292,298],{},[25,281,282,285],{},[53,283,284],{},"Issue Created",": A Jira issue is automatically created in your selected project",[25,287,288,291],{},[53,289,290],{},"Details Populated",": Issue includes cost analysis, performance considerations, and implementation steps",[25,293,294,297],{},[53,295,296],{},"Linking",": Issue includes links to the recommendation in Jetscale and related pull requests (if GitHub is connected)",[25,299,300,303],{},[53,301,302],{},"Labels",": Automatically tagged with configured labels for easy filtering",[76,305,307],{"id":306},"issue-structure","Issue Structure",[309,310,315],"pre",{"className":311,"code":312,"language":313,"meta":314,"style":314},"language-markdown shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","## Summary\nRDS Instance Right-Sizing: production-db (db.r5.2xlarge → db.r5.xlarge)\n\n## Description\n\n### Cost Optimization Recommendation\n\n**Resource**: RDS Instance `production-db`\n**Recommendation**: Downsize from db.r5.2xlarge to db.r5.xlarge\n\n### Cost Impact\n| Metric | Value |\n|--------|-------|\n| Current Monthly Cost | $730.00 |\n| Projected Monthly Cost | $365.00 |\n| **Monthly Savings** | **$365.00 (50%)** |\n| **Annual Savings** | **$4,380.00** |\n\n### Performance Analysis\n- Current CPU utilization: 15-25% average\n- Current memory utilization: 30-40% average\n- Recommended instance provides 2x current peak usage\n- **Risk Level**: Low - No performance degradation expected\n\n### Implementation\n\n**Terraform Code**: [View Pull Request](#)\n\n**Testing Checklist**:\n- [ ] Apply changes in staging environment\n- [ ] Monitor performance metrics for 48 hours\n- [ ] Verify application response times\n- [ ] Confirm CloudWatch alarms are configured\n- [ ] Apply to production\n\n### Resources\n- [View in Jetscale](#)\n- [Terraform PR](#)\n- [AWS RDS Documentation](https:\u002F\u002Fdocs.aws.amazon.com\u002Frds\u002F)\n\n---\nGenerated by [Jetscale](https:\u002F\u002Fjetscale.ai)\n","markdown","",[195,316,317,325,331,338,344,349,355,360,366,372,377,383,389,395,401,407,413,419,424,430,436,442,448,454,459,465,470,476,481,487,493,499,505,511,517,522,528,534,540,546,551,557],{"__ignoreMap":314},[318,319,322],"span",{"class":320,"line":321},"line",1,[318,323,324],{},"## Summary\n",[318,326,328],{"class":320,"line":327},2,[318,329,330],{},"RDS Instance Right-Sizing: production-db (db.r5.2xlarge → db.r5.xlarge)\n",[318,332,334],{"class":320,"line":333},3,[318,335,337],{"emptyLinePlaceholder":336},true,"\n",[318,339,341],{"class":320,"line":340},4,[318,342,343],{},"## Description\n",[318,345,347],{"class":320,"line":346},5,[318,348,337],{"emptyLinePlaceholder":336},[318,350,352],{"class":320,"line":351},6,[318,353,354],{},"### Cost Optimization Recommendation\n",[318,356,358],{"class":320,"line":357},7,[318,359,337],{"emptyLinePlaceholder":336},[318,361,363],{"class":320,"line":362},8,[318,364,365],{},"**Resource**: RDS Instance `production-db`\n",[318,367,369],{"class":320,"line":368},9,[318,370,371],{},"**Recommendation**: Downsize from db.r5.2xlarge to db.r5.xlarge\n",[318,373,375],{"class":320,"line":374},10,[318,376,337],{"emptyLinePlaceholder":336},[318,378,380],{"class":320,"line":379},11,[318,381,382],{},"### Cost Impact\n",[318,384,386],{"class":320,"line":385},12,[318,387,388],{},"| Metric | Value |\n",[318,390,392],{"class":320,"line":391},13,[318,393,394],{},"|--------|-------|\n",[318,396,398],{"class":320,"line":397},14,[318,399,400],{},"| Current Monthly Cost | $730.00 |\n",[318,402,404],{"class":320,"line":403},15,[318,405,406],{},"| Projected Monthly Cost | $365.00 |\n",[318,408,410],{"class":320,"line":409},16,[318,411,412],{},"| **Monthly Savings** | **$365.00 (50%)** |\n",[318,414,416],{"class":320,"line":415},17,[318,417,418],{},"| **Annual Savings** | **$4,380.00** |\n",[318,420,422],{"class":320,"line":421},18,[318,423,337],{"emptyLinePlaceholder":336},[318,425,427],{"class":320,"line":426},19,[318,428,429],{},"### Performance Analysis\n",[318,431,433],{"class":320,"line":432},20,[318,434,435],{},"- Current CPU utilization: 15-25% average\n",[318,437,439],{"class":320,"line":438},21,[318,440,441],{},"- Current memory utilization: 30-40% average\n",[318,443,445],{"class":320,"line":444},22,[318,446,447],{},"- Recommended instance provides 2x current peak usage\n",[318,449,451],{"class":320,"line":450},23,[318,452,453],{},"- **Risk Level**: Low - No performance degradation expected\n",[318,455,457],{"class":320,"line":456},24,[318,458,337],{"emptyLinePlaceholder":336},[318,460,462],{"class":320,"line":461},25,[318,463,464],{},"### Implementation\n",[318,466,468],{"class":320,"line":467},26,[318,469,337],{"emptyLinePlaceholder":336},[318,471,473],{"class":320,"line":472},27,[318,474,475],{},"**Terraform Code**: [View Pull Request](#)\n",[318,477,479],{"class":320,"line":478},28,[318,480,337],{"emptyLinePlaceholder":336},[318,482,484],{"class":320,"line":483},29,[318,485,486],{},"**Testing Checklist**:\n",[318,488,490],{"class":320,"line":489},30,[318,491,492],{},"- [ ] Apply changes in staging environment\n",[318,494,496],{"class":320,"line":495},31,[318,497,498],{},"- [ ] Monitor performance metrics for 48 hours\n",[318,500,502],{"class":320,"line":501},32,[318,503,504],{},"- [ ] Verify application response times\n",[318,506,508],{"class":320,"line":507},33,[318,509,510],{},"- [ ] Confirm CloudWatch alarms are configured\n",[318,512,514],{"class":320,"line":513},34,[318,515,516],{},"- [ ] Apply to production\n",[318,518,520],{"class":320,"line":519},35,[318,521,337],{"emptyLinePlaceholder":336},[318,523,525],{"class":320,"line":524},36,[318,526,527],{},"### Resources\n",[318,529,531],{"class":320,"line":530},37,[318,532,533],{},"- [View in Jetscale](#)\n",[318,535,537],{"class":320,"line":536},38,[318,538,539],{},"- [Terraform PR](#)\n",[318,541,543],{"class":320,"line":542},39,[318,544,545],{},"- [AWS RDS Documentation](https:\u002F\u002Fdocs.aws.amazon.com\u002Frds\u002F)\n",[318,547,549],{"class":320,"line":548},40,[318,550,337],{"emptyLinePlaceholder":336},[318,552,554],{"class":320,"line":553},41,[318,555,556],{},"---\n",[318,558,560],{"class":320,"line":559},42,[318,561,562],{},"Generated by [Jetscale](https:\u002F\u002Fjetscale.ai)\n",[76,564,566],{"id":565},"issue-fields","Issue Fields",[10,568,569],{},"Jetscale populates the following Jira fields:",[571,572,573,589],"table",{},[574,575,576],"thead",{},[577,578,579,583,586],"tr",{},[580,581,582],"th",{},"Field",[580,584,585],{},"Description",[580,587,588],{},"Example",[590,591,592,606,619,632,644,657,669],"tbody",{},[577,593,594,600,603],{},[595,596,597],"td",{},[53,598,599],{},"Project",[595,601,602],{},"Selected project key",[595,604,605],{},"DEVOPS",[577,607,608,613,616],{},[595,609,610],{},[53,611,612],{},"Issue Type",[595,614,615],{},"Configured issue type",[595,617,618],{},"Task, Story",[577,620,621,626,629],{},[595,622,623],{},[53,624,625],{},"Summary",[595,627,628],{},"Brief optimization description",[595,630,631],{},"RDS Right-Sizing: production-db",[577,633,634,638,641],{},[595,635,636],{},[53,637,585],{},[595,639,640],{},"Detailed cost analysis",[595,642,643],{},"Full markdown content",[577,645,646,651,654],{},[595,647,648],{},[53,649,650],{},"Priority",[595,652,653],{},"Configured priority level",[595,655,656],{},"Medium, High",[577,658,659,663,666],{},[595,660,661],{},[53,662,302],{},[595,664,665],{},"Tags for filtering",[595,667,668],{},"jetscale, cost-optimization, rds",[577,670,671,676,679],{},[595,672,673],{},[53,674,675],{},"Assignee",[595,677,678],{},"Optional assignee",[595,680,681],{},"Optional",[14,683,685],{"id":684},"configuration-options","Configuration Options",[76,687,689],{"id":688},"default-settings","Default Settings",[10,691,692],{},"Configure default values for automatically created issues:",[22,694,695,700,705,710,715],{},[25,696,697,699],{},[53,698,599],{},": Which project receives optimization issues",[25,701,702,704],{},[53,703,612],{},": Task, Story, Bug, etc.",[25,706,707,709],{},[53,708,650],{},": Low, Medium, High, etc.",[25,711,712,714],{},[53,713,302],{},": Comma-separated list of labels",[25,716,717,719],{},[53,718,675],{},": Default assignee (optional)",[76,721,723],{"id":722},"per-recommendation-override","Per-Recommendation Override",[10,725,726],{},"When creating an issue from Jetscale, you can override defaults:",[48,728,729,735,752],{},[25,730,126,731,734],{},[53,732,733],{},"Create Jira Issue"," on a recommendation",[25,736,737,738],{},"Modify any field:\n",[22,739,740,743,746,749],{},[25,741,742],{},"Change project",[25,744,745],{},"Adjust priority",[25,747,748],{},"Add custom labels",[25,750,751],{},"Assign to specific team member",[25,753,126,754],{},[53,755,756],{},"Create Issue",[14,758,760],{"id":759},"managing-the-integration","Managing the Integration",[76,762,764],{"id":763},"view-integration-status","View Integration Status",[10,766,767,768,173,770,173,772,775],{},"From ",[53,769,172],{},[53,771,176],{},[53,773,774],{},"Jira",", you can view:",[22,777,778,781,784,787,790],{},[25,779,780],{},"Connected Jira instance URL",[25,782,783],{},"Connected email address",[25,785,786],{},"Default project and issue settings",[25,788,789],{},"Recent issues created by Jetscale",[25,791,792],{},"Last connection verification time",[76,794,796],{"id":795},"test-connection","Test Connection",[10,798,799],{},"To verify your Jira connection is working:",[48,801,802,810,814],{},[25,803,116,804,173,806,173,808],{},[53,805,172],{},[53,807,176],{},[53,809,774],{},[25,811,126,812],{},[53,813,796],{},[25,815,816],{},"Jetscale will attempt to fetch projects and verify API access",[76,818,820],{"id":819},"update-credentials","Update Credentials",[10,822,823],{},"If your API token changes or expires:",[48,825,826,829,837,841,844],{},[25,827,828],{},"Generate a new API token in Jira",[25,830,116,831,173,833,173,835],{},[53,832,172],{},[53,834,176],{},[53,836,774],{},[25,838,126,839],{},[53,840,820],{},[25,842,843],{},"Enter your new API token",[25,845,126,846],{},[53,847,848],{},"Save",[76,850,852],{"id":851},"disconnect-jira","Disconnect Jira",[10,854,855],{},"To remove the Jira integration:",[48,857,858,866,871],{},[25,859,116,860,173,862,173,864],{},[53,861,172],{},[53,863,176],{},[53,865,774],{},[25,867,126,868],{},[53,869,870],{},"Disconnect",[25,872,873],{},"Confirm disconnection",[10,875,876,878],{},[53,877,142],{},": Disconnecting will:",[22,880,881,884,887],{},[25,882,883],{},"Remove your stored API token from Jetscale",[25,885,886],{},"Stop automatic issue creation for new recommendations",[25,888,889],{},"Preserve existing Jira issues (they remain in your Jira project)",[14,891,893],{"id":892},"issue-management","Issue Management",[76,895,897],{"id":896},"tracking-implementation-status","Tracking Implementation Status",[10,899,900],{},"Once issues are created in Jira:",[48,902,903,909,915,921],{},[25,904,905,908],{},[53,906,907],{},"Workflow Integration",": Move issues through your standard workflow (To Do → In Progress → Done)",[25,910,911,914],{},[53,912,913],{},"Sprint Planning",": Add issues to sprints for scheduling",[25,916,917,920],{},[53,918,919],{},"Team Assignment",": Assign to appropriate team members",[25,922,923,926],{},[53,924,925],{},"Status Sync",": Jetscale reads issue status to track implementation progress",[76,928,930],{"id":929},"linking-to-recommendations","Linking to Recommendations",[10,932,933],{},"Each Jira issue includes:",[22,935,936,939,942],{},[25,937,938],{},"Direct link back to the Jetscale recommendation",[25,940,941],{},"Link to associated GitHub pull request (if available)",[25,943,944],{},"Link to AWS\u002FAzure resource in console",[76,946,948],{"id":947},"filtering-jetscale-issues","Filtering Jetscale Issues",[10,950,951],{},"Use JQL queries to filter cost optimization issues:",[309,953,957],{"className":954,"code":955,"language":956,"meta":314,"style":314},"language-jql shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# All Jetscale issues\nlabels = jetscale\n\n# Open cost optimization issues\nlabels = jetscale AND status != Done\n\n# High-priority optimizations\nlabels = jetscale AND priority = High\n\n# RDS-specific optimizations\nlabels in (jetscale, rds)\n","jql",[195,958,959,964,969,973,978,983,987,992,997,1001,1006],{"__ignoreMap":314},[318,960,961],{"class":320,"line":321},[318,962,963],{},"# All Jetscale issues\n",[318,965,966],{"class":320,"line":327},[318,967,968],{},"labels = jetscale\n",[318,970,971],{"class":320,"line":333},[318,972,337],{"emptyLinePlaceholder":336},[318,974,975],{"class":320,"line":340},[318,976,977],{},"# Open cost optimization issues\n",[318,979,980],{"class":320,"line":346},[318,981,982],{},"labels = jetscale AND status != Done\n",[318,984,985],{"class":320,"line":351},[318,986,337],{"emptyLinePlaceholder":336},[318,988,989],{"class":320,"line":357},[318,990,991],{},"# High-priority optimizations\n",[318,993,994],{"class":320,"line":362},[318,995,996],{},"labels = jetscale AND priority = High\n",[318,998,999],{"class":320,"line":368},[318,1000,337],{"emptyLinePlaceholder":336},[318,1002,1003],{"class":320,"line":374},[318,1004,1005],{},"# RDS-specific optimizations\n",[318,1007,1008],{"class":320,"line":379},[318,1009,1010],{},"labels in (jetscale, rds)\n",[14,1012,1014],{"id":1013},"troubleshooting","Troubleshooting",[76,1016,1018],{"id":1017},"connection-failed","Connection Failed",[10,1020,1021,1024],{},[53,1022,1023],{},"Problem",": \"Unable to connect to Jira\" error",[10,1026,1027,1030],{},[53,1028,1029],{},"Solutions",":",[22,1032,1033,1039,1042,1045,1048],{},[25,1034,1035,1036,198],{},"Verify your Jira Server URL is correct (include ",[195,1037,1038],{},"https:\u002F\u002F",[25,1040,1041],{},"Check your email matches your Jira account email",[25,1043,1044],{},"Ensure API token is valid and not expired",[25,1046,1047],{},"Confirm you have access to at least one Jira project",[25,1049,1050],{},"Check if your organization requires IP whitelisting",[76,1052,1054],{"id":1053},"project-not-found","Project Not Found",[10,1056,1057,1059],{},[53,1058,1023],{},": \"Selected project not found\" error",[10,1061,1062,1030],{},[53,1063,1029],{},[22,1065,1066,1069,1072,1075],{},[25,1067,1068],{},"Verify the project exists and hasn't been archived",[25,1070,1071],{},"Confirm you have permission to create issues in the project",[25,1073,1074],{},"Check project key is correct (case-sensitive)",[25,1076,1077],{},"Ensure project hasn't been moved to a different workspace",[76,1079,1081],{"id":1080},"issue-creation-failed","Issue Creation Failed",[10,1083,1084,1086],{},[53,1085,1023],{},": Jira issue wasn't created for recommendation",[10,1088,1089,1030],{},[53,1090,1029],{},[22,1092,1093,1096,1099,1102,1105],{},[25,1094,1095],{},"Check API token hasn't expired",[25,1097,1098],{},"Verify you still have permissions in the project",[25,1100,1101],{},"Confirm issue type exists in the project",[25,1103,1104],{},"Check required custom fields aren't blocking creation",[25,1106,1107,1108],{},"Review Jira's ",[118,1109,1112],{"href":1110,"rel":1111},"https:\u002F\u002Fdeveloper.atlassian.com\u002Fcloud\u002Fjira\u002Fplatform\u002Frate-limiting\u002F",[122],"rate limits",[76,1114,1116],{"id":1115},"missing-custom-fields","Missing Custom Fields",[10,1118,1119,1121],{},[53,1120,1023],{},": Jira requires custom fields that aren't populated",[10,1123,1124,1030],{},[53,1125,1029],{},[22,1127,1128,1131,1134,1137],{},[25,1129,1130],{},"Configure custom field defaults in your Jira project settings",[25,1132,1133],{},"Use Jira automation rules to populate required fields",[25,1135,1136],{},"Contact your Jira administrator to make fields optional",[25,1138,1139],{},"Create a dedicated project for Jetscale with minimal required fields",[14,1141,1143],{"id":1142},"best-practices","Best Practices",[76,1145,1147],{"id":1146},"api-token-management","API Token Management",[22,1149,1150,1156,1162,1168],{},[25,1151,1152,1155],{},[53,1153,1154],{},"Create a dedicated token"," for Jetscale",[25,1157,1158,1161],{},[53,1159,1160],{},"Set token expiration"," according to your security policy",[25,1163,1164,1167],{},[53,1165,1166],{},"Rotate tokens regularly"," (every 90-180 days)",[25,1169,1170,1173],{},[53,1171,1172],{},"Revoke unused tokens"," immediately",[76,1175,1177],{"id":1176},"project-organization","Project Organization",[22,1179,1180,1186,1192,1198],{},[25,1181,1182,1185],{},[53,1183,1184],{},"Create a dedicated project"," for cost optimizations (e.g., \"Cloud Cost Optimization\")",[25,1187,1188,1191],{},[53,1189,1190],{},"Use components"," to categorize by service type (RDS, EC2, EBS)",[25,1193,1194,1197],{},[53,1195,1196],{},"Configure custom workflows"," for optimization approval process",[25,1199,1200,1203],{},[53,1201,1202],{},"Set up automation"," to notify relevant teams",[76,1205,893],{"id":1206},"issue-management-1",[22,1208,1209,1215,1221,1227],{},[25,1210,1211,1214],{},[53,1212,1213],{},"Use labels consistently"," for easy filtering",[25,1216,1217,1220],{},[53,1218,1219],{},"Create dashboards"," to track cost savings",[25,1222,1223,1226],{},[53,1224,1225],{},"Link to parent epics"," for quarterly cost reduction initiatives",[25,1228,1229,1232],{},[53,1230,1231],{},"Add time tracking"," to measure implementation effort",[76,1234,1236],{"id":1235},"integration-with-cicd","Integration with CI\u002FCD",[48,1238,1239,1245,1251],{},[25,1240,1241,1244],{},[53,1242,1243],{},"Link Issues to PRs",": Connect Jira issues to GitHub PRs using issue keys in commit messages",[25,1246,1247,1250],{},[53,1248,1249],{},"Automation Rules",": Transition issues automatically when PRs are merged",[25,1252,1253,1256],{},[53,1254,1255],{},"Status Updates",": Use Jira automation to notify teams when issues are ready for implementation",[14,1258,1260],{"id":1259},"advanced-configuration","Advanced Configuration",[76,1262,1264],{"id":1263},"custom-issue-templates","Custom Issue Templates",[10,1266,1267],{},"Configure Jira issue templates for different resource types:",[22,1269,1270,1276,1282,1288],{},[25,1271,1272,1275],{},[53,1273,1274],{},"RDS Optimizations",": Include database-specific checklist",[25,1277,1278,1281],{},[53,1279,1280],{},"EC2 Right-Sizing",": Add compute validation steps",[25,1283,1284,1287],{},[53,1285,1286],{},"EBS Volume Changes",": Include backup verification",[25,1289,1290,1293],{},[53,1291,1292],{},"ElastiCache Changes",": Add cache warmup procedures",[76,1295,1297],{"id":1296},"jira-automation-rules","Jira Automation Rules",[10,1299,1300],{},"Create automation rules in Jira:",[309,1302,1307],{"className":1303,"code":1305,"language":1306},[1304],"language-text","WHEN: Issue created with label \"jetscale\"\nTHEN:\n- Add to \"Cost Optimization\" epic\n- Assign to CloudOps team\n- Set sprint to next available sprint\n- Notify #cloud-cost Slack channel\n","text",[195,1308,1305],{"__ignoreMap":314},[76,1310,1312],{"id":1311},"jql-saved-filters","JQL Saved Filters",[10,1314,1315],{},"Create saved filters for common queries:",[10,1317,1318,1030],{},[53,1319,1320],{},"High-Value Optimizations",[309,1322,1324],{"className":954,"code":1323,"language":956,"meta":314,"style":314},"project = DEVOPS AND labels = jetscale AND description ~ \"savings > 1000\"\n",[195,1325,1326],{"__ignoreMap":314},[318,1327,1328],{"class":320,"line":321},[318,1329,1323],{},[10,1331,1332,1030],{},[53,1333,1334],{},"Quick Wins",[309,1336,1338],{"className":954,"code":1337,"language":956,"meta":314,"style":314},"project = DEVOPS AND labels = jetscale AND priority = High AND description ~ \"Risk Level: Low\"\n",[195,1339,1340],{"__ignoreMap":314},[318,1341,1342],{"class":320,"line":321},[318,1343,1337],{},[14,1345,1347],{"id":1346},"security-considerations","Security Considerations",[76,1349,1351],{"id":1350},"api-token-security","API Token Security",[22,1353,1354,1357,1360,1363],{},[25,1355,1356],{},"Jetscale encrypts API tokens at rest using AES-256",[25,1358,1359],{},"Tokens are never logged or exposed in API responses",[25,1361,1362],{},"All API calls to Jira use HTTPS with TLS 1.2+",[25,1364,1365],{},"Tokens are stored separately from user data with restricted access",[76,1367,1369],{"id":1368},"permissions","Permissions",[10,1371,1372],{},"Jetscale requires the following Jira permissions:",[22,1374,1375,1381,1387,1393],{},[25,1376,1377,1380],{},[53,1378,1379],{},"Browse Projects",": View project details",[25,1382,1383,1386],{},[53,1384,1385],{},"Create Issues",": Create new issues",[25,1388,1389,1392],{},[53,1390,1391],{},"View Issues",": Read issue details",[25,1394,1395,1398],{},[53,1396,1397],{},"Edit Issues",": Update issue status (optional)",[10,1400,1401],{},"Jetscale cannot:",[22,1403,1404,1407,1410,1413],{},[25,1405,1406],{},"Delete issues",[25,1408,1409],{},"Modify project settings",[25,1411,1412],{},"Access other projects without permission",[25,1414,1415],{},"Export sensitive data",[76,1417,1419],{"id":1418},"audit-trail","Audit Trail",[10,1421,1422],{},"Every action taken by Jetscale is recorded:",[22,1424,1425,1428,1431,1434],{},[25,1426,1427],{},"All Jira API calls are logged",[25,1429,1430],{},"Issue creation is tracked per recommendation",[25,1432,1433],{},"Failed attempts are captured with error details",[25,1435,1436],{},"Audit logs are available in your Jetscale dashboard",[14,1438,1440],{"id":1439},"api-reference","API Reference",[10,1442,1443,1444,1448],{},"For programmatic access to the Jira integration, see our ",[118,1445,1447],{"href":1446},"\u002Fdocs\u002Fapi-reference#jira-integration","API Documentation",".",[10,1450,1451],{},"Key endpoints:",[22,1453,1454,1460,1466,1472,1478],{},[25,1455,1456,1459],{},[195,1457,1458],{},"POST \u002Fapi\u002Fv2\u002Fintegrations\u002Fjira\u002Fme\u002Faction\u002Fconnect"," - Connect Jira account",[25,1461,1462,1465],{},[195,1463,1464],{},"GET \u002Fapi\u002Fv2\u002Fintegrations\u002Fjira\u002Fprojects"," - List accessible projects",[25,1467,1468,1471],{},[195,1469,1470],{},"POST \u002Fapi\u002Fv2\u002Fintegrations\u002Fjira\u002Fissues\u002Faction\u002Fcreate"," - Create issue",[25,1473,1474,1477],{},[195,1475,1476],{},"GET \u002Fapi\u002Fv2\u002Fintegrations\u002Fjira\u002Fissues\u002Ftypes"," - Get issue types",[25,1479,1480,1483],{},[195,1481,1482],{},"GET \u002Fapi\u002Fv2\u002Fintegrations\u002Fjira\u002Fissues\u002Fpriorities"," - Get priorities",[14,1485,1487],{"id":1486},"support","Support",[10,1489,1490],{},"Need help with Jira integration?",[22,1492,1493,1502,1511],{},[25,1494,1495,1497,1498],{},[53,1496,203],{},": ",[118,1499,1501],{"href":1500},"mailto:support@jetscale.ai","support@jetscale.ai",[25,1503,1504,1497,1507],{},[53,1505,1506],{},"Documentation",[118,1508,1510],{"href":1509},"\u002Fdocs\u002Ffaq","FAQ",[25,1512,1513,1497,1516],{},[53,1514,1515],{},"GitHub Issues",[118,1517,1520],{"href":1518,"rel":1519},"https:\u002F\u002Fgithub.com\u002FJetscale-ai\u002Fjetscale-docs\u002Fissues",[122],"Report a problem",[1522,1523,1524],"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);}",{"title":314,"searchDepth":327,"depth":327,"links":1526},[1527,1528,1531,1536,1541,1545,1551,1556,1562,1568,1573,1578,1579],{"id":16,"depth":327,"text":17},{"id":42,"depth":327,"text":43,"children":1529},[1530],{"id":78,"depth":333,"text":79},{"id":93,"depth":327,"text":94,"children":1532},[1533,1534,1535],{"id":97,"depth":333,"text":98},{"id":154,"depth":333,"text":155},{"id":220,"depth":333,"text":221},{"id":269,"depth":327,"text":270,"children":1537},[1538,1539,1540],{"id":273,"depth":333,"text":274},{"id":306,"depth":333,"text":307},{"id":565,"depth":333,"text":566},{"id":684,"depth":327,"text":685,"children":1542},[1543,1544],{"id":688,"depth":333,"text":689},{"id":722,"depth":333,"text":723},{"id":759,"depth":327,"text":760,"children":1546},[1547,1548,1549,1550],{"id":763,"depth":333,"text":764},{"id":795,"depth":333,"text":796},{"id":819,"depth":333,"text":820},{"id":851,"depth":333,"text":852},{"id":892,"depth":327,"text":893,"children":1552},[1553,1554,1555],{"id":896,"depth":333,"text":897},{"id":929,"depth":333,"text":930},{"id":947,"depth":333,"text":948},{"id":1013,"depth":327,"text":1014,"children":1557},[1558,1559,1560,1561],{"id":1017,"depth":333,"text":1018},{"id":1053,"depth":333,"text":1054},{"id":1080,"depth":333,"text":1081},{"id":1115,"depth":333,"text":1116},{"id":1142,"depth":327,"text":1143,"children":1563},[1564,1565,1566,1567],{"id":1146,"depth":333,"text":1147},{"id":1176,"depth":333,"text":1177},{"id":1206,"depth":333,"text":893},{"id":1235,"depth":333,"text":1236},{"id":1259,"depth":327,"text":1260,"children":1569},[1570,1571,1572],{"id":1263,"depth":333,"text":1264},{"id":1296,"depth":333,"text":1297},{"id":1311,"depth":333,"text":1312},{"id":1346,"depth":327,"text":1347,"children":1574},[1575,1576,1577],{"id":1350,"depth":333,"text":1351},{"id":1368,"depth":333,"text":1369},{"id":1418,"depth":333,"text":1419},{"id":1439,"depth":327,"text":1440},{"id":1486,"depth":327,"text":1487},[1581,1582,1583],"integration-authentication","integration-availability","terraform-generation","md","en",{},[1588,1589,1590],"Jira API Token Creation","Jira Connection Screen","Project Selection Screen","Product Integrations","\u002Fdocs\u002Fintegrations\u002Fjira","legacy-import",{"title":5,"description":12},[1596,1597,1598],"View Pull Request","View in Jetscale","Terraform PR","docs\u002F4.integrations\u002F2.jira","high","integrations\u002Fjira","q9nZh3ugrIVpnWGuNk1jo6KNbTBthPDxtEo7XazpKJA",[1604],{"title":1605,"path":1606,"stem":1607,"children":1608},"Docs","\u002Fdocs","docs",[1609,1612,1616,1620,1624,1628,1646,1650,1688,1692,1695],{"title":1610,"path":1606,"stem":1611},"Jetscale Documentation","docs\u002Findex",{"title":1613,"path":1614,"stem":1615},"Getting Started with Jetscale","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started",{"title":1617,"path":1618,"stem":1619},"AWS Setup Guide","\u002Fdocs\u002Faws-setup","docs\u002F2.aws-setup",{"title":1621,"path":1622,"stem":1623},"Azure Setup Guide","\u002Fdocs\u002Fazure-setup","docs\u002F3.azure-setup",{"title":1625,"path":1626,"stem":1627},"How Jetscale Works","\u002Fdocs\u002Fhow-it-works","docs\u002F4.how-it-works",{"title":176,"path":1629,"stem":1630,"children":1631},"\u002Fdocs\u002Fintegrations","docs\u002F4.integrations\u002Findex",[1632,1633,1637,1638,1642],{"title":176,"path":1629,"stem":1630},{"title":1634,"path":1635,"stem":1636},"GitHub Integration","\u002Fdocs\u002Fintegrations\u002Fgithub","docs\u002F4.integrations\u002F1.github",{"title":5,"path":1592,"stem":1599},{"title":1639,"path":1640,"stem":1641},"Slack Integration","\u002Fdocs\u002Fintegrations\u002Fslack","docs\u002F4.integrations\u002F3.slack",{"title":1643,"path":1644,"stem":1645},"Bitbucket Integration","\u002Fdocs\u002Fintegrations\u002Fbitbucket","docs\u002F4.integrations\u002F4.bitbucket",{"title":1647,"path":1648,"stem":1649},"AI-Powered Analysis","\u002Fdocs\u002Fai-analysis","docs\u002F5.ai-analysis",{"title":1651,"path":1652,"stem":1653,"children":1654},"Supported Services","\u002Fdocs\u002Fservices","docs\u002F5.services\u002Findex",[1655,1656,1660,1664,1668,1672,1676,1680,1684],{"title":1651,"path":1652,"stem":1653},{"title":1657,"path":1658,"stem":1659},"EBS Optimization","\u002Fdocs\u002Fservices\u002Febs","docs\u002F5.services\u002F1.ebs",{"title":1661,"path":1662,"stem":1663},"EC2 Optimization","\u002Fdocs\u002Fservices\u002Fec2","docs\u002F5.services\u002F2.ec2",{"title":1665,"path":1666,"stem":1667},"EKS Optimization","\u002Fdocs\u002Fservices\u002Feks","docs\u002F5.services\u002F3.eks",{"title":1669,"path":1670,"stem":1671},"ElastiCache Optimization","\u002Fdocs\u002Fservices\u002Felasticache","docs\u002F5.services\u002F4.elasticache",{"title":1673,"path":1674,"stem":1675},"RDS Optimization","\u002Fdocs\u002Fservices\u002Frds","docs\u002F5.services\u002F5.rds",{"title":1677,"path":1678,"stem":1679},"S3 Optimization","\u002Fdocs\u002Fservices\u002Fs3","docs\u002F5.services\u002F6.s3",{"title":1681,"path":1682,"stem":1683},"Azure SQL Optimization","\u002Fdocs\u002Fservices\u002Fazure-sql","docs\u002F5.services\u002F7.azure-sql",{"title":1685,"path":1686,"stem":1687},"Azure VM Optimization","\u002Fdocs\u002Fservices\u002Fazure-vm","docs\u002F5.services\u002F8.azure-vm",{"title":1689,"path":1690,"stem":1691},"Recommendation Workflow","\u002Fdocs\u002Frecommendation-workflow","docs\u002F6.recommendation-workflow",{"title":1440,"path":1693,"stem":1694},"\u002Fdocs\u002Fapi-reference","docs\u002F7.api-reference",{"title":1510,"path":1509,"stem":1696},"docs\u002F8.faq",[1698,1700],{"title":1634,"path":1635,"stem":1636,"description":1699,"children":-1},"Jetscale integrates with GitHub to automatically create pull requests containing production-ready Terraform code for your cost optimization recommendations.",{"title":1639,"path":1640,"stem":1641,"description":1701,"children":-1},"Jetscale integrates with Slack to deliver real-time cost optimization notifications directly to your team channels, keeping everyone informed about new recommendations,...",1788204004036]