agilix 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 138019275cdce2dd003675e115160d5a5f1feab271410d0261b09a4c6da0f01d
4
- data.tar.gz: a752c0e4887be205e3e2486cc920855cc833b8d7ab1bc157e0a3aac49d389685
3
+ metadata.gz: c0413fee530d80590d22081a3f3dcbb043f9db3743d1f8f29a84f332076fd421
4
+ data.tar.gz: e43836977de2042b9b8af21bad4418d62298fc94e16049fcad6f4264f87ee84c
5
5
  SHA512:
6
- metadata.gz: c26e8d5a54a0b79516381f510e018ff70891c67687206ab3e7883f6844ee858833ff197fce4b2d68a25f7688666a46041fb52325d2586940bbdd4b8d0ffc8f9e
7
- data.tar.gz: 27b8983c763648dcbe06dfeac1cfed27b9509300a2d49678203d269439b97ae5dd7ff3c7e258b35a7b30e8b5c861e4edb47bc72287592efede30e469ae09d271
6
+ metadata.gz: 96fbcf3c60422b1bd344e6ba157bccba2ca81b44ec9a1fbac1f5e326b2d37a70c7f9e42ab7a24dc17bb272ca5d27175e44f01b5b67831d5daeb9e5590d8e4172
7
+ data.tar.gz: fe2038e729fdb39f5d4b3765245f42a9ed2bffabc192b866e0a21955e77a62dc3b60ad303a0e042d0c662770c67692767faaaddef17a5b26a697e9ed5ba6a77a
@@ -1,4 +1,5 @@
1
- AGILIX_BUZZ_USERNAME: ""
2
- AGILIX_BUZZ_PASSWORD: ""
3
- AGILIX_BUZZ_URL: "https://api.agilixbuzz.com"
1
+ AGILIX_BUZZ_USERNAME: ""
2
+ AGILIX_BUZZ_PASSWORD: ""
3
+ AGILIX_BUZZ_URL: "https://api.agilixbuzz.com"
4
+ AGILIX_BUZZ_DOMAIN: "agilixbuzz.com"
4
5
  AGILIX_BUZZ_DEFAULT_DOMAIN: "root"
data/README.md CHANGED
@@ -37,10 +37,403 @@ AGILIX_BUZZ_URL = 'https://api.mycustomdomain.com'
37
37
  ## Usage
38
38
 
39
39
  There are many primary APIs that are wrapped. Below you will see basic examples of how to use them. For more information about what optional query parameters are available, please consult the [Agilix Buzz API Docs](https://api.agilixbuzz.com/)
40
- x
41
- #### Auth
42
40
 
43
- You need to authenticate to use the api
41
+ ### Auth
42
+
43
+ You need to authenticate to use the api. Set the credentials in Environment variables as seen above. If you've done that, you can set and refernce the api object by:
44
+ ```
45
+ api = Agilix::Buzz::Api.new
46
+ ```
47
+
48
+ Otherwise, you can pass `:username`, `:password`, and `:domain` into the initializer
49
+ ```
50
+ api = Agilix::Buzz::Api.new username: 'my-username', password: 'my-password', domain: 'my-domain'
51
+ ```
52
+
53
+
54
+ ### Domains
55
+
56
+ #### [CreateDomains](https://api.agilixbuzz.com/docs/#!/Command/CreateDomains)
57
+ ```
58
+ api.create_domains [{name: "BuzzTest1", userspace: 'buzz-test-fc-1', parentid: '57025'}]
59
+ ```
60
+ #### [DeleteDomain](https://api.agilixbuzz.com/docs/#!/Command/DeleteDomain)
61
+ ```
62
+ api.delete_domain domainid: '57027'
63
+ ```
64
+ #### [GetDomain2](https://api.agilixbuzz.com/docs/#!/Command/GetDomain2)
65
+ ```
66
+ api.get_domain domainid: '57025'
67
+ ```
68
+ #### [GetDomainContent](https://api.agilixbuzz.com/docs/#!/Command/GetDomainContent)
69
+ ```
70
+ api.get_domain_content domainid: '57025'
71
+ ```
72
+ #### [GetDomainEnrollmentMetrics](https://api.agilixbuzz.com/docs/#!/Command/GetDomainEnrollmentMetrics)
73
+ ```
74
+ api.get_domain_enrollment_metrics domainid: '57025'
75
+ ```
76
+ #### [GetDomainParentList](https://api.agilixbuzz.com/docs/#!/Command/GetDomainParentList)
77
+ ```
78
+ api.get_domain_parent_list domainid: '57025'
79
+ ```
80
+ #### [GetDomainSettings](https://api.agilixbuzz.com/docs/#!/Command/GetDomainSettings)
81
+ ```
82
+ api.get_domain_settings domainid: '57025', path: "AgilixBuzzSettings.xml"
83
+ ```
84
+ #### [GetDomainStats](https://api.agilixbuzz.com/docs/#!/Command/GetDomainStats)
85
+ ```
86
+ api.get_domain_stats domainid: '57025', options: "users|courses"
87
+ ```
88
+ #### [ListDomains](https://api.agilixbuzz.com/docs/#!/Command/ListDomains)
89
+ ```
90
+ api.list_domains domainid: '57025'
91
+ ```
92
+ #### [RestoreDomain](https://api.agilixbuzz.com/docs/#!/Command/RestoreDomain)
93
+ ```
94
+ api.restore_domain domainid: '57027'
95
+ ```
96
+ #### [UpdateDomains](https://api.agilixbuzz.com/docs/#!/Command/UpdateDomains)
97
+ ```
98
+ api.update_domains [{ domainid: "57027", name: "BuzzTestUpdated1", userspace: 'buzz-test-fc-1', parentid: '57025'}]
99
+ ```
100
+
101
+ ## Reports
102
+
103
+ - [ ] [GetReportInfo](https://api.agilixbuzz.com/docs/#!/Command/GetReportInfo)
104
+ - [ ] [GetReportList](https://api.agilixbuzz.com/docs/#!/Command/GetReportList)
105
+ - [ ] [GetRunnableReportList](https://api.agilixbuzz.com/docs/#!/Command/GetRunnableReportList)
106
+ - [ ] [RunReport](https://api.agilixbuzz.com/docs/#!/Command/RunReport)
107
+
108
+ ## Users
109
+
110
+ - [ ] [CreateUsers2](https://api.agilixbuzz.com/docs/#!/Command/CreateUsers2)
111
+ - [ ] [DeleteUsers](https://api.agilixbuzz.com/docs/#!/Command/DeleteUsers)
112
+ - [ ] [GetActiveUserCount](https://api.agilixbuzz.com/docs/#!/Command/GetActiveUserCount)
113
+ - [ ] [GetDomainActivity](https://api.agilixbuzz.com/docs/#!/Command/GetDomainActivity)
114
+ - [ ] [GetProfilePicture](https://api.agilixbuzz.com/docs/#!/Command/GetProfilePicture)
115
+ - [ ] [GetUser2](https://api.agilixbuzz.com/docs/#!/Command/GetUser2)
116
+ - [ ] [GetUserActivity](https://api.agilixbuzz.com/docs/#!/Command/GetUserActivity)
117
+ - [ ] [GetUserActivityStream](https://api.agilixbuzz.com/docs/#!/Command/GetUserActivityStream)
118
+ - [ ] [ListUsers](https://api.agilixbuzz.com/docs/#!/Command/ListUsers)
119
+ - [ ] [RestoreUser](https://api.agilixbuzz.com/docs/#!/Command/RestoreUser)
120
+ - [ ] [UpdateUsers](https://api.agilixbuzz.com/docs/#!/Command/UpdateUsers)
121
+
122
+ ---
123
+
124
+ # Second Priority
125
+
126
+ ## Authentication
127
+
128
+ - [ ] [ExtendSession](https://api.agilixbuzz.com/docs/#!/Command/ExtendSession)
129
+ - [ ] [GetKey](https://api.agilixbuzz.com/docs/#!/Command/GetKey)
130
+ - [ ] [ForcePasswordChange](https://api.agilixbuzz.com/docs/#!/Command/ForcePasswordChange)
131
+ - [ ] [GetPasswordLoginAttemptHistory](https://api.agilixbuzz.com/docs/#!/Command/GetPasswordLoginAttemptHistory)
132
+ - [ ] [GetPasswordPolicy](https://api.agilixbuzz.com/docs/#!/Command/GetPasswordPolicy)
133
+ - [ ] [GetPasswordQuestion](https://api.agilixbuzz.com/docs/#!/Command/GetPasswordQuestion)
134
+ - [ ] [Login2](https://api.agilixbuzz.com/docs/#!/Command/Login2)
135
+ - [ ] [Logout](https://api.agilixbuzz.com/docs/#!/Command/Logout)
136
+ - [ ] [Proxy](https://api.agilixbuzz.com/docs/#!/Command/Proxy)
137
+ - [ ] [PutKey](https://api.agilixbuzz.com/docs/#!/Command/PutKey)
138
+ - [ ] [ResetLockout](https://api.agilixbuzz.com/docs/#!/Command/ResetLockout)
139
+ - [ ] [ResetPassword](https://api.agilixbuzz.com/docs/#!/Command/ResetPassword)
140
+ - [ ] [Unproxy](https://api.agilixbuzz.com/docs/#!/Command/Unproxy)
141
+ - [ ] [UpdatePassword](https://api.agilixbuzz.com/docs/#!/Command/UpdatePassword)
142
+ - [ ] [UpdatePasswordQuestionAnswer](https://api.agilixbuzz.com/docs/#!/Command/UpdatePasswordQuestionAnswer)
143
+
144
+ ## Courses
145
+
146
+ - [ ] [CopyCourses](https://api.agilixbuzz.com/docs/#!/Command/CopyCourses)
147
+ - [ ] [CreateCourses](https://api.agilixbuzz.com/docs/#!/Command/CreateCourses)
148
+ - [ ] [CreateDemoCourse](https://api.agilixbuzz.com/docs/#!/Command/CreateDemoCourse)
149
+ - [ ] [DeactivateCourse](https://api.agilixbuzz.com/docs/#!/Command/DeactivateCourse)
150
+ - [ ] [DeleteCourses](https://api.agilixbuzz.com/docs/#!/Command/DeleteCourses)
151
+ - [ ] [GetCourse2](https://api.agilixbuzz.com/docs/#!/Command/GetCourse2)
152
+ - [ ] [GetCourseHistory](https://api.agilixbuzz.com/docs/#!/Command/GetCourseHistory)
153
+ - [ ] [ListCourses](https://api.agilixbuzz.com/docs/#!/Command/ListCourses)
154
+ - [ ] [MergeCourses](https://api.agilixbuzz.com/docs/#!/Command/MergeCourses)
155
+ - [ ] [RestoreCourse](https://api.agilixbuzz.com/docs/#!/Command/RestoreCourse)
156
+ - [ ] [UpdateCourses](https://api.agilixbuzz.com/docs/#!/Command/UpdateCourses)
157
+
158
+ ## Enrollments
159
+
160
+ - [ ] [CreateEnrollments](https://api.agilixbuzz.com/docs/#!/Command/CreateEnrollments)
161
+ - [ ] [DeleteEnrollments](https://api.agilixbuzz.com/docs/#!/Command/DeleteEnrollments)
162
+ - [ ] [GetEnrollment3](https://api.agilixbuzz.com/docs/#!/Command/GetEnrollment3)
163
+ - [ ] [GetEnrollmentActivity](https://api.agilixbuzz.com/docs/#!/Command/GetEnrollmentActivity)
164
+ - [ ] [GetEnrollmentGradebook2](https://api.agilixbuzz.com/docs/#!/Command/GetEnrollmentGradebook2)
165
+ - [ ] [GetEnrollmentGroupList](https://api.agilixbuzz.com/docs/#!/Command/GetEnrollmentGroupList)
166
+ - [ ] [GetEnrollmentMetricsReport](https://api.agilixbuzz.com/docs/#!/Command/GetEnrollmentMetricsReport)
167
+ - [ ] [ListEnrollments](https://api.agilixbuzz.com/docs/#!/Command/ListEnrollments)
168
+ - [ ] [ListEnrollmentsByTeacher](https://api.agilixbuzz.com/docs/#!/Command/ListEnrollmentsByTeacher)
169
+ - [ ] [ListEntityEnrollments](https://api.agilixbuzz.com/docs/#!/Command/ListEntityEnrollments)
170
+ - [ ] [ListUserEnrollments](https://api.agilixbuzz.com/docs/#!/Command/ListUserEnrollments)
171
+ - [ ] [PutSelfAssessment](https://api.agilixbuzz.com/docs/#!/Command/PutSelfAssessment)
172
+ - [ ] [RestoreEnrollment](https://api.agilixbuzz.com/docs/#!/Command/RestoreEnrollment)
173
+ - [ ] [UpdateEnrollments](https://api.agilixbuzz.com/docs/#!/Command/UpdateEnrollments)
174
+
175
+ ## Rights
176
+
177
+ - [ ] [CreateRole](https://api.agilixbuzz.com/docs/#!/Command/CreateRole)
178
+ - [ ] [DeleteRole](https://api.agilixbuzz.com/docs/#!/Command/DeleteRole)
179
+ - [ ] [DeleteSubscriptions](https://api.agilixbuzz.com/docs/#!/Command/DeleteSubscriptions)
180
+ - [ ] [GetActorRights](https://api.agilixbuzz.com/docs/#!/Command/GetActorRights)
181
+ - [ ] [GetEffectiveRights](https://api.agilixbuzz.com/docs/#!/Command/GetEffectiveRights)
182
+ - [ ] [GetEffectiveSubscriptionList](https://api.agilixbuzz.com/docs/#!/Command/GetEffectiveSubscriptionList)
183
+ - [ ] [GetEntityRights](https://api.agilixbuzz.com/docs/#!/Command/GetEntityRights)
184
+ - [ ] [GetEntitySubscriptionList](https://api.agilixbuzz.com/docs/#!/Command/GetEntitySubscriptionList)
185
+ - [ ] [GetPersonas](https://api.agilixbuzz.com/docs/#!/Command/GetPersonas)
186
+ - [ ] [GetRights](https://api.agilixbuzz.com/docs/#!/Command/GetRights)
187
+ - [ ] [GetRightsList](https://api.agilixbuzz.com/docs/#!/Command/GetRightsList)
188
+ - [ ] [GetRole](https://api.agilixbuzz.com/docs/#!/Command/GetRole)
189
+ - [ ] [GetSubscriptionList](https://api.agilixbuzz.com/docs/#!/Command/GetSubscriptionList)
190
+ - [ ] [ListRoles](https://api.agilixbuzz.com/docs/#!/Command/ListRoles)
191
+ - [ ] [RestoreRole](https://api.agilixbuzz.com/docs/#!/Command/RestoreRole)
192
+ - [ ] [UpdateRights](https://api.agilixbuzz.com/docs/#!/Command/UpdateRights)
193
+ - [ ] [UpdateRole](https://api.agilixbuzz.com/docs/#!/Command/UpdateRole)
194
+ - [ ] [UpdateSubscriptions](https://api.agilixbuzz.com/docs/#!/Command/UpdateSubscriptions)
195
+
196
+ ---
197
+
198
+ # Third Priority
199
+
200
+ ## Assessments
201
+
202
+ - [ ] [DeleteQuestions](https://api.agilixbuzz.com/docs/#!/Command/DeleteQuestions)
203
+ - [ ] [GetAttempt](https://api.agilixbuzz.com/docs/#!/Command/GetAttempt)
204
+ - [ ] [GetAttemptReview](https://api.agilixbuzz.com/docs/#!/Command/GetAttemptReview)
205
+ - [ ] [GetExam](https://api.agilixbuzz.com/docs/#!/Command/GetExam)
206
+ - [ ] [GetNextQuestion](https://api.agilixbuzz.com/docs/#!/Command/GetNextQuestion)
207
+ - [ ] [GetQuestion](https://api.agilixbuzz.com/docs/#!/Command/GetQuestion)
208
+ - [ ] [GetQuestionScores](https://api.agilixbuzz.com/docs/#!/Command/GetQuestionScores)
209
+ - [ ] [GetQuestionStats](https://api.agilixbuzz.com/docs/#!/Command/GetQuestionStats)
210
+ - [ ] [GetSubmissionState](https://api.agilixbuzz.com/docs/#!/Command/GetSubmissionState)
211
+ - [ ] [ListQuestions](https://api.agilixbuzz.com/docs/#!/Command/ListQuestions)
212
+ - [ ] [ListRestorableQuestions](https://api.agilixbuzz.com/docs/#!/Command/ListRestorableQuestions)
213
+ - [ ] [PrepareOfflineAttempt](https://api.agilixbuzz.com/docs/#!/Command/PrepareOfflineAttempt)
214
+ - [ ] [PutQuestions](https://api.agilixbuzz.com/docs/#!/Command/PutQuestions)
215
+ - [ ] [RestoreQuestions](https://api.agilixbuzz.com/docs/#!/Command/RestoreQuestions)
216
+ - [ ] [SaveAttemptAnswers](https://api.agilixbuzz.com/docs/#!/Command/SaveAttemptAnswers)
217
+ - [ ] [SubmitAttemptAnswers](https://api.agilixbuzz.com/docs/#!/Command/SubmitAttemptAnswers)
218
+ - [ ] [SubmitOfflineAttempt](https://api.agilixbuzz.com/docs/#!/Command/SubmitOfflineAttempt)
219
+
220
+ ## General
221
+
222
+ - [ ] [Echo](https://api.agilixbuzz.com/docs/#!/Command/Echo)
223
+ - [ ] [GetCommandList](https://api.agilixbuzz.com/docs/#!/Command/GetCommandList)
224
+ - [ ] [GetEntityType](https://api.agilixbuzz.com/docs/#!/Command/GetEntityType)
225
+ - [ ] [GetStatus](https://api.agilixbuzz.com/docs/#!/Command/GetStatus)
226
+ - [ ] [GetUploadLimits](https://api.agilixbuzz.com/docs/#!/Command/GetUploadLimits)
227
+ - [ ] [SendMail](https://api.agilixbuzz.com/docs/#!/Command/SendMail)
228
+
229
+ ## Manifests and Items
230
+
231
+ - [ ] [AssignItem](https://api.agilixbuzz.com/docs/#!/Command/AssignItem)
232
+ - [ ] [CopyItems](https://api.agilixbuzz.com/docs/#!/Command/CopyItems)
233
+ - [ ] [DeleteItems](https://api.agilixbuzz.com/docs/#!/Command/DeleteItems)
234
+ - [ ] [FindPersonalizedEntities](https://api.agilixbuzz.com/docs/#!/Command/FindPersonalizedEntities)
235
+ - [ ] [GetCourseContent](https://api.agilixbuzz.com/docs/#!/Command/GetCourseContent)
236
+ - [ ] [GetItem](https://api.agilixbuzz.com/docs/#!/Command/GetItem)
237
+ - [ ] [GetItemInfo](https://api.agilixbuzz.com/docs/#!/Command/GetItemInfo)
238
+ - [ ] [GetItemLinks](https://api.agilixbuzz.com/docs/#!/Command/GetItemLinks)
239
+ - [ ] [GetItemList](https://api.agilixbuzz.com/docs/#!/Command/GetItemList)
240
+ - [ ] [GetManifest](https://api.agilixbuzz.com/docs/#!/Command/GetManifest)
241
+ - [ ] [GetManifestData](https://api.agilixbuzz.com/docs/#!/Command/GetManifestData)
242
+ - [ ] [GetManifestInfo](https://api.agilixbuzz.com/docs/#!/Command/GetManifestInfo)
243
+ - [ ] [GetManifestItem](https://api.agilixbuzz.com/docs/#!/Command/GetManifestItem)
244
+ - [ ] [ListAssignableItems](https://api.agilixbuzz.com/docs/#!/Command/ListAssignableItems)
245
+ - [ ] [ListRestorableItems](https://api.agilixbuzz.com/docs/#!/Command/ListRestorableItems)
246
+ - [ ] [NavigateItem](https://api.agilixbuzz.com/docs/#!/Command/NavigateItem)
247
+ - [ ] [PutItems](https://api.agilixbuzz.com/docs/#!/Command/PutItems)
248
+ - [ ] [RestoreItems](https://api.agilixbuzz.com/docs/#!/Command/RestoreItems)
249
+ - [ ] [Search2](https://api.agilixbuzz.com/docs/#!/Command/Search2)
250
+ - [ ] [UnassignItem](https://api.agilixbuzz.com/docs/#!/Command/UnassignItem)
251
+ - [ ] [UpdateManifestData](https://api.agilixbuzz.com/docs/#!/Command/UpdateManifestData)
252
+
253
+ ## Ratings
254
+
255
+ - [ ] [GetItemRating](https://api.agilixbuzz.com/docs/#!/Command/GetItemRating)
256
+ - [ ] [GetItemRatingSummary](https://api.agilixbuzz.com/docs/#!/Command/GetItemRatingSummary)
257
+ - [ ] [PutItemRating](https://api.agilixbuzz.com/docs/#!/Command/PutItemRating)
258
+
259
+ ## Resources
260
+
261
+ - [ ] [CopyResources](https://api.agilixbuzz.com/docs/#!/Command/CopyResources)
262
+ - [ ] [DeleteDocuments](https://api.agilixbuzz.com/docs/#!/Command/DeleteDocuments)
263
+ - [ ] [DeleteResources](https://api.agilixbuzz.com/docs/#!/Command/DeleteResources)
264
+ - [ ] [GetDocument](https://api.agilixbuzz.com/docs/#!/Command/GetDocument)
265
+ - [ ] [GetDocumentInfo](https://api.agilixbuzz.com/docs/#!/Command/GetDocumentInfo)
266
+ - [ ] [GetEntityResourceId](https://api.agilixbuzz.com/docs/#!/Command/GetEntityResourceId)
267
+ - [ ] [GetResource](https://api.agilixbuzz.com/docs/#!/Command/GetResource)
268
+ - [ ] [GetResourceInfo2](https://api.agilixbuzz.com/docs/#!/Command/GetResourceInfo2)
269
+ - [ ] [GetResourceList2](https://api.agilixbuzz.com/docs/#!/Command/GetResourceList2)
270
+ - [ ] [ListRestorableDocuments](https://api.agilixbuzz.com/docs/#!/Command/ListRestorableDocuments)
271
+ - [ ] [ListRestorableResources](https://api.agilixbuzz.com/docs/#!/Command/ListRestorableResources)
272
+ - [ ] [PutResource](https://api.agilixbuzz.com/docs/#!/Command/PutResource)
273
+ - [ ] [PutResourceFolders](https://api.agilixbuzz.com/docs/#!/Command/PutResourceFolders)
274
+ - [ ] [RestoreDocuments](https://api.agilixbuzz.com/docs/#!/Command/RestoreDocuments)
275
+ - [ ] [RestoreResources](https://api.agilixbuzz.com/docs/#!/Command/RestoreResources)
276
+
277
+ ---
278
+
279
+ # Not Prioritized
280
+
281
+ ## Announcements
282
+
283
+ - [ ] [DeleteAnnouncements](https://api.agilixbuzz.com/docs/#!/Command/DeleteAnnouncements)
284
+ - [ ] [GetAnnouncement](https://api.agilixbuzz.com/docs/#!/Command/GetAnnouncement)
285
+ - [ ] [GetAnnouncementInfo](https://api.agilixbuzz.com/docs/#!/Command/GetAnnouncementInfo)
286
+ - [ ] [GetAnnouncementList](https://api.agilixbuzz.com/docs/#!/Command/GetAnnouncementList)
287
+ - [ ] [GetUserAnnouncementList](https://api.agilixbuzz.com/docs/#!/Command/GetUserAnnouncementList)
288
+ - [ ] [ListRestorableAnnouncements](https://api.agilixbuzz.com/docs/#!/Command/ListRestorableAnnouncements)
289
+ - [ ] [PutAnnouncement](https://api.agilixbuzz.com/docs/#!/Command/PutAnnouncement)
290
+ - [ ] [RestoreAnnouncements](https://api.agilixbuzz.com/docs/#!/Command/RestoreAnnouncements)
291
+ - [ ] [UpdateAnnouncementViewed](https://api.agilixbuzz.com/docs/#!/Command/UpdateAnnouncementViewed)
292
+
293
+ ## Badges
294
+
295
+ - [ ] [CreateBadge](https://api.agilixbuzz.com/docs/#!/Command/CreateBadge)
296
+ - [ ] [DeleteBadge](https://api.agilixbuzz.com/docs/#!/Command/DeleteBadge)
297
+ - [ ] [GetBadge](https://api.agilixbuzz.com/docs/#!/Command/GetBadge)
298
+ - [ ] [GetBadgeAssertion](https://api.agilixbuzz.com/docs/#!/Command/GetBadgeAssertion)
299
+ - [ ] [GetBadgeList](https://api.agilixbuzz.com/docs/#!/Command/GetBadgeList)
300
+
301
+ ## Blogs
302
+
303
+ - [ ] [DeleteBlogs](https://api.agilixbuzz.com/docs/#!/Command/DeleteBlogs)
304
+ - [ ] [GetBlog](https://api.agilixbuzz.com/docs/#!/Command/GetBlog)
305
+ - [ ] [GetBlogList](https://api.agilixbuzz.com/docs/#!/Command/GetBlogList)
306
+ - [ ] [GetBlogSummary](https://api.agilixbuzz.com/docs/#!/Command/GetBlogSummary)
307
+ - [ ] [GetRecentPosts](https://api.agilixbuzz.com/docs/#!/Command/GetRecentPosts)
308
+ - [ ] [PutBlog](https://api.agilixbuzz.com/docs/#!/Command/PutBlog)
309
+ - [ ] [UpdateBlogViewed](https://api.agilixbuzz.com/docs/#!/Command/UpdateBlogViewed)
310
+
311
+ ## Command Tokens
312
+
313
+ - [ ] [CreateCommandTokens](https://api.agilixbuzz.com/docs/#!/Command/CreateCommandTokens)
314
+ - [ ] [GetCommandToken](https://api.agilixbuzz.com/docs/#!/Command/GetCommandToken)
315
+ - [ ] [GetCommandTokenInfo](https://api.agilixbuzz.com/docs/#!/Command/GetCommandTokenInfo)
316
+ - [ ] [DeleteCommandTokens](https://api.agilixbuzz.com/docs/#!/Command/DeleteCommandTokens)
317
+ - [ ] [UpdateCommandTokens](https://api.agilixbuzz.com/docs/#!/Command/UpdateCommandTokens)
318
+ - [ ] [ListCommandTokens](https://api.agilixbuzz.com/docs/#!/Command/ListCommandTokens)
319
+ - [ ] [RedeemCommandToken](https://api.agilixbuzz.com/docs/#!/Command/RedeemCommandToken)
320
+
321
+ ## Conversion
322
+
323
+ - [ ] [ExportData](https://api.agilixbuzz.com/docs/#!/Command/ExportData)
324
+ - [ ] [GetConvertedData](https://api.agilixbuzz.com/docs/#!/Command/GetConvertedData)
325
+ - [ ] [ImportData](https://api.agilixbuzz.com/docs/#!/Command/ImportData)
326
+
327
+ ## Discussion Boards
328
+
329
+ - [ ] [DeleteMessage](https://api.agilixbuzz.com/docs/#!/Command/DeleteMessage)
330
+ - [ ] [DeleteMessagePart](https://api.agilixbuzz.com/docs/#!/Command/DeleteMessagePart)
331
+ - [ ] [GetMessage](https://api.agilixbuzz.com/docs/#!/Command/GetMessage)
332
+ - [ ] [GetMessageList](https://api.agilixbuzz.com/docs/#!/Command/GetMessageList)
333
+ - [ ] [ListRestorableMessages](https://api.agilixbuzz.com/docs/#!/Command/ListRestorableMessages)
334
+ - [ ] [PutMessage](https://api.agilixbuzz.com/docs/#!/Command/PutMessage)
335
+ - [ ] [PutMessagePart](https://api.agilixbuzz.com/docs/#!/Command/PutMessagePart)
336
+ - [ ] [RestoreMessages](https://api.agilixbuzz.com/docs/#!/Command/RestoreMessages)
337
+ - [ ] [SubmitMessage](https://api.agilixbuzz.com/docs/#!/Command/SubmitMessage)
338
+ - [ ] [UpdateMessageViewed](https://api.agilixbuzz.com/docs/#!/Command/UpdateMessageViewed)
339
+
340
+ ## Groups
341
+
342
+ - [ ] [AddGroupMembers](https://api.agilixbuzz.com/docs/#!/Command/AddGroupMembers)
343
+ - [ ] [CreateGroups](https://api.agilixbuzz.com/docs/#!/Command/CreateGroups)
344
+ - [ ] [DeleteGroups](https://api.agilixbuzz.com/docs/#!/Command/DeleteGroups)
345
+ - [ ] [GetGroup](https://api.agilixbuzz.com/docs/#!/Command/GetGroup)
346
+ - [ ] [GetGroupEnrollmentList](https://api.agilixbuzz.com/docs/#!/Command/GetGroupEnrollmentList)
347
+ - [ ] [GetGroupList](https://api.agilixbuzz.com/docs/#!/Command/GetGroupList)
348
+ - [ ] [RemoveGroupMembers](https://api.agilixbuzz.com/docs/#!/Command/RemoveGroupMembers)
349
+ - [ ] [UpdateGroups](https://api.agilixbuzz.com/docs/#!/Command/UpdateGroups)
350
+
351
+ ## Gradebook
352
+
353
+ - [ ] [CalculateEnrollmentScenario](https://api.agilixbuzz.com/docs/#!/Command/CalculateEnrollmentScenario)
354
+ - [ ] [GetCalendar](https://api.agilixbuzz.com/docs/#!/Command/GetCalendar)
355
+ - [ ] [GetCalendarItems](https://api.agilixbuzz.com/docs/#!/Command/GetCalendarItems)
356
+ - [ ] [GetCalendarToken](https://api.agilixbuzz.com/docs/#!/Command/GetCalendarToken)
357
+ - [ ] [GetCertificates](https://api.agilixbuzz.com/docs/#!/Command/GetCertificates)
358
+ - [ ] [GetDueSoonList](https://api.agilixbuzz.com/docs/#!/Command/GetDueSoonList)
359
+ - [ ] [GetEntityGradebook2](https://api.agilixbuzz.com/docs/#!/Command/GetEntityGradebook2)
360
+ - [ ] [GetEntityGradebook3](https://api.agilixbuzz.com/docs/#!/Command/GetEntityGradebook3)
361
+ - [ ] [GetEntityGradebookSummary](https://api.agilixbuzz.com/docs/#!/Command/GetEntityGradebookSummary)
362
+ - [ ] [GetEntityWork2](https://api.agilixbuzz.com/docs/#!/Command/GetEntityWork2)
363
+ - [ ] [GetGrade](https://api.agilixbuzz.com/docs/#!/Command/GetGrade)
364
+ - [ ] [GetGradebookList](https://api.agilixbuzz.com/docs/#!/Command/GetGradebookList)
365
+ - [ ] [GetGradebookSummary](https://api.agilixbuzz.com/docs/#!/Command/GetGradebookSummary)
366
+ - [ ] [GetGradebookWeights](https://api.agilixbuzz.com/docs/#!/Command/GetGradebookWeights)
367
+ - [ ] [GetGradeHistory](https://api.agilixbuzz.com/docs/#!/Command/GetGradeHistory)
368
+ - [ ] [GetItemAnalysis2](https://api.agilixbuzz.com/docs/#!/Command/GetItemAnalysis2)
369
+ - [ ] [GetItemReport](https://api.agilixbuzz.com/docs/#!/Command/GetItemReport)
370
+ - [ ] [GetRubricMastery](https://api.agilixbuzz.com/docs/#!/Command/GetRubricMastery)
371
+ - [ ] [GetRubricStats](https://api.agilixbuzz.com/docs/#!/Command/GetRubricStats)
372
+ - [ ] [GetUserGradebook2](https://api.agilixbuzz.com/docs/#!/Command/GetUserGradebook2)
373
+
374
+ ## Objectives
375
+
376
+ - [ ] [CreateObjectiveSets](https://api.agilixbuzz.com/docs/#!/Command/CreateObjectiveSets)
377
+ - [ ] [DeleteObjectiveMaps](https://api.agilixbuzz.com/docs/#!/Command/DeleteObjectiveMaps)
378
+ - [ ] [DeleteObjectives](https://api.agilixbuzz.com/docs/#!/Command/DeleteObjectives)
379
+ - [ ] [DeleteObjectiveSets](https://api.agilixbuzz.com/docs/#!/Command/DeleteObjectiveSets)
380
+ - [ ] [GetMasteryDetail](https://api.agilixbuzz.com/docs/#!/Command/GetMasteryDetail)
381
+ - [ ] [GetMasterySummary](https://api.agilixbuzz.com/docs/#!/Command/GetMasterySummary)
382
+ - [ ] [GetObjectiveList](https://api.agilixbuzz.com/docs/#!/Command/GetObjectiveList)
383
+ - [ ] [GetObjectiveMapList](https://api.agilixbuzz.com/docs/#!/Command/GetObjectiveMapList)
384
+ - [ ] [GetObjectiveMastery](https://api.agilixbuzz.com/docs/#!/Command/GetObjectiveMastery)
385
+ - [ ] [GetObjectiveSet2](https://api.agilixbuzz.com/docs/#!/Command/GetObjectiveSet2)
386
+ - [ ] [GetObjectiveSubjectList](https://api.agilixbuzz.com/docs/#!/Command/GetObjectiveSubjectList)
387
+ - [ ] [ListObjectiveSets](https://api.agilixbuzz.com/docs/#!/Command/ListObjectiveSets)
388
+ - [ ] [PutObjectiveMaps](https://api.agilixbuzz.com/docs/#!/Command/PutObjectiveMaps)
389
+ - [ ] [PutObjectives](https://api.agilixbuzz.com/docs/#!/Command/PutObjectives)
390
+ - [ ] [RestoreObjectiveSet](https://api.agilixbuzz.com/docs/#!/Command/RestoreObjectiveSet)
391
+ - [ ] [UpdateObjectiveSets](https://api.agilixbuzz.com/docs/#!/Command/UpdateObjectiveSets)
392
+
393
+ ## Peer Grading
394
+
395
+ - [ ] [GetPeerResponse](https://api.agilixbuzz.com/docs/#!/Command/GetPeerResponse)
396
+ - [ ] [GetPeerResponseInfo](https://api.agilixbuzz.com/docs/#!/Command/GetPeerResponseInfo)
397
+ - [ ] [GetPeerResponseList](https://api.agilixbuzz.com/docs/#!/Command/GetPeerResponseList)
398
+ - [ ] [GetPeerReviewList](https://api.agilixbuzz.com/docs/#!/Command/GetPeerReviewList)
399
+ - [ ] [PutPeerResponse](https://api.agilixbuzz.com/docs/#!/Command/PutPeerResponse)
400
+
401
+ ## Signals
402
+
403
+ - [ ] [CreateSignal](https://api.agilixbuzz.com/docs/#!/Command/CreateSignal)
404
+ - [ ] [GetLastSignalId](https://api.agilixbuzz.com/docs/#!/Command/GetLastSignalId)
405
+ - [ ] [GetSignalList2](https://api.agilixbuzz.com/docs/#!/Command/GetSignalList2)
406
+
407
+ ## Submissions
408
+
409
+ - [ ] [DeleteWorkInProgress](https://api.agilixbuzz.com/docs/#!/Command/DeleteWorkInProgress)
410
+ - [ ] [GenerateSubmission](https://api.agilixbuzz.com/docs/#!/Command/GenerateSubmission)
411
+ - [ ] [GetScoData](https://api.agilixbuzz.com/docs/#!/Command/GetScoData)
412
+ - [ ] [GetStudentSubmission](https://api.agilixbuzz.com/docs/#!/Command/GetStudentSubmission)
413
+ - [ ] [GetStudentSubmissionHistory](https://api.agilixbuzz.com/docs/#!/Command/GetStudentSubmissionHistory)
414
+ - [ ] [GetStudentSubmissionInfo](https://api.agilixbuzz.com/docs/#!/Command/GetStudentSubmissionInfo)
415
+ - [ ] [GetTeacherResponse](https://api.agilixbuzz.com/docs/#!/Command/GetTeacherResponse)
416
+ - [ ] [GetTeacherResponseInfo](https://api.agilixbuzz.com/docs/#!/Command/GetTeacherResponseInfo)
417
+ - [ ] [GetWorkInProgress2](https://api.agilixbuzz.com/docs/#!/Command/GetWorkInProgress2)
418
+ - [ ] [PutItemActivity](https://api.agilixbuzz.com/docs/#!/Command/PutItemActivity)
419
+ - [ ] [PutScoData](https://api.agilixbuzz.com/docs/#!/Command/PutScoData)
420
+ - [ ] [PutStudentSubmission](https://api.agilixbuzz.com/docs/#!/Command/PutStudentSubmission)
421
+ - [ ] [PutTeacherResponse](https://api.agilixbuzz.com/docs/#!/Command/PutTeacherResponse)
422
+ - [ ] [PutTeacherResponses](https://api.agilixbuzz.com/docs/#!/Command/PutTeacherResponses)
423
+ - [ ] [PutWorkInProgress](https://api.agilixbuzz.com/docs/#!/Command/PutWorkInProgress)
424
+ - [ ] [SubmitWorkInProgress](https://api.agilixbuzz.com/docs/#!/Command/SubmitWorkInProgress)
425
+
426
+ ## Wikis
427
+
428
+ - [ ] [CopyWikiPages](https://api.agilixbuzz.com/docs/#!/Command/CopyWikiPages)
429
+ - [ ] [DeleteWikiPages](https://api.agilixbuzz.com/docs/#!/Command/DeleteWikiPages)
430
+ - [ ] [GetWikiPage](https://api.agilixbuzz.com/docs/#!/Command/GetWikiPage)
431
+ - [ ] [GetWikiPageList](https://api.agilixbuzz.com/docs/#!/Command/GetWikiPageList)
432
+ - [ ] [ListRestorableWikiPages](https://api.agilixbuzz.com/docs/#!/Command/ListRestorableWikiPages)
433
+ - [ ] [PutWikiPage](https://api.agilixbuzz.com/docs/#!/Command/PutWikiPage)
434
+ - [ ] [RestoreWikiPages](https://api.agilixbuzz.com/docs/#!/Command/RestoreWikiPages)
435
+ - [ ] [UpdateWikiPageViewed](https://api.agilixbuzz.com/docs/#!/Command/UpdateWikiPageViewed)
436
+
44
437
 
45
438
  ## Features
46
439
 
@@ -59,7 +452,7 @@ Implemented APIs from [Agilix Buzz API Docs](https://api.agilixbuzz.com/)
59
452
  | Conversion | [ExportData](https://api.agilixbuzz.com/docs/#!/Command/ExportData), [GetConvertedData](https://api.agilixbuzz.com/docs/#!/Command/GetConvertedData), [ImportData](https://api.agilixbuzz.com/docs/#!/Command/ImportData) | ❌ | ⏬ |
60
453
  | Courses | [CopyCourses](https://api.agilixbuzz.com/docs/#!/Command/CopyCourses), [CreateCourses](https://api.agilixbuzz.com/docs/#!/Command/CreateCourses), [CreateDemoCourse](https://api.agilixbuzz.com/docs/#!/Command/CreateDemoCourse), [DeactivateCourse](https://api.agilixbuzz.com/docs/#!/Command/DeactivateCourse), [DeleteCourses](https://api.agilixbuzz.com/docs/#!/Command/DeleteCourses), [GetCourse2](https://api.agilixbuzz.com/docs/#!/Command/GetCourse2), [GetCourseHistory](https://api.agilixbuzz.com/docs/#!/Command/GetCourseHistory), [ListCourses](https://api.agilixbuzz.com/docs/#!/Command/ListCourses), [MergeCourses](https://api.agilixbuzz.com/docs/#!/Command/MergeCourses), [RestoreCourse](https://api.agilixbuzz.com/docs/#!/Command/RestoreCourse), [UpdateCourses](https://api.agilixbuzz.com/docs/#!/Command/UpdateCourses) | ❌ | 🔼 |
61
454
  | Discussion Boards | [DeleteMessage](https://api.agilixbuzz.com/docs/#!/Command/DeleteMessage), [DeleteMessagePart](https://api.agilixbuzz.com/docs/#!/Command/DeleteMessagePart), [GetMessage](https://api.agilixbuzz.com/docs/#!/Command/GetMessage), [GetMessageList](https://api.agilixbuzz.com/docs/#!/Command/GetMessageList), [ListRestorableMessages](https://api.agilixbuzz.com/docs/#!/Command/ListRestorableMessages), [PutMessage](https://api.agilixbuzz.com/docs/#!/Command/PutMessage), [PutMessagePart](https://api.agilixbuzz.com/docs/#!/Command/PutMessagePart), [RestoreMessages](https://api.agilixbuzz.com/docs/#!/Command/RestoreMessages), [SubmitMessage](https://api.agilixbuzz.com/docs/#!/Command/SubmitMessage), [UpdateMessageViewed](https://api.agilixbuzz.com/docs/#!/Command/UpdateMessageViewed) | ❌ | 🔽
62
- | Domains | [CreateDomains](https://api.agilixbuzz.com/docs/#!/Command/CreateDomains), [DeleteDomain](https://api.agilixbuzz.com/docs/#!/Command/DeleteDomain), [GetDomain2](https://api.agilixbuzz.com/docs/#!/Command/GetDomain2), [GetDomainContent](https://api.agilixbuzz.com/docs/#!/Command/GetDomainContent), [GetDomainEnrollmentMetrics](https://api.agilixbuzz.com/docs/#!/Command/GetDomainEnrollmentMetrics), [GetDomainParentList](https://api.agilixbuzz.com/docs/#!/Command/GetDomainParentList), [GetDomainSettings](https://api.agilixbuzz.com/docs/#!/Command/GetDomainSettings), [GetDomainStats](https://api.agilixbuzz.com/docs/#!/Command/GetDomainStats), [ListDomains](https://api.agilixbuzz.com/docs/#!/Command/ListDomains), [RestoreDomain](https://api.agilixbuzz.com/docs/#!/Command/RestoreDomain), [UpdateDomains](https://api.agilixbuzz.com/docs/#!/Command/UpdateDomains) | | ⏫ |
455
+ | Domains | [CreateDomains](https://api.agilixbuzz.com/docs/#!/Command/CreateDomains), [DeleteDomain](https://api.agilixbuzz.com/docs/#!/Command/DeleteDomain), [GetDomain2](https://api.agilixbuzz.com/docs/#!/Command/GetDomain2), [GetDomainContent](https://api.agilixbuzz.com/docs/#!/Command/GetDomainContent), [GetDomainEnrollmentMetrics](https://api.agilixbuzz.com/docs/#!/Command/GetDomainEnrollmentMetrics), [GetDomainParentList](https://api.agilixbuzz.com/docs/#!/Command/GetDomainParentList), [GetDomainSettings](https://api.agilixbuzz.com/docs/#!/Command/GetDomainSettings), [GetDomainStats](https://api.agilixbuzz.com/docs/#!/Command/GetDomainStats), [ListDomains](https://api.agilixbuzz.com/docs/#!/Command/ListDomains), [RestoreDomain](https://api.agilixbuzz.com/docs/#!/Command/RestoreDomain), [UpdateDomains](https://api.agilixbuzz.com/docs/#!/Command/UpdateDomains) | | ⏫ |
63
456
  | Enrollments | [CreateEnrollments](https://api.agilixbuzz.com/docs/#!/Command/CreateEnrollments), [DeleteEnrollments](https://api.agilixbuzz.com/docs/#!/Command/DeleteEnrollments), [GetEnrollment3](https://api.agilixbuzz.com/docs/#!/Command/GetEnrollment3), [GetEnrollmentActivity](https://api.agilixbuzz.com/docs/#!/Command/GetEnrollmentActivity), [GetEnrollmentGradebook2](https://api.agilixbuzz.com/docs/#!/Command/GetEnrollmentGradebook2), [GetEnrollmentGroupList](https://api.agilixbuzz.com/docs/#!/Command/GetEnrollmentGroupList), [GetEnrollmentMetricsReport](https://api.agilixbuzz.com/docs/#!/Command/GetEnrollmentMetricsReport), [ListEnrollments](https://api.agilixbuzz.com/docs/#!/Command/ListEnrollments), [ListEnrollmentsByTeacher](https://api.agilixbuzz.com/docs/#!/Command/ListEnrollmentsByTeacher), [ListEntityEnrollments](https://api.agilixbuzz.com/docs/#!/Command/ListEntityEnrollments), [ListUserEnrollments](https://api.agilixbuzz.com/docs/#!/Command/ListUserEnrollments), [PutSelfAssessment](https://api.agilixbuzz.com/docs/#!/Command/PutSelfAssessment), [RestoreEnrollment](https://api.agilixbuzz.com/docs/#!/Command/RestoreEnrollment), [UpdateEnrollments](https://api.agilixbuzz.com/docs/#!/Command/UpdateEnrollments) | ❌ | 🔼 |
64
457
  | General | [Echo](https://api.agilixbuzz.com/docs/#!/Command/Echo), [GetCommandList](https://api.agilixbuzz.com/docs/#!/Command/GetCommandList), [GetEntityType](https://api.agilixbuzz.com/docs/#!/Command/GetEntityType), [GetStatus](https://api.agilixbuzz.com/docs/#!/Command/GetStatus), [GetUploadLimits](https://api.agilixbuzz.com/docs/#!/Command/GetUploadLimits), [SendMail](https://api.agilixbuzz.com/docs/#!/Command/SendMail) | ❌ | ⏺ |
65
458
  | Groups | [AddGroupMembers](https://api.agilixbuzz.com/docs/#!/Command/AddGroupMembers), [CreateGroups](https://api.agilixbuzz.com/docs/#!/Command/CreateGroups), [DeleteGroups](https://api.agilixbuzz.com/docs/#!/Command/DeleteGroups), [GetGroup](https://api.agilixbuzz.com/docs/#!/Command/GetGroup), [GetGroupEnrollmentList](https://api.agilixbuzz.com/docs/#!/Command/GetGroupEnrollmentList), [GetGroupList](https://api.agilixbuzz.com/docs/#!/Command/GetGroupList), [RemoveGroupMembers](https://api.agilixbuzz.com/docs/#!/Command/RemoveGroupMembers), [UpdateGroups](https://api.agilixbuzz.com/docs/#!/Command/UpdateGroups) | ❌ | ⏬ |
@@ -5,7 +5,9 @@ require "ostruct"
5
5
 
6
6
  require "agilix/buzz/commands/authentication"
7
7
  require "agilix/buzz/commands/course"
8
+ require "agilix/buzz/commands/domain"
8
9
  require "agilix/buzz/commands/general"
10
+
9
11
  require "agilix/buzz/api"
10
12
  require "agilix/version"
11
13
 
@@ -7,6 +7,7 @@ module Agilix
7
7
 
8
8
  include Agilix::Buzz::Commands::Authentication
9
9
  include Agilix::Buzz::Commands::Course
10
+ include Agilix::Buzz::Commands::Domain
10
11
  include Agilix::Buzz::Commands::General
11
12
 
12
13
  attr_accessor :username, :password, :domain, :token, :token_expiration
@@ -27,6 +28,11 @@ module Agilix
27
28
  post query
28
29
  end
29
30
 
31
+ def authenticated_bulk_post(query = {})
32
+ check_authentication
33
+ bulk_post query
34
+ end
35
+
30
36
  def get(query = {})
31
37
  response = self.class.get(URL_BASE, query: modify_query(query), timeout: 30, headers: headers)
32
38
  end
@@ -35,6 +41,14 @@ module Agilix
35
41
  response = self.class.post(URL_BASE, body: modify_body(query), timeout: 30, headers: headers)
36
42
  end
37
43
 
44
+ def bulk_post(query = {})
45
+ cmd = query.delete(:cmd)
46
+ url = URL_BASE + "?cmd=#{cmd}&_token=#{token}"
47
+ response = self.class.post(url, body: modify_bulk_body(query), timeout: 30, headers: headers)
48
+ end
49
+
50
+ private
51
+
38
52
  def check_authentication
39
53
  if token && token_expiration
40
54
  if token_expiration < Time.now
@@ -43,11 +57,19 @@ module Agilix
43
57
  else
44
58
  response = login username: @username, password: @password, domain: @domain
45
59
  @token = response.dig("response", "user", "token")
46
- @token_expiration = Time.now + (response.dig("response", "user", "authenticationexpirationminutes").to_i * 60 )
60
+ @token_expiration = Time.now + (response.dig("response", "user", "authenticationexpirationminutes").to_i * 60 ) if @token
47
61
  end
48
62
  end
49
63
 
50
- private
64
+ def argument_cleaner(required_params: , optional_params: , options: )
65
+ missing_required = required_params - options.map {|k,v| k.to_sym }
66
+ raise ArgumentError.new("Missing Required Arguments: #{missing_required.join(', ')}") if missing_required.any?
67
+
68
+ all_params = (required_params + optional_params).flatten
69
+ return options.select {|k,v| all_params.include?(k.to_sym)}
70
+ end
71
+
72
+
51
73
 
52
74
  def modify_query(query = {})
53
75
  default_params = {}
@@ -62,6 +84,12 @@ module Agilix
62
84
  default_params.to_json
63
85
  end
64
86
 
87
+ def modify_bulk_body(query = {})
88
+ root_node = query.delete(:root_node)
89
+ default_params = { requests: { root_node.to_sym => query[:body] } }
90
+ default_params.to_json
91
+ end
92
+
65
93
  def headers
66
94
  {
67
95
  "Accept" => "application/json",
@@ -3,7 +3,6 @@ module Agilix
3
3
  module Commands
4
4
  module Authentication
5
5
 
6
-
7
6
  def login_2(username: , password: , domain: )
8
7
  post cmd: "login2", username: "#{domain}/#{username}", password: password
9
8
  end
@@ -0,0 +1,85 @@
1
+ module Agilix
2
+ module Buzz
3
+ module Commands
4
+ module Domain
5
+
6
+ # api = Agilix::Buzz::Api::new
7
+ # api.create_domains [{name: "BuzzTest1", userspace: 'buzz-test-fc-1', parentid: '57025'}]
8
+ def create_domains(items = [])
9
+ options = items.map do |item|
10
+ options = argument_cleaner(required_params: %i( name userspace parentid ), optional_params: %i( reference flags data ), options: item )
11
+ end
12
+ authenticated_bulk_post cmd: "createdomains", root_node: 'domain', body: options
13
+ end
14
+
15
+ # api.delete_domain domainid: '57031'
16
+ def delete_domain(options = {})
17
+ options = argument_cleaner(required_params: %i( domainid ), optional_params: %i( ), options: options )
18
+ authenticated_get cmd: "deletedomain", **options
19
+ end
20
+
21
+ # api.get_domain domainid: '57025'
22
+ def get_domain2(options = {})
23
+ options = argument_cleaner(required_params: %i( domainid ), optional_params: %i( select ), options: options )
24
+ authenticated_get cmd: "getdomain2", **options
25
+ end
26
+ alias_method :get_domain, :get_domain2
27
+
28
+ # api.get_domain_content domainid: '57025'
29
+ def get_domain_content(options = {})
30
+ options = argument_cleaner(required_params: %i( domainid ), optional_params: %i( ), options: options )
31
+ authenticated_get cmd: "getdomaincontent", **options
32
+ end
33
+
34
+ # api.get_domain_enrollment_metrics domainid: '57025'
35
+ def get_domain_enrollment_metrics(options = {})
36
+ options = argument_cleaner(required_params: %i( domainid ), optional_params: %i( skipempty ), options: options )
37
+ authenticated_get cmd: "getdomainenrollmentmetrics", **options
38
+ end
39
+
40
+ # api.get_domain_parent_list domainid: '57025'
41
+ def get_domain_parent_list(options = {})
42
+ options = argument_cleaner(required_params: %i( domainid ), optional_params: %i( ), options: options )
43
+ authenticated_get cmd: "getdomainparentlist", **options
44
+ end
45
+
46
+ # api.get_domain_settings domainid: '57025', path: "AgilixBuzzSettings.xml"
47
+ def get_domain_settings(options = {})
48
+ options = argument_cleaner(required_params: %i( domainid path ), optional_params: %i( includesource ), options: options )
49
+ authenticated_get cmd: "getdomainsettings", **options
50
+ end
51
+ # Optional can use settings in a POST to set settings attributes if needed.
52
+
53
+ # api.get_domain_stats domainid: '57025', options: "users|courses"
54
+ def get_domain_stats(options = {})
55
+ # options = 'users|courses|activecourses|sections|enrollments|activeenrollments|activestudents'
56
+ options = argument_cleaner(required_params: %i( domainid options ), optional_params: %i( includesource ), options: options )
57
+
58
+ authenticated_get cmd: "getdomainstats", **options
59
+ end
60
+
61
+ # api.list_domains domainid: '0' # all domains for user
62
+ # api.list_domains domainid: '57025'
63
+ def list_domains(options = {})
64
+ options = argument_cleaner(required_params: %i( domainid ), optional_params: %i( includedescendantdomains limit show select text query ), options: options )
65
+ authenticated_get cmd: "listdomains", **options
66
+ end
67
+
68
+ # api.restore_domain domainid: '57031'
69
+ def restore_domain(options = {})
70
+ options = argument_cleaner(required_params: %i( domainid ), optional_params: %i( ), options: options )
71
+ authenticated_get cmd: "restoredomain", **options
72
+ end
73
+
74
+ # api.update_domains [{ domainid: "57031", name: "BuzzTestUpdated1", userspace: 'buzz-test-fc-1', parentid: '57025'}]
75
+ def update_domains(items)
76
+ options = items.map do |item|
77
+ options = argument_cleaner(required_params: %i( domainid ), optional_params: %i( name userspace parentid reference flags data ), options: item )
78
+ end
79
+ authenticated_bulk_post cmd: "updatedomains", root_node: 'domain', body: options
80
+ end
81
+
82
+ end
83
+ end
84
+ end
85
+ end
@@ -3,7 +3,6 @@ module Agilix
3
3
  module Commands
4
4
  module General
5
5
 
6
- # api = Agilix::Buzz::Api::new
7
6
  # api.get_status
8
7
  def get_status
9
8
  get cmd: "getstatus", level: 2
@@ -1,3 +1,3 @@
1
1
  module Agilix
2
- VERSION = "0.0.1"
2
+ VERSION = "0.1.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: agilix
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Eggett
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-03-08 00:00:00.000000000 Z
11
+ date: 2019-03-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -187,6 +187,7 @@ files:
187
187
  - lib/agilix/buzz/api.rb
188
188
  - lib/agilix/buzz/commands/authentication.rb
189
189
  - lib/agilix/buzz/commands/course.rb
190
+ - lib/agilix/buzz/commands/domain.rb
190
191
  - lib/agilix/buzz/commands/general.rb
191
192
  - lib/agilix/version.rb
192
193
  homepage: https://github.com/beneggett/agilix