MyApp

<back to all web services

QueryProfile

Game
package dtos

import (
	ss "github.com/ServiceStack/servicestack-go"
)

type PlayerRole string

const (
	PlayerRoleLeader    PlayerRole = "Leader"
	PlayerRolePlayer               = "Player"
	PlayerRoleNonPlayer            = "NonPlayer"
)

type PlayerRegion string

const (
	PlayerRegionAfrica      PlayerRegion = "Africa"
	PlayerRegionAmericas                 = "Americas"
	PlayerRegionAsia                     = "Asia"
	PlayerRegionAustralasia              = "Australasia"
	PlayerRegionEurope                   = "Europe"
)

type Profile struct {
	ss.AuditBase
	Id          int               `json:"id,omitempty"`
	Role        PlayerRole        `json:"role,omitempty"`
	Region      PlayerRegion      `json:"region,omitempty"`
	Username    *string           `json:"username,omitempty"`
	HighScore   int64             `json:"highScore,omitempty"`
	GamesPlayed int64             `json:"gamesPlayed,omitempty"`
	Energy      int               `json:"energy,omitempty"`
	ProfileUrl  *string           `json:"profileUrl,omitempty"`
	CoverUrl    *string           `json:"coverUrl,omitempty"`
	Meta        map[string]string `json:"meta,omitempty"`
}

type QueryProfile struct {
	ss.QueryDb
}

type Todo struct {
	Id         int64  `json:"id,omitempty"`
	Text       string `json:"text"`
	IsFinished bool   `json:"isFinished,omitempty"`
}

Go QueryProfile 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/QueryProfile HTTP/1.1 
Host: blazor-gallery.servicestack.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	skip: 0,
	take: 0,
	orderBy: String,
	orderByDesc: String,
	include: String,
	fields: String,
	meta: 
	{
		String: String
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	offset: 0,
	total: 0,
	results: 
	[
		{
			id: 0,
			role: Leader,
			region: Africa,
			username: String,
			highScore: 0,
			gamesPlayed: 0,
			energy: 0,
			profileUrl: String,
			coverUrl: String,
			meta: 
			{
				String: String
			},
			createdDate: 0001-01-01,
			createdBy: String,
			modifiedDate: 0001-01-01,
			modifiedBy: String,
			deletedDate: 0001-01-01,
			deletedBy: String
		}
	],
	meta: 
	{
		String: String
	},
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}