Workshops
List your workshops
List workshops for the authenticated user.
GET /v1/user/me/workshops
Parameters
Name |
Type |
Description |
owner |
string |
Id of the owner, can be an organization or a user |
role |
string |
Filter upon the role of the current user, can be: facilitator or attendee |
since |
string |
Workshops created after created_at |
until |
string |
Workshops created before created_at |
state |
string |
State of the workshop, can be: running or archived |
Response
[
{
"id": "5007d396eb7abf319a000047",
"created_at": "2012-04-12T14:14:23+02:00",
"updated_at": "2012-04-12T14:14:23+02:00",
"title": "A workshop title",
"description": "A workshop description",
"state": "running",
"owner": {
"id": "5007d396eb7abf319a000047",
"name": "Stormz",
"avatar_url": "https://assets.stormz.me/",
"plan": {
"name": "organization",
"workshops_max_attendees": 20
}
},
"current_step_id": null,
"view": {
"card": null,
"card_sub_view": "content",
"sort": "position",
"sort_reverse": false,
"sort_criterium_id": null,
"show": "cards",
"show_clusters": "all",
"show_cluster_ids": [
],
"card_status": "active",
"card_author": "all"
},
"sections": [
{
"id": "5007d396eb7abf319a000047",
"title": "Pros"
}
],
"criteria": [
{
"id": "5007d396eb7abf319a000047",
"title": "Feasible",
"scale": 1,
"current_scale": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"ratings": [
]
}
],
"vote_limit": {
"positive": -1,
"negative": -1,
"max_positive": 3,
"max_negative": 3
},
"daily_mail": true,
"change_step_notifications": true,
"force_sync": false,
"public_url": "https://stormz.me/workshops/5007d396eb7abf319a000047"
}
]
Join a workshop with an access code
POST /v1/workshops/join
Parameters
Name |
Type |
Description |
access_code |
string |
Required the workshop’s access_code (with or without dashes) |
Example
{
"access_code": "0000000"
}
Response
Note: The return status code is 200 to bypass a bug with Internet Explorer 8, which remove all http headers when we return a 204.
Create a workshop
Create a workshop for the authenticated user.
POST /v1/workshops
Parameters
With Content-type
as application/json
To create a workshop with your parameters
Name |
Type |
Description |
title |
string |
title of the workshop |
description |
string |
short description |
daily_mail |
boolean |
enable or disable the daily mail (defaults true) |
change_step_notifications |
boolean |
enable or disable the change step notifications (defaults true) |
force_sync |
boolean |
force the synchronization of the screen for participants |
view.card |
string |
the card id showed to participants |
view.sort |
string |
default sort of cards (position, random, score, criterium_average) |
view.sort_criterium_id |
string |
id of criterion to take when sorting by criterium_average |
view.sort_reverse |
boolean |
reverse the sort choosed |
view.show |
string |
default view of cards (cards, bars or bubbles) |
view.show_clusters |
string |
show clusters (all, none or multi) |
view.show_cluster_ids |
array |
ids of the cluster to show when show_clusters is multi |
view.card_status |
string |
default card status filter (all, active or aside) |
view.card_author |
string |
default card author filter (all, active or other) |
view.card_sub_view |
string |
sub view showed when a card is showed (content, votes, ratings-overall or ratings-user) |
To create a workshop with a template
Name |
Type |
Description |
title |
string |
title of the workshop |
template |
string |
the id of the template. See the templates API |
To create a workshop with a stormz file
Name |
Type |
Description |
url |
string |
an url to a file as stormz format |
To copy a workshop
Name |
Type |
Description |
title |
string |
title of the workshop |
workshop_id |
string |
the id of the workshop you want to copy |
Example
{
"title": "A workshop title",
"description": "A workshop description"
}
Response
{
"id": "5007d396eb7abf319a000047",
"created_at": "2012-04-12T14:14:23+02:00",
"updated_at": "2012-04-12T14:14:23+02:00",
"title": "A workshop title",
"description": "A workshop description",
"state": "running",
"owner": {
"id": "5007d396eb7abf319a000047",
"name": "Stormz",
"avatar_url": "https://assets.stormz.me/",
"plan": {
"name": "organization",
"workshops_max_attendees": 20
}
},
"current_step_id": null,
"view": {
"card": null,
"card_sub_view": "content",
"sort": "position",
"sort_reverse": false,
"sort_criterium_id": null,
"show": "cards",
"show_clusters": "all",
"show_cluster_ids": [
],
"card_status": "active",
"card_author": "all"
},
"sections": [
{
"id": "5007d396eb7abf319a000047",
"title": "Pros"
}
],
"criteria": [
{
"id": "5007d396eb7abf319a000047",
"title": "Feasible",
"scale": 1,
"current_scale": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"ratings": [
]
}
],
"vote_limit": {
"positive": -1,
"negative": -1,
"max_positive": 3,
"max_negative": 3
},
"daily_mail": true,
"change_step_notifications": true,
"force_sync": false,
"public_url": "https://stormz.me/workshops/5007d396eb7abf319a000047"
}
Create a workshop in an organization
POST /v1/organizations/:organization_id/workshops
Parameters
Name |
Type |
Description |
title |
string |
title of the workshop |
description |
string |
short description |
daily_mail |
boolean |
enable or disable the daily mail (defaults true) |
change_step_notifications |
boolean |
enable or disable the change step notifications (defaults true) |
force_sync |
boolean |
force the synchronization of the screen for participants |
view.card |
string |
the card id showed to participants |
view.sort |
string |
default sort of cards (position, random, score, criterium_average) |
view.sort_criterium_id |
string |
id of criterion to take when sorting by criterium_average |
view.sort_reverse |
boolean |
reverse the sort choosed |
view.show |
string |
default view of cards (cards, bars or bubbles) |
view.show_clusters |
string |
show clusters (all, none or multi) |
view.show_cluster_ids |
array |
ids of the cluster to show when show_clusters is multi |
view.card_status |
string |
default card status filter (all, active or aside) |
view.card_author |
string |
default card author filter (all, active or other) |
view.card_sub_view |
string |
sub view showed when a card is showed (content, votes, ratings-overall or ratings-user) |
Example
{
"title": "A workshop title",
"description": "A workshop description"
}
Response
{
"id": "5007d396eb7abf319a000047",
"created_at": "2012-04-12T14:14:23+02:00",
"updated_at": "2012-04-12T14:14:23+02:00",
"title": "A workshop title",
"description": "A workshop description",
"state": "running",
"owner": {
"id": "5007d396eb7abf319a000047",
"name": "Stormz",
"avatar_url": "https://assets.stormz.me/",
"plan": {
"name": "organization",
"workshops_max_attendees": 20
}
},
"current_step_id": null,
"view": {
"card": null,
"card_sub_view": "content",
"sort": "position",
"sort_reverse": false,
"sort_criterium_id": null,
"show": "cards",
"show_clusters": "all",
"show_cluster_ids": [
],
"card_status": "active",
"card_author": "all"
},
"sections": [
{
"id": "5007d396eb7abf319a000047",
"title": "Pros"
}
],
"criteria": [
{
"id": "5007d396eb7abf319a000047",
"title": "Feasible",
"scale": 1,
"current_scale": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"ratings": [
]
}
],
"vote_limit": {
"positive": -1,
"negative": -1,
"max_positive": 3,
"max_negative": 3
},
"daily_mail": true,
"change_step_notifications": true,
"force_sync": false,
"public_url": "https://stormz.me/workshops/5007d396eb7abf319a000047"
}
Get a workshop
GET /v1/workshops/:id
Response
{
"id": "5007d396eb7abf319a000047",
"created_at": "2012-04-12T14:14:23+02:00",
"updated_at": "2012-04-12T14:14:23+02:00",
"title": "A workshop title",
"description": "A workshop description",
"state": "running",
"owner": {
"id": "5007d396eb7abf319a000047",
"name": "Stormz",
"avatar_url": "https://assets.stormz.me/",
"plan": {
"name": "organization",
"workshops_max_attendees": 20
}
},
"current_step_id": null,
"view": {
"card": null,
"card_sub_view": "content",
"sort": "position",
"sort_reverse": false,
"sort_criterium_id": null,
"show": "cards",
"show_clusters": "all",
"show_cluster_ids": [
],
"card_status": "active",
"card_author": "all"
},
"sections": [
{
"id": "5007d396eb7abf319a000047",
"title": "Pros"
}
],
"criteria": [
{
"id": "5007d396eb7abf319a000047",
"title": "Feasible",
"scale": 1,
"current_scale": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"ratings": [
]
}
],
"vote_limit": {
"positive": -1,
"negative": -1,
"max_positive": 3,
"max_negative": 3
},
"daily_mail": true,
"change_step_notifications": true,
"force_sync": false,
"public_url": "https://stormz.me/workshops/5007d396eb7abf319a000047"
}
Edit a workshop
PUT /v1/workshops/:id
Parameters
Name |
Type |
Description |
state |
string |
the state of the workshop (can be running or archived) |
vote_limit.positive |
integer |
the limit of positive points that can be spend on cards. Note: -1 is unlimited. |
vote_limit.negative |
integer |
the limit of negative points that can be spend on cards. Note: -1 is unlimited. |
vote_limit.max_positive |
integer |
the maximum positive points that can be spend on a single card. Note: always > 0 |
vote_limit.max_negative |
integer |
the maximum negative points that can be spend on a single card. Note: always > 0 |
title |
string |
title of the workshop |
description |
string |
short description |
daily_mail |
boolean |
enable or disable the daily mail (defaults true) |
change_step_notifications |
boolean |
enable or disable the change step notifications (defaults true) |
force_sync |
boolean |
force the synchronization of the screen for participants |
view.card |
string |
the card id showed to participants |
view.sort |
string |
default sort of cards (position, random, score, criterium_average) |
view.sort_criterium_id |
string |
id of criterion to take when sorting by criterium_average |
view.sort_reverse |
boolean |
reverse the sort choosed |
view.show |
string |
default view of cards (cards, bars or bubbles) |
view.show_clusters |
string |
show clusters (all, none or multi) |
view.show_cluster_ids |
array |
ids of the cluster to show when show_clusters is multi |
view.card_status |
string |
default card status filter (all, active or aside) |
view.card_author |
string |
default card author filter (all, active or other) |
view.card_sub_view |
string |
sub view showed when a card is showed (content, votes, ratings-overall or ratings-user) |
Example
{
"title": "My title",
"state": "running"
}
Response
Get workshop’s user roles
GET /v1/workshops/:workshop_id/user_roles
Response
[
{
"id": "5007d396eb7abf319a000047",
"user_id": "5007d396eb7abf319a000047",
"role": "facilitator"
}
]
Update the role of a user
PUT /v1/workshops/:workshop_id/user_roles/:id
Parameters
Name |
Type |
Description |
role |
string |
Required the role (facilitator or participant) |
Response
Get workshop’s access code
GET /v1/workshops/:workshop_id/access_code
Response
{
"access_code": "0000000"
}
Delete a workshop
DELETE /v1/workshops/:id
Response
Delete all votes
DELETE /v1/workshops/:id/votes
Response
Delete all ratings
DELETE /v1/workshops/:id/ratings
Response
Delete all items
DELETE /v1/workshops/:id/items
Response
DELETE /v1/workshops/:id/comments
Response
Delete all attachments
DELETE /v1/workshops/:id/attachments
Response
Send a message
This will create a notification of type ‘message’ for all participants.
POST /v1/workshops/:id/messages
Parameters
Name |
Type |
Description |
content |
string |
Required content of the message |
include_me |
boolean |
include the current user in the recipients |
Example
{
"content": "My message",
"include_me": false
}
Response