AffiliationAPI

<back to all web services

PutGroupAffiliateTokensRequest

Requires Authentication
The following routes are available for this service:
PUT/v4/groups/{groupId}/group-affiliate-tokens/{guid}Update user's group affiliate info for specific programList of user's group currently connected affiliate programs (including assigned GUID per program) may be retrieved by calling the GET /v3/group-affiliate-tokens endpoint.
Please note that parameter names must match the information we have for the affiliate network, this information may be obtained using the GET /v3/affiliate-programs endpoint.
import 'package:servicestack/servicestack.dart';

abstract class AffiliateTokensRequestBase
{
    // @DataMember(Name="username", IsRequired=true)
    String? username;

    // @DataMember(Name="parameters", IsRequired=true)
    Map<String,String?>? parameters;

    AffiliateTokensRequestBase({this.username,this.parameters});
    AffiliateTokensRequestBase.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        username = json['username'];
        parameters = JsonConverters.toStringMap(json['parameters']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'username': username,
        'parameters': parameters
    };

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

// @DataContract
class BaseResponse implements IConvertible
{
    // @DataMember(Name="responseStatus")
    ResponseStatus? responseStatus;

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

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

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

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

// @DataContract
class PutGroupAffiliateTokensResponse extends BaseResponse implements IConvertible
{
    // @DataMember
    bool? success;

    // @DataMember
    String? affiliateTokensId;

    PutGroupAffiliateTokensResponse({this.success,this.affiliateTokensId});
    PutGroupAffiliateTokensResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        success = json['success'];
        affiliateTokensId = json['affiliateTokensId'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'success': success,
        'affiliateTokensId': affiliateTokensId
    });

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

// @DataContract
class PutGroupAffiliateTokensRequest extends AffiliateTokensRequestBase implements IConvertible
{
    // @DataMember(Name="groupId", IsRequired=true)
    int? groupId;

    // @DataMember(Name="guid", IsRequired=true)
    String? guid;

    PutGroupAffiliateTokensRequest({this.groupId,this.guid});
    PutGroupAffiliateTokensRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        groupId = json['groupId'];
        guid = json['guid'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'groupId': groupId,
        'guid': guid
    });

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

TypeContext _ctx = TypeContext(library: 'affiliation_api_pr_4587.qa.platform.georiot.com', types: <String, TypeInfo> {
    'AffiliateTokensRequestBase': TypeInfo(TypeOf.AbstractClass),
    'BaseResponse': TypeInfo(TypeOf.Class, create:() => BaseResponse()),
    'PutGroupAffiliateTokensResponse': TypeInfo(TypeOf.Class, create:() => PutGroupAffiliateTokensResponse()),
    'PutGroupAffiliateTokensRequest': TypeInfo(TypeOf.Class, create:() => PutGroupAffiliateTokensRequest()),
});

Dart PutGroupAffiliateTokensRequest DTOs

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.

PUT /v4/groups/{groupId}/group-affiliate-tokens/{guid} HTTP/1.1 
Host: affiliation-api-pr-4587.qa.platform.georiot.com 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"groupId":0,"guid":"String","username":"String","parameters":{"String":"String"}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"success":false,"affiliateTokensId":"String","responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}