Gallery API Overview

Version:
Current
Last modified: January 15, 2021

Do not delete this has styles that are applied to the article.

If you are new to APIs visit the Get Started with APIs help page. 

The Gallery API is made up of 4 APIs:

  • Subscription API: Endpoints for users to interact with subscriptions, workflows, and schedules (jobs).
  • User V2 API: Endpoints for users to interact with credentials, input files, and schedules (jobs).
  • Admin V1 API: Endpoints for admins to fetch resources from the Admin interface.
  • Admin V2 API: Version 2 of the endpoints for admins to fetch resources from the Admin interface.

Access Gallery API Reference Docs

The complete reference documentation for all Gallery API endpoints is available in Swagger. 

There are 2 places in Gallery where you can access the Gallery API Reference documentation.

  1. Select the question mark icon in the top toolbar and select API Documentation.
    Screenshot of API Documentation in the Gallery toolbar
  2. Select your username and select My Profile > Keys. You can find links to the API documentation next to the API keys.

You can also access the API reference documentation for the Gallery API using this URL: {yourhostname}/api-docs. Yourhostname is the URL to your Gallery instance.

Authenticating to the Gallery API Reference Docs

The Gallery API docs are interactive, allowing you to populate parameters and see the responses. To make use of the interactivity, you have to authenticate. To do so, follow these steps:

  1. In Gallery, select your username and select My Profile > Keys. Copy the API keys for the API you want to authenticate to and paste them in the API Key and Shared Secret fields. The keys will show as Saved.
    Screenshot of API documentation authentication showing keys are saved.
  2. Select the call you want to run, populate the parameters, and select Try it out.

API Keys and API Access

Curator (Gallery admins) have to allow users access to the API. Visit Allow User Access to the Gallery API for more info. Once you have granted user access to the API, users can find their API keys on the Keys tab of the My Profile page. To access your API keys, select your username and select My Profile > Keys

Users with the Curator role can use the API Access keys to access all APIs including the Subscription API, the User V2 API, V1 Admin V1 API, and V2 Admin V2 API.  

All non-Curator users can use the API Access keys to access the Subscription API and User V2 API.

All users can use the Private Studio API keys to access the Subscription API.

Screenshot of Keys tab in My Profile showing API keys

Authentication

Gallery API uses the OAuth 1.0a standard for authentication. The Gallery API only requires the signature generation, sometimes called a 1-legged flow, rather than the full, 3-legged OAuth 1.0a flow. See the Signing Process section of the OAuth 1.0a specification for information.

Use a 3rd-party signature generation code that uses the OAuth 1.0a standard to generate these tokens that are required in every API call. Any additional parameters starting with oauth_ are ignored.

  • oauth_consumer_key="{consumer key}"
  • oauth_signature_method="HMAC-SHA1"
  • oauth_signature="{signature}"
  • oauth_timestamp="{timestamp}"
  • oauth_nonce="{nonce}"
  • (optional) oauth_version="1.0"

For enhanced security, we recommend that you send OAuth parameters as headers. Here is an example of a signed cURL request with all the generated tokens passed in an authorization header. 


curl --location --request POST 'http:{yourhostname}/api/user/v2/workflows' \
--header 'Authorization: OAuth oauth_consumer_key="{consumer key}",
                         oauth_signature_method="HMAC-SHA1",
                         oauth_signature="{signature}",
                         oauth_timestamp="{timestamp}",
                         oauth_nonce="{nonce}"' \

You can reference a fully-functional sample Gallery client in C# or JavaScript.

Was This Helpful?

Running into problems or issues with your Alteryx product? Visit the Alteryx Community or contact support.