> ## Documentation Index
> Fetch the complete documentation index at: https://nango-wari-migrated-bigcommerce-docs.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Algolia

## Overview

<CardGroup cols={3}>
  <Card title="Pre-built tooling" icon="screwdriver-wrench" href="#pre-built-tooling" />

  <Card title="Pre-built integrations" icon="square-check" href="#pre-built-integrations" />

  <Card title="Access requirements" icon="triangle-exclamation" href="#access-requirements" />

  <Card title="Setup guide" icon="rocket" href="#setup-guide" />

  <Card title="Useful links" icon="circle-info" href="#useful-links" />

  <Card title="API gotchas" icon="biohazard" href="#api-gotchas" />
</CardGroup>

## Pre-built tooling

<AccordionGroup>
  <Accordion title="✅ Authorization">
    | Tools                             | Status |
    | --------------------------------- | ------ |
    | Pre-built authorization (API Key) | ✅      |
    | Pre-built authorization UI        | ✅      |
    | Custom authorization UI           | ✅      |
    | End-user authorization guide      | ✅      |
    | Expired credentials detection     | ✅      |
  </Accordion>

  <Accordion title="✅ Read & write data">
    | Tools                                     | Status                         |
    | ----------------------------------------- | ------------------------------ |
    | Pre-built integrations                    | ✅                              |
    | API unification                           | ✅                              |
    | 2-way sync                                | ✅                              |
    | Webhooks from Nango on data modifications | ✅                              |
    | Real-time webhooks from 3rd-party API     | 🚫 (time to contribute: \<48h) |
    | Proxy requests                            | ✅                              |
  </Accordion>

  <Accordion title="✅ Observability & data quality">
    | Tools                   | Status |
    | ----------------------- | ------ |
    | HTTP request logging    | ✅      |
    | End-to-end type safety  | ✅      |
    | Data runtime validation | ✅      |
    | OpenTelemetry export    | ✅      |
    | Slack alerts on errors  | ✅      |
    | Integration status API  | ✅      |
  </Accordion>

  <Accordion title="✅ Customization">
    | Tools                              | Status                         |
    | ---------------------------------- | ------------------------------ |
    | Create or customize use-cases      | ✅                              |
    | Pre-configured pagination          | 🚫 (time to contribute: \<48h) |
    | Pre-configured rate-limit handling | 🚫 (time to contribute: \<48h) |
    | Per-customer configurations        | ✅                              |
  </Accordion>
</AccordionGroup>

### Others

| Function name             | Description                                                                                  | Type                                           | Source code                                                                                                                     |
| ------------------------- | -------------------------------------------------------------------------------------------- | ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `batch-objects`           | Batch create, update, or delete Algolia objects.                                             | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/batch-objects.ts)           |
| `copy-index`              | Copy an Algolia index to a new destination index.                                            | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/copy-index.ts)              |
| `create-api-key`          | Create an API key in Algolia.                                                                | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/create-api-key.ts)          |
| `create-object`           | Create an object in an Algolia index. Returns a generated objectID.                          | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/create-object.ts)           |
| `create-rule`             | Create a query rule in an Algolia index.                                                     | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/create-rule.ts)             |
| `create-synonym`          | Create a synonym in an Algolia index.                                                        | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/create-synonym.ts)          |
| `delete-api-key`          | Delete an API key in Algolia.                                                                | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/delete-api-key.ts)          |
| `delete-index`            | Delete an Algolia index and all its objects.                                                 | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/delete-index.ts)            |
| `delete-object`           | Delete an object from an Algolia index.                                                      | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/delete-object.ts)           |
| `delete-rule`             | Delete a query rule from an Algolia index.                                                   | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/delete-rule.ts)             |
| `delete-synonym`          | Delete a synonym from an Algolia index.                                                      | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/delete-synonym.ts)          |
| `get-api-key`             | Retrieve a single API key from Algolia.                                                      | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/get-api-key.ts)             |
| `get-index`               | Retrieve metadata for a single Algolia index.                                                | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/get-index.ts)               |
| `get-logs`                | Retrieve recent API operation logs from Algolia.                                             | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/get-logs.ts)                |
| `get-object`              | Retrieve a single object from an Algolia index.                                              | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/get-object.ts)              |
| `get-rule`                | Retrieve a single query rule from an Algolia index.                                          | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/get-rule.ts)                |
| `get-settings`            | Retrieve Algolia index settings.                                                             | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/get-settings.ts)            |
| `get-synonym`             | Retrieve a single synonym from an Algolia index.                                             | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/get-synonym.ts)             |
| `list-api-keys`           | List API keys from Algolia.                                                                  | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/list-api-keys.ts)           |
| `list-indices`            | List indices from Algolia.                                                                   | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/list-indices.ts)            |
| `list-objects`            | List objects from an Algolia index using the browse endpoint.                                | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/list-objects.ts)            |
| `list-rules`              | List query rules from an Algolia index.                                                      | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/list-rules.ts)              |
| `list-synonyms`           | List synonyms from an Algolia index.                                                         | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/list-synonyms.ts)           |
| `move-index`              | Rename an Algolia index by moving it to a new name (destructive — overwrites destination).   | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/move-index.ts)              |
| `partial-update-object`   | Update specific attributes of an existing Algolia object without replacing the whole record. | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/partial-update-object.ts)   |
| `search-index`            | Run an Algolia search query against an index.                                                | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/search-index.ts)            |
| `search-multiple-indices` | Run search queries across multiple Algolia indices in a single request.                      | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/search-multiple-indices.ts) |
| `set-settings`            | Update Algolia index settings.                                                               | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/set-settings.ts)            |
| `update-api-key`          | Update an API key in Algolia.                                                                | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/update-api-key.ts)          |
| `update-object`           | Replace an Algolia object entirely (full overwrite by objectID).                             | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/update-object.ts)           |
| `update-rule`             | Update a query rule in an Algolia index.                                                     | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/update-rule.ts)             |
| `update-synonym`          | Update a synonym in an Algolia index.                                                        | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/actions/update-synonym.ts)          |
| `api-keys`                | Sync API keys from Algolia.                                                                  | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/syncs/api-keys.ts)                  |
| `indices`                 | Sync indices from Algolia.                                                                   | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/syncs/indices.ts)                   |
| `objects`                 | Sync objects from an Algolia index                                                           | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/syncs/objects.ts)                   |
| `rules`                   | Sync query rules from an Algolia index                                                       | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/syncs/rules.ts)                     |
| `synonyms`                | Sync synonyms from an Algolia index.                                                         | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/algolia/syncs/synonyms.ts)                  |

## Access requirements

| Pre-Requisites    | Status | Comment |
| ----------------- | ------ | ------- |
| Paid dev account  | ❓      |         |
| Paid test account | ❓      |         |
| Partnership       | ❓      |         |
| App review        | ❓      |         |
| Security audit    | ❓      |         |

## Setup guide

*No setup guide yet.*

<Tip>Need help getting started? Get help in the [community](https://nango.dev/slack).</Tip>

<Note>Contribute improvements to the setup guide by [editing this page](https://github.com/nangohq/nango/tree/master/docs/integrations/all/algolia.mdx)</Note>

## Useful links

* [Generate an API key in your Algolia account](https://www.algolia.com/doc/guides/security/api-keys/#create-and-manage-your-api-keys)
* [Algolia API docs](https://www.algolia.com/doc/rest-api/search)
* [Algolia Authentication](https://www.algolia.com/doc/rest-api/search/#authentication)

<Note>Contribute useful links by [editing this page](https://github.com/nangohq/nango/tree/master/docs/integrations/all/algolia.mdx)</Note>

## API gotchas

* Algolia uses API\_KEY auth mode with `X-Algolia-API-Key: API_KEY`and `X-Algolia-Application-Id: APP_ID` in the request header to access different endpoints.

<Note>Contribute API gotchas by [editing this page](https://github.com/nangohq/nango/tree/master/docs/integrations/all/algolia.mdx)</Note>

## Going further

<Card title="Connect to Algolia" icon="link" href="/integrations/all/algolia/connect" horizontal>
  Guide to connect to Algolia using Connect UI
</Card>
