Objective-C
Objective-C
Moody's REST API - Get OAuth2 Token
See more Moody's Examples
Demonstrates how to get an OAuth2 access token for the Moody's REST API.Chilkat Objective-C Downloads
#import <CkoHttp.h>
#import <CkoHttpRequest.h>
#import <CkoHttpResponse.h>
#import <NSString.h>
#import <CkoFileAccess.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];
CkoHttpRequest *req = [[CkoHttpRequest alloc] init];
[req AddParam: @"grant_type" value: @"password"];
[req AddParam: @"scope" value: @"api/ratings api/addin rest"];
[req AddParam: @"username" value: @"my_username"];
[req AddParam: @"password" value: @"my_password"];
// I have no idea of where to get the client_id or client_secret.
// When you create a Moody's App, it only provides an "API Key".
[req AddParam: @"client_id" value: @"my_client_id"];
[req AddParam: @"client_secret" value: @"my_client_secret"];
req.HttpVerb = @"POST";
req.ContentType = @"application/x-www-form-urlencoded";
CkoHttpResponse *resp = [[CkoHttpResponse alloc] init];
success = [http HttpReq: @"https://api.moodys.com/OAuth/Token" request: req response: resp];
if (success == NO) {
NSLog(@"%@",http.LastErrorText);
return;
}
NSLog(@"%@%d",@"status code = ",[resp.StatusCode intValue]);
NSString *responseBody = resp.BodyStr;
NSLog(@"%@",responseBody);
// Save the JSON to a file for future requests.
if ([resp.StatusCode intValue] == 200) {
CkoFileAccess *fac = [[CkoFileAccess alloc] init];
[fac WriteEntireTextFile: @"qa_data/tokens/moodys.json" fileData: resp.BodyStr charset: @"utf-8" includePreamble: NO];
}