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 .xml suffix or ?format=xml

HTTP + XML

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: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<GetTechnologyStackPreviousVersionsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TechStacks.ServiceModel">
  <Results xmlns:d2p1="http://schemas.datacontract.org/2004/07/TechStacks.ServiceModel.Types">
    <d2p1:TechnologyStackHistory>
      <d2p1:AppUrl>String</d2p1:AppUrl>
      <d2p1:CommentsPostId>0</d2p1:CommentsPostId>
      <d2p1:Created>0001-01-01T00:00:00</d2p1:Created>
      <d2p1:CreatedBy>String</d2p1:CreatedBy>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:Details>String</d2p1:Details>
      <d2p1:DetailsHtml>String</d2p1:DetailsHtml>
      <d2p1:FavCount>0</d2p1:FavCount>
      <d2p1:Id>0</d2p1:Id>
      <d2p1:IsLocked>false</d2p1:IsLocked>
      <d2p1:LastModified>0001-01-01T00:00:00</d2p1:LastModified>
      <d2p1:LastModifiedBy>String</d2p1:LastModifiedBy>
      <d2p1:LastStatusUpdate>0001-01-01T00:00:00</d2p1:LastStatusUpdate>
      <d2p1:Name>String</d2p1:Name>
      <d2p1:OrganizationId>0</d2p1:OrganizationId>
      <d2p1:OwnerId>String</d2p1:OwnerId>
      <d2p1:ScreenshotUrl>String</d2p1:ScreenshotUrl>
      <d2p1:Slug>String</d2p1:Slug>
      <d2p1:VendorName>String</d2p1:VendorName>
      <d2p1:ViewCount>0</d2p1:ViewCount>
      <d2p1:Operation>String</d2p1:Operation>
      <d2p1:TechnologyIds xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:long>0</d4p1:long>
      </d2p1:TechnologyIds>
      <d2p1:TechnologyStackId>0</d2p1:TechnologyStackId>
    </d2p1:TechnologyStackHistory>
  </Results>
</GetTechnologyStackPreviousVersionsResponse>