Objective-C
Objective-C
Bitfinex v2 REST User Info
See more Bitfinex v2 REST Examples
Retrieve the user ID, email, username and timezone setting for the account associated with the API key used.Chilkat Objective-C Downloads
#import <CkoHttp.h>
#import <CkoCrypt2.h>
#import <NSString.h>
#import <CkoDateTime.h>
#import <CkoStringBuilder.h>
#import <CkoHttpResponse.h>
BOOL success = NO;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkoHttp *http = [[CkoHttp alloc] init];
// Implements the following CURL command:
// curl -X POST -H "bfx-nonce: nonce" \
// -H "bfx-apikey: apiKey" \
// -H "bfx-signature: sig" \
// https://api.bitfinex.com/v2/auth/r/info/user
// Use the following online tool to generate HTTP code from a CURL command
// Convert a cURL Command to HTTP Source Code
CkoCrypt2 *crypt = [[CkoCrypt2 alloc] init];
NSString *apiPath = @"v2/auth/r/info/user";
NSString *apiKey = @"MY_API_KEY";
NSString *apiSecret = @"MY_API_SECRET";
CkoDateTime *dt = [[CkoDateTime alloc] init];
[dt SetFromCurrentSystemTime];
CkoStringBuilder *sbNonce = [[CkoStringBuilder alloc] init];
[sbNonce Append: [dt GetAsUnixTimeStr: NO]];
[sbNonce Append: @"000"];
NSString *nonce = [sbNonce GetAsString];
// This particular request has an empty body.
NSString *body = @"";
CkoStringBuilder *sbSignature = [[CkoStringBuilder alloc] init];
[sbSignature Append: @"/api/"];
[sbSignature Append: apiPath];
[sbSignature Append: nonce];
[sbSignature Append: body];
crypt.EncodingMode = @"hex_lower";
crypt.HashAlgorithm = @"sha384";
crypt.MacAlgorithm = @"hmac";
[crypt SetMacKeyString: apiSecret];
NSString *sig = [crypt MacStringENC: [sbSignature GetAsString]];
[http SetRequestHeader: @"bfx-apikey" value: apiKey];
[http SetRequestHeader: @"bfx-signature" value: sig];
[http SetRequestHeader: @"bfx-nonce" value: nonce];
CkoHttpResponse *resp = [[CkoHttpResponse alloc] init];
success = [http HttpNoBody: @"POST" url: @"https://api.bitfinex.com/v2/auth/r/info/user" response: resp];
if (success == NO) {
NSLog(@"%@",http.LastErrorText);
return;
}
NSLog(@"%@",@"Response body:");
NSLog(@"%@",resp.BodyStr);
// Sample response body:
// [1234567,"joe@example.com","joe_trader",1527691729000,0,null,null,"Central Time (US & Canada)"]