Lua
Lua
Get Akeneo Token given Client ID and Secret
See more HTTP Misc Examples
Assumes you're starting with a client ID and secret obtained from your OAuth1 provider, such as OneLogin. Demonstrates how to get an akeneo token using your client id/secret in combination with your akeneo login/password.Chilkat Lua Downloads
local chilkat = require("chilkat")
-- This example requires the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
local http = chilkat.Http.new()
-- The HTTP Basic authentication for this request is the
-- OAuth client id and secret you've already obtained.
http.basic_auth = true
http.login = "my_akeneo_client_id"
http.password = "my_akeneo_secret"
-- Build this JSON:
-- {
-- "grant_type": "password",
-- "username": "yourusername",
-- "password": "yourpassword"
-- }
local json = chilkat.JsonObject.new()
json:update_string("grant_type", "password")
json:update_string("username", "my_akeneo_username")
json:update_string("password", "my_akeneo_password")
-- POST this JSON (with the Basic Authentication header)
local url = "http://pim.my-akeneo-site.com/api/oauth/v1/token"
local resp = chilkat.HttpResponse.new()
local success = http:http_json("POST", url, json, "application/json", resp)
if not success then
print(http.last_error_text)
return
end
print("Response status code: " .. resp.status_code)
print("Response body: " .. resp.body_str)
if resp.status_code == 200 then
-- Success.
-- Parse the response, which looks like this:
-- {
-- "access_token": "MTE0NzNkNzI5YTk0ZTBlNmFlNTI5NmVkOWJhZjUxYWRkN2UzZWIwOWNkMTkwNzY5Mzk3NGViMDFmYzdlODJlMg",
-- "expires_in": 3600,
-- "token_type": "bearer",
-- "scope": null,
-- "refresh_token": "ZDkyMzA2NDhlZjQ2MGQyMDQ2MWRiMDBmOTdkZjQ5ODY5Mzc3MTEzMjVkNTkwZThmNWRlNWY0MzllYWMxZWQ5ZA"
-- }
json:load(resp.body_str)
local access_token = json:string_of("access_token")
local expires_in = json:int_of("expires_in")
local token_type = json:string_of("token_type")
local scope = json:string_of("scope")
local refresh_token = json:string_of("refresh_token")
print("Access Token: " .. access_token)
end