resolveGitHubRepository
const url = 'https://example.com/api/v1/plugin-store/resolve-github';const options = { method: 'POST', headers: { cookie: 'tilecast_session=<tilecast_session>', 'Content-Type': 'application/json' }, body: '{"repository":"https://example.com"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/api/v1/plugin-store/resolve-github \ --header 'Content-Type: application/json' \ --cookie tilecast_session=<tilecast_session> \ --data '{ "repository": "https://example.com" }'Requires the Owner or Administrator role with the admin scope. Cookie requests additionally require the X-CSRF-Token header. Resolves a public GitHub repository URL to its install review: the published manifest, the pinned digest, provenance, and installed state. Persists nothing; installing re-resolves fresh.
Authorizations
Section titled “Authorizations”Parameters
Section titled “ Parameters ”Header Parameters
Section titled “Header Parameters”Cookie-backed browser requests only, and only on unsafe methods. Bearer grants never send it.
Request Bodyrequired
Section titled “Request Bodyrequired”object
Public GitHub repository URL.
Examplegenerated
{ "repository": "https://example.com"}Responses
Section titled “ Responses ”Install review
object
The install review for a resolved repository: identity, version, provenance, and installed state. Resolving persists nothing.
object
The human-readable face of an installed or resolved package manifest.
object
object
Package-qualified contribution ID read from the artifact’s nested manifest. Present on update checks, which read the artifact; absent when the review resolved only the published manifest.
Verified external Player surface permissions. Present for executable plugin contributions.
object
External server behavior module (manifest version 2 only).
object
Package-relative WebAssembly module path.
Bounded capabilities the package requests. Every entry is a request the host reviews before installation; nothing here grants itself.
object
Approved outbound HTTPS origins.
object
Package-owned background jobs the host runs.
object
object
One bounded high-frequency background job, separately reviewed.
object
object
Request plugin-owned key/value storage.
Sandboxed Studio UI entry.
object
Requested Tilecast service grants with registry-resolved display metadata.
object
object
Pinned artifact digest as sha256 colon hex.
Example
{ "data": { "contributions": [ { "playerRuntime": { "surfaces": [ "strip.top" ], "tier": "emergency" } } ], "capabilities": { "services": [ { "category": "read" } ] } }}Invalid_repository — not a GitHub repository URL
Dashboard authentication required
Owner or Administrator role required
Repository_not_found — GitHub has no such repository
Repository_private, no_published_release, manifest_not_found, manifest_invalid, release_tag_unusable, no_published_package, package_unsigned, artifact_invalid, package_mismatch, or package_incompatible
Upstream_unavailable — GitHub, the registry, or Sigstore is unreachable