MyApp

<back to all web services

QueryFileSystemItems

Files
package dtos

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

type FileAccessType string

const (
	FileAccessTypePublic  FileAccessType = "Public"
	FileAccessTypeTeam                   = "Team"
	FileAccessTypePrivate                = "Private"
)

type FileSystemFile struct {
	Id            int    `json:"id,omitempty"`
	FileName      string `json:"fileName"`
	FilePath      string `json:"filePath"`
	ContentType   string `json:"contentType"`
	ContentLength int64  `json:"contentLength,omitempty"`
	// @References("typeof(MyApp.ServiceModel.FileSystemItem)")
	FileSystemItemId int `json:"fileSystemItemId,omitempty"`
}

type FileSystemItem struct {
	Id             int             `json:"id,omitempty"`
	FileAccessType *FileAccessType `json:"fileAccessType,omitempty"`
	File           FileSystemFile  `json:"file"`
	AppUserId      string          `json:"appUserId"`
}

type QueryFileSystemItems struct {
	ss.QueryDb
	AppUserId      *int            `json:"appUserId,omitempty"`
	FileAccessType *FileAccessType `json:"fileAccessType,omitempty"`
}

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

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

{
	appUserId: 0,
	fileAccessType: Public,
	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,
			fileAccessType: Public,
			file: 
			{
				id: 0,
				fileName: String,
				filePath: String,
				contentType: String,
				contentLength: 0,
				fileSystemItemId: 0
			},
			appUserId: String
		}
	],
	meta: 
	{
		String: String
	},
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}