createToken function

Future<CToken> createToken(
  1. {required CCard card,
  2. required String apiKey}
)

Implementation

Future<CToken> createToken(
    {required CCard card, required String apiKey}) async {
  Uri _uri = Uri.https(_URL_BASE_SECURE, _URL_TOKENS);
  http.Response response = await http.post(_uri,
      headers: {
        'Content-Type': 'application/json; charset=utf-8',
        'Authorization': "Bearer $apiKey"
      },
      body: jsonEncode(card.toJson()));
  switch (response.statusCode) {
    case 201:
      return CToken.fromJson(response.body);
    case 400:
      throw CulqiBadRequestException.fromJson(response.body);
    case 401:
      throw CulqiUnauthorizedException.fromJson(response.body);
    default:
      throw CulqiUnknownException(
          response.statusCode.toString(), response.body);
  }
}