Search docs

Get Started

This guide will get you up and running with Apideck. To get started on our platform, you need to:

After completing these steps, you can make API calls to our Unified APIs 🎉

Step 1: Create an account

If you haven't already, head over to our Signup page and create an account. Choose an application name and a subdomain. Afterward, you will be redirected to the Apideck dashboard.

Step 2: Enable Unified APIs and connectors

Go to the Configuration page in the Apideck dashboard. Choose one or more Unified APIs to enable. You'll see a list of the available connectors for each Unified API. Choose a couple of connectors to enable. The Unified APIs and connectors you select become available to your users in Vault.

OAuth Apps

By default, all connectors use sandbox OAuth apps from Apideck. This makes it easy for you to get started and connect integrations right away.

Custom OAuth apps

Once you're ready to ship your integrations with Apideck, you should use your own OAuth apps. Apideck supports bringing your own OAuth clients for supported services by configuring them in our dashboard. This will make sure users see your brand instead of Apideck when they connect integrations.

Step 3: Get your API key

Go to the API Keys page in the Apideck dashboard. Copy your application ID and API key. If your API key ever gets compromised, you can regenerate it on this page.

API keys overview
API keys overview

Step 4: Create a consumer (optional)

Vault lets your users (consumers in Apideck) easily connect and configure integrations. You can create a consumer through a Vault session.

Consumers need have a unique ID. Most of the time, this is an ID of your internal data model that represents a user or account in your system (for example account:12345). If the consumer doesn't exist yet, Vault will upsert a consumer based on your ID.

Use the API call below to create a session for a consumer. This will return a Vault URL that you forward to a consumer to connect integrations.

curl --request POST \
  --url 'https://unify.apideck.com/vault/sessions' \
  --header 'Authorization: Bearer {API_KEY}' \
  --header 'x-apideck-app-id: {APP_ID}' \
  --header 'x-apideck-consumer-id: {CONSUMER_ID}' \
  --data-raw '{
    "redirect_uri": "https://mysaas.com/dashboard",
    "consumer_metadata": {
        "account_name": "SpaceX",
        "user_name": "Elon Musk",
        "image": "https://www.spacex.com/elon.jpg"
    },
    "theme": {
        "vault_name": "Space X",
        "primary_color": "#286efa",
        "sidepanel_text_color": "#FFFFFF",
    }
  }'

Step 5: Connect integrations in Vault

Apideck Vault lets your users connect their integration accounts. It stores the credentials securely and lets you make authorized API calls on your users' behalf (consumers in Apideck).

Vault connections hold the credentials for a given connector (for example Google Drive). A connection is always scoped to a consumer.

Apideck Vault diagram
Apideck Vault diagram

There are 3 ways to integrate Vault

  1. Hosted Vault: A ready-to-use, themable integrations page, hosted by Apideck.
  2. React Vault: Embed integrations inside your app in minutes
  3. Custom: Use the Vault API directly to create your own integrations page inside your app

To get started, we'll use Hosted Vault. Head over to the Vault page in the Apideck dashboard and under Hosted Vault, click Launch Demo. This opens Hosted Vault for a test consumer.

Alternatively use the Vault URL generated in step 4.

Hosted Vault
Hosted Vault

Go to the Integrations page in Hosted Vault. Search for a connector that you enabled in step 3 and click Add.

On the integration's page click Authorize, you will be redirected to the connector and asked to authorize Apideck. After you complete this flow, you will be redirected back to Hosted Vault.

The connector is now ready for use. All that's left now is to make your first API call 🎉

First API call

You now have all the building blocks to make your first call to the Apideck API. Here's an example curl to the CRM API to get you started.

curl --request GET \
  --url 'https://unify.apideck.com/crm/companies' \
  --header 'Authorization: Bearer {API_KEY}' \
  --header 'x-apideck-app-id: {APP_ID}' \
  --header 'x-apideck-consumer-id: test-consumer' \
  --header 'x-apideck-service-id: {SERVICE_ID}'
  • {APP_ID} and {API_KEY} are the values you copied in step 3.
  • {SERVICE_ID} is the Connector ID you want to make a request to. This ID is the name of the connector in kebab-case (for example google-drive). Find the full list of connector IDs here.
  • test-consumer is the consumer ID that Hosted Vault uses for test sessions. The connector we authorized earlier is linked to this consumer. When you're using Apideck with real users, you should use a unique user identifier as consumer ID.

Extras

Get notified when your users connect integrations

We offer Webhook support so you can get notified as soon as a consumer configures a connection. You can find more information about Webhooks in the Webhook API docs or configure webhooks in Apideck.

Webhook Management
Webhook Management

SDKs

Our SDKs are the easiest way to integrate our API into your codebase. Find out how to get started with it here.

At the moment we have SDKs for Javascript and PHP. SDKs for other popular languages such as Python, C#, Java and Rust are coming soon.

API Tools

The Apideck API Explorer is a great way to explore our APIs through a UI.

We also offer integrations with Postman and Insomnia. Head over to one of our API references and use the Actions dropdown to use these tools.

The OpenAPI specifications for all of our APIs are open source.

Samples

Looking for inspiration? Take a look at our sample projects. All of our samples are completely open source.