MyApp

<back to all web services

CreateFileSystemItem

Files
package dtos

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 CreateFileSystemItem struct {
	FileAccessType *FileAccessType `json:"fileAccessType,omitempty"`
	File           FileSystemFile  `json:"file"`
}

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

{
	fileAccessType: Public,
	file: 
	{
		id: 0,
		fileName: String,
		filePath: String,
		contentType: String,
		contentLength: 0,
		fileSystemItemId: 0
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	id: 0,
	fileAccessType: Public,
	file: 
	{
		id: 0,
		fileName: String,
		filePath: String,
		contentType: String,
		contentLength: 0,
		fileSystemItemId: 0
	},
	appUserId: String
}