TechStacks!

<back to all web services

GetTechnologyStackPreviousVersions

TechStacks
The following routes are available for this service:
GET/techstacks/{Slug}/previous-versions
import Foundation
import ServiceStack

public class GetTechnologyStackPreviousVersions : IGet, Codable
{
    public var slug:String

    required public init(){}
}

public class GetTechnologyStackPreviousVersionsResponse : Codable
{
    public var results:[TechnologyStackHistory]

    required public init(){}
}

public class TechnologyStackHistory : TechnologyStackBase
{
    public var technologyStackId:Int
    public var operation:String
    public var technologyIds:[Int]

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case technologyStackId
        case operation
        case technologyIds
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        technologyStackId = try container.decodeIfPresent(Int.self, forKey: .technologyStackId)
        operation = try container.decodeIfPresent(String.self, forKey: .operation)
        technologyIds = try container.decodeIfPresent([Int].self, forKey: .technologyIds) ?? []
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if technologyStackId != nil { try container.encode(technologyStackId, forKey: .technologyStackId) }
        if operation != nil { try container.encode(operation, forKey: .operation) }
        if technologyIds != nil { try container.encode(technologyIds, forKey: .technologyIds) }
    }
}

public class TechnologyStackBase : Codable
{
    public var id:Int
    public var name:String
    public var vendorName:String
    public var Description:String
    public var appUrl:String
    public var screenshotUrl:String
    public var created:Date
    public var createdBy:String
    public var lastModified:Date
    public var lastModifiedBy:String
    public var isLocked:Bool
    public var ownerId:String
    public var slug:String
    // @StringLength(Int32.max)
    public var details:String

    // @StringLength(Int32.max)
    public var detailsHtml:String

    public var lastStatusUpdate:Date?
    public var organizationId:Int?
    public var commentsPostId:Int?
    public var viewCount:Int
    public var favCount:Int

    required public init(){}
}


Swift GetTechnologyStackPreviousVersions DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /techstacks/{Slug}/previous-versions HTTP/1.1 
Host: techstacks.io 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"results":[{"technologyStackId":0,"operation":"String","technologyIds":[0],"id":0,"name":"String","vendorName":"String","description":"String","appUrl":"String","screenshotUrl":"String","created":"0001-01-01T00:00:00.0000000","createdBy":"String","lastModified":"0001-01-01T00:00:00.0000000","lastModifiedBy":"String","isLocked":false,"ownerId":"String","slug":"String","details":"String","detailsHtml":"String","lastStatusUpdate":"0001-01-01T00:00:00.0000000","organizationId":0,"commentsPostId":0,"viewCount":0,"favCount":0}]}