> ## Documentation Index
> Fetch the complete documentation index at: https://algolia.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Supabase connector

> Import and sync data from Supabase tables or views into an Algolia index.

export const Records = () => <Tooltip tip="A record is a searchable object in an Algolia index. Each record consists of named attributes." cta="Algolia records" href="/doc/guides/sending-and-managing-data/prepare-your-data#algolia-records">
    records
  </Tooltip>;

export const Index = () => <Tooltip tip="An Algolia index is a searchable dataset that consists of records and configuration settings. These settings define how the records are searched and ranked.">
    index
  </Tooltip>;

Use the Supabase connector to import data from a Supabase project into an Algolia <Index />.
After selecting a table or view, the connector synchronizes your index with updates.

<Frame>
  <iframe width="644" height="363" src="https://www.youtube.com/embed/sLr6-K7_Av8" title="How to integrate Algolia with your Supabase project" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen className="video-embed" />
</Frame>

## Before you begin

You need:

* [Supabase database credentials](https://supabase.com/dashboard/project/_?showConnect=true\&utm_medium=referral\&utm_source=algolia\&utm_campaign=algolia-supabase-integration)
* [A secured Algolia API key](/doc/guides/security/api-keys#secured-api-keys)

## Select a Supabase data source

1. In the Algolia dashboard, select the [**Supabase** connector](https://dashboard.algolia.com/connectors/supabase/create) and click **Connect**.

2. Enter your Supabase credentials:

   * **Host**
   * **Transaction pooler port**
   * **Session pooler port**
   * **Database name**
   * **Username**
   * **Password**

3. Give your Supabase source a name.

4. Click **Create source**.

5. After the connection is verified, choose a destination index and set up a synchronization task.

## Select an Algolia destination index

Your Supabase data will be stored in an Algolia index.

1. Select an existing index or [create a new one](/doc/guides/sending-and-managing-data/send-and-update-your-data/how-to/importing-from-the-dashboard#create-a-new-index).
2. Provide the secured Algolia API key for that index.
3. Name the destination for clear identification.
4. Click **Create destination**.

## Create a synchronization task

Tasks define how and when Algolia fetches data from your Supabase source.

1. Choose how to trigger the sync:

   * **On demand**: run the task from the Algolia dashboard or API.
   * **Scheduled**: choose a predefined schedule or enter a [cron expression](https://crontab.guru).

2. Choose how you want to update your Algolia index:

   * **Full reindexing**: replaces all <Records /> in the index.
   * **Full record updates**: replaces matching records based on the primary database key.
   * **Partial record updates**: updates specified attributes in matching records.

3. Choose the table or view to import and select which columns to include.

4. Choose a primary key from your Supabase table or view to use as the Algolia `objectID`.

5. Click **Create task**.

<Tip>
  Create a separate task for each table or view.
  Combining several sources in one task merges them into a single index which can cause data conflicts.
</Tip>

## Limitations

This connector is subject to the following limitations:

* [Connectors limits](/doc/guides/scaling/algolia-service-limits/#connectors-limits)
* [Transformation limits](/doc/guides/scaling/algolia-service-limits/#data-transformation-and-fetch-limits)

## See also

[Transform your data with code](/doc/guides/sending-and-managing-data/send-and-update-your-data/how-to/transform-your-data-with-code)
