Backplane
Backplane Docs https://backplane.gsmlg.net

Backplane Docs

Public gateway references for MCP tools, model traffic, skills, agent setup, and authentication.

LLM proxy

LLM proxy

Authorize API clients for Backplane's separate /v1 resource, then call model endpoints with a resource-bound bearer token.

LLM scopes

Grant llm::models for model discovery and llm::invoke for inference operations. Request only the scopes the client and user share.

Existing credentials remain valid

Resource OAuth is additive compatibility: existing PAT and legacy bearer access continue under the deployment's configured authentication policy.

Setup

  1. Create or select a predefined confidential OAuth client with PKCE S256, enable LLM API (/v1), and assign llm::models and llm::invoke as needed.
  2. Fetch the protected-resource metadata and make an unauthenticated GET request to the canonical /v1 resource to inspect its challenge.
  3. Authorize with resource=https://backplane.gsmlg.net/v1, then exchange $CODE with the same resource value and the original $CODE_VERIFIER.
  4. Send the returned bearer token to /v1 operations and keep provider credentials inside Backplane.

Examples

Discover the LLM resource

curl https://backplane.gsmlg.net/.well-known/oauth-protected-resource/v1
# Unauthenticated probe: GET https://backplane.gsmlg.net/v1
curl -i https://backplane.gsmlg.net/v1

Authorize with PKCE

https://backplane.gsmlg.net/oauth/authorize?response_type=code&client_id=$CLIENT_ID&redirect_uri=$REDIRECT_URI&code_challenge=$CODE_CHALLENGE&code_challenge_method=S256&resource=https://backplane.gsmlg.net/v1&scope=llm::models%20llm::invoke

Exchange the authorization code

curl -X POST https://backplane.gsmlg.net/oauth/token \
  -u "$CLIENT_ID:$CLIENT_SECRET" \
  --data-urlencode "grant_type=authorization_code" \
  --data-urlencode "code=$CODE" \
  --data-urlencode "redirect_uri=$REDIRECT_URI" \
  --data-urlencode "code_verifier=$CODE_VERIFIER" \
  --data-urlencode "resource=https://backplane.gsmlg.net/v1"

Call the model gateway

curl -H "Authorization: Bearer $ACCESS_TOKEN" https://backplane.gsmlg.net/v1/models

Reference

GET /v1 GET /v1/models POST /v1/messages POST /v1/chat/completions POST /v1/responses GET /.well-known/oauth-protected-resource/v1