FeelConnect▍
ProductsDocsPricingChangelog
Sign inGet API keys

Search documentation

Fuzzy search across every docs page and section

Getting started/Authentication

Getting started

  • Overview
  • Quickstart
  • Authentication
  • Environments and sandbox
  • Link
  • Going live

API reference

  • Link tokens
  • Institutions
  • Items
  • Accounts
  • Transactions
  • Identity
  • Income
  • Assets
  • Investments
  • Liabilities
  • Recurring
  • Categories
  • AI products

Platform

  • Webhooks
  • Errors
  • Rate limits and quotas
  • SDKs
  • GraphQL
  • MCP and AI agents
  • Changelog
  1. Docs
  2. Getting started
  3. Authentication
PreviousQuickstartNextEnvironments and sandbox

On this page

  • Key types
  • Environment selection
  • Response headers
  • Authentication failures
  • Key rotation
FeelConnect▍

The developer-first financial data platform.

All systems operational

Products

Universal LinkData APIsAI enrichmentPricing

Developers

DocumentationAPI explorerDashboardGet API keys

Company

HomeChangelogfeels.moneySign in

Legal

PrivacyTermsSecurityData processing
© 2026 FeelConnect. All rights reserved./v1 · FC-Version 2026-07-01

Getting started

Authentication

Secret-key bearer auth for /v1: key formats, environments, response headers, rotation, and failure modes.

Every /v1 request authenticates with a secret key in the Authorization header. The key identifies your application and selects the data environment.

curl
curl https://api.feelconnect.dev/v1/accounts/get \
-H "Authorization: Bearer fc_sk_test_4Kj9mQ2xP7cW1nR4tYb8sJd3fV6zL0aG" \
-H "Content-Type: application/json" \
-d '{"access_token":"fc_at_..."}'

Key types

PrefixEnvironmentPurpose
fc_sk_test_testSandbox data plane. Free on every plan. Safe for CI.
fc_sk_live_liveLive data plane. Requires the Startup plan or above (live_access_unavailable otherwise).
fc_at_eitherItem access token — pairs with the key that created it, not a login credential.
whsec_eitherWebhook endpoint signing secret. Shown once at creation.

Keys are created in Dashboard → API keys. FeelConnect stores only a SHA-256 hash of each secret, plus a display prefix and last four characters — a lost key cannot be recovered, only replaced.

Environment selection

The key is the environment. A fc_sk_test_ key can only see items created with test keys, and fc_sk_live_ only live items. Access tokens are bound to the application and environment that created them — using a test key with a live item's token returns item_not_found.

Response headers

HeaderMeaning
X-Request-IdUnique id (req_…) for the request. Include it in support tickets.
FC-VersionAPI contract date, currently 2026-07-01.
X-RateLimit-LimitYour key's sustained requests-per-second allowance.
X-RateLimit-RemainingTokens left in the burst bucket.
X-RateLimit-ResetSeconds until the bucket fully refills.

Authentication failures

All failures use the standard error envelope with HTTP 401 or 403:

CodeStatusMeaning
missing_api_key401No Authorization: Bearer header was sent.
invalid_api_key401The key is malformed, unknown, or revoked.
item_not_found401The access_token does not belong to this app + environment.
live_access_unavailable403Live keys require a paid plan.
Example 401
{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "This API key does not exist or was revoked.",
"request_id": "req_2kD8fQx1mZ7cW4nY0bT3"
}
}

Key rotation

  • Create a second key in the dashboard — an application can hold multiple active keys.
  • Deploy the new key to your servers.
  • Revoke the old key. Revocation is immediate; in-flight requests with the old key fail with invalid_api_key.
  • Access tokens are not affected by key rotation — they belong to the application, not the key.

Compromised keys

If a secret key leaks, revoke it immediately in the dashboard. Every key's last_used timestamp is visible, and all /v1 traffic is captured in Dashboard → Logs for audit.