Blazor Diffusion

<back to all web services

GetAlbumUserData

User
Requires Authentication
import 'package:servicestack/servicestack.dart';

class GetAlbumUserDataResponse implements IConvertible
{
    int? albumId;
    List<int>? likedArtifacts = [];

    GetAlbumUserDataResponse({this.albumId,this.likedArtifacts});
    GetAlbumUserDataResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'albumId': albumId,
        'likedArtifacts': JsonConverters.toJson(likedArtifacts,'List<int>',context!)
    };

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

// @ValidateRequest(Validator="IsAuthenticated")
class GetAlbumUserData implements IGet, IConvertible
{
    int? albumId;

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

    fromMap(Map<String, dynamic> json) {
        albumId = json['albumId'];
        return this;
    }

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

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

TypeContext _ctx = TypeContext(library: 'blazordiffusion.com', types: <String, TypeInfo> {
    'GetAlbumUserDataResponse': TypeInfo(TypeOf.Class, create:() => GetAlbumUserDataResponse()),
    'GetAlbumUserData': TypeInfo(TypeOf.Class, create:() => GetAlbumUserData()),
});

Dart GetAlbumUserData 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 /jsv/reply/GetAlbumUserData HTTP/1.1 
Host: blazordiffusion.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	albumId: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	albumId: 0,
	likedArtifacts: 
	[
		0
	]
}