TechStacks!

<back to all web services

AppOverview

Site
The following routes are available for this service:
All Verbs/app-overview
"use strict";
/** @typedef {'ProgrammingLanguage'|'Client'|'Http'|'Server'|'Data'|'SoftwareInfrastructure'|'OperatingSystem'|'HardwareInfrastructure'|'ThirdPartyServices'} */
export var TechnologyTier;
(function (TechnologyTier) {
    TechnologyTier["ProgrammingLanguage"] = "ProgrammingLanguage"
    TechnologyTier["Client"] = "Client"
    TechnologyTier["Http"] = "Http"
    TechnologyTier["Server"] = "Server"
    TechnologyTier["Data"] = "Data"
    TechnologyTier["SoftwareInfrastructure"] = "SoftwareInfrastructure"
    TechnologyTier["OperatingSystem"] = "OperatingSystem"
    TechnologyTier["HardwareInfrastructure"] = "HardwareInfrastructure"
    TechnologyTier["ThirdPartyServices"] = "ThirdPartyServices"
})(TechnologyTier || (TechnologyTier = {}));
export class Option {
    /** @param {{name?:string,title?:string,value?:TechnologyTier}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    name;
    /** @type {string} */
    title;
    /** @type {?TechnologyTier} */
    value;
}
export class TechnologyInfo {
    /** @param {{tier?:TechnologyTier,slug?:string,name?:string,logoUrl?:string,stacksCount?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {TechnologyTier} */
    tier;
    /** @type {string} */
    slug;
    /** @type {string} */
    name;
    /** @type {string} */
    logoUrl;
    /** @type {number} */
    stacksCount;
}
export class AppOverviewResponse {
    /** @param {{created?:string,allTiers?:Option[],topTechnologies?:TechnologyInfo[],responseStatus?:ResponseStatus}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    created;
    /** @type {Option[]} */
    allTiers;
    /** @type {TechnologyInfo[]} */
    topTechnologies;
    /** @type {ResponseStatus} */
    responseStatus;
}
export class AppOverview {
    /** @param {{reload?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {boolean} */
    reload;
}

JavaScript AppOverview 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.

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
		}
	}
}