| Requires any of the roles: | Client, Admin, Partner |
| All Verbs | /restfiles/files | ||
|---|---|---|---|
| All Verbs | /restfiles/files/{Path*} |
import Foundation
import ServiceStack
public class Files : Codable
{
public var path:String
public var textContents:String
public var forDownload:Bool
required public init(){}
}
public class FilesResponse : Codable
{
public var directory:FolderResult
public var file:FileResult
public var responseStatus:ResponseStatus
required public init(){}
}
public class FolderResult : Codable
{
public var folders:[Folder]
public var files:[File]
required public init(){}
}
public class Folder : Codable
{
public var name:String
public var modifiedDate:Date
public var fileCount:Int
required public init(){}
}
public class File : Codable
{
public var name:String
public var `extension`:String
public var fileSizeBytes:Int
public var modifiedDate:Date
public var isTextFile:Bool
required public init(){}
}
public class FileResult : Codable
{
public var name:String
public var `extension`:String
public var fileSizeBytes:Int
public var modifiedDate:Date
public var isTextFile:Bool
public var contents:String
required public init(){}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /restfiles/files HTTP/1.1
Host: duengageapi.uat.scadsoftware.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Path: String,
TextContents: String,
ForDownload: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Directory:
{
Folders:
[
{
Name: String,
ModifiedDate: 0001-01-01,
FileCount: 0
}
],
Files:
[
{
Name: String,
Extension: String,
FileSizeBytes: 0,
ModifiedDate: 0001-01-01,
IsTextFile: False
}
]
},
File:
{
Name: String,
Extension: String,
FileSizeBytes: 0,
ModifiedDate: 0001-01-01,
IsTextFile: False,
Contents: String
},
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}