...
This document will help to understand how to add an activity in a goupgroup
Background
We can enable any activity type for adding to a group
We can config configure form API for that
Form creation
create formThis form will be used to populate the activity types that can be added for a group. If there is no form created we won’t be able to add any activity.
End Point:
Code Block |
---|
POST: /data/v1/form/create |
Request Body
Code Block |
---|
{
"request": {
"type": "group",
"subType": "supported_activities",
"action": "list",
"data": {
"templateName": "supported_activities",
"action": "list",
"fields": [
{
"index": 0,
"activityType": "Explanation Content",
"objectType": "Content",
"isEnabled": true,
"sortBy": [
{
"name": "asc"
}
],
"searchQuery": "{\"request\":{\"filters\":{\"primaryCategory\":[\"Explanation Content\"],\"status\":[\"Live\"],\"objectType\":[\"Content\"]},\"fields\":[\"name\",\"appIcon\",\"contentType\",\"identifier\",\"objectType\",\"createdBy\"]}}",
"title": "Explanation Content",
"translations": "{\"en\":\"Explanation Content\"}"
},
{
"index": 1,
"activityType": "Learning Resource",
"objectType": "Content",
"isEnabled": true,
"sortBy": [
{
"name": "asc"
}
],
"searchQuery": "{\"request\":{\"filters\":{\"primaryCategory\":[\"Learning Resource\"],\"status\":[\"Live\"],\"objectType\":[\"Content\"]},\"fields\":[\"name\",\"appIcon\",\"contentType\",\"identifier\",\"objectType\",\"createdBy\"]}}",
"title": "Learning Resource",
"translations": "{\"en\":\"Learning Resource\"}"
},
{
"index": 2,
"activityType": "Course",
"objectType": "Content",
"isEnabled": true,
"sortBy": [
{
"name": "asc"
}
],
"searchQuery": "{\"request\":{\"filters\":{\"primaryCategory\":[\"Course\"],\"batches.status\":1,\"batches.enrollmentType\":\"open\",\"objectType\":[\"Content\"],\"status\":[\"Live\"]},\"fields\":[\"name\",\"appIcon\",\"contentType\",\"identifier\",\"objectType\",\"createdBy\"]}}",
"title": "Course",
"translations": "{\"en\": \"Course\", \"as\": \"পাঠ্যক্ৰমসমুহ\", \"bn\": \"পাঠ্যধারাগুলি\", \"gu\":\"કોર્સ\", \"hi\":\"कोर्स\", \"kn\":\"ಕೋರ್ಸ್ ಗಳು\", \"mr\":\"कोर्सेस\", \"or\":\"ପାଠ୍ୟକ୍ରମଗୁଡ଼ିକ\", \"pa\":\"ਕੋਰਸਿਸ\", \"ta\":\"பாடநெறிகள்\", \"te\":\"కోర్సులు\", \"ur\":\"کورسز\"}"
},
{
"index": 3,
"activityType": "Practice Question Set",
"objectType": "Content",
"isEnabled": true,
"sortBy": [
{
"name": "asc"
}
],
"searchQuery": "{\"request\":{\"filters\":{\"primaryCategory\":[\"Practice Question Set\"],\"status\":[\"Live\"],\"objectType\":[\"Content\"]},\"fields\":[\"name\",\"appIcon\",\"contentType\",\"identifier\",\"objectType\",\"createdBy\"]}}",
"title": "Practice Question Set",
"translations": "{\"en\":\"Practice Question Set\"}"
} |
...
] |
...
} } |
...
}
|
Refer the below table to find more about the fields
Field | type | description |
---|---|---|
index | number | For sorting in frontend |
activityType | string | Activity type which needs to be added to group |
objectType | string | Type of the object |
isEnabled | boolean | Indicates whether the activityType is to be displayed |
sortBy | Object | Used for any custom sort based on any property |
searchQuery | stringified object | query needs to be called with search API when a activity is selected |
title | string | Activity types title which is used to display in front end |
translations | stringified object | provide the translations to handle localisation |
Fetching form data
Endpoint
Code Block |
---|
data/v1/form/read |
Request
Code Block |
---|
{ "request": { "type": "group", "subType": "supported_activities", |
...
" |
...
action": " |
...
list" |
...
|
...
}
} |
Response
Code Block |
---|
{ "id": "api.form.read", "params": |
...
{ " |
...
resmsgid": " |
...
ca4e73c4-ce1c-4208-a621-7ddfc6bde86e", "msgid": "47e955db-f3b1-4a4a-a1dc-242f6454d013", |
...
"status": "successful" }, "responseCode": "OK", "result": { "form": { |
...
"type": "group", "subtype": "supported_activities", |
...
" |
...
action": |
...
"list", "component": "*", "framework": "*", " |
...
data": |
...
{ "templateName": "supported_activities", |
...
" |
...
action": " |
...
list", "fields": [ |
...
{ "index": 0, |
...
|
...
"activityType": "Explanation Content", "objectType": "Content", |
...
"isEnabled": true, "sortBy": |
...
[ |
...
{ |
...
"name": "asc" } |
...
], "searchQuery": "{\"request\":{\"filters\":{\"primaryCategory\":[\"Explanation Content |
...
\"],\"status\":[\"Live |
...
\"],\"objectType\" |
...
:[\" |
...
Content\"] |
...
} |
...
,\"fields\":[\"name\",\"appIcon\",\"contentType\",\"identifier\",\"objectType\",\"createdBy\"]}}", |
...
|
...
"title": |
...
"Explanation Content", "translations": "{\"en\":\"Explanation Content\"}" |
...
|
...
|
...
}, { |
...
|
...
"index": 1, " |
...
activityType": "Learning |
...
Resource", |
...
"objectType": "Content", |
...
|
...
"isEnabled": true, "sortBy": [ |
...
{ "name": "asc" |
...
|
...
} |
...
|
...
],
|
...
"searchQuery": "{\"request\":{\"filters\":{\"primaryCategory\":[\" |
...
Learning Resource\"],\"status\":[\"Live\"],\"objectType\":[\"Content\"]},\" |
...
fields\":[\" |
...
name\",\"appIcon\" |
...
,\" |
...
contentType\" |
...
,\" |
...
identifier\" |
...
,\"objectType\" |
...
,\" |
...
createdBy\"]}} |
...
", "title": "Learning Resource", "translations": "{\"en\":\"Learning Resource\"}" }, { "index": 2, "activityType": "Course", " |
...
objectType": " |
...
Content", "isEnabled": true, " |
...
sortBy": |
...
[ { "name": "asc" |
...
} |
...
], |
...
"searchQuery": "{\"request\":{\"filters\":{\"primaryCategory\":[\"Course\"],\"batches.status\":1,\"batches.enrollmentType\":\"open\",\"objectType\":[\"Content\"],\"status\":[\"Live\"]},\"fields\":[\"name\",\"appIcon\",\"contentType\",\"identifier\",\"objectType\",\"createdBy\"]}}", |
...
" |
...
title": |
...
"Course", |
...
"translations": "{\"en\": \"Course\", \"as\": \"পাঠ্যক্ৰমসমুহ\", \"bn\": \"পাঠ্যধারাগুলি\", \"gu\":\"કોર્સ\", \"hi\":\"कोर्स\", \"kn\":\"ಕೋರ್ಸ್ ಗಳು\", \"mr\":\"कोर्सेस\", \"or\":\"ପାଠ୍ୟକ୍ରମଗୁଡ଼ିକ\", \"pa\":\"ਕੋਰਸਿਸ\", \"ta\":\"பாடநெறிகள்\", \"te\":\"కోర్సులు\", \"ur\":\"کورسز\"}" } ] |
...
}, |
...
"created_on": "2021-03-04T16:36:03.084Z", |
...
"last_modified_on": "2020-11-20T08:23:59.301Z", "rootOrgId": "*" } }, |
...
"ts": "2021-03-09T04:09:33.853Z",
"ver": "1.0"
} |
Add activity request
The request for adding activity to a group
Endpoint
Code Block |
---|
group/v1/update |
Request
Code Block |
---|
{ "request": { "activities" : { "add": [ { " |
...
id": " |
...
do_31298128908016844817", // do_id of content "type": "Course" // activity type |
...
} ] } } } |
Response
Code Block |
---|
{ "id": "api.group.update", "ver": "v1", "ts": "2021-03-09 04:15:52:992+0000", "params": null, "result": |
...
{ "response": "success" }, "responseCode": |
...
Screen shots
...
200
} |
Steps for adding activity for group
Open a group and click on add activity button
...
2. Select any activity type u want to add
...
3. Select any activity you want to add and click on Add to group
...