| All Verbs | /app-overview |
|---|
import Foundation
import ServiceStack
public class AppOverview : IGet, Codable
{
public var reload:Bool
required public init(){}
}
public class AppOverviewResponse : Codable
{
public var created:Date
public var allTiers:[Option] = []
public var topTechnologies:[TechnologyInfo] = []
public var responseStatus:ResponseStatus
required public init(){}
}
// @DataContract
public class Option : Codable
{
// @DataMember(Name="name")
public var name:String
// @DataMember(Name="title")
public var title:String
// @DataMember(Name="value")
public var value:TechnologyTier?
required public init(){}
}
public enum TechnologyTier : String, Codable
{
case ProgrammingLanguage
case Client
case Http
case Server
case Data
case SoftwareInfrastructure
case OperatingSystem
case HardwareInfrastructure
case ThirdPartyServices
}
public class TechnologyInfo : Codable
{
public var tier:TechnologyTier
public var slug:String
public var name:String
public var logoUrl:String
public var stacksCount:Int
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 /app-overview HTTP/1.1
Host: techstacks.io
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
reload: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
created: 0001-01-01,
allTiers:
[
{
name: String,
title: String,
value: ProgrammingLanguage
}
],
topTechnologies:
[
{
tier: ProgrammingLanguage,
slug: String,
name: String,
logoUrl: String,
stacksCount: 0
}
],
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
}
}