Skip to content

Commit

Permalink
Edited Instagram Connector doc (airbytehq#17693)
Browse files Browse the repository at this point in the history
* edited_doc

* deleted table and edited wording
  • Loading branch information
sophia-wiley authored and jhammarstedt committed Oct 31, 2022
1 parent 10b16db commit 8d87bba
Showing 1 changed file with 49 additions and 63 deletions.
112 changes: 49 additions & 63 deletions docs/integrations/sources/instagram.md
Original file line number Diff line number Diff line change
@@ -1,67 +1,64 @@
# Instagram

This page guides you through the process of setting up the instagram source connector.

This page contains the setup guide and reference information for the Instagram source connector.

## Prerequisites

* A Facebook App
* An Instagram Business Account
* A Facebook Page linked to your Instagram Business Account
* A Facebook API Access Token


## Step 1: Set up Instagram

### Facebook App

#### If you don't have a Facebook App

Visit the [Facebook Developers App hub](https://developers.facebook.com/apps/) and create an App and choose "Manage Business Integrations" as the purpose of the app. Fill out the remaining fields to create your app.

### Facebook Page

See the Facebook [support](https://www.facebook.com/business/help/898752960195806) for information about how to add an Instagram Account to your Facebook Page.

### Instagram Business Account

Follow the [Instagram documentation](https://www.facebook.com/business/help/1492627900875762) for setting up an Instagram business account. We'll need this ID to configure Instagram as a source in Airbyte.

* [Meta for Developers account](https://developers.facebook.com)
* [Instagram business account](https://www.facebook.com/business/help/898752960195806) to your Facebook page
* [Instagram Graph API](https://developers.facebook.com/docs/instagram-api/) to your Facebook app
* Facebook API [access token](https://developers.facebook.com/docs/facebook-login/access-tokens/#usertokens)
* [Facebook ad account ID number](https://www.facebook.com/business/help/1492627900875762) (you'll use this to configure Instagram as a source in Airbyte)

## Step 2: Set up the Instagram connector in Airbyte
## Setup Guide

**For Airbyte Cloud:**

1. [Log into your Airbyte Cloud](https://cloud.airbyte.io/workspaces) account.
2. In the left navigation bar, click **Sources**. In the top-right corner, click **+ new source**.
3. On the source setup page, select **Instagram** from the Source type dropdown and enter a name for this connector.
4. Select `Authenticate your account`.
5. Log in and Authorize to the Instagram account and click `Set up source`.

**For Airbyte Open Source:**

1. For using an Access Tokens, set up instagram (see step above).
2. Generate [Access Tokens](https://developers.facebook.com/docs/facebook-login/access-tokens/#usertokens) with the following permissions:
* [instagram\_basic](https://developers.facebook.com/docs/permissions/reference/instagram_basic)
* [instagram\_manage\_insights](https://developers.facebook.com/docs/permissions/reference/instagram_manage_insights)
* [pages\_show\_list](https://developers.facebook.com/docs/permissions/reference/pages_show_list)
* [pages\_read\_engagement](https://developers.facebook.com/docs/permissions/reference/pages_read_engagement)
### Step 1: Set up Instagram​
Generate access tokens with the following permissions:
* [instagram_basic](https://developers.facebook.com/docs/permissions/reference/instagram_basic)
* [instagram_manage_insights](https://developers.facebook.com/docs/permissions/reference/instagram_manage_insights)
* [pages_show_list](https://developers.facebook.com/docs/permissions/reference/pages_show_list)
* [pages_read_engagement](https://developers.facebook.com/docs/permissions/reference/pages_read_engagement)
* [Instagram Public Content Access](https://developers.facebook.com/docs/apps/features-reference/instagram-public-content-access)
3. Go to local Airbyte page.
4. In the left navigation bar, click **Sources**. In the top-right corner, click **+ new source**.
5. On the Set up the source page, enter the name for the Instagram connector and select **Instagram** from the Source type dropdown.
6. Paste your Access Tokens from step 2.
7. Click `Set up source`.

### Step 2: Set up the Instagram connector in Airbyte

#### For Airbyte Cloud

1. Log in to your [Airbyte Cloud](https://cloud.airbyte.io/workspaces) account.
2. Click **Sources** and then click **+ New source**.
3. On the Set up the source page, select **Instagram** from the **Source type** dropdown.
4. Enter a name for your source.
5. Click **Authenticate your Instagram account**.
6. Log in and authorize the Instagram account.
7. Enter the **Start Date** in YYYY-MM-DDT00:00:00Z format. All data generated after this date will be replicated. If this field is blank, Airbyte will replicate all data.
8. Click **Set up source**.

#### For Airbyte Open Source
1. Log in to your Airbyte Open Source account.
2. Click **Sources** and then click **+ New source**.
3. On the Set up the source page, select **Instagram** from the **Source type** dropdown.
4. Enter a name for your source.
5. Click **Authenticate your Instagram account**.
6. Log in and authorize the Instagram account.
7. Enter the **Start Date** in YYYY-MM-DDT00:00:00Z format. All data generated after this date will be replicated. If this field is blank, Airbyte will replicate all data.
8. Paste the access tokens from [Step 1](#step-1-set-up-instagram​).
9. Click **Set up source**.

## Supported sync modes

The Instagram source connector supports the following [sync modes](https://docs.airbyte.com/cloud/core-concepts#connection-sync-modes):
- Full Refresh
- Incremental
* [Full Refresh - Overwrite](https://docs.airbyte.com/understanding-airbyte/glossary#full-refresh-sync)
* [Full Refresh - Append](https://docs.airbyte.com/understanding-airbyte/connections/full-refresh-append)
* [Incremental - Append](https://docs.airbyte.com/understanding-airbyte/connections/incremental-append)
* [Incremental - Deduped History](https://docs.airbyte.com/understanding-airbyte/connections/incremental-deduped-history)

:::note

Incremental sync modes are only available for the [User Insights](https://developers.facebook.com/docs/instagram-api/reference/ig-user/insights) stream.

:::

## Supported Streams
The Instagram source connector supports the following streams. For more information, see the [Instagram Graph API](https://developers.facebook.com/docs/instagram-api/) and [Instagram Insights API documentation](https://developers.facebook.com/docs/instagram-api/guides/insights/).

* [User](https://developers.facebook.com/docs/instagram-api/reference/ig-user)
* [User Insights](https://developers.facebook.com/docs/instagram-api/reference/ig-user/insights)
Expand All @@ -70,24 +67,13 @@ The Instagram source connector supports the following [sync modes](https://docs.
* [Stories](https://developers.facebook.com/docs/instagram-api/reference/ig-user/stories/)
* [Story Insights](https://developers.facebook.com/docs/instagram-api/reference/ig-media/insights)

For more information, see the [Instagram API](https://developers.facebook.com/docs/instagram-api/) and [Instagram Insights API documentation](https://developers.facebook.com/docs/instagram-api/guides/insights/).


### Features

| Feature | Supported?\(Yes/No\) | Notes |
| :---------------- | :------------------- | :----------------- |
| Full Refresh Sync | Yes | |
| Incremental Sync | Yes | only User Insights |

### Rate Limiting & Performance Considerations

Instagram, like all Facebook services, has a limit on the number of requests, but Instagram connector gracefully handles rate limiting.
### Rate Limiting and Performance Considerations

See Facebook's [documentation on rate limiting](https://developers.facebook.com/docs/graph-api/overview/rate-limiting/#instagram-graph-api) for more information.
Instagram limits the number of requests that can be made at a time, but the Instagram connector gracefully handles rate limiting. See Facebook's [documentation on rate limiting](https://developers.facebook.com/docs/graph-api/overview/rate-limiting/#instagram-graph-api) for more information.


## Data type map
AirbyteRecords are required to conform to the [Airbyte type](https://docs.airbyte.com/understanding-airbyte/supported-data-types/) system. This means that all sources must produce schemas and records within these types and all destinations must handle records that conform to this type system.

| Integration Type | Airbyte Type |
| :--------------- | :----------- |
Expand Down

0 comments on commit 8d87bba

Please sign in to comment.