Skip to content

Enable external endpoints for app valuehalla (PERMISSION_DENIED: external endpoints are not enabled for this app) #284

Description

@mlawson00

server.externalEndpoints is documented in the config schema and my config validates against config-file.v1.json. After devvit upload, devvit view correctly reports "Can be invoked by third-parties outside of Reddit", so the endpoint does register.

At runtime, however, externalEndpoints.getExternalUrl() fails:

7 PERMISSION_DENIED: grpc invocation failed with status 7;
external endpoints are not enabled for this app

Details

App valuehalla (owner u/plainselling)
Installed in r/valuehalla_dev
Devvit version 0.14.0
Config server.externalEndpoints.corpus/external/corpus, scopes ["global"]
"server": {
  "dir": "dist/server",
  "entry": "index.cjs",
  "externalEndpoints": {
    "corpus": {
      "endpoint": "/external/corpus",
      "scopes": ["global"]
    }
  }
}

Use case

The app reads subreddit listings and computes term-frequency statistics over the posts. I'd like our own data pipeline to pull those results out on a schedule, rather than pushing them to a webhook we'd have to keep online. The pull model in the @devvit/external-endpoints README ("Long-term Managed App Tokens Calls") is exactly the shape we want.

Questions

  1. Is this feature gated behind an allowlist? If so, what is the process to request access?
  2. Is there a way to mint a long-lived managed app token? I couldn't find a CLI command for it, and the README describes them as "managed by the app developer" without saying where.

If the feature isn't generally available yet, it would be worth saying so in the schema description — [experimental] reads as "may change", not "will not work until enabled". Everything short of the runtime call succeeds, including validation and the capability line in devvit view, so there's no signal that access is required until you hit PERMISSION_DENIED.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions