Sample code for 30+ languages & platforms
Swift

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 Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    let http = CkoHttp()!

    let req = CkoHttpRequest()!
    req.addParam(name: "grant_type", value: "password")
    req.addParam(name: "scope", value: "api/ratings api/addin rest")
    req.addParam(name: "username", value: "my_username")
    req.addParam(name: "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(name: "client_id", value: "my_client_id")
    req.addParam(name: "client_secret", value: "my_client_secret")

    req.httpVerb = "POST"
    req.contentType = "application/x-www-form-urlencoded"

    let resp = CkoHttpResponse()!
    success = http.httpReq(url: "https://api.moodys.com/OAuth/Token", request: req, response: resp)
    if success == false {
        print("\(http.lastErrorText!)")
        return
    }

    print("status code = \(resp.statusCode.intValue)")
    var responseBody: String? = resp.bodyStr
    print("\(responseBody!)")

    // Save the JSON to a file for future requests.
    if resp.statusCode.intValue == 200 {
        let fac = CkoFileAccess()!
        fac.writeEntireTextFile(path: "qa_data/tokens/moodys.json", fileData: resp.bodyStr, charset: "utf-8", includePreamble: false)
    }


}