FanDesk

API Keys

API keys let you connect external tools, scripts, and AI assistants to your FanDesk account via the REST API and the MCP protocol (250+ tools).

Creating an API Key

  1. Go to Settings > Integrations
  2. Scroll to the API Keys section
  3. Click Generate Key
  4. Enter a descriptive name that tells you what the key is for:
    • "Claude Code" — for AI-assisted development
    • "Claude Desktop" — for the desktop AI assistant
    • "Zapier" — for workflow automation
    • "CI/CD Pipeline" — for deployment scripts
  5. Click Generate
  6. Copy the key immediately — it will not be shown again after you close the dialog

Store the key in a secure location (a password manager, an environment variable, or your OS keychain). Do not paste it into files that get committed to git.


Key Format

FanDesk API keys always start with fdk_:

fdk_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0

Keys are 40+ characters long and randomly generated. Each key is cryptographically unique.


Key Permissions

API keys inherit the full permissions of the user who created them:

AreaAccess Level
Projects & TasksOnly projects you are a member or lead of
PagesOrganization pages, your own pages, and pages shared with you
Mail & CalendarYour connected Google accounts only
ChatChannels you are a member of
IncidentsAll incidents visible to your organization
ContactsYour organization's contact directory
DriveYour connected Google Drive accounts
FormsForms in your organization

Keys cannot access anything you cannot access yourself in the app. No API key has elevated privileges.

Admins do not get admin-level API keys by default — standard permissions apply.


Using Keys with MCP

The primary use case for API keys is connecting AI assistants to FanDesk via the MCP (Model Context Protocol). This gives your AI assistant access to 250+ FanDesk tools.

Connect Claude Code

Run this command in your terminal, replacing the placeholders with your actual domain and key:

claude mcp add fandesk   --transport streamable-http   --url https://your-fandesk-domain.com/mcp   --header "Authorization: Bearer fdk_your_key_here"

Connect Claude Desktop

Add this to your Claude Desktop configuration file (claude_desktop_config.json):

{
  "mcpServers": {
    "fandesk": {
      "url": "https://your-fandesk-domain.com/mcp",
      "headers": {
        "Authorization": "Bearer fdk_your_key_here"
      }
    }
  }
}

Connect Any MCP Client

Any MCP-compatible client can connect using:

  • Transport: Streamable HTTP (or SSE for older clients)
  • URL: https://your-domain.com/mcp
  • Auth: HTTP header Authorization: Bearer fdk_your_key

Using Keys with the REST API

Authenticate REST API requests by including your key in the Authorization header:

curl -H "Authorization: Bearer fdk_your_key_here"      https://your-fandesk-domain.com/api/tasks

All API endpoints that require authentication accept Bearer token auth.


Managing Your Keys

Viewing Keys

Go to Settings > Integrations to see all your API keys. For security, only the key prefix is shown in the list (e.g., fdk_a1b2c3...). You cannot retrieve the full key — if lost, revoke and generate a new one.

Revoking a Key

  1. Find the key in Settings > Integrations
  2. Click the trash icon next to it
  3. Confirm the revocation
  4. The key stops working immediately — any integration using it will get 401 Unauthorized errors

Revoking is permanent. If you revoke by mistake, generate a new key and update your integrations.


Security Best Practices

Generate one key per integration — Do not use one key for everything. If a key is compromised, revoking it should only affect one integration.

Use descriptive names — In 6 months, you should be able to tell from the name exactly what integration each key is for.

Never commit keys to git — Use environment variables instead:

# In your .env file (add .env to .gitignore)
FANDESK_API_KEY=fdk_your_key_here

# In your code
api_key = os.environ["FANDESK_API_KEY"]

Rotate keys periodically — Every 90 days, generate a new key, update your integrations, then revoke the old key. This limits exposure if a key was ever intercepted.

Revoke immediately when no longer needed — End-of-project, offboarding a team member who had a key, or decommissioning a service.


How Keys Are Stored

FanDesk stores only a cryptographic hash of your key, not the key itself. This means:

  • We cannot see your key after it is generated
  • Even a database compromise would not expose your raw key
  • All actions taken via a key are logged and attributed to your user account

Next: See all available MCP tools in MCP Tools.

Need help? Contact us at hello@fandesk.ai