Blazor Diffusion

<back to all web services

GetAnalyticsReports

"use strict";
export class RequestSummary {
    /** @param {{name?:string,totalRequests?:number,totalRequestLength?:number,minRequestLength?:number,maxRequestLength?:number,totalDuration?:number,minDuration?:number,maxDuration?:number,status?:{ [index:number]: number; },durations?:{ [index:string]: number; },apis?:{ [index:string]: number; },users?:{ [index:string]: number; },ips?:{ [index:string]: number; },apiKeys?:{ [index:string]: number; }}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    name;
    /** @type {number} */
    totalRequests;
    /** @type {number} */
    totalRequestLength;
    /** @type {number} */
    minRequestLength;
    /** @type {number} */
    maxRequestLength;
    /** @type {number} */
    totalDuration;
    /** @type {number} */
    minDuration;
    /** @type {number} */
    maxDuration;
    /** @type {{ [index:number]: number; }} */
    status;
    /** @type {{ [index:string]: number; }} */
    durations;
    /** @type {{ [index:string]: number; }} */
    apis;
    /** @type {{ [index:string]: number; }} */
    users;
    /** @type {{ [index:string]: number; }} */
    ips;
    /** @type {{ [index:string]: number; }} */
    apiKeys;
}
export class AnalyticsReports {
    /** @param {{id?:number,created?:string,version?:number,apis?:{ [index:string]: RequestSummary; },users?:{ [index:string]: RequestSummary; },tags?:{ [index:string]: RequestSummary; },status?:{ [index:string]: RequestSummary; },days?:{ [index:string]: RequestSummary; },apiKeys?:{ [index:string]: RequestSummary; },ips?:{ [index:string]: RequestSummary; },browsers?:{ [index:string]: RequestSummary; },devices?:{ [index:string]: RequestSummary; },bots?:{ [index:string]: RequestSummary; },durations?:{ [index:string]: number; }}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    id;
    /** @type {string} */
    created;
    /** @type {number} */
    version;
    /** @type {{ [index:string]: RequestSummary; }} */
    apis;
    /** @type {{ [index:string]: RequestSummary; }} */
    users;
    /** @type {{ [index:string]: RequestSummary; }} */
    tags;
    /** @type {{ [index:string]: RequestSummary; }} */
    status;
    /** @type {{ [index:string]: RequestSummary; }} */
    days;
    /** @type {{ [index:string]: RequestSummary; }} */
    apiKeys;
    /** @type {{ [index:string]: RequestSummary; }} */
    ips;
    /** @type {{ [index:string]: RequestSummary; }} */
    browsers;
    /** @type {{ [index:string]: RequestSummary; }} */
    devices;
    /** @type {{ [index:string]: RequestSummary; }} */
    bots;
    /** @type {{ [index:string]: number; }} */
    durations;
}
export class GetAnalyticsReportsResponse {
    /** @param {{result?:AnalyticsReports,responseStatus?:ResponseStatus}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {AnalyticsReports} */
    result;
    /** @type {ResponseStatus} */
    responseStatus;
}
export class GetAnalyticsReports {
    /** @param {{month?:string,filter?:string,value?:string,force?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string} */
    month;
    /** @type {string} */
    filter;
    /** @type {string} */
    value;
    /** @type {?boolean} */
    force;
}

JavaScript GetAnalyticsReports 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 /jsv/reply/GetAnalyticsReports HTTP/1.1 
Host: blazordiffusion.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	month: 0001-01-01,
	filter: String,
	value: String,
	force: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	result: 
	{
		id: 0,
		created: 0001-01-01,
		version: 0,
		apis: 
		{
			String: 
			{
				name: String,
				totalRequests: 0,
				totalRequestLength: 0,
				minRequestLength: 0,
				maxRequestLength: 0,
				totalDuration: 0,
				minDuration: 0,
				maxDuration: 0,
				status: 
				{
					0: 0
				},
				durations: 
				{
					String: 0
				},
				apis: 
				{
					String: 0
				},
				users: 
				{
					String: 0
				},
				ips: 
				{
					String: 0
				},
				apiKeys: 
				{
					String: 0
				}
			}
		},
		users: 
		{
			String: 
			{
				name: String,
				totalRequests: 0,
				totalRequestLength: 0,
				minRequestLength: 0,
				maxRequestLength: 0,
				totalDuration: 0,
				minDuration: 0,
				maxDuration: 0,
				status: 
				{
					0: 0
				},
				durations: 
				{
					String: 0
				},
				apis: 
				{
					String: 0
				},
				users: 
				{
					String: 0
				},
				ips: 
				{
					String: 0
				},
				apiKeys: 
				{
					String: 0
				}
			}
		},
		tags: 
		{
			String: 
			{
				name: String,
				totalRequests: 0,
				totalRequestLength: 0,
				minRequestLength: 0,
				maxRequestLength: 0,
				totalDuration: 0,
				minDuration: 0,
				maxDuration: 0,
				status: 
				{
					0: 0
				},
				durations: 
				{
					String: 0
				},
				apis: 
				{
					String: 0
				},
				users: 
				{
					String: 0
				},
				ips: 
				{
					String: 0
				},
				apiKeys: 
				{
					String: 0
				}
			}
		},
		status: 
		{
			String: 
			{
				name: String,
				totalRequests: 0,
				totalRequestLength: 0,
				minRequestLength: 0,
				maxRequestLength: 0,
				totalDuration: 0,
				minDuration: 0,
				maxDuration: 0,
				status: 
				{
					0: 0
				},
				durations: 
				{
					String: 0
				},
				apis: 
				{
					String: 0
				},
				users: 
				{
					String: 0
				},
				ips: 
				{
					String: 0
				},
				apiKeys: 
				{
					String: 0
				}
			}
		},
		days: 
		{
			String: 
			{
				name: String,
				totalRequests: 0,
				totalRequestLength: 0,
				minRequestLength: 0,
				maxRequestLength: 0,
				totalDuration: 0,
				minDuration: 0,
				maxDuration: 0,
				status: 
				{
					0: 0
				},
				durations: 
				{
					String: 0
				},
				apis: 
				{
					String: 0
				},
				users: 
				{
					String: 0
				},
				ips: 
				{
					String: 0
				},
				apiKeys: 
				{
					String: 0
				}
			}
		},
		apiKeys: 
		{
			String: 
			{
				name: String,
				totalRequests: 0,
				totalRequestLength: 0,
				minRequestLength: 0,
				maxRequestLength: 0,
				totalDuration: 0,
				minDuration: 0,
				maxDuration: 0,
				status: 
				{
					0: 0
				},
				durations: 
				{
					String: 0
				},
				apis: 
				{
					String: 0
				},
				users: 
				{
					String: 0
				},
				ips: 
				{
					String: 0
				},
				apiKeys: 
				{
					String: 0
				}
			}
		},
		ips: 
		{
			String: 
			{
				name: String,
				totalRequests: 0,
				totalRequestLength: 0,
				minRequestLength: 0,
				maxRequestLength: 0,
				totalDuration: 0,
				minDuration: 0,
				maxDuration: 0,
				status: 
				{
					0: 0
				},
				durations: 
				{
					String: 0
				},
				apis: 
				{
					String: 0
				},
				users: 
				{
					String: 0
				},
				ips: 
				{
					String: 0
				},
				apiKeys: 
				{
					String: 0
				}
			}
		},
		browsers: 
		{
			String: 
			{
				name: String,
				totalRequests: 0,
				totalRequestLength: 0,
				minRequestLength: 0,
				maxRequestLength: 0,
				totalDuration: 0,
				minDuration: 0,
				maxDuration: 0,
				status: 
				{
					0: 0
				},
				durations: 
				{
					String: 0
				},
				apis: 
				{
					String: 0
				},
				users: 
				{
					String: 0
				},
				ips: 
				{
					String: 0
				},
				apiKeys: 
				{
					String: 0
				}
			}
		},
		devices: 
		{
			String: 
			{
				name: String,
				totalRequests: 0,
				totalRequestLength: 0,
				minRequestLength: 0,
				maxRequestLength: 0,
				totalDuration: 0,
				minDuration: 0,
				maxDuration: 0,
				status: 
				{
					0: 0
				},
				durations: 
				{
					String: 0
				},
				apis: 
				{
					String: 0
				},
				users: 
				{
					String: 0
				},
				ips: 
				{
					String: 0
				},
				apiKeys: 
				{
					String: 0
				}
			}
		},
		bots: 
		{
			String: 
			{
				name: String,
				totalRequests: 0,
				totalRequestLength: 0,
				minRequestLength: 0,
				maxRequestLength: 0,
				totalDuration: 0,
				minDuration: 0,
				maxDuration: 0,
				status: 
				{
					0: 0
				},
				durations: 
				{
					String: 0
				},
				apis: 
				{
					String: 0
				},
				users: 
				{
					String: 0
				},
				ips: 
				{
					String: 0
				},
				apiKeys: 
				{
					String: 0
				}
			}
		},
		durations: 
		{
			String: 0
		}
	},
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}