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

# Zotero Integration

<Info>
  This feature is initially developed by [davrot](https://github.com/davrot) and [yu-i-i/overleaf-cep](https://github.com/yu-i-i/overleaf-cep), modified by [ayaka-notes/ayakaleaf-pro](https://github.com/ayaka-notes/ayakaleaf-pro) with OAuth. It is introduced from v6.2.0 and later. It's still in beta status. We need your feedback if you have any problem.
</Info>

<Frame>
  <img src="https://mintcdn.com/ayakaleaf-pro/x9kfDjtWlyyhG_mR/images/on-premises/img-b751b9f6.png?fit=max&auto=format&n=x9kfDjtWlyyhG_mR&q=85&s=80eb902caf484c8cfc1c776017ac2c66" alt="" width="1802" height="372" data-path="images/on-premises/img-b751b9f6.png" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/ayakaleaf-pro/x9kfDjtWlyyhG_mR/images/on-premises/image-40.png?fit=max&auto=format&n=x9kfDjtWlyyhG_mR&q=85&s=6dc6bfdbc9f196d6b0e52e331dcebeb1" alt="" width="1524" height="1116" data-path="images/on-premises/image-40.png" />
</Frame>

### Setup Zotero Integration

1. Open [this link](https://www.zotero.org/oauth/apps) to create a Zotero OAuth client (as image shows)
2. Choose **Application Type**: **Browser**
3. Setup Callback URL with your `${OVERLEAF_SITE_URL}/user/zotero/oauth/callback`
4. Configure your `config/variables.env`

<Frame>
  <img src="https://mintcdn.com/ayakaleaf-pro/x9kfDjtWlyyhG_mR/images/on-premises/image-41.png?fit=max&auto=format&n=x9kfDjtWlyyhG_mR&q=85&s=7b17a5456fed177a76d4adfe2daf8107" alt="" width="375" data-path="images/on-premises/image-41.png" />
</Frame>

```dotenv title="config/variables.env" theme={null}
#################
#    Zotero     #
#################
# 'zotero' must be in ENABLED_LINKED_FILE_TYPES (set in develop/docker-compose.yml)
ENABLED_LINKED_FILE_TYPES=project_file,project_output_file,url,zotero

# From a Zotero OAuth client (register at https://www.zotero.org/oauth/apps)
# Application Type: Browser 
# Callback URL -> ${OVERLEAF_SITE_URL}/user/zotero/oauth/callback
ZOTERO_CLIENT_ID=
ZOTERO_CLIENT_SECRET=
# Encrypts the Zotero API key in mongo (set in dev to avoid writing a key file
# to /var/lib/overleaf/data, which the dev web container can't create)
# How to generate: `openssl rand -hex 32`
ZOTERO_CIPHER_PASSWORD=dev-zotero-cipher-password
# Optional: route the module's server-side Zotero requests (OAuth + API) through
# an HTTP proxy (must be reachable from the web container; same as github-sync)
# http://10.0.0.1:10808
# (Optional) ZOTERO_PROXY_URL=
```

### Notes

<Warning>
  When upgrading an existing installation with Zotero linked bibliography files to the re-released 6.3.0, follow the [Zotero / Mendeley migration instructions](/on-premises/release-notes/release-notes-6.x.x#ayakaleaf-pro-6.3.0 "mention"). New installations do not need this migration.
</Warning>

<Danger>
  Since Ayakaleaf is a collaborative platform, to improve security, starting with version 6.3.0, only the original creator of a Reference `bib` file will be allowed to update the imported file.
</Danger>

For example, suppose the project owner, User A, enables link sharing and creates a `test.bib` file in the project, linking it to their own Zotero account. If another user, User B, accesses the project through the shared link, User B will still be able to read and download `test.bib`, but will not be allowed to update or re-import the file from Zotero. Only User A, as the original creator of the Reference file, can perform updates. Conversely, only the original creator of the `.bib` file has permission to update it.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.