| POST | /api/authentication/token | Get Bearer access token, contact support for credentials |
|---|
import 'package:servicestack/servicestack.dart';
class AccessTokenResponse implements IConvertible
{
String accessToken = "";
String scope = "";
String tokenType = "";
int expiresIn = 0;
int httpStatusCode = 0;
String httpErrorReason = "";
String error = "";
AccessTokenResponse({this.accessToken,this.scope,this.tokenType,this.expiresIn,this.httpStatusCode,this.httpErrorReason,this.error});
AccessTokenResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
accessToken = json['accessToken'];
scope = json['scope'];
tokenType = json['tokenType'];
expiresIn = json['expiresIn'];
httpStatusCode = json['httpStatusCode'];
httpErrorReason = json['httpErrorReason'];
error = json['error'];
return this;
}
Map<String, dynamic> toJson() => {
'accessToken': accessToken,
'scope': scope,
'tokenType': tokenType,
'expiresIn': expiresIn,
'httpStatusCode': httpStatusCode,
'httpErrorReason': httpErrorReason,
'error': error
};
getTypeName() => "AccessTokenResponse";
TypeContext? context = _ctx;
}
/**
* Auth
*/
// @Api(Description="Auth")
// @ApiResponse(Description="Access token response", IsDefaultResponse=true, StatusCode=200)
class GetAuthToken implements IConvertible
{
/**
* Post parameters in body
*/
// @ApiMember(Description="Post parameters in body", ParameterType="model")
String clientId = "";
/**
* Post parameters in body
*/
// @ApiMember(Description="Post parameters in body", ParameterType="model")
String clientSecret = "";
/**
* Post parameters in body
*/
// @ApiMember(Description="Post parameters in body", ParameterType="model")
String scope = "";
GetAuthToken({this.clientId,this.clientSecret,this.scope});
GetAuthToken.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
clientId = json['clientId'];
clientSecret = json['clientSecret'];
scope = json['scope'];
return this;
}
Map<String, dynamic> toJson() => {
'clientId': clientId,
'clientSecret': clientSecret,
'scope': scope
};
getTypeName() => "GetAuthToken";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'stf_api_uat.data_xchange.co.za', types: <String, TypeInfo> {
'AccessTokenResponse': TypeInfo(TypeOf.Class, create:() => AccessTokenResponse()),
'GetAuthToken': TypeInfo(TypeOf.Class, create:() => GetAuthToken()),
});
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 /api/authentication/token HTTP/1.1
Host: stf-api-uat.data-xchange.co.za
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"clientId":"String","clientSecret":"String","scope":"String"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"accessToken":"String","scope":"String","tokenType":"String","expiresIn":0,"httpStatusCode":0,"httpErrorReason":"String","error":"String"}