Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Extending Alteryx Server With the Gallery API

193 views

Published on

Have you ever wanted to integrate processing into another application? Alteryx Server provides multiple features, and one of the most powerful is the Gallery API, which allows you to execute workflows and consume results with HTTP calls. Dan Hilton walks through the concept, a working example, and technical resources to help you get started programming against this API.

Dan Hilton - Solutions Architect, Alteryx

Published in: Data & Analytics
  • Be the first to comment

  • Be the first to like this

Extending Alteryx Server With the Gallery API

  1. 1. # A L T E R Y X 1 9 PRESENTED BY ALTERYX CONNECT: EXTENDING ALTERYX SERVER WITH THE GALLERY API Dan Hilton Solutions Architect dhilton@alteryx.com
  2. 2. # A L T E R Y X 1 9 FORWARD-LOOKING STATEMENTS This presentation includes “forward-looking statements” within the meaning of the Private Securities Litigation Reform Act of 1995. These forward-looking statements may be identified by the use of terminology such as “believe,” “may,” “will,” “intend,” “expect,” “plan,” “anticipate,” “estimate,” “potential,” or “continue,” or other comparable terminology. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product availability, growth and financial metrics and any statements regarding product roadmaps, strategies, plans or use cases. Although Alteryx believes that the expectations reflected in any of these forward-looking statements are reasonable, these expectations or any of the forward-looking statements could prove to be incorrect, and actual results or outcomes could differ materially from those projected or assumed in the forward-looking statements. Alteryx’s future financial condition and results of operations, as well as any forward-looking statements, are subject to risks and uncertainties, including but not limited to the factors set forth in Alteryx’s press releases, public statements and/or filings with the Securities and Exchange Commission, especially the “Risk Factors” sections of Alteryx’s Quarterly Report on Form 10-Q. These documents and others containing important disclosures are available at www.sec.gov or in the “Investors” section of Alteryx’s website at www.alteryx.com. All forward-looking statements are made as of the date of this presentation and Alteryx assumes no obligation to update any such forward-looking statements. Any unreleased services or features referenced in this or other presentations, press releases or public statements are only intended to outline Alteryx’s general product direction. They are intended for information purposes only, and may not be incorporated into any contract. This is not a commitment to deliver any material, code, or functionality (which may not be released on time or at all) and customers should not rely upon this presentation or any such statements to make purchasing decisions. The development, release, and timing of any features or functionality described for Alteryx’s products remains at the sole discretion of Alteryx.
  3. 3. # A L T E R Y X 1 9 3 TODAY’S AGENDA 1. What is the Gallery API? 2. Gallery API Use Cases 3. Job Executions Options on Server 4. Designing Apps for API consumption 5. API Programming Process 6. Building an HTML Interface 7. Tips and Tricks
  4. 4. # A L T E R Y X 1 9 WHAT IS THE GALLERY API? 4 Alteryx Server
  5. 5. # A L T E R Y X 1 9 WHAT IS THE GALLERY API? 5 Alteryx Server Gallery Users
  6. 6. # A L T E R Y X 1 9 WHAT IS THE GALLERY API? 6 Alteryx Server Gallery Users Designer Users
  7. 7. # A L T E R Y X 1 9 WHAT IS THE GALLERY API? 7 Alteryx Server Gallery Users Designer Users Application Server
  8. 8. # A L T E R Y X 1 9 WHAT IS THE GALLERY API? 8 Alteryx Server Gallery Users Designer Users Application ServerCustomer Application User
  9. 9. # A L T E R Y X 1 9 ALTERYX SERVER JOB EXECUTION OPTIONS 9
  10. 10. # A L T E R Y X 1 9 ALTERYX SERVER JOB EXECUTION OPTIONS 10 Designer (manual) 1
  11. 11. # A L T E R Y X 1 9 ALTERYX SERVER JOB EXECUTION OPTIONS 11 Designer (manual) Gallery Interface (manual) 1 2
  12. 12. # A L T E R Y X 1 9 ALTERYX SERVER JOB EXECUTION OPTIONS 12 Designer (manual) Gallery Interface (manual) Scheduled 1 2 3
  13. 13. # A L T E R Y X 1 9 ALTERYX SERVER JOB EXECUTION OPTIONS 13 Designer (manual) Gallery Interface (manual) Scheduled Command Line 1 2 4 3
  14. 14. # A L T E R Y X 1 9 ALTERYX SERVER JOB EXECUTION OPTIONS 14 Command Line 4 3 OPTION 1: ALTERYXSERVICE.EXE • Does not accept App parameter values • Subject to queuing mechanism Command Line
  15. 15. # A L T E R Y X 1 9 ALTERYX SERVER JOB EXECUTION OPTIONS 15 Command Line 4 3 Command Line Command Line OPTION 2: ALTERYXENGINECMD.EXE • Accepts App parameter values • Not subject to queuing mechanism
  16. 16. # A L T E R Y X 1 9 ALTERYX SERVER JOB EXECUTION OPTIONS 16 Designer (manual) Gallery Interface (manual) Scheduled Command Line Gallery API 1 2 4 5 3
  17. 17. # A L T E R Y X 1 9 ALTERYX SERVER JOB EXECUTION OPTIONS 17 Gallery API 5 • REST (HTTP) API endpoints • Interactive Documentation describes the endpoints and allows you to send actual requests • Security • Transmission uses OAuth signature and optional SSL • Endpoints for Workflow Execution • New “Admin” Gallery API endpoints allow downloading workflows and pulling metadata including users and data connection definitions
  18. 18. # A L T E R Y X 1 9 ALTERYX SERVER 18 Designer Execution (manual) Gallery Interface Execution (manual) Scheduler AlteryxService.exe AlteryxEngineCMD.exe ✓ PRODUCT UI QUEUED ✓ ✓ Gallery API ACCEPTS APP VALUES ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ DOWNLOAD WORKFLOWS ✓ ✓ ✓ DOWNLOAD RESULTS ✓ ✓ ✓ WORKFLOW EXECUTION ✓ ✓ ✓ ✓ ✓ ✓ ✓ EXECUTION TYPE DOWNLOAD METADATA ✓ ✓
  19. 19. # A L T E R Y X 1 9 USE CASES 19 CUSTOM WEB APPLICATION 1 Use custom rich web interfaces to display Alteryx-generated maps, tables, scores and forecasts TABLEAU DATA STEWARDSHIP 2 Execute actions from a Tableau dashboard such as identifying outlier records in a dataset and flag for advanced cleansing and validation 3 Lead Scoring, territory management, customer lifetime value predictions can be integrated into the SFDC interface ENTERPRISE SCHEDULERS 4 Enterprise scheduling software can call workflows over the API and manage the order of execution, error handling, and re-running, as well as pipline integrating with non-Alteryx processes SALESFORCE INTEGRATION
  20. 20. # A L T E R Y X 1 9 EXAMPLE… 20
  21. 21. # A L T E R Y X 1 9 GETTING STARTED… 21 1) Retrieve Gallery API Credentials 2) Insert them into Interactive Docs 3) Test and review the Interactive Docs 4) Download the Pre-Built Client 5) Customize the Pre-Built Client 6) Deploy
  22. 22. # A L T E R Y X 1 9 22
  23. 23. # A L T E R Y X 1 9 23
  24. 24. # A L T E R Y X 1 9 24
  25. 25. # A L T E R Y X 1 9 25
  26. 26. # A L T E R Y X 1 9 26 Credentials
  27. 27. # A L T E R Y X 1 9 27 Credentials Pre-Built Client Download
  28. 28. # A L T E R Y X 1 9 28 Credentials Pre-Built Client Download Expandable list of endpoints
  29. 29. # A L T E R Y X 1 9 29 Credentials Pre-Built Client Download Expandable list of endpoints Toggle Studio vs Admin API endpoints
  30. 30. # A L T E R Y X 1 9 GALLERY API ENDPOINTS 30 There are seven API endpoints in the standard Gallery API:
  31. 31. # A L T E R Y X 1 9 GALLERY ADMIN API ENDPOINTS 31 T
  32. 32. # A L T E R Y X 1 9 GETTING STARTED… 32 Each API endpoint can be expanded to show the possible configuration options Fill out the values and click “Try it Out” You’ll see both the request that was made and the response from the Gallery
  33. 33. # A L T E R Y X 1 9 PRE-BUILT CLIENTS 33
  34. 34. # A L T E R Y X 1 9 PRE-BUILT CLIENTS 34
  35. 35. # A L T E R Y X 1 9 PRE-BUILT CLIENTS 35
  36. 36. # A L T E R Y X 1 9 PRE-BUILT CLIENTS 36
  37. 37. # A L T E R Y X 1 9 USING THE PRE-BUILT CLIENTS 37 Index.html
  38. 38. # A L T E R Y X 1 9 USING THE PRE-BUILT CLIENTS 38 Index.html
  39. 39. # A L T E R Y X 1 9 USING THE PRE-BUILT CLIENTS 39 Index.html
  40. 40. # A L T E R Y X 1 9 ADAPTING THE PRE-BUILT CLIENT Index.htmlMain.js
  41. 41. # A L T E R Y X 1 9 ADAPTING THE PRE-BUILT CLIENT STEP 1: CONVERT LISTENERS TO FUNCTIONS Main.js
  42. 42. # A L T E R Y X 1 9 ADAPTING THE PRE-BUILT CLIENT STEP 2: ADD A LOOP FOR JOB STATUS
  43. 43. # A L T E R Y X 1 9 ADAPTING THE PRE-BUILT CLIENT STEP 3: CLEAN UP THE HTML, ADD CSS
  44. 44. # A L T E R Y X 1 9 GALLERY API TIPS AND TRICKS 44 Don’t re-invent the wheel 1. Use the Interactive Documentation to understand: a) What endpoints are available b) What options exist for each endpoint c) What the call and response look like 2. Use the Pre-built Clients to start developing
  45. 45. # A L T E R Y X 1 9 GALLERY API TIPS AND TRICKS 45 Be Secure! • Use SSL/TLS to encrypt the requests and responses • OAuth is not encryption • OAuth guarantees requests aren’t tampered with or resubmitted, but does not encrypt the parameters
  46. 46. # A L T E R Y X 1 9 46 GALLERY API TIPS AND TRICKS Be Secure! Design your custom application to protect the API key and secret Your Web Server Appends API Key / Secret to the request and signs the request End Users Performs an action that requires Alteryx processing. Request and any parameters sent to custom application server. Alteryx Gallery Server Processes request and delivers response https https
  47. 47. # A L T E R Y X 1 9 GALLERY API TIPS AND TRICKS 47 Consider the Queue • Alteryx Server provides a feature called “Worker Assignment” • For faster response times, designate Worker resources for fast API-serving workflows
  48. 48. # A L T E R Y X 1 9 48 AUTOMATE AND INTEGRATE WITH GALLERY API KEY POINTS Gallery API is often the right answer for integrations Render, Execute, and get Results Interactive Docs and Pre-Built Clients simplify development Adapting the Pre-Built Client requires minimal work 1 2 4 3
  49. 49. # A L T E R Y X 1 9 THANK YOU dhilton@alteryx.com 49 DAN HILTON

×