Alteryx Server Discussions

Find answers, ask questions, and share expertise about Alteryx Server.
SOLVED

Java client - Sample Code for Alteryx API

mohankumarg
6 - Meteoroid

Please help oauth generation java code to call apis.

 

1 REPLY 1
mohankumarg
6 - Meteoroid

I got some basic working code.  The details below.

 

 

Working Code Below:

import org.scribe.builder.api.DefaultApi10a;
import org.scribe.model.*;

import java.util.Map;

public class ScribeJavaMain {
    private static final String url ="https:// gallery.alteryx.com/gallery/api/v1/workflows/5ff71f96185f0201fc0437e5/jobs/";
    private static final String key ="YOUR_KEY_HERE";
    private static final String secret ="YOUR_SECRET_HERE";
    public static void main(String[] args) {
        DefaultApi10a api = new DefaultApi10a() {
            @Override
            public String getRequestTokenEndpoint() {
                return null;
            }

            @Override
            public String getAccessTokenEndpoint() {
                return null;
            }

            @Override
            public String getAuthorizationUrl(Token requestToken) {
                return null;
            }
        };


        OAuthRequest request = new OAuthRequest(Verb.GET,url);
        request.addOAuthParameter(OAuthConstants.TIMESTAMP, api.getTimestampService().getTimestampInSeconds());
        request.addOAuthParameter(OAuthConstants.NONCE, api.getTimestampService().getNonce());
        request.addOAuthParameter(OAuthConstants.CONSUMER_KEY, key);
        request.addOAuthParameter(OAuthConstants.SIGN_METHOD, api.getSignatureService().getSignatureMethod());
        request.addOAuthParameter(OAuthConstants.VERSION, "1.0");
        String baseString = api.getBaseStringExtractor().extract(request);
        System.out.println("baseString==>"+baseString);
        String signature = api.getSignatureService().getSignature(baseString, secret, "");
        System.out.println("signature==>"+signature);
        request.addOAuthParameter(OAuthConstants.SIGNATURE, signature);
        for (Map.Entry<String, String> entry : request.getOauthParameters().entrySet())
        {
            request.addQuerystringParameter(entry.getKey(), entry.getValue());
        }
        Response response2 = request.send();
        System.out.println(response2.getBody());
    }

}

 

Dependencies :

 

<dependency>
    <groupId>org.scribe</groupId>
    <artifactId>scribe</artifactId>
    <version>1.3.6</version>
</dependency>