POST | /auth/{provider} | ||
---|---|---|---|
GET,POST | /auth |
"use strict";
export class AuthenticateResponse {
/** @param {{userId?:string,sessionId?:string,userName?:string,displayName?:string,referrerUrl?:string,bearerToken?:string,refreshToken?:string,refreshTokenExpiry?:string,profileUrl?:string,roles?:string[],permissions?:string[],authProvider?:string,responseStatus?:ResponseStatus,meta?:{ [index:string]: string; }}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
userId;
/** @type {string} */
sessionId;
/** @type {string} */
userName;
/** @type {string} */
displayName;
/** @type {string} */
referrerUrl;
/** @type {string} */
bearerToken;
/** @type {string} */
refreshToken;
/** @type {?string} */
refreshTokenExpiry;
/** @type {string} */
profileUrl;
/** @type {string[]} */
roles;
/** @type {string[]} */
permissions;
/** @type {string} */
authProvider;
/** @type {ResponseStatus} */
responseStatus;
/** @type {{ [index:string]: string; }} */
meta;
}
export class Authenticate {
/** @param {{provider?:string,userName?:string,password?:string,rememberMe?:boolean,accessToken?:string,accessTokenSecret?:string,returnUrl?:string,errorView?:string,meta?:{ [index:string]: string; }}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description AuthProvider, e.g. credentials */
provider;
/** @type {string} */
userName;
/** @type {string} */
password;
/** @type {?boolean} */
rememberMe;
/** @type {string} */
accessToken;
/** @type {string} */
accessTokenSecret;
/** @type {string} */
returnUrl;
/** @type {string} */
errorView;
/** @type {{ [index:string]: string; }} */
meta;
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /auth/{provider} HTTP/1.1
Host: techstacks.io
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"provider":"String","userName":"String","password":"String","rememberMe":false,"accessToken":"String","accessTokenSecret":"String","returnUrl":"String","errorView":"String","meta":{"String":"String"}}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"userId":"String","sessionId":"String","userName":"String","displayName":"String","referrerUrl":"String","bearerToken":"String","refreshToken":"String","refreshTokenExpiry":"0001-01-01T00:00:00.0000000","profileUrl":"String","roles":["String"],"permissions":["String"],"authProvider":"String","responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}},"meta":{"String":"String"}}