YM REST Services

<back to all web services

MemberGroups

Requires Authentication
Requires any of the roles:admin, oauthadmin, member, oauthmember
The following routes are available for this service:
POST/Ams/{ClientID}/MemberGroupsCreate relationships between the supplied Member ID and Group Code.There are three types of relationships that may be created for a group: Member, Administrator and Representative. When adding a member to a group as a member, 'IsPrimaryGroup' should be specified. When adding a member to a group as a 'Representative', a Title should be specified in the 'AddGroupRepTitle' argument. If the title does not exist, it will be created automatically.
PUT/Ams/{ClientID}/MemberGroupsRemove relationships between the supplied Member ID and Group Code.There are three types of relationships that may be removed for a group: Member, Administrator and Representative. When removing a member from a group as a 'Representative', a 'Title' should be specified.
GET/Ams/{ClientID}/Member/{MemberID}/GroupsReturn a list of groups for a member.
MemberGroups Parameters:
NameParameterData TypeRequiredDescription
PageNumberbodyintNo
PageSizebodyintNo
OffSetbodyintNo
StatusbodyStatusNo

Allowable Values

  • None
  • Joined
  • Pending
  • NotJoined
  • JoinedOrPending
GroupTypeIdbodyintNo
SearchTermbodystringNo
AddAsMemberbodybool?No
IsPrimaryGroupbodybool?No
AddAsGroupAdminbodybool?No
AddGroupRepTitlebodystringNo
RemoveAsMemberbodybool?No
RemoveAsGroupAdminbodybool?No
RemoveGroupRepTitlebodystringNo
IDbodyint?No
GroupCodebodystringNo
MemberBaseSharedDto Parameters:
NameParameterData TypeRequiredDescription
MemberIDformintNo
BaseSharedDto Parameters:
NameParameterData TypeRequiredDescription
ClientIDformintNo
ResponseStatusformResponseStatusNo
BypassCacheformboolNo
DateCachedformDateTimeNo
DeviceformDeviceNo
MemberGroupsResponse Parameters:
NameParameterData TypeRequiredDescription
GroupTypeListformList<GroupType>No
GroupType Parameters:
NameParameterData TypeRequiredDescription
IdformintNo
TypeNameformstringNo
SortIndexformdouble?No
GroupsformList<Group>No
Group Parameters:
NameParameterData TypeRequiredDescription
IdformintNo
NameformstringNo
StatusformStatus?No
JoinOptionformJoinOption?No

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /Ams/{ClientID}/MemberGroups HTTP/1.1 
Host: ws.yourmembership.com 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"PageNumber":0,"PageSize":0,"OffSet":0,"Status":"None","GroupTypeId":0,"SearchTerm":"String","AddAsMember":false,"IsPrimaryGroup":false,"AddAsGroupAdmin":false,"AddGroupRepTitle":"String","RemoveAsMember":false,"RemoveAsGroupAdmin":false,"RemoveGroupRepTitle":"String","ID":0,"GroupCode":"String","MemberID":0,"ClientID":0,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"BypassCache":false,"DateCached":"2024-05-03T09:35:41.3262183-04:00","Device":"Desktop"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"GroupTypeList":[{"Id":0,"TypeName":"String","SortIndex":0,"Groups":[{"Id":0,"Name":"String","Status":"None","JoinOption":"CanJoin"}]}],"PageNumber":0,"PageSize":0,"OffSet":0,"Status":"None","GroupTypeId":0,"SearchTerm":"String","AddAsMember":false,"IsPrimaryGroup":false,"AddAsGroupAdmin":false,"AddGroupRepTitle":"String","RemoveAsMember":false,"RemoveAsGroupAdmin":false,"RemoveGroupRepTitle":"String","ID":0,"GroupCode":"String","MemberID":0,"ClientID":0,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"BypassCache":false,"DateCached":"2024-05-03T09:35:41.3324078-04:00","Device":"Desktop"}