Skip to content

Etsy connector: x-api-key header omits Shared Secret, causes 403 "Shared secret is required" #634

Description

@tashage

Description

Describe the bug
The built-in "Etsy Open API v3" connector fails on every request with:

403 Forbidden
{"error": "Shared secret is required in x-api-key header"}

Steps to reproduce

  1. Registered an app on Etsy's developer portal, confirmed Keystring and Shared Secret are correct against Etsy's "Your Apps" page.
  2. Completed the Etsy OAuth2 PKCE flow manually and obtained a valid refresh token.
  3. Set ETSY_CLIENT_ID, ETSY_CLIENT_SECRET, and ETSY_REFRESH_TOKEN exactly as the connector's own setup instructions describe.
  4. Called any tool (e.g. etsy_get_authenticated_user) — always fails with the 403 above.

Root cause (found in the Connector Details page)
Under "Authentication", the connector's own documentation states it sends:

x-api-key: ${ETSY_CLIENT_ID}

Etsy's API requires this header to contain both the Keystring and Shared Secret together, separated by a colon (keystring:sharedsecret), on every request. Since the Shared Secret is never included, Etsy rejects every call.

Expected behavior
The header should be built as:

x-api-key: ${ETSY_CLIENT_ID}:${ETSY_CLIENT_SECRET}

Additional context
Same Connector Details page also shows two other notices that may be related:

  • "No authorization URL configured for this connector"
  • Healthcheck failing on path "/" (404) — Etsy has no root handler; a working healthcheck endpoint would be /openapi-ping.

Environment

  • Using the hosted cloud.anythingmcp.com (free trial), not self-hosted
  • Connector: Etsy Open API v3 (REST, Auth Type: OAUTH2)

Happy to provide screenshots if useful.

Steps to Reproduce

  1. Registered an app on Etsy's developer portal, confirmed Keystring and Shared Secret are correct against Etsy's "Your Apps" page.
  2. Completed the Etsy OAuth2 PKCE flow manually and obtained a valid refresh token.
  3. Set ETSY_CLIENT_ID, ETSY_CLIENT_SECRET, and ETSY_REFRESH_TOKEN exactly as the connector's own setup instructions describe.
  4. Called any tool (e.g. etsy_get_authenticated_user) — always fails with the 403 above.

Root cause (found in the Connector Details page)
Under "Authentication", the connector's own documentation states it sends:

x-api-key: ${ETSY_CLIENT_ID}

Etsy's API requires this header to contain both the Keystring and Shared Secret together, separated by a colon (keystring:sharedsecret), on every request. Since the Shared Secret is never included, Etsy rejects every call.

Expected Behavior

The header should be built as:

x-api-key: ${ETSY_CLIENT_ID}:${ETSY_CLIENT_SECRET}

### Actual Behavior

403 Forbidden
{"error": "Shared secret is required in x-api-key header"}

### Connector Type

REST

### Deployment Method

Docker Compose

### Version

Cloud

### Relevant Logs

```shell

Environment

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions