Allows a new team to be created.

View interactive version here

Request Parameters

Parameter Required Type Description
teamId No string An optional teamId to use
teamName Yes string A display name to use
teamType Yes string The type of team to be created

Response Parameters

A response containing the details of the team that was created

Parameter Type Description
members Player[] The team members
owner Player A summary of the owner
scriptData ScriptData A JSON Map of any data added either to the Request or the Response by your Cloud Code
teamId string The Id of the team
teamName string The team name
teamType string The team type

Nested types


A collection of arbitrary data that can be added to a message via a Cloud Code script.

Parameter Type Description
myKey string An arbitrary data key
myValue JSON An arbitrary data value.


A nested object that represents a player.

Parameter Type Description
achievements string[] The achievements of the Player
displayName string The display name of the Player
externalIds JSON The external Id's of the Player
id string The Id of the Player
online boolean The online status of the Player
scriptData JSON The script data of the Player
virtualGoods string[] The virtual goods of the Player

Error Codes

Key Value Description
teamType INVALID The team type short code supplied does not exist
teamType MAX_OWNED_REACHED The current player has reached the ownership limit of the supplied teamType
teamType MAX_TEAMS_REACHED The current player has reached the membership limit of the supplied teamType
teamId NOT_UNIQUE The teamId supplied already exists
authentication NOTAUTHORIZED The player is not authorized to perform the request
teamName REQUIRED The teamName is required but not provided
teamType REQUIRED The teamType is required but not provided

Code Samples


    using GameSparks.Api;
    using GameSparks.Api.Requests;
    using GameSparks.Api.Responses;
    new CreateTeamRequest()
        .Send((response) => {
        GSEnumerable<CreateTeamResponse._Player> members = response.Members;
        CreateTeamResponse._Player owner = response.Owner;
        GSData scriptData = response.ScriptData;
        string teamId = response.TeamId;
        string teamName = response.TeamName;
        string teamType = response.TeamType;

ActionScript 3

    import com.gamesparks.*;
    import com.gamesparks.api.requests.*;
    import com.gamesparks.api.responses.*;
    import com.gamesparks.api.types.*;

        .send(function(response:com.gamesparks.api.responses.CreateTeamResponse):void {
        var members:Vector.<Player> = response.getMembers(); 
        var owner:Player = response.getOwner(); 
        var scriptData:ScriptData = response.getScriptData(); 
        var teamId:String = response.getTeamId(); 
        var teamName:String = response.getTeamName(); 
        var teamType:String = response.getTeamType(); 


    #import "GS.h"
    #import "GSAPI.h"
    GSCreateTeamRequest* request = [[GSCreateTeamRequest alloc] init];
    [request setTeamId:teamId;
    [request setTeamName:teamName;
    [request setTeamType:teamType;
    [request setCallback:^ (GSCreateTeamResponse* response) {
    NSArray* members = [response getMembers]; 
    GSPlayer* owner = [response getOwner]; 
    NSDictionary* scriptData = [response getScriptData]; 
    NSString* teamId = [response getTeamId]; 
    NSString* teamName = [response getTeamName]; 
    NSString* teamType = [response getTeamType]; 
    [gs send:request];


    #include <GameSparks/generated/GSRequests.h>
    using namespace GameSparks::Core;
    using namespace GameSparks::Api::Responses;
    using namespace GameSparks::Api::Requests;

    void CreateTeamRequest_Response(GS& gsInstance, const CreateTeamResponse& response) {
    gsstl:vector<Types::Player*> members = response.getMembers(); 
    Types::Player* owner = response.getOwner(); 
    GSData scriptData = response.getScriptData(); 
    gsstl::string teamId = response.getTeamId(); 
    gsstl::string teamName = response.getTeamName(); 
    gsstl::string teamType = response.getTeamType(); 

    CreateTeamRequest request(gsInstance);


import com.gamesparks.sdk.api.autogen.GSRequestBuilder.CreateTeamRequest;
import com.gamesparks.sdk.api.autogen.GSResponseBuilder.CreateTeamResponse;
import com.gamesparks.sdk.api.autogen.GSTypes.*;
import com.gamesparks.sdk.api.GSEventListener;

    .send(new GSEventListener<CreateTeamResponse>() {
        public void onEvent(CreateTeamResponse response) {
            List<Player> members = response.getMembers(); 
            Player owner = response.getOwner(); 
            String teamId = response.getTeamId(); 
            String teamName = response.getTeamName(); 
            String teamType = response.getTeamType(); 

Cloud Code

    var request = new SparkRequests.CreateTeamRequest();
    request.teamId = ...;
    request.teamName = ...;
    request.teamType = ...;
    var response = request.Send();

var members = response.members; 
var owner = response.owner; 
var scriptData = response.scriptData; 
var teamId = response.teamId; 
var teamName = response.teamName; 
var teamType = response.teamType;