@@ -46,6 +46,7 @@ type MaintenanceWindowsService interface {
46
46
Get (context.Context , string ) (* MaintenanceWindow , * Response , error )
47
47
Update (context.Context , string , * MaintenanceWindow ) (* Response , error )
48
48
Defer (context.Context , string ) (* Response , error )
49
+ AutoDefer (context.Context , string ) (* Response , error )
49
50
Reset (context.Context , string ) (* Response , error )
50
51
}
51
52
@@ -132,6 +133,26 @@ func (s *MaintenanceWindowsServiceOp) Defer(ctx context.Context, groupID string)
132
133
return resp , err
133
134
}
134
135
136
+ // AutoDefer any scheduled maintenance for the given project for one week.
137
+ //
138
+ // See more: https://docs.atlas.mongodb.com/reference/api/maintenance-window-auto-defer/
139
+ func (s * MaintenanceWindowsServiceOp ) AutoDefer (ctx context.Context , groupID string ) (* Response , error ) {
140
+ if groupID == "" {
141
+ return nil , NewArgError ("groupID" , "cannot be nil" )
142
+ }
143
+
144
+ path := fmt .Sprintf (maintenanceWindowsPath + "/autoDefer" , groupID )
145
+
146
+ req , err := s .Client .NewRequest (ctx , http .MethodPost , path , nil )
147
+ if err != nil {
148
+ return nil , err
149
+ }
150
+
151
+ resp , err := s .Client .Do (ctx , req , nil )
152
+
153
+ return resp , err
154
+ }
155
+
135
156
// Reset clears the current maintenance window for the given project.
136
157
//
137
158
// See more: https://docs.atlas.mongodb.com/reference/api/maintenance-window-clear/
0 commit comments