TechStacks!

<back to all web services

QueryPosts

AutoQueryPosts
The following routes are available for this service:
GET/posts
import java.math.*
import java.util.*
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*


open class QueryPosts : QueryDb<Post>()
{
    var ids:ArrayList<Int>? = null
    var organizationId:Int? = null
    var organizationIds:ArrayList<Int>? = null
    var types:ArrayList<String>? = null
    var anyTechnologyIds:ArrayList<Int>? = null
    @SerializedName("is") var Is:ArrayList<String>? = null
    @DataMember(Order=1)
    var skip:Int? = null

    @DataMember(Order=2)
    var take:Int? = null

    @DataMember(Order=3)
    var orderBy:String? = null

    @DataMember(Order=4)
    var orderByDesc:String? = null

    @DataMember(Order=5)
    var include:String? = null

    @DataMember(Order=6)
    var fields:String? = null

    @DataMember(Order=7)
    var meta:HashMap<String,String>? = null
}

open class QueryDb<T> : QueryBase()
{
    @DataMember(Order=1)
    var skip:Int? = null

    @DataMember(Order=2)
    var take:Int? = null

    @DataMember(Order=3)
    var orderBy:String? = null

    @DataMember(Order=4)
    var orderByDesc:String? = null

    @DataMember(Order=5)
    var include:String? = null

    @DataMember(Order=6)
    var fields:String? = null

    @DataMember(Order=7)
    var meta:HashMap<String,String> = HashMap<String,String>()
}

@DataContract
open class QueryBase
{
    @DataMember(Order=1)
    var skip:Int? = null

    @DataMember(Order=2)
    var take:Int? = null

    @DataMember(Order=3)
    var orderBy:String? = null

    @DataMember(Order=4)
    var orderByDesc:String? = null

    @DataMember(Order=5)
    var include:String? = null

    @DataMember(Order=6)
    var fields:String? = null

    @DataMember(Order=7)
    var meta:HashMap<String,String> = HashMap<String,String>()
}

open class Post
{
    var id:Long? = null
    var organizationId:Int? = null
    var userId:Int? = null
    @SerializedName("type") var Type:PostType? = null
    var categoryId:Int? = null
    var title:String? = null
    var slug:String? = null
    var url:String? = null
    var imageUrl:String? = null
    @StringLength(2147483647)
    var content:String? = null

    @StringLength(2147483647)
    var contentHtml:String? = null

    var pinCommentId:Long? = null
    var technologyIds:ArrayList<Int>? = null
    var fromDate:Date? = null
    var toDate:Date? = null
    var location:String? = null
    var metaType:String? = null
    var meta:String? = null
    var approved:Boolean? = null
    var upVotes:Long? = null
    var downVotes:Long? = null
    var points:Long? = null
    var views:Long? = null
    var favorites:Long? = null
    var subscribers:Int? = null
    var replyCount:Int? = null
    var commentsCount:Int? = null
    var wordCount:Int? = null
    var reportCount:Int? = null
    var linksCount:Int? = null
    var linkedToCount:Int? = null
    var score:Int? = null
    var rank:Int? = null
    var labels:ArrayList<String>? = null
    var refUserIds:ArrayList<Int>? = null
    var refLinks:ArrayList<String>? = null
    var muteUserIds:ArrayList<Int>? = null
    var lastCommentDate:Date? = null
    var lastCommentId:Long? = null
    var lastCommentUserId:Int? = null
    var deleted:Date? = null
    var deletedBy:String? = null
    var locked:Date? = null
    var lockedBy:String? = null
    var hidden:Date? = null
    var hiddenBy:String? = null
    var status:String? = null
    var statusDate:Date? = null
    var statusBy:String? = null
    var archived:Boolean? = null
    var bumped:Date? = null
    var created:Date? = null
    var createdBy:String? = null
    var modified:Date? = null
    var modifiedBy:String? = null
    var refId:Long? = null
    var refSource:String? = null
    var refUrn:String? = null
}

enum class PostType
{
    Announcement,
    Post,
    Showcase,
    Question,
    Request,
}

@DataContract
open class QueryResponse<Post>
{
    @DataMember(Order=1)
    var offset:Int? = null

    @DataMember(Order=2)
    var total:Int? = null

    @DataMember(Order=3)
    var results:ArrayList<Post> = ArrayList<Post>()

    @DataMember(Order=4)
    var meta:HashMap<String,String> = HashMap<String,String>()

    @DataMember(Order=5)
    var responseStatus:ResponseStatus? = null
}

Kotlin QueryPosts 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 /posts HTTP/1.1 
Host: techstacks.io 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<QueryResponseOfPostclPpLQp2 xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
  <Offset>0</Offset>
  <Total>0</Total>
  <Results xmlns:d2p1="http://schemas.datacontract.org/2004/07/TechStacks.ServiceModel.Types">
    <d2p1:Post>
      <d2p1:Approved>false</d2p1:Approved>
      <d2p1:Archived>false</d2p1:Archived>
      <d2p1:Bumped>0001-01-01T00:00:00</d2p1:Bumped>
      <d2p1:CategoryId>0</d2p1:CategoryId>
      <d2p1:CommentsCount>0</d2p1:CommentsCount>
      <d2p1:Content>String</d2p1:Content>
      <d2p1:ContentHtml>String</d2p1:ContentHtml>
      <d2p1:Created>0001-01-01T00:00:00</d2p1:Created>
      <d2p1:CreatedBy>String</d2p1:CreatedBy>
      <d2p1:Deleted>0001-01-01T00:00:00</d2p1:Deleted>
      <d2p1:DeletedBy>String</d2p1:DeletedBy>
      <d2p1:DownVotes>0</d2p1:DownVotes>
      <d2p1:Favorites>0</d2p1:Favorites>
      <d2p1:FromDate>0001-01-01T00:00:00</d2p1:FromDate>
      <d2p1:Hidden>0001-01-01T00:00:00</d2p1:Hidden>
      <d2p1:HiddenBy>String</d2p1:HiddenBy>
      <d2p1:Id>0</d2p1:Id>
      <d2p1:ImageUrl>String</d2p1:ImageUrl>
      <d2p1:Labels xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:Labels>
      <d2p1:LastCommentDate>0001-01-01T00:00:00</d2p1:LastCommentDate>
      <d2p1:LastCommentId>0</d2p1:LastCommentId>
      <d2p1:LastCommentUserId>0</d2p1:LastCommentUserId>
      <d2p1:LinkedToCount>0</d2p1:LinkedToCount>
      <d2p1:LinksCount>0</d2p1:LinksCount>
      <d2p1:Location>String</d2p1:Location>
      <d2p1:Locked>0001-01-01T00:00:00</d2p1:Locked>
      <d2p1:LockedBy>String</d2p1:LockedBy>
      <d2p1:Meta>String</d2p1:Meta>
      <d2p1:MetaType>String</d2p1:MetaType>
      <d2p1:Modified>0001-01-01T00:00:00</d2p1:Modified>
      <d2p1:ModifiedBy>String</d2p1:ModifiedBy>
      <d2p1:MuteUserIds xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:int>0</d4p1:int>
      </d2p1:MuteUserIds>
      <d2p1:OrganizationId>0</d2p1:OrganizationId>
      <d2p1:PinCommentId>0</d2p1:PinCommentId>
      <d2p1:Points>0</d2p1:Points>
      <d2p1:Rank>0</d2p1:Rank>
      <d2p1:RefId>0</d2p1:RefId>
      <d2p1:RefLinks xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:RefLinks>
      <d2p1:RefSource>String</d2p1:RefSource>
      <d2p1:RefUrn>String</d2p1:RefUrn>
      <d2p1:RefUserIds xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:int>0</d4p1:int>
      </d2p1:RefUserIds>
      <d2p1:ReplyCount>0</d2p1:ReplyCount>
      <d2p1:ReportCount>0</d2p1:ReportCount>
      <d2p1:Score>0</d2p1:Score>
      <d2p1:Slug>String</d2p1:Slug>
      <d2p1:Status>String</d2p1:Status>
      <d2p1:StatusBy>String</d2p1:StatusBy>
      <d2p1:StatusDate>0001-01-01T00:00:00</d2p1:StatusDate>
      <d2p1:Subscribers>0</d2p1:Subscribers>
      <d2p1:TechnologyIds xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:int>0</d4p1:int>
      </d2p1:TechnologyIds>
      <d2p1:Title>String</d2p1:Title>
      <d2p1:ToDate>0001-01-01T00:00:00</d2p1:ToDate>
      <d2p1:Type>Announcement</d2p1:Type>
      <d2p1:UpVotes>0</d2p1:UpVotes>
      <d2p1:Url>String</d2p1:Url>
      <d2p1:UserId>0</d2p1:UserId>
      <d2p1:Views>0</d2p1:Views>
      <d2p1:WordCount>0</d2p1:WordCount>
    </d2p1:Post>
  </Results>
  <Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfstringstring>
      <d2p1:Key>String</d2p1:Key>
      <d2p1:Value>String</d2p1:Value>
    </d2p1:KeyValueOfstringstring>
  </Meta>
  <ResponseStatus>
    <ErrorCode>String</ErrorCode>
    <Message>String</Message>
    <StackTrace>String</StackTrace>
    <Errors>
      <ResponseError>
        <ErrorCode>String</ErrorCode>
        <FieldName>String</FieldName>
        <Message>String</Message>
        <Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </Meta>
      </ResponseError>
    </Errors>
    <Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </Meta>
  </ResponseStatus>
</QueryResponseOfPostclPpLQp2>