TechStacks!

<back to all web services

SetOrganizationMembers

Organization
Requires Authentication
The following routes are available for this service:
POST/orgs/{OrganizationId}/members/set
import 'package:servicestack/servicestack.dart';

class SetOrganizationMembersResponse implements IConvertible
{
    List<int>? userIdsAdded;
    List<int>? userIdsRemoved;
    ResponseStatus? responseStatus;

    SetOrganizationMembersResponse({this.userIdsAdded,this.userIdsRemoved,this.responseStatus});
    SetOrganizationMembersResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        userIdsAdded = JsonConverters.fromJson(json['userIdsAdded'],'List<int>',context!);
        userIdsRemoved = JsonConverters.fromJson(json['userIdsRemoved'],'List<int>',context!);
        responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'userIdsAdded': JsonConverters.toJson(userIdsAdded,'List<int>',context!),
        'userIdsRemoved': JsonConverters.toJson(userIdsRemoved,'List<int>',context!),
        'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
    };

    getTypeName() => "SetOrganizationMembersResponse";
    TypeContext? context = _ctx;
}

class SetOrganizationMembers implements IPost, IConvertible
{
    int? organizationId;
    List<String>? githubUserNames;
    List<String>? twitterUserNames;
    List<String>? emails;
    bool? removeUnspecifiedMembers;
    bool? isOwner;
    bool? isModerator;
    bool? denyPosts;
    bool? denyComments;
    bool? denyAll;

    SetOrganizationMembers({this.organizationId,this.githubUserNames,this.twitterUserNames,this.emails,this.removeUnspecifiedMembers,this.isOwner,this.isModerator,this.denyPosts,this.denyComments,this.denyAll});
    SetOrganizationMembers.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        organizationId = json['organizationId'];
        githubUserNames = JsonConverters.fromJson(json['githubUserNames'],'List<String>',context!);
        twitterUserNames = JsonConverters.fromJson(json['twitterUserNames'],'List<String>',context!);
        emails = JsonConverters.fromJson(json['emails'],'List<String>',context!);
        removeUnspecifiedMembers = json['removeUnspecifiedMembers'];
        isOwner = json['isOwner'];
        isModerator = json['isModerator'];
        denyPosts = json['denyPosts'];
        denyComments = json['denyComments'];
        denyAll = json['denyAll'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'organizationId': organizationId,
        'githubUserNames': JsonConverters.toJson(githubUserNames,'List<String>',context!),
        'twitterUserNames': JsonConverters.toJson(twitterUserNames,'List<String>',context!),
        'emails': JsonConverters.toJson(emails,'List<String>',context!),
        'removeUnspecifiedMembers': removeUnspecifiedMembers,
        'isOwner': isOwner,
        'isModerator': isModerator,
        'denyPosts': denyPosts,
        'denyComments': denyComments,
        'denyAll': denyAll
    };

    getTypeName() => "SetOrganizationMembers";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'techstacks.io', types: <String, TypeInfo> {
    'SetOrganizationMembersResponse': TypeInfo(TypeOf.Class, create:() => SetOrganizationMembersResponse()),
    'SetOrganizationMembers': TypeInfo(TypeOf.Class, create:() => SetOrganizationMembers()),
});

Dart SetOrganizationMembers DTOs

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

HTTP + JSV

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

POST /orgs/{OrganizationId}/members/set HTTP/1.1 
Host: techstacks.io 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	organizationId: 0,
	githubUserNames: 
	[
		String
	],
	twitterUserNames: 
	[
		String
	],
	emails: 
	[
		String
	],
	removeUnspecifiedMembers: False,
	isOwner: False,
	isModerator: False,
	denyPosts: False,
	denyComments: False,
	denyAll: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	userIdsAdded: 
	[
		0
	],
	userIdsRemoved: 
	[
		0
	],
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}