[{"data":1,"prerenderedAt":3128},["ShallowReactive",2],{"navigation":3,"docsData":52,"docs-_docs_legal_terms-of-use":2652,"docs-_docs_legal_terms-of-use-surround":3127},[4],{"title":5,"path":6,"stem":7,"children":8},"Docs","\u002Fdocs","docs",[9,12,30,39],{"title":10,"path":6,"stem":11},"Introduction","docs\u002Findex",{"title":13,"path":14,"stem":15,"children":16,"page":29},"Features","\u002Fdocs\u002Ffeatures","docs\u002F1.features",[17,21,25],{"title":18,"path":19,"stem":20},"Duties","\u002Fdocs\u002Ffeatures\u002Fduties","docs\u002F1.features\u002Fduties",{"title":22,"path":23,"stem":24},"Excuses","\u002Fdocs\u002Ffeatures\u002Fexcuses","docs\u002F1.features\u002Fexcuses",{"title":26,"path":27,"stem":28},"Members Table","\u002Fdocs\u002Ffeatures\u002Fmembers-table","docs\u002F1.features\u002Fmembers-table",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Tutorials","\u002Fdocs\u002Ftutorials","docs\u002F2.tutorials",[35],{"title":36,"path":37,"stem":38},"Setup","\u002Fdocs\u002Ftutorials\u002Fsetup","docs\u002F2.tutorials\u002Fsetup",{"title":40,"path":41,"stem":42,"children":43,"page":29},"Legal","\u002Fdocs\u002Flegal","docs\u002F3.legal",[44,48],{"title":45,"path":46,"stem":47},"Privacy Policy","\u002Fdocs\u002Flegal\u002Fprivacy-policy","docs\u002F3.legal\u002Fprivacy-policy",{"title":49,"path":50,"stem":51},"Terms of Use","\u002Fdocs\u002Flegal\u002Fterms-of-use","docs\u002F3.legal\u002Fterms-of-use",[53,338,536,820,1250,1983,2563],{"id":54,"title":18,"body":55,"description":327,"extension":328,"meta":329,"navigation":331,"path":19,"seo":332,"short":333,"sitemap":334,"stem":20,"__hash__":337},"docs\u002Fdocs\u002F1.features\u002Fduties.md",{"type":56,"value":57,"toc":318},"minimark",[58,62,70,75,99,103,110,183,191,197,203,207,210,256,262,265,271,279,286,290,293,308,311],[59,60,18],"h1",{"id":61},"duties",[63,64,65,66,69],"p",{},"The ",[67,68,18],"strong",{}," feature lets members log their duty shifts directly in Discord. Each duty record stores the date, start time, end time, and automatically calculated duration.",[71,72,74],"h2",{"id":73},"requirements","Requirements",[76,77,78,89,96],"ul",{},[79,80,65,81,83,84,88],"li",{},[67,82,18],{}," feature must be enabled for your team (via ",[85,86,87],"code",{},"\u002Fsetup"," or the Dashboard).",[79,90,91,92,95],{},"You must be an added team member (added by an admin via ",[85,93,94],{},"\u002Fmember add",").",[79,97,98],{},"You must have a folder assigned. Folders are created automatically when a member is added if a forum channel is configured.",[71,100,102],{"id":101},"recording-a-duty","Recording a Duty",[63,104,105,106,109],{},"Use the ",[85,107,108],{},"\u002Fduty"," slash command to open the duty recording modal. You will be prompted to fill in three fields:",[111,112,113,129],"table",{},[114,115,116],"thead",{},[117,118,119,123,126],"tr",{},[120,121,122],"th",{},"Field",[120,124,125],{},"Format",[120,127,128],{},"Example",[130,131,132,150,167],"tbody",{},[117,133,134,140,145],{},[135,136,137],"td",{},[67,138,139],{},"Date of Duty",[135,141,142],{},[85,143,144],{},"D. M. YYYY",[135,146,147],{},[85,148,149],{},"24. 12. 2023",[117,151,152,157,162],{},[135,153,154],{},[67,155,156],{},"Start of Duty",[135,158,159],{},[85,160,161],{},"HH:MM",[135,163,164],{},[85,165,166],{},"13:00",[117,168,169,174,178],{},[135,170,171],{},[67,172,173],{},"End of Duty",[135,175,176],{},[85,177,161],{},[135,179,180],{},[85,181,182],{},"17:00",[63,184,185],{},[186,187],"img",{"alt":188,"src":189,"title":190},"Duty Modal","\u002Fmedia\u002Fdocs\u002Fduty-modal.webp","Duty Modal Input",[63,192,193,194,196],{},"After submitting, the bot calculates the duty duration in hours and posts an embed to your folder channel. If you run ",[85,195,108],{}," from inside your folder, the embed is posted publicly in that thread; otherwise the embed is sent to your folder and you receive a private confirmation with a link to the message.",[198,199,200],"tip",{},[63,201,202],{},"Duties that span midnight are handled correctly — you don't have to worry about recording duty from 22:00 to 02:00, for example.",[71,204,206],{"id":205},"duty-embed","Duty Embed",[63,208,209],{},"The duty embed includes:",[76,211,212,215,222,225],{},[79,213,214],{},"Your display name and avatar",[79,216,217,218,221],{},"Duty number (e.g. ",[85,219,220],{},"Duty #3",")",[79,223,224],{},"Date, start time, end time, and calculated duration in hours",[79,226,227,228],{},"Action buttons:\n",[76,229,230,237,248],{},[79,231,232,233,236],{},"📑 ",[67,234,235],{},"Summary"," — view your overall duty and excuse statistics",[79,238,239,240,243,244],{},"📝 ",[67,241,242],{},"Edit"," ",[245,246,247],"em",{},"(coming soon)",[79,249,250,251,243,254],{},"🗑️ ",[67,252,253],{},"Delete",[245,255,247],{},[63,257,258],{},[186,259],{"alt":206,"src":260,"title":261},"\u002Fmedia\u002Fdocs\u002Fduty-embed.webp","Duty Embed Message Example",[71,263,235],{"id":264},"summary",[63,266,267,268,270],{},"Clicking the 📑 ",[67,269,235],{}," button on any duty or excuse embed shows an ephemeral summary embed with:",[76,272,273,276],{},[79,274,275],{},"Total excuses and excuses in the last 30 days",[79,277,278],{},"Total duties, total hours, and hours logged in the last 30 days",[63,280,281],{},[186,282],{"alt":283,"src":284,"title":285},"Summary Embed","\u002Fmedia\u002Fdocs\u002Fsummary-embed.webp","Summary Embed Example",[71,287,289],{"id":288},"input-validation","Input Validation",[63,291,292],{},"The bot validates input before saving:",[76,294,295,301],{},[79,296,297,298,300],{},"The date must follow the ",[85,299,144],{}," format (dots and spaces).",[79,302,303,304,307],{},"Both the start and end times must contain a ",[85,305,306],{},":"," separator.",[63,309,310],{},"If validation fails, an ephemeral error message is shown with the values you entered.",[312,313,314],"last-update",{},[315,316],"binding",{"value":317},"$doc.sitemap.lastmod",{"title":319,"searchDepth":320,"depth":320,"links":321},"",2,[322,323,324,325,326],{"id":73,"depth":320,"text":74},{"id":101,"depth":320,"text":102},{"id":205,"depth":320,"text":206},{"id":264,"depth":320,"text":235},{"id":288,"depth":320,"text":289},"Learn how DutiesBot's Duties feature works — members log shifts via Discord slash commands with date, start time, and end time, automatically recorded to their folder.","md",{"icon":330},"i-lucide-notebook-pen",true,{"title":18,"description":327},"How to log duty shifts, set their times, and check summaries",{"loc":335,"lastmod":336},"\u002Fdocs\u002Ffeatures\u002Fduties\u002F","2026-02-22","BZP7oNYb4mAsYc7r5YEBoN6wpdlk63Pps8EAkxwE2pA",{"id":339,"title":22,"body":340,"description":528,"extension":328,"meta":529,"navigation":331,"path":23,"seo":531,"short":532,"sitemap":533,"stem":24,"__hash__":535},"docs\u002Fdocs\u002F1.features\u002Fexcuses.md",{"type":56,"value":341,"toc":522},[342,345,350,352,366,370,376,451,458,464,468,471,504,510,512,518],[59,343,22],{"id":344},"excuses",[63,346,65,347,349],{},[67,348,22],{}," feature allows members to submit absence requests directly in Discord. Each excuse record stores the start and end dates along with both an in-character (IC) and an out-of-character (OOC) reason.",[71,351,74],{"id":73},[76,353,354,360,364],{},[79,355,65,356,83,358,88],{},[67,357,22],{},[85,359,87],{},[79,361,91,362,95],{},[85,363,94],{},[79,365,98],{},[71,367,369],{"id":368},"submitting-an-excuse","Submitting an Excuse",[63,371,105,372,375],{},[85,373,374],{},"\u002Fexcuse"," slash command to open the excuse modal. You will be prompted to fill in four fields:",[111,377,378,388],{},[114,379,380],{},[117,381,382,384,386],{},[120,383,122],{},[120,385,125],{},[120,387,128],{},[130,389,390,406,422,437],{},[117,391,392,397,401],{},[135,393,394],{},[67,395,396],{},"Start Date",[135,398,399],{},[85,400,144],{},[135,402,403],{},[85,404,405],{},"1. 7. 2025",[117,407,408,413,417],{},[135,409,410],{},[67,411,412],{},"End Date",[135,414,415],{},[85,416,144],{},[135,418,419],{},[85,420,421],{},"5. 7. 2025",[117,423,424,429,432],{},[135,425,426],{},[67,427,428],{},"IC Reason",[135,430,431],{},"Free text",[135,433,434],{},[85,435,436],{},"On a mission out of the city",[117,438,439,444,446],{},[135,440,441],{},[67,442,443],{},"OOC Reason",[135,445,431],{},[135,447,448],{},[85,449,450],{},"Going on vacation",[63,452,453],{},[186,454],{"alt":455,"src":456,"title":457},"Excuse Modal","\u002Fmedia\u002Fdocs\u002Fexcuse-modal.webp","Excuse Modal Input",[63,459,460,461,463],{},"After submitting, the bot posts an excuse embed to your folder channel. If you run ",[85,462,374],{}," from inside your folder, the embed is posted publicly; otherwise it is sent to your folder and you receive a private confirmation link.",[71,465,467],{"id":466},"excuse-embed","Excuse Embed",[63,469,470],{},"The excuse embed includes:",[76,472,473,475,481,484],{},[79,474,214],{},[79,476,477,478,221],{},"Excuse number (e.g. ",[85,479,480],{},"Excuse #2",[79,482,483],{},"Start date, end date, OOC reason, and IC reason",[79,485,227,486],{},[76,487,488,492,498],{},[79,489,232,490,236],{},[67,491,235],{},[79,493,239,494,243,496],{},[67,495,242],{},[245,497,247],{},[79,499,250,500,243,502],{},[67,501,253],{},[245,503,247],{},[63,505,506],{},[186,507],{"alt":467,"src":508,"title":509},"\u002Fmedia\u002Fdocs\u002Fexcuse-embed.webp","Excuse Embed Message Example",[71,511,289],{"id":288},[63,513,514,515,517],{},"The bot validates that both the start and end dates follow the ",[85,516,144],{}," format (dots and spaces). If the format is incorrect, an ephemeral error message is shown with the values you entered.",[312,519,520],{},[315,521],{"value":317},{"title":319,"searchDepth":320,"depth":320,"links":523},[524,525,526,527],{"id":73,"depth":320,"text":74},{"id":368,"depth":320,"text":369},{"id":466,"depth":320,"text":467},{"id":288,"depth":320,"text":289},"Learn how DutiesBot's Excuses feature lets team members submit absence requests in Discord with IC and OOC reasons, automatically posted to their folder.",{"icon":530},"i-lucide-calendar-fold",{"title":22,"description":528},"Submit and manage absence excuses with dates and reasons",{"loc":534,"lastmod":336},"\u002Fdocs\u002Ffeatures\u002Fexcuses\u002F","yXqQ44k5dQa_LocpPsNvhRcHxNLC7KqFghld61MIk14",{"id":537,"title":26,"body":538,"description":812,"extension":328,"meta":813,"navigation":331,"path":27,"seo":815,"short":816,"sitemap":817,"stem":28,"__hash__":819},"docs\u002Fdocs\u002F1.features\u002Fmembers-table.md",{"type":56,"value":539,"toc":800},[540,543,552,559,561,575,579,584,612,619,624,633,640,647,654,657,673,683,687,693,699,703,709,715,719,725,731,735,741,761,767,771,778,789,796],[59,541,26],{"id":542},"members-table",[63,544,65,545,547,548,551],{},[67,546,26],{}," is the core roster system that tracks who belongs to your team and stores their details, duties, excuses, and other records. Administrators manage members using the ",[85,549,550],{},"\u002Fmember"," command.",[63,553,554],{},[186,555],{"alt":556,"src":557,"title":558},"Members Table Dashboard","\u002Fmedia\u002Fdocs\u002Fdashboard-members.webp","Members Table Dashboard View",[71,560,74],{"id":73},[76,562,563,570],{},[79,564,565,566,569],{},"You must have the ",[67,567,568],{},"Administrator"," Discord permission or be assigned an admin role configured for your team.",[79,571,572,573,95],{},"The bot must be set up on your server (",[85,574,87],{},[71,576,578],{"id":577},"managing-members","Managing Members",[63,580,65,581,583],{},[85,582,550],{}," command takes two options:",[76,585,586,606],{},[79,587,588,591,592,595,596,595,599,602,603],{},[67,589,590],{},"choice"," — the action to perform: ",[85,593,594],{},"add",", ",[85,597,598],{},"edit",[85,600,601],{},"promote",", or ",[85,604,605],{},"kick",[79,607,608,611],{},[67,609,610],{},"member"," — the Discord user to act on",[63,613,614],{},[186,615],{"alt":616,"src":617,"title":618},"Member Command","\u002Fmedia\u002Fdocs\u002Fmember-command.webp","Member Command Options",[620,621,623],"h3",{"id":622},"adding-a-member","Adding a Member",[625,626,631],"pre",{"className":627,"code":629,"language":630},[628],"language-text","\u002Fmember add @user\n","text",[85,632,629],{"__ignoreMap":319},[63,634,635,636,639],{},"Adds a Discord user to the team roster. If your team has ",[67,637,638],{},"member details"," configured, a modal appears asking you to fill them in (e.g. in-game name, rank number, etc.). Up to 5 custom detail fields are supported.",[63,641,642],{},[186,643],{"alt":644,"src":645,"title":646},"Member Add Command","\u002Fmedia\u002Fdocs\u002Fmember-add-command.webp","Add Member Command Example",[63,648,649],{},[186,650],{"alt":651,"src":652,"title":653},"Member Add Modal","\u002Fmedia\u002Fdocs\u002Fmember-add-modal.webp","Add Member Modal Input",[63,655,656],{},"After adding the member:",[76,658,659,666],{},[79,660,661,662,665],{},"If a ",[67,663,664],{},"folders channel"," is configured, a new forum thread (folder) is automatically created for the member.",[79,667,668,669,672],{},"If ",[67,670,671],{},"member roles"," are configured, they are automatically assigned to the user.",[674,675,676],"warning",{},[63,677,678,679,682],{},"There is a ",[67,680,681],{},"maximum member limit"," depending on your plan. If the limit is reached, you will be shown a message with a link to upgrade.",[620,684,686],{"id":685},"editing-a-member","Editing a Member",[625,688,691],{"className":689,"code":690,"language":630},[628],"\u002Fmember edit @user\n",[85,692,690],{"__ignoreMap":319},[63,694,695,696,698],{},"Opens a modal pre-filled with the user's existing custom detail fields so you can update them. Requires ",[67,697,638],{}," to be configured for your team.",[620,700,702],{"id":701},"promoting-a-member","Promoting a Member",[625,704,707],{"className":705,"code":706,"language":630},[628],"\u002Fmember promote @user\n",[85,708,706],{"__ignoreMap":319},[63,710,711,712],{},"Promotes the member to a higher rank. ",[245,713,714],{},"(Full rank management coming soon.)",[620,716,718],{"id":717},"kicking-a-member","Kicking a Member",[625,720,723],{"className":721,"code":722,"language":630},[628],"\u002Fmember kick @user\n",[85,724,722],{"__ignoreMap":319},[63,726,727,728,730],{},"Removes the user from the team roster and strips any configured ",[67,729,671],{}," from them. If the member has a folder, you are offered the choice to delete it or keep it — you have 15 seconds to decide, after which the folder is kept.",[71,732,734],{"id":733},"member-details","Member Details",[63,736,737,740],{},[67,738,739],{},"Member details"," are custom fields that your team can define (e.g. \"In-game name\", \"Badge number\"). They are configured during setup or from the Dashboard. Each detail has:",[76,742,743,749,755],{},[79,744,745,748],{},[67,746,747],{},"Name"," — displayed as the field label",[79,750,751,754],{},[67,752,753],{},"Placeholder"," — shown as example text in the modal",[79,756,757,760],{},[67,758,759],{},"Min \u002F Max length"," — optional input length constraints",[762,763,764],"note",{},[63,765,766],{},"Up to 5 custom details can be configured per team.",[71,768,770],{"id":769},"member-folders","Member Folders",[63,772,773,774,777],{},"Each member can be assigned a ",[67,775,776],{},"folder"," — a forum thread in a designated Discord forum channel. Duties and excuses are automatically posted into this thread. Folders can be created:",[76,779,780,783],{},[79,781,782],{},"Automatically when a member is added (if a folders channel is set)",[79,784,785,786],{},"Manually using ",[85,787,788],{},"\u002Fset folder @user",[63,790,791],{},[186,792],{"alt":793,"src":794,"title":795},"Member Folder","\u002Fmedia\u002Fdocs\u002Ffolder-forum-channel.webp","Member's folder example in a forum channel",[312,797,798],{},[315,799],{"value":317},{"title":319,"searchDepth":320,"depth":320,"links":801},[802,803,810,811],{"id":73,"depth":320,"text":74},{"id":577,"depth":320,"text":578,"children":804},[805,807,808,809],{"id":622,"depth":806,"text":623},3,{"id":685,"depth":806,"text":686},{"id":701,"depth":806,"text":702},{"id":717,"depth":806,"text":718},{"id":733,"depth":320,"text":734},{"id":769,"depth":320,"text":770},"Manage your team roster with DutiesBot's Members Table — add, edit, promote, or remove members using the \u002Fmember command, with support for custom details and ranks.",{"icon":814},"i-lucide-table-2",{"title":26,"description":812},"Manage team roster, roles, folders, details, and other settings",{"loc":818,"lastmod":336},"\u002Fdocs\u002Ffeatures\u002Fmembers-table\u002F","-xFTfA3aaW4Hh45f6bxmznt_jYPsH1I2YWbE4OtVrwQ",{"id":821,"title":36,"body":822,"description":1242,"extension":328,"meta":1243,"navigation":331,"path":37,"seo":1245,"short":1246,"sitemap":1247,"stem":38,"__hash__":1249},"docs\u002Fdocs\u002F2.tutorials\u002Fsetup.md",{"type":56,"value":823,"toc":1227},[824,827,836,1199,1203,1223],[59,825,36],{"id":826},"setup",[63,828,829,830,833,834,551],{},"This guide walks you through setting up DutiesBot on your Discord server for the first time. Setup can be done either via the ",[67,831,832],{},"Dashboard"," or directly in Discord using the ",[85,835,87],{},[837,838,840,844,850,857,860,907,910,914,920,974,977,1006,1010,1020,1040,1044,1050,1133,1137,1150,1154,1159,1163,1174,1178,1181,1185,1188,1193],"steps",{"level":839},"2",[71,841,843],{"id":842},"invite-the-bot","Invite the bot",[845,846,847],"div",{},[848,849],"add-bot",{},[63,851,852,853,856],{},"Invite DutiesBot to your server using the button above.",[854,855],"br",{},"\nWhen prompted, grant all requested permissions so the bot can manage roles, channels, and threads properly.",[63,858,859],{},"The bot requires the following Discord permissions to operate fully:",[76,861,862,865,868,871,874,877,880,883,886,889,892,895,898,901,904],{},[79,863,864],{},"Manage Roles",[79,866,867],{},"Manage Channels",[79,869,870],{},"Kick Members",[79,872,873],{},"Ban Members",[79,875,876],{},"Manage Nicknames",[79,878,879],{},"View Channels",[79,881,882],{},"Send Messages",[79,884,885],{},"Create Public Threads",[79,887,888],{},"Create Private Threads",[79,890,891],{},"Send Messages in Threads",[79,893,894],{},"Manage Messages",[79,896,897],{},"Manage Threads",[79,899,900],{},"Attach Files",[79,902,903],{},"Add Reactions",[79,905,906],{},"Use External Emojis",[71,908,36],{"id":909},"setup-1",[620,911,913],{"id":912},"via-discord","Via Discord",[63,915,916,917,919],{},"Run the ",[85,918,87],{}," command in any channel. A modal will appear asking you to choose a language:",[111,921,922,932],{},[114,923,924],{},[117,925,926,929],{},[120,927,928],{},"Code",[120,930,931],{},"Language",[130,933,934,948,961],{},[117,935,936,941],{},[135,937,938],{},[85,939,940],{},"en",[135,942,943,947],{},[944,945],"icon",{"name":946},"i-twemoji-flag-united-states"," English",[117,949,950,955],{},[135,951,952],{},[85,953,954],{},"cs",[135,956,957,960],{},[944,958],{"name":959},"i-twemoji-flag-czechia"," Czech",[117,962,963,968],{},[135,964,965],{},[85,966,967],{},"hu",[135,969,970,973],{},[944,971],{"name":972},"i-twemoji-flag-hungary"," Hungarian",[63,975,976],{},"After confirming the language, a settings menu appears where you can toggle which features to enable:",[76,978,979,986,992,998],{},[79,980,981,982,985],{},"📂 ",[67,983,984],{},"Folders"," — Dedicated forum threads for each member",[79,987,988,989,991],{},"⌛ ",[67,990,18],{}," — Member work-hour logging",[79,993,994,995,997],{},"🙏 ",[67,996,22],{}," — Member absence requests",[79,999,232,1000,1003,1004],{},[67,1001,1002],{},"Invoices"," — Invoice tracking ",[245,1005,247],{},[620,1007,1009],{"id":1008},"via-dashboard","Via Dashboard",[63,1011,1012,1013,1019],{},"Log in to the ",[1014,1015,832],"a",{"href":1016,"rel":1017},"https:\u002F\u002Fdutiesbot.com\u002Fapp\u002F",[1018],"nofollow"," with your Discord account, select your server, and follow the three-step setup wizard:",[1021,1022,1023,1029,1034],"ol",{},[79,1024,1025,1028],{},[67,1026,1027],{},"Permissions"," — Confirm the bot has the required permissions and re-invite it if needed.",[79,1030,1031,1033],{},[67,1032,13],{}," — Choose which features to enable and configure your forum channel for folders, admin roles, member roles, and the log channel.",[79,1035,1036,1039],{},[67,1037,1038],{},"Finalize"," — Define custom member details and member ranks, then open the Dashboard.",[71,1041,1043],{"id":1042},"configure-roles-and-channels","Configure Roles and Channels",[63,1045,105,1046,1049],{},[85,1047,1048],{},"\u002Fset"," command to configure additional settings after the initial setup:",[111,1051,1052,1062],{},[114,1053,1054],{},[117,1055,1056,1059],{},[120,1057,1058],{},"Subcommand",[120,1060,1061],{},"Description",[130,1063,1064,1080,1097,1114,1124],{},[117,1065,1066,1071],{},[135,1067,1068],{},[85,1069,1070],{},"\u002Fset language \u003Cvalue>",[135,1072,1073,1074,595,1076,595,1078,221],{},"Change the bot language (",[85,1075,940],{},[85,1077,954],{},[85,1079,967],{},[117,1081,1082,1087],{},[135,1083,1084],{},[85,1085,1086],{},"\u002Fset roles \u003Csetting> \u003Crole1> [role2] [role3]",[135,1088,1089,1090,1093,1094],{},"Set ",[85,1091,1092],{},"memberRoles"," or ",[85,1095,1096],{},"adminRoles",[117,1098,1099,1104],{},[135,1100,1101],{},[85,1102,1103],{},"\u002Fset channels \u003Csetting> \u003Cchannel>",[135,1105,1089,1106,1109,1110,1113],{},[85,1107,1108],{},"foldersChannel"," (forum) or ",[85,1111,1112],{},"complexLogChannel"," (text)",[117,1115,1116,1121],{},[135,1117,1118],{},[85,1119,1120],{},"\u002Fset toggles",[135,1122,1123],{},"Enable or disable individual features",[117,1125,1126,1130],{},[135,1127,1128],{},[85,1129,788],{},[135,1131,1132],{},"Manually create a folder for an existing member",[620,1134,1136],{"id":1135},"admin-roles","Admin Roles",[63,1138,1139,1140,1143,1144,1146,1147,1149],{},"Roles listed as ",[67,1141,1142],{},"admin roles"," grant users access to admin-only commands like ",[85,1145,550],{}," and ",[85,1148,1048],{}," without requiring the Discord Administrator permission.",[620,1151,1153],{"id":1152},"member-roles","Member Roles",[63,1155,1139,1156,1158],{},[67,1157,671],{}," are automatically assigned when a user is added as a team member and removed when they are kicked.",[620,1160,1162],{"id":1161},"folders-channel","Folders Channel",[63,1164,1165,1166,1169,1170,1173],{},"A ",[67,1167,1168],{},"Discord Forum channel"," used to create one thread per team member. This channel must be of type ",[85,1171,1172],{},"GuildForum",". Community mode must be enabled on your server to create forum channels.",[620,1175,1177],{"id":1176},"complex-log-channel","Complex Log Channel",[63,1179,1180],{},"A standard text channel where the bot posts log messages for administrative actions.",[71,1182,1184],{"id":1183},"add-members","Add Members",[63,1186,1187],{},"Once set up, add team members using:",[625,1189,1191],{"className":1190,"code":629,"language":630},[628],[85,1192,629],{"__ignoreMap":319},[63,1194,1195,1196,1198],{},"See the ",[1014,1197,26],{"href":27}," documentation for full details.",[71,1200,1202],{"id":1201},"next-steps","Next Steps",[1204,1205,1206,1213,1218],"card-group",{},[1207,1208,1210],"card",{"icon":330,"target":1209,"title":18,"to":19},"_self",[63,1211,1212],{},"Learn how members log duty hours",[1207,1214,1215],{"icon":530,"target":1209,"title":22,"to":23},[63,1216,1217],{},"Learn how members submit absence requests",[1207,1219,1220],{"icon":814,"target":1209,"title":26,"to":27},[63,1221,1222],{},"Learn how to manage your team roster",[312,1224,1225],{},[315,1226],{"value":317},{"title":319,"searchDepth":320,"depth":320,"links":1228},[1229,1230,1234,1240,1241],{"id":842,"depth":320,"text":843},{"id":909,"depth":320,"text":36,"children":1231},[1232,1233],{"id":912,"depth":806,"text":913},{"id":1008,"depth":806,"text":1009},{"id":1042,"depth":320,"text":1043,"children":1235},[1236,1237,1238,1239],{"id":1135,"depth":806,"text":1136},{"id":1152,"depth":806,"text":1153},{"id":1161,"depth":806,"text":1162},{"id":1176,"depth":806,"text":1177},{"id":1183,"depth":320,"text":1184},{"id":1201,"depth":320,"text":1202},"Step-by-step guide to setting up DutiesBot on your Discord server — invite the bot, configure channels, and get started via the Dashboard or \u002Fsetup command.",{"icon":1244},"i-lucide-rocket",{"title":36,"description":1242},"Quickly set up DutiesBot: invite, configure roles and channels, enable features, and get started in minutes",{"loc":1248,"lastmod":336},"\u002Fdocs\u002Ftutorials\u002Fsetup\u002F","t6HncolAxB6QJ0-7NqgN_E5C3iR8GG4MRvzhb7zhY18",{"id":1251,"title":45,"body":1252,"description":1973,"extension":328,"meta":1974,"navigation":331,"path":46,"seo":1977,"short":1978,"sitemap":1979,"stem":47,"__hash__":1982},"docs\u002Fdocs\u002F3.legal\u002Fprivacy-policy.md",{"type":56,"value":1253,"toc":1953},[1254,1263,1266,1294,1307,1310,1314,1394,1396,1399,1445,1448,1451,1560,1562,1565,1574,1576,1579,1597,1600,1626,1628,1631,1636,1653,1656,1658,1661,1665,1704,1708,1731,1735,1740,1756,1759,1761,1764,1770,1784,1786,1789,1798,1800,1803,1817,1831,1834,1836,1839,1850,1852,1855,1866,1874,1877,1879,1882,1891,1894,1914,1926,1928,1931],[63,1255,1256,243,1259],{},[67,1257,1258],{},"Last update:",[315,1260],{"defaultValue":1261,"value":1262},"undefined","$doc.meta.lastUpdate",[59,1264,45],{"id":1265},"privacy-policy",[63,1267,1268,1269,1272,1273,1276,1277,1279,1280,1283,1284,1287,1288,1290,1291,1293],{},"This Privacy Policy describes how ",[67,1270,1271],{},"DutiesBot"," collects, stores,\nand protects your data when you use the ",[67,1274,1275],{},"dutiesbot.com"," website, the Dashboard, or the Bot.",[854,1278],{},"\nBy accessing the ",[67,1281,1282],{},"Website",", using the ",[67,1285,1286],{},"Bot",", or accessing the ",[67,1289,832],{},", you agree to this ",[67,1292,45],{},".",[63,1295,1296,1304,1306],{},[67,1297,1298,1299,1293],{},"If this Privacy Policy is updated, a notice will be posted on our ",[1014,1300,1303],{"href":1301,"rel":1302},"https:\u002F\u002Fdsc.gg\u002FArimDev",[1018],"Discord support server",[854,1305],{},"\nChanges to this Privacy Policy are effective immediately upon posting.",[1308,1309],"hr",{},[620,1311,1313],{"id":1312},"table-of-contents","Table of Contents",[76,1315,1316,1322,1328,1334,1340,1346,1352,1358,1364,1370,1376,1382,1388],{},[79,1317,1318],{},[1014,1319,1321],{"href":1320},"#about-the-project-operator-and-platform","About the Project, Operator, and Platform",[79,1323,1324],{},[1014,1325,1327],{"href":1326},"#definitions","Definitions",[79,1329,1330],{},[1014,1331,1333],{"href":1332},"#access-to-data","Access to Data",[79,1335,1336],{},[1014,1337,1339],{"href":1338},"#where-and-how-data-is-stored","Where and How Data is Stored",[79,1341,1342],{},[1014,1343,1345],{"href":1344},"#whos-data-is-stored","Who's Data is Stored",[79,1347,1348],{},[1014,1349,1351],{"href":1350},"#what-data-is-stored","What Data is Stored",[79,1353,1354],{},[1014,1355,1357],{"href":1356},"#how-we-use-your-data","How We Use Your Data",[79,1359,1360],{},[1014,1361,1363],{"href":1362},"#data-retention","Data Retention",[79,1365,1366],{},[1014,1367,1369],{"href":1368},"#data-deletion--user-rights","Data Deletion & User Rights",[79,1371,1372],{},[1014,1373,1375],{"href":1374},"#age-and-usage-policy","Age and Usage Policy",[79,1377,1378],{},[1014,1379,1381],{"href":1380},"#cookies-and-analytics","Cookies and Analytics",[79,1383,1384],{},[1014,1385,1387],{"href":1386},"#commitment-to-your-privacy","Commitment to Your Privacy",[79,1389,1390],{},[1014,1391,1393],{"href":1392},"#questions","Questions",[1308,1395],{},[71,1397,1321],{"id":1398},"about-the-project-operator-and-platform",[76,1400,1401,1411,1422,1432],{},[79,1402,1403,1405,1406,1408,1409,1293],{},[67,1404,1271],{}," refers to the project as a whole, including both the ",[67,1407,832],{}," and the ",[67,1410,1286],{},[79,1412,1413,1416,1417,1408,1419,1421],{},[67,1414,1415],{},"Application"," refers to DutiesBot as a whole (the ",[67,1418,1286],{},[67,1420,832],{}," together).",[79,1423,1424,1427,1428,1408,1430,1293],{},[67,1425,1426],{},"ArimDev"," is the project and team operating ",[67,1429,1271],{},[67,1431,1282],{},[79,1433,1434,1437,1438,1440,1441],{},[67,1435,1436],{},"Discord"," is a widely known online communication platform for text, voice, and video chat, primarily used for community, gaming, and organizational purposes.",[854,1439],{},"\nOfficial website: ",[1014,1442,1443],{"href":1443,"rel":1444},"https:\u002F\u002Fdiscord.com\u002F",[1018],[71,1446,1327],{"id":1447},"definitions",[63,1449,1450],{},"For the purpose of this Privacy Policy:",[76,1452,1453,1459,1468,1474,1486,1496,1508,1527,1543],{},[79,1454,1455,1458],{},[67,1456,1457],{},"\"Website\""," - all pages on the domain and subdomains of dutiesbot.com, except for the \u002Fapp\u002F path.",[79,1460,1461,1464,1465,1293],{},[67,1462,1463],{},"\"Dashboard\""," - the web application accessible at ",[1014,1466,1016],{"href":1016,"rel":1467},[1018],[79,1469,1470,1473],{},[67,1471,1472],{},"\"Bot\""," - the DutiesBot Discord application (bot), which can be invited to a Discord server.",[79,1475,1476,1479,1480,1483,1484,1293],{},[67,1477,1478],{},"\"Team\""," - a database record created for each Discord server that a ",[67,1481,1482],{},"Client"," adds to the ",[67,1485,1415],{},[79,1487,1488,1491,1492,1495],{},[67,1489,1490],{},"\"Team Admin\""," - any Discord member who has at least one role configured as an admin role in ",[67,1493,1494],{},"Team"," settings by users with Discord Administrator permission.",[79,1497,1498,1501,1502,1504,1505,1507],{},[67,1499,1500],{},"\"Member\""," - any Discord server member who has been explicitly added to the ",[67,1503,832],{}," by a ",[67,1506,1494],{}," admin.",[79,1509,1510,1513,1514,595,1516,602,1518,1520,1521,1523,1524,1293],{},[67,1511,1512],{},"\"User\""," - any natural person or entity accessing or using the ",[67,1515,1282],{},[67,1517,832],{},[67,1519,1286],{},", including but not limited to ",[67,1522,1494],{}," admins and ",[67,1525,1526],{},"Members",[79,1528,1529,1532,1533,1536,1537,1539,1540,1542],{},[67,1530,1531],{},"\"Client\""," - a ",[67,1534,1535],{},"User"," who either (a) authenticates (logs in) to the ",[67,1538,832],{},", or (b) invites the ",[67,1541,1286],{}," to a Discord server where they have administrator permissions.",[79,1544,1545,595,1548,602,1551,1554,1555,1557,1558,1293],{},[67,1546,1547],{},"\"Operator\"",[67,1549,1550],{},"\"we\"",[67,1552,1553],{},"\"us\""," - ",[67,1556,1426],{},", the creator and administrator of ",[67,1559,1271],{},[1308,1561],{},[71,1563,1333],{"id":1564},"access-to-data",[63,1566,1567,1568,1293,1571,1573],{},"Stored data can be accessed only by ",[67,1569,1570],{},"Operators",[854,1572],{},"\nWe do not sell, rent, or share your personal data with third parties for marketing purposes.\nWe only share necessary data with trusted service providers (such as our cloud hosting and database providers)\nstrictly for the purpose of operating the Service, or when required by law or to comply with Terms of Service.",[1308,1575],{},[71,1577,1339],{"id":1578},"where-and-how-data-is-stored",[63,1580,1581,1582,1584,1585,1587,1588,1590,1591,1593,1594,1293],{},"All data is stored securely in a third-party cloud database.",[854,1583],{},"\nNo backups of user data exist outside of this secure cloud infrastructure.",[854,1586],{},"\nThe database is protected against unauthorized external access using industry-standard security measures.",[854,1589],{},"\nHowever, no system is 100% secure, and we cannot guarantee absolute security.",[854,1592],{},"\nIn the unlikely event of a data breach, we will inform affected users via our ",[1014,1595,1303],{"href":1301,"rel":1596},[1018],[63,1598,1599],{},"We implement industry-standard security practices to protect your data, including:",[76,1601,1602,1605,1608,1611,1614,1617,1620,1623],{},[79,1603,1604],{},"Encrypted connections (HTTPS\u002FTLS) for all data in transit",[79,1606,1607],{},"Encryption of sensitive tokens at rest",[79,1609,1610],{},"Session protection using secure cookie settings",[79,1612,1613],{},"OAuth2 state verification to reduce CSRF risk during login",[79,1615,1616],{},"Server-side authorization checks for guild-specific access to Dashboard and Discord API routes",[79,1618,1619],{},"Automatic invalidation of expired or invalid sessions",[79,1621,1622],{},"Role-based access control and audit logs for database access",[79,1624,1625],{},"Regular monitoring for unauthorized access attempts",[1308,1627],{},[71,1629,1345],{"id":1630},"whos-data-is-stored",[63,1632,1633,1635],{},[67,1634,1271],{}," stores data about:",[76,1637,1638,1644,1650],{},[79,1639,1640,1643],{},[67,1641,1642],{},"Clients"," who authenticate to the Dashboard,",[79,1645,1646,1647,1649],{},"Discord ",[67,1648,1526],{}," explicitly added to Team records by Team Admins,",[79,1651,1652],{},"Team configuration records for Discord servers added to the Application.",[63,1654,1655],{},"Data is stored until a valid deletion request is received (see below).",[1308,1657],{},[71,1659,1351],{"id":1660},"what-data-is-stored",[620,1662,1664],{"id":1663},"member-data-discord-server-member-explicitly-added-to-a-team","Member data (Discord server member explicitly added to a Team):",[76,1666,1667,1670,1676,1679,1682,1685,1687,1689,1692,1695,1698,1701],{},[79,1668,1669],{},"Team ID (Discord guild ID reference)",[79,1671,1672,1675],{},[67,1673,1674],{},"Discord user ID"," (the only information from Discord)",[79,1677,1678],{},"Folder ID",[79,1680,1681],{},"Details (custom, as configured by Team admins)",[79,1683,1684],{},"Rank",[79,1686,18],{},[79,1688,22],{},[79,1690,1691],{},"Invoices (if enabled by Team)",[79,1693,1694],{},"Strikes and warnings (if recorded by Team Admins)",[79,1696,1697],{},"Reputation",[79,1699,1700],{},"Rankups",[79,1702,1703],{},"Timestamps for creation and update",[620,1705,1707],{"id":1706},"team-data-database-record-for-discord-server-added-to-the-application","Team data (database record for Discord server added to the Application):",[76,1709,1710,1713,1716,1719,1721,1724,1726,1729],{},[79,1711,1712],{},"Discord server (guild) ID",[79,1714,1715],{},"Server name",[79,1717,1718],{},"Owner ID",[79,1720,13],{},[79,1722,1723],{},"Settings",[79,1725,739],{},[79,1727,1728],{},"Member ranks",[79,1730,1703],{},[620,1732,1734],{"id":1733},"session-data-when-you-log-in-to-the-dashboard","Session data (when you log in to the Dashboard):",[63,1736,1737],{},[245,1738,1739],{},"(session record is automatically removed after up to 7 days)",[76,1741,1742,1745,1747,1750,1753],{},[79,1743,1744],{},"Session ID",[79,1746,1674],{},[79,1748,1749],{},"Encrypted Discord OAuth2 access token",[79,1751,1752],{},"Token type, expiration date",[79,1754,1755],{},"Session creation date",[63,1757,1758],{},"We also use temporary, strictly necessary cookies required for the bot setup process\n(e.g., temporarily storing guild IDs and required permissions during the OAuth2 authorization flow).",[1308,1760],{},[71,1762,1357],{"id":1763},"how-we-use-your-data",[63,1765,1766,1767,1769],{},"We use the collected data exclusively to provide and improve the functionality of the ",[67,1768,1271],{}," Service. This includes:",[76,1771,1772,1775,1778,1781],{},[79,1773,1774],{},"Authenticating users on the Dashboard via Discord OAuth2.",[79,1776,1777],{},"Operating the bot's features (such as managing duties, excuses, folders, and rankups).",[79,1779,1780],{},"Customizing the bot's behavior according to the Team Admins' configurations.",[79,1782,1783],{},"Analyzing usage via Google Analytics to improve the user experience on the Website.",[1308,1785],{},[71,1787,1363],{"id":1788},"data-retention",[63,1790,1791,1792,1794,1795,1797],{},"We retain personal data for as long as it is necessary to provide the Service, or until you request deletion of your data.",[854,1793],{},"\nSession records are automatically deleted after up to 7 days and may be invalidated earlier when OAuth session validity expires.",[854,1796],{},"\nData will only be deleted upon verified user request or if the DutiesBot project is discontinued.",[1308,1799],{},[71,1801,1369],{"id":1802},"data-deletion-user-rights",[63,1804,1805,1806,595,1808,1146,1810,1813,1814,1816],{},"Any ",[67,1807,1535],{},[67,1809,1482],{},[67,1811,1812],{},"Member"," can request deletion of their data at any time.",[854,1815],{},"\nTo request deletion, contact us via:",[76,1818,1819,1824],{},[79,1820,1821],{},[1014,1822,1303],{"href":1301,"rel":1823},[1018],[79,1825,1826,1827],{},"or E-mail: ",[1014,1828,1830],{"href":1829},"mailto:help@arim.dev","help@arim.dev",[63,1832,1833],{},"After verifying your identity and ownership, we will delete your data within a reasonable timeframe.",[1308,1835],{},[71,1837,1375],{"id":1838},"age-and-usage-policy",[63,1840,1841,1842,1293,1847,1849],{},"DutiesBot is not intended for use by persons prohibited under ",[1014,1843,1846],{"href":1844,"rel":1845},"https:\u002F\u002Fdiscord.com\u002Fterms",[1018],"Discord's Terms of Service",[854,1848],{},"\nWe do not knowingly store data of users who are not permitted to use Discord. If such a case is discovered, the data will be deleted.",[1308,1851],{},[71,1853,1381],{"id":1854},"cookies-and-analytics",[63,1856,65,1857,1146,1859,1861,1862,1865],{},[67,1858,1282],{},[67,1860,832],{}," use ",[67,1863,1864],{},"Google Analytics"," to track anonymized usage.",[76,1867,1868,1871],{},[79,1869,1870],{},"If you accept cookies, anonymized analytics data is collected and stored by Google according to their own Privacy Policy.",[79,1872,1873],{},"If you deny cookies, your decision is stored in your browser's localStorage and no analytics are collected.",[63,1875,1876],{},"These cookies are not used for advertising or profiling.",[1308,1878],{},[71,1880,1387],{"id":1881},"commitment-to-your-privacy",[63,1883,1884,1885,1887,1890],{},"We are committed to respecting your rights and privacy.",[854,1886],{},[67,1888,1889],{},"We do not share, sell, or disclose your data to any third parties"," except as required by law or for service maintenance and security.",[63,1892,1893],{},"If you are located in the European Union, you are entitled to the following rights under the General Data Protection Regulation (GDPR):",[76,1895,1896,1899,1902,1905,1908,1911],{},[79,1897,1898],{},"The right to access - You have the right to request copies of your personal data.",[79,1900,1901],{},"The right to rectification - You have the right to request correction of inaccurate or incomplete information.",[79,1903,1904],{},"The right to erasure - You have the right to request that we delete your personal data, subject to service functionality.",[79,1906,1907],{},"The right to restrict processing - You have the right to request that we limit the processing of your personal data.",[79,1909,1910],{},"The right to data portability - You have the right to request a copy of your personal data in a commonly used electronic format.",[79,1912,1913],{},"The right to object - You have the right to object to the processing of your personal data where it is based on our legitimate interests.",[63,1915,1916,1917,1919,1920,1293,1923,1925],{},"To exercise any of these rights, please contact us at ",[1014,1918,1830],{"href":1829}," or via our ",[1014,1921,1303],{"href":1301,"rel":1922},[1018],[854,1924],{},"\nWe may request verification of your identity before fulfilling your request.",[1308,1927],{},[71,1929,1393],{"id":1930},"questions",[63,1932,1933,1934,595,1936,595,1938,1940,1941,1943,1944,1946,1947,1949,1950,1293],{},"If you have any questions about the ",[67,1935,1286],{},[67,1937,832],{},[67,1939,1282],{},", or this ",[67,1942,45],{},",\nfeel free to contact us via the ",[67,1945,1282],{}," contact page,\n",[1014,1948,1830],{"href":1829},", or our ",[1014,1951,1303],{"href":1301,"rel":1952},[1018],{"title":319,"searchDepth":320,"depth":320,"links":1954},[1955,1956,1957,1958,1959,1960,1961,1966,1967,1968,1969,1970,1971,1972],{"id":1312,"depth":806,"text":1313},{"id":1398,"depth":320,"text":1321},{"id":1447,"depth":320,"text":1327},{"id":1564,"depth":320,"text":1333},{"id":1578,"depth":320,"text":1339},{"id":1630,"depth":320,"text":1345},{"id":1660,"depth":320,"text":1351,"children":1962},[1963,1964,1965],{"id":1663,"depth":806,"text":1664},{"id":1706,"depth":806,"text":1707},{"id":1733,"depth":806,"text":1734},{"id":1763,"depth":320,"text":1357},{"id":1788,"depth":320,"text":1363},{"id":1802,"depth":320,"text":1369},{"id":1838,"depth":320,"text":1375},{"id":1854,"depth":320,"text":1381},{"id":1881,"depth":320,"text":1387},{"id":1930,"depth":320,"text":1393},"Read the DutiesBot Privacy Policy to understand how we collect, use, and protect your personal data.",{"icon":1975,"lastUpdate":1976},"i-lucide-shield-check","April 9, 2026",{"title":45,"description":1973},"How we collect, use, and protect your personal data",{"loc":1980,"lastmod":1981},"\u002Fdocs\u002Flegal\u002Fprivacy-policy\u002F","2026-04-09","oFoxGgchJdMWrwcsXzvgBZ-t08sopmSqgevLBBvy3fU",{"id":1984,"title":49,"body":1985,"description":2555,"extension":328,"meta":2556,"navigation":331,"path":50,"seo":2558,"short":2559,"sitemap":2560,"stem":51,"__hash__":2562},"docs\u002Fdocs\u002F3.legal\u002Fterms-of-use.md",{"type":56,"value":1986,"toc":2540},[1987,1993,1996,2030,2041,2043,2045,2113,2115,2117,2152,2154,2159,2234,2236,2239,2259,2281,2283,2286,2302,2304,2307,2319,2338,2340,2343,2348,2350,2353,2366,2368,2371,2412,2414,2417,2435,2450,2455,2482,2484,2487,2499,2505,2507,2510,2519,2521,2523],[63,1988,1989,243,1991],{},[67,1990,1258],{},[315,1992],{"defaultValue":1261,"value":1262},[59,1994,49],{"id":1995},"terms-of-use",[63,1997,1998,1999,2001,2002,2004,2005,1279,2007,1283,2009,1287,2011,2013,2014,1293,2017,2019,2020,2022,2023,595,2025,602,2027,2029],{},"These Terms of Use (\"Terms\") establish the rules and conditions that govern your use of ",[67,2000,1271],{},", which includes the ",[67,2003,1275],{}," website (\"Website\"), the Dashboard, and the Bot.",[854,2006],{},[67,2008,1282],{},[67,2010,1286],{},[67,2012,832],{},", you agree to these ",[67,2015,2016],{},"Terms",[854,2018],{},"\nYou agree that you are responsible for compliance with any applicable local laws.",[854,2021],{},"\nYou are prohibited from using or accessing the ",[67,2024,1282],{},[67,2026,1286],{},[67,2028,832],{}," if you do not agree with any of these terms.",[63,2031,2032,2038,2040],{},[67,2033,2034,2035,1293],{},"If these Terms are updated, a notice will be posted on our ",[1014,2036,1303],{"href":1301,"rel":2037},[1018],[854,2039],{},"\nChanges to these Terms are effective immediately upon posting.",[1308,2042],{},[620,2044,1313],{"id":1312},[76,2046,2047,2051,2055,2061,2067,2073,2079,2085,2091,2097,2103,2109],{},[79,2048,2049],{},[1014,2050,1321],{"href":1320},[79,2052,2053],{},[1014,2054,1327],{"href":1326},[79,2056,2057],{},[1014,2058,2060],{"href":2059},"#correct-usage-of-the-service","Correct usage of the Service",[79,2062,2063],{},[1014,2064,2066],{"href":2065},"#user-responsibilities-and-content","User Responsibilities and Content",[79,2068,2069],{},[1014,2070,2072],{"href":2071},"#premium-subscriptions-and-payments","Premium Subscriptions and Payments",[79,2074,2075],{},[1014,2076,2078],{"href":2077},"#privacy-notice","Privacy Notice",[79,2080,2081],{},[1014,2082,2084],{"href":2083},"#links-to-other-websites","Links to other websites",[79,2086,2087],{},[1014,2088,2090],{"href":2089},"#errors-inaccuracies-and-availability","Errors, inaccuracies, and availability",[79,2092,2093],{},[1014,2094,2096],{"href":2095},"#disclaimer-and-limitation-of-liability","Disclaimer and Limitation of Liability",[79,2098,2099],{},[1014,2100,2102],{"href":2101},"#termination","Termination",[79,2104,2105],{},[1014,2106,2108],{"href":2107},"#governing-law-and-jurisdiction","Governing Law and Jurisdiction",[79,2110,2111],{},[1014,2112,1393],{"href":1392},[1308,2114],{},[71,2116,1321],{"id":1398},[76,2118,2119,2127,2135,2143],{},[79,2120,2121,1405,2123,1408,2125,1293],{},[67,2122,1271],{},[67,2124,832],{},[67,2126,1286],{},[79,2128,2129,1416,2131,1408,2133,1421],{},[67,2130,1415],{},[67,2132,1286],{},[67,2134,832],{},[79,2136,2137,1427,2139,1408,2141,1293],{},[67,2138,1426],{},[67,2140,1271],{},[67,2142,1282],{},[79,2144,2145,1437,2147,1440,2149],{},[67,2146,1436],{},[854,2148],{},[1014,2150,1443],{"href":1443,"rel":2151},[1018],[71,2153,1327],{"id":1447},[63,2155,2156,2157,306],{},"For the purpose of these ",[67,2158,2016],{},[76,2160,2161,2165,2172,2176,2184,2190,2198,2212,2222],{},[79,2162,2163,1458],{},[67,2164,1457],{},[79,2166,2167,1464,2169,1293],{},[67,2168,1463],{},[1014,2170,1016],{"href":1016,"rel":2171},[1018],[79,2173,2174,1473],{},[67,2175,1472],{},[79,2177,2178,1479,2180,1483,2182,1293],{},[67,2179,1478],{},[67,2181,1482],{},[67,2183,1415],{},[79,2185,2186,1491,2188,1495],{},[67,2187,1490],{},[67,2189,1494],{},[79,2191,2192,1501,2194,1504,2196,1507],{},[67,2193,1500],{},[67,2195,832],{},[67,2197,1494],{},[79,2199,2200,1513,2202,595,2204,602,2206,1520,2208,1523,2210,1293],{},[67,2201,1512],{},[67,2203,1282],{},[67,2205,832],{},[67,2207,1286],{},[67,2209,1494],{},[67,2211,1526],{},[79,2213,2214,1532,2216,1536,2218,1539,2220,1542],{},[67,2215,1531],{},[67,2217,1535],{},[67,2219,832],{},[67,2221,1286],{},[79,2223,2224,595,2226,602,2228,1554,2230,1557,2232,1293],{},[67,2225,1547],{},[67,2227,1550],{},[67,2229,1553],{},[67,2231,1426],{},[67,2233,1271],{},[1308,2235],{},[71,2237,2060],{"id":2238},"correct-usage-of-the-service",[63,2240,2241,2242,2245,2246,1146,2252,1293],{},"By using the ",[67,2243,2244],{},"Service",", you also agree to be bound by the ",[67,2247,2248],{},[1014,2249,2251],{"href":1844,"rel":2250},[1018],"Discord Terms of Service",[67,2253,2254],{},[1014,2255,2258],{"href":2256,"rel":2257},"https:\u002F\u002Fdiscord.com\u002Fguidelines",[1018],"Discord Community Guidelines",[63,2260,2261,2262,1093,2264,2266,2267,2269,2270,1093,2272,2274,2275,2277,2278,2280],{},"Do not use the ",[67,2263,1286],{},[67,2265,832],{}," for threatening or harming other users.",[854,2268],{},"\nDo not use the ",[67,2271,1286],{},[67,2273,832],{}," to spam or share NSFW content.",[854,2276],{},"\nDo not exploit found bugs to harm other users. Instead, please report them on the ",[67,2279,1282],{}," contact page or our Discord support server.",[1308,2282],{},[71,2284,2066],{"id":2285},"user-responsibilities-and-content",[63,2287,2288,2291,2292,1093,2294,1293,2296,2298,2299,2301],{},[67,2289,2290],{},"Team Admins"," are fully responsible for the data, text, and configurations (including member details, ranks, duties, invoices, strikes, and warnings) they input into the ",[67,2293,832],{},[67,2295,1286],{},[854,2297],{},"\nYou agree not to store any highly sensitive personal information (such as financial information, government-issued IDs, or medical records) using the Service. ",[67,2300,1426],{}," assumes no liability for the user-generated content inputted by Team Admins or Members.",[1308,2303],{},[71,2305,2072],{"id":2306},"premium-subscriptions-and-payments",[63,2308,2309,2311,2312,2314,2315,2318],{},[67,2310,1271],{}," offers premium subscription plans (e.g., Professional, Enterprise) that unlock additional features.",[854,2313],{},"\nAll subscriptions and payments are handled exclusively through the ",[67,2316,2317],{},"Discord application"," and its native monetization system.",[76,2320,2321,2326,2332],{},[79,2322,2323,2325],{},[67,2324,1426],{}," does not directly process, store, or manage your payment information (such as credit card details).",[79,2327,2328,2329,2331],{},"Cancellations, renewals, and refunds are governed entirely by ",[67,2330,1846],{}," and refund policies.",[79,2333,2334,2335,2337],{},"In the event of a bot outage or service termination, you are not entitled to any compensation or refund from ",[67,2336,1426],{},", unless explicitly required by applicable law or Discord's policies.",[1308,2339],{},[71,2341,2078],{"id":2342},"privacy-notice",[63,2344,2345,2346,1293],{},"For information about how we collect, process, and protect your personal data, please see our ",[1014,2347,45],{"href":1980},[1308,2349],{},[71,2351,2084],{"id":2352},"links-to-other-websites",[63,2354,65,2355,595,2357,2359,2360,2362,2363,2365],{},[67,2356,1282],{},[67,2358,1286],{},", and ",[67,2361,832],{}," may contain links to third-party websites or services not owned or controlled by ",[67,2364,1426],{},". Use of any such linked website is at the user's own risk.",[1308,2367],{},[71,2369,2090],{"id":2370},"errors-inaccuracies-and-availability",[63,2372,2373,2374,595,2376,2359,2378,1293,2380,2382,2383,595,2385,602,2387,2389,2390,2392,2393,2395,2396,595,2398,602,2400,2402,2403,1293,2405,2407],{},"We are constantly updating our ",[67,2375,1282],{},[67,2377,1286],{},[67,2379,832],{},[854,2381],{},"\nThe information provided may contain errors or inaccuracies and may not be complete or current. We cannot guarantee the accuracy or completeness of any information found on the ",[67,2384,1282],{},[67,2386,1286],{},[67,2388,832],{},". Therefore, we reserve the right to change or update information and correct errors, inaccuracies, or omissions at any time without prior notice.",[854,2391],{},"\nWe may revise these ",[67,2394,2016],{}," at any time without notice. By using the ",[67,2397,1282],{},[67,2399,1286],{},[67,2401,832],{},", you are agreeing to be bound by the then current version of these ",[67,2404,2016],{},[854,2406],{},[67,2408,2034,2409,1293],{},[1014,2410,1303],{"href":1301,"rel":2411},[1018],[1308,2413],{},[71,2415,2096],{"id":2416},"disclaimer-and-limitation-of-liability",[63,2418,2419,2420,595,2422,2359,2424,2426,2427,2430,2431,2434],{},"Your use of the ",[67,2421,1282],{},[67,2423,1286],{},[67,2425,832],{}," is at your sole risk. All services are provided on an \"",[67,2428,2429],{},"AS IS","\" and \"",[67,2432,2433],{},"AS AVAILABLE","\" basis, without warranties of any kind, whether express or implied, including, but not limited to, implied warranties of merchantability, fitness for a particular purpose, non-infringement, or course of performance.",[63,2436,2437,2439,2440,595,2442,602,2444,2446,2447,2449],{},[67,2438,1426],{}," shall not be liable for any direct, indirect, incidental, special, consequential, or exemplary damages arising from the use of or inability to use the ",[67,2441,1282],{},[67,2443,1286],{},[67,2445,832],{},", even if ",[67,2448,1426],{}," has been advised of the possibility of such damages.",[63,2451,2452,2454],{},[67,2453,1426],{}," does not warrant that:",[76,2456,2457,2464,2471,2474],{},[79,2458,65,2459,1093,2461,2463],{},[67,2460,1286],{},[67,2462,832],{}," will function uninterrupted, securely, or be available at any particular time or location",[79,2465,65,2466,1093,2468,2470],{},[67,2467,1286],{},[67,2469,832],{}," is free of viruses or other harmful components",[79,2472,2473],{},"Any errors or defects will be corrected",[79,2475,2476,2477,1093,2479,2481],{},"The results of using the ",[67,2478,1286],{},[67,2480,832],{}," will meet your requirements",[1308,2483],{},[71,2485,2102],{"id":2486},"termination",[63,2488,2489,2490,595,2492,602,2494,2496,2497,1293],{},"We may terminate or suspend your access to the ",[67,2491,1286],{},[67,2493,832],{},[67,2495,1282],{}," immediately, without prior notice or liability, under our sole discretion, for any reason whatsoever and without limitation, including but not limited to a breach of these ",[67,2498,2016],{},[63,2500,2501,2502,2504],{},"In the event of such termination or suspension due to a violation of these ",[67,2503,2016],{},", you are not entitled to any compensation, refund, or other form of reimbursement.",[1308,2506],{},[71,2508,2108],{"id":2509},"governing-law-and-jurisdiction",[63,2511,2512,2513,2515,2516,2518],{},"These Terms shall be governed by and construed in accordance with the laws of the European Union and, where applicable, the laws of the Czech Republic.",[854,2514],{},"\nAny disputes arising out of or relating to the use of the Website, Bot, or Dashboard shall be subject to the exclusive jurisdiction of the courts of the Czech Republic.",[854,2517],{},"\nIf you are accessing the Service from outside the European Union, you are responsible for ensuring compliance with your local laws.",[1308,2520],{},[71,2522,1393],{"id":1930},[63,2524,1933,2525,595,2527,595,2529,2531,2532,2534,2535,2537,2538,1293],{},[67,2526,1286],{},[67,2528,832],{},[67,2530,1282],{},", or these ",[67,2533,2016],{},", feel free to contact us via the ",[67,2536,1282],{}," contact page or at ",[1014,2539,1830],{"href":1829},{"title":319,"searchDepth":320,"depth":320,"links":2541},[2542,2543,2544,2545,2546,2547,2548,2549,2550,2551,2552,2553,2554],{"id":1312,"depth":806,"text":1313},{"id":1398,"depth":320,"text":1321},{"id":1447,"depth":320,"text":1327},{"id":2238,"depth":320,"text":2060},{"id":2285,"depth":320,"text":2066},{"id":2306,"depth":320,"text":2072},{"id":2342,"depth":320,"text":2078},{"id":2352,"depth":320,"text":2084},{"id":2370,"depth":320,"text":2090},{"id":2416,"depth":320,"text":2096},{"id":2486,"depth":320,"text":2102},{"id":2509,"depth":320,"text":2108},{"id":1930,"depth":320,"text":1393},"Review the DutiesBot Terms of Use — the rules and conditions that govern your use of our Discord bot and dashboard services.",{"icon":2557,"lastUpdate":1976},"i-lucide-book-check",{"title":49,"description":2555},"Rules, responsibility, and legal terms for using the service",{"loc":2561,"lastmod":1981},"\u002Fdocs\u002Flegal\u002Fterms-of-use\u002F","hpUON8pc1YhhRvX8T9gPsC1ujihmstFOB-5UIv954-U",{"id":2564,"title":10,"body":2565,"description":2644,"extension":328,"meta":2645,"navigation":331,"path":6,"seo":2647,"short":2648,"sitemap":2649,"stem":11,"__hash__":2651},"docs\u002Fdocs\u002Findex.md",{"type":56,"value":2566,"toc":2639},[2567,2570,2576,2581,2585,2616,2620,2628,2632],[59,2568,10],{"id":2569},"introduction",[63,2571,2572,2573,2575],{},"Welcome to the ",[67,2574,1271],{}," documentation!",[63,2577,2578,2580],{},[67,2579,1271],{}," is a Discord bot designed to help teams track member activity. It enables team administrators to manage members, record duties (work hours), submit excuses for absences, and view activity summaries — all from within Discord and the web Dashboard.",[71,2582,2584],{"id":2583},"what-can-dutiesbot-do","What can DutiesBot do?",[76,2586,2587,2594,2601,2608],{},[79,2588,2589,2593],{},[67,2590,2591],{},[1014,2592,18],{"href":19}," — Members can log their duty shifts by specifying a date, start time, and end time. The bot automatically calculates the duration and posts a record to the member's folder.",[79,2595,2596,2600],{},[67,2597,2598],{},[1014,2599,22],{"href":23}," — Members can submit excuses for planned or unplanned absences, including both in-character (IC) and out-of-character (OOC) reasons.",[79,2602,2603,2607],{},[67,2604,2605],{},[1014,2606,26],{"href":27}," — Administrators can add, edit, promote, or remove members from the team roster, with support for custom member details and ranks.",[79,2609,2610,2615],{},[67,2611,2612],{},[1014,2613,984],{"href":2614},"\u002Fdocs\u002Ffeatures\u002Fduties#folders"," — Each member can have a dedicated Discord forum thread (folder) where their duties and excuses are automatically posted.",[71,2617,2619],{"id":2618},"getting-started","Getting Started",[63,2621,2622,2623,1293],{},"To get DutiesBot running on your server, follow the ",[67,2624,2625],{},[1014,2626,2627],{"href":37},"Setup guide",[71,2629,2631],{"id":2630},"support","Support",[63,2633,2634,2635,1293],{},"If you have questions or need help, join the ",[1014,2636,2638],{"href":1301,"rel":2637},[1018],"ArimDev Discord server",{"title":319,"searchDepth":320,"depth":320,"links":2640},[2641,2642,2643],{"id":2583,"depth":320,"text":2584},{"id":2618,"depth":320,"text":2619},{"id":2630,"depth":320,"text":2631},"Welcome to the DutiesBot documentation. Learn how to set up and use DutiesBot to track duties, manage members, and submit excuses in your Discord community.",{"icon":2646},"i-lucide-home",{"title":10,"description":2644},"Overview of DutiesBot features, setup, and documentation",{"loc":2650},"\u002Fdocs\u002F","gcmPxsdHnP9GvOGzQzZOaArlobBRg4HQRkiEr1kCd4o",{"id":1984,"title":49,"body":2653,"description":2555,"extension":328,"meta":3124,"navigation":331,"path":50,"seo":3125,"short":2559,"sitemap":3126,"stem":51,"__hash__":2562},{"type":56,"value":2654,"toc":3109},[2655,2661,2663,2689,2698,2700,2702,2752,2754,2756,2791,2793,2797,2872,2874,2876,2890,2906,2908,2910,2922,2924,2926,2934,2948,2950,2952,2956,2958,2960,2970,2972,2974,3009,3011,3013,3025,3037,3041,3063,3065,3067,3077,3081,3083,3085,3091,3093,3095],[63,2656,2657,243,2659],{},[67,2658,1258],{},[315,2660],{"defaultValue":1261,"value":1262},[59,2662,49],{"id":1995},[63,2664,1998,2665,2001,2667,2004,2669,1279,2671,1283,2673,1287,2675,2013,2677,1293,2679,2019,2681,2022,2683,595,2685,602,2687,2029],{},[67,2666,1271],{},[67,2668,1275],{},[854,2670],{},[67,2672,1282],{},[67,2674,1286],{},[67,2676,832],{},[67,2678,2016],{},[854,2680],{},[854,2682],{},[67,2684,1282],{},[67,2686,1286],{},[67,2688,832],{},[63,2690,2691,2696,2040],{},[67,2692,2034,2693,1293],{},[1014,2694,1303],{"href":1301,"rel":2695},[1018],[854,2697],{},[1308,2699],{},[620,2701,1313],{"id":1312},[76,2703,2704,2708,2712,2716,2720,2724,2728,2732,2736,2740,2744,2748],{},[79,2705,2706],{},[1014,2707,1321],{"href":1320},[79,2709,2710],{},[1014,2711,1327],{"href":1326},[79,2713,2714],{},[1014,2715,2060],{"href":2059},[79,2717,2718],{},[1014,2719,2066],{"href":2065},[79,2721,2722],{},[1014,2723,2072],{"href":2071},[79,2725,2726],{},[1014,2727,2078],{"href":2077},[79,2729,2730],{},[1014,2731,2084],{"href":2083},[79,2733,2734],{},[1014,2735,2090],{"href":2089},[79,2737,2738],{},[1014,2739,2096],{"href":2095},[79,2741,2742],{},[1014,2743,2102],{"href":2101},[79,2745,2746],{},[1014,2747,2108],{"href":2107},[79,2749,2750],{},[1014,2751,1393],{"href":1392},[1308,2753],{},[71,2755,1321],{"id":1398},[76,2757,2758,2766,2774,2782],{},[79,2759,2760,1405,2762,1408,2764,1293],{},[67,2761,1271],{},[67,2763,832],{},[67,2765,1286],{},[79,2767,2768,1416,2770,1408,2772,1421],{},[67,2769,1415],{},[67,2771,1286],{},[67,2773,832],{},[79,2775,2776,1427,2778,1408,2780,1293],{},[67,2777,1426],{},[67,2779,1271],{},[67,2781,1282],{},[79,2783,2784,1437,2786,1440,2788],{},[67,2785,1436],{},[854,2787],{},[1014,2789,1443],{"href":1443,"rel":2790},[1018],[71,2792,1327],{"id":1447},[63,2794,2156,2795,306],{},[67,2796,2016],{},[76,2798,2799,2803,2810,2814,2822,2828,2836,2850,2860],{},[79,2800,2801,1458],{},[67,2802,1457],{},[79,2804,2805,1464,2807,1293],{},[67,2806,1463],{},[1014,2808,1016],{"href":1016,"rel":2809},[1018],[79,2811,2812,1473],{},[67,2813,1472],{},[79,2815,2816,1479,2818,1483,2820,1293],{},[67,2817,1478],{},[67,2819,1482],{},[67,2821,1415],{},[79,2823,2824,1491,2826,1495],{},[67,2825,1490],{},[67,2827,1494],{},[79,2829,2830,1501,2832,1504,2834,1507],{},[67,2831,1500],{},[67,2833,832],{},[67,2835,1494],{},[79,2837,2838,1513,2840,595,2842,602,2844,1520,2846,1523,2848,1293],{},[67,2839,1512],{},[67,2841,1282],{},[67,2843,832],{},[67,2845,1286],{},[67,2847,1494],{},[67,2849,1526],{},[79,2851,2852,1532,2854,1536,2856,1539,2858,1542],{},[67,2853,1531],{},[67,2855,1535],{},[67,2857,832],{},[67,2859,1286],{},[79,2861,2862,595,2864,602,2866,1554,2868,1557,2870,1293],{},[67,2863,1547],{},[67,2865,1550],{},[67,2867,1553],{},[67,2869,1426],{},[67,2871,1271],{},[1308,2873],{},[71,2875,2060],{"id":2238},[63,2877,2241,2878,2245,2880,1146,2885,1293],{},[67,2879,2244],{},[67,2881,2882],{},[1014,2883,2251],{"href":1844,"rel":2884},[1018],[67,2886,2887],{},[1014,2888,2258],{"href":2256,"rel":2889},[1018],[63,2891,2261,2892,1093,2894,2266,2896,2269,2898,1093,2900,2274,2902,2277,2904,2280],{},[67,2893,1286],{},[67,2895,832],{},[854,2897],{},[67,2899,1286],{},[67,2901,832],{},[854,2903],{},[67,2905,1282],{},[1308,2907],{},[71,2909,2066],{"id":2285},[63,2911,2912,2291,2914,1093,2916,1293,2918,2298,2920,2301],{},[67,2913,2290],{},[67,2915,832],{},[67,2917,1286],{},[854,2919],{},[67,2921,1426],{},[1308,2923],{},[71,2925,2072],{"id":2306},[63,2927,2928,2311,2930,2314,2932,2318],{},[67,2929,1271],{},[854,2931],{},[67,2933,2317],{},[76,2935,2936,2940,2944],{},[79,2937,2938,2325],{},[67,2939,1426],{},[79,2941,2328,2942,2331],{},[67,2943,1846],{},[79,2945,2334,2946,2337],{},[67,2947,1426],{},[1308,2949],{},[71,2951,2078],{"id":2342},[63,2953,2345,2954,1293],{},[1014,2955,45],{"href":1980},[1308,2957],{},[71,2959,2084],{"id":2352},[63,2961,65,2962,595,2964,2359,2966,2362,2968,2365],{},[67,2963,1282],{},[67,2965,1286],{},[67,2967,832],{},[67,2969,1426],{},[1308,2971],{},[71,2973,2090],{"id":2370},[63,2975,2373,2976,595,2978,2359,2980,1293,2982,2382,2984,595,2986,602,2988,2389,2990,2392,2992,2395,2994,595,2996,602,2998,2402,3000,1293,3002,3004],{},[67,2977,1282],{},[67,2979,1286],{},[67,2981,832],{},[854,2983],{},[67,2985,1282],{},[67,2987,1286],{},[67,2989,832],{},[854,2991],{},[67,2993,2016],{},[67,2995,1282],{},[67,2997,1286],{},[67,2999,832],{},[67,3001,2016],{},[854,3003],{},[67,3005,2034,3006,1293],{},[1014,3007,1303],{"href":1301,"rel":3008},[1018],[1308,3010],{},[71,3012,2096],{"id":2416},[63,3014,2419,3015,595,3017,2359,3019,2426,3021,2430,3023,2434],{},[67,3016,1282],{},[67,3018,1286],{},[67,3020,832],{},[67,3022,2429],{},[67,3024,2433],{},[63,3026,3027,2439,3029,595,3031,602,3033,2446,3035,2449],{},[67,3028,1426],{},[67,3030,1282],{},[67,3032,1286],{},[67,3034,832],{},[67,3036,1426],{},[63,3038,3039,2454],{},[67,3040,1426],{},[76,3042,3043,3049,3055,3057],{},[79,3044,65,3045,1093,3047,2463],{},[67,3046,1286],{},[67,3048,832],{},[79,3050,65,3051,1093,3053,2470],{},[67,3052,1286],{},[67,3054,832],{},[79,3056,2473],{},[79,3058,2476,3059,1093,3061,2481],{},[67,3060,1286],{},[67,3062,832],{},[1308,3064],{},[71,3066,2102],{"id":2486},[63,3068,2489,3069,595,3071,602,3073,2496,3075,1293],{},[67,3070,1286],{},[67,3072,832],{},[67,3074,1282],{},[67,3076,2016],{},[63,3078,2501,3079,2504],{},[67,3080,2016],{},[1308,3082],{},[71,3084,2108],{"id":2509},[63,3086,2512,3087,2515,3089,2518],{},[854,3088],{},[854,3090],{},[1308,3092],{},[71,3094,1393],{"id":1930},[63,3096,1933,3097,595,3099,595,3101,2531,3103,2534,3105,2537,3107,1293],{},[67,3098,1286],{},[67,3100,832],{},[67,3102,1282],{},[67,3104,2016],{},[67,3106,1282],{},[1014,3108,1830],{"href":1829},{"title":319,"searchDepth":320,"depth":320,"links":3110},[3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123],{"id":1312,"depth":806,"text":1313},{"id":1398,"depth":320,"text":1321},{"id":1447,"depth":320,"text":1327},{"id":2238,"depth":320,"text":2060},{"id":2285,"depth":320,"text":2066},{"id":2306,"depth":320,"text":2072},{"id":2342,"depth":320,"text":2078},{"id":2352,"depth":320,"text":2084},{"id":2370,"depth":320,"text":2090},{"id":2416,"depth":320,"text":2096},{"id":2486,"depth":320,"text":2102},{"id":2509,"depth":320,"text":2108},{"id":1930,"depth":320,"text":1393},{"icon":2557,"lastUpdate":1976},{"title":49,"description":2555},{"loc":2561,"lastmod":1981},null,1775770367233]