TechStacks!

<back to all web services

UpdateTechnologyStack

TechStacks
Requires Authentication
The following routes are available for this service:
PUT/techstacks/{Id}
import java.math.*
import java.util.*
import net.servicestack.client.*


open class UpdateTechnologyStack : IPut
{
    var id:Long? = null
    var name:String? = null
    var vendorName:String? = null
    var appUrl:String? = null
    var screenshotUrl:String? = null
    var description:String? = null
    var details:String? = null
    var isLocked:Boolean? = null
    var technologyIds:ArrayList<Long> = ArrayList<Long>()
}

open class UpdateTechnologyStackResponse
{
    var result:TechStackDetails? = null
    var responseStatus:ResponseStatus? = null
}

open class TechStackDetails : TechnologyStackBase()
{
    var technologyChoices:ArrayList<TechnologyInStack> = ArrayList<TechnologyInStack>()
    var id:Long? = null
    var name:String? = null
    var vendorName:String? = null
    var description:String? = null
    var appUrl:String? = null
    var screenshotUrl:String? = null
    var created:Date? = null
    var createdBy:String? = null
    var lastModified:Date? = null
    var lastModifiedBy:String? = null
    var isLocked:Boolean? = null
    var ownerId:String? = null
    var slug:String? = null
    @StringLength(2147483647)
    var details:String? = null

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

    var lastStatusUpdate:Date? = null
    var organizationId:Int? = null
    var commentsPostId:Long? = null
    var viewCount:Int? = null
    var favCount:Int? = null
}

open class TechnologyStackBase
{
    var id:Long? = null
    var name:String? = null
    var vendorName:String? = null
    var description:String? = null
    var appUrl:String? = null
    var screenshotUrl:String? = null
    var created:Date? = null
    var createdBy:String? = null
    var lastModified:Date? = null
    var lastModifiedBy:String? = null
    var isLocked:Boolean? = null
    var ownerId:String? = null
    var slug:String? = null
    @StringLength(2147483647)
    var details:String? = null

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

    var lastStatusUpdate:Date? = null
    var organizationId:Int? = null
    var commentsPostId:Long? = null
    var viewCount:Int? = null
    var favCount:Int? = null
}

open class TechnologyInStack : TechnologyBase()
{
    var technologyId:Long? = null
    var technologyStackId:Long? = null
    var justification:String? = null
    var id:Long? = null
    var name:String? = null
    var vendorName:String? = null
    var vendorUrl:String? = null
    var productUrl:String? = null
    var logoUrl:String? = null
    var description:String? = null
    var created:Date? = null
    var createdBy:String? = null
    var lastModified:Date? = null
    var lastModifiedBy:String? = null
    var ownerId:String? = null
    var slug:String? = null
    var logoApproved:Boolean? = null
    var isLocked:Boolean? = null
    var tier:TechnologyTier? = null
    var lastStatusUpdate:Date? = null
    var organizationId:Int? = null
    var commentsPostId:Long? = null
    var viewCount:Int? = null
    var favCount:Int? = null
}

open class TechnologyBase
{
    var id:Long? = null
    var name:String? = null
    var vendorName:String? = null
    var vendorUrl:String? = null
    var productUrl:String? = null
    var logoUrl:String? = null
    var description:String? = null
    var created:Date? = null
    var createdBy:String? = null
    var lastModified:Date? = null
    var lastModifiedBy:String? = null
    var ownerId:String? = null
    var slug:String? = null
    var logoApproved:Boolean? = null
    var isLocked:Boolean? = null
    var tier:TechnologyTier? = null
    var lastStatusUpdate:Date? = null
    var organizationId:Int? = null
    var commentsPostId:Long? = null
    var viewCount:Int? = null
    var favCount:Int? = null
}

enum class TechnologyTier
{
    ProgrammingLanguage,
    Client,
    Http,
    Server,
    Data,
    SoftwareInfrastructure,
    OperatingSystem,
    HardwareInfrastructure,
    ThirdPartyServices,
}

Kotlin UpdateTechnologyStack DTOs

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

HTTP + JSV

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

PUT /techstacks/{Id} HTTP/1.1 
Host: techstacks.io 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: 0,
	name: String,
	vendorName: String,
	appUrl: String,
	screenshotUrl: String,
	description: String,
	details: String,
	isLocked: False,
	technologyIds: 
	[
		0
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	result: 
	{
		technologyChoices: 
		[
			{
				technologyId: 0,
				technologyStackId: 0,
				justification: String,
				id: 0,
				name: String,
				vendorName: String,
				vendorUrl: String,
				productUrl: String,
				logoUrl: String,
				description: String,
				created: 0001-01-01,
				createdBy: String,
				lastModified: 0001-01-01,
				lastModifiedBy: String,
				ownerId: String,
				slug: String,
				logoApproved: False,
				isLocked: False,
				tier: ProgrammingLanguage,
				lastStatusUpdate: 0001-01-01,
				organizationId: 0,
				commentsPostId: 0,
				viewCount: 0,
				favCount: 0
			}
		],
		id: 0,
		name: String,
		vendorName: String,
		description: String,
		appUrl: String,
		screenshotUrl: String,
		created: 0001-01-01,
		createdBy: String,
		lastModified: 0001-01-01,
		lastModifiedBy: String,
		isLocked: False,
		ownerId: String,
		slug: String,
		details: String,
		detailsHtml: String,
		lastStatusUpdate: 0001-01-01,
		organizationId: 0,
		commentsPostId: 0,
		viewCount: 0,
		favCount: 0
	},
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}