Integration Admin
Create and manage integrations, bucket types, content types, new file templates, and thumbnail parse pools
postCreate OAuth client on behalf of another user
Admin-only: provisions a non-app-scoped OAuth client owned by the specified user.
postAggregate integration renderer crashes
Returns count + distinct-user + last-seen buckets grouped by a chosen dimension (archive, content type, error name, kind, build hash, or time) for crashes within an integration the caller owns.
postCreate OAuth client for the calling user
Provisions a non-app-scoped OAuth client owned by the calling user, preconfigured for upl integration.
postCreate integration archive upload intent
Creates a signed upload intent for uploading an integration configuration archive.
postCreate bucket type icon upload intent
Creates a signed upload intent for uploading a custom icon image for an integration bucket type. Same internal bucket as the content-type icon flow; the resulting upload_id goes on IntegrationBucketType.icon_upload_id.
postCreate content type icon upload intent
Creates a signed upload intent for uploading a custom icon image for an integration content type. Same internal bucket as archive uploads; the resulting upload_id goes on IntegrationContentType.icon_upload_id.
postCreate new file template asset upload intent
Creates a signed upload intent for uploading a binary asset that backs a NewFileValue.upload_id reference. Same internal bucket as the icon flow; the resulting upload_id is stored on the IntegrationNewFile via UpsertIntegrationNewFile.
postDelete integration
Deletes an integration with ownership verification.
postDelete integration bucket type
Deletes a bucket type with ownership verification. Fails if buckets are using this type.
postDelete integration content type
Deletes a content type with ownership verification.
postDelete integration metadata key
Deletes a metadata key registration. Existing entries on uploads under this key are cascaded.
postDelete integration new file
Deletes a new file template with ownership verification.
postDisable service account for bucket type
Deletes the service account associated with a bucket type.
postEnable service account for bucket type
Auto-provisions a service account for this bucket type. Returns the token (shown once).
postFix integration client configuration
Applies fixes for all detected validation issues on the client.
postGet integration
Gets an integration by ID with ownership verification.
postGet parsed renderer config for an integration archive
Returns the parsed contents of the renderer archive's config.json (the renderer-authored RendererConfig uploaded into the RENDERER_CONFIG meta slot). Used by the admin UI to display a renderer's declared metadata in content type / bucket type editors.
postList content types installed for the user
Returns every content type from integrations the caller has installed (owned + application-mode + system Default). Lightweight — URN, display label, icon name, and parent integration identity only. Used by the frontend to resolve URNs and populate content type pickers.
postList installed integrations
Lists all installed integrations the caller has access to, each enriched with its backing OAuth client snapshot.
postList integration bucket types
Lists bucket types defined by integrations, optionally filtered by integration ID.
postList integration content types
Lists content types defined by integrations, optionally filtered by integration ID.
postList integration metadata keys
Lists metadata keys registered by integrations, optionally filtered by integration ID.
postList integration new files
Lists new file templates defined by integrations, optionally filtered by integration ID.
postList integration renderer crashes
Returns a paginated list of crashes for renderers belonging to an integration the caller owns. Supports filtering by content type, archive version, error kind / name, build hash, and time range.
postList integration targets
Lists OAuth clients the user has access to, along with their integration status. Optionally filter by application slug.
postList supported magic byte formats + text encodings
Static catalog of magic byte formats (from the `file-type` library plus our custom descriptors) and text encodings the classifier accepts in a ContentTypeMatcher. Used by the matcher editor to populate dropdowns so it stays in sync with backend support.
postList upload IDs affected by a reprocess trigger predicate
Server-side scan that returns a page of upload IDs whose thumbnail dispatch may shift in response to a config change (CT add/update/delete, integration install/uninstall, bucket Open-With default change). Called by the pipeline's tier-1 scan job in batches. Idempotent — running the same predicate again returns the same rows.
postCount uploads a reprocess trigger predicate would affect
Same WHERE clause as ListUploadsForReprocess but returns a COUNT(*) instead of enqueuing or paginating. Drives the admin UI confirmation modal for Default-integration matcher saves (where one click can affect every upload in the system).
postRegenerate bucket type service account token
Regenerates the service account token for a bucket type. Returns the new token (shown once).
postRegenerate integration API key
Generates (or rotates) an API key for the integration. Enables API-key-only write access to the integration's scoped resources. The raw key is returned once.
postRe-classify folders matching a reprocess trigger predicate
Folder-side analog of ListUploadsForReprocess. Walks folders matching the predicate (only ct_changed / ct_deleted have meaningful folder logic today), runs ClassifyFolder on each, writes the resulting URN to Folder.thumbnail_content_type_urn, and cascades to the sentinel root upload for virtual files. Inline — no tier-2 queue — because folder reclassify is pure DB and fast enough at realistic scale (handfuls of folders per owning integration).
postRe-run the content type pipeline on a single upload
Sub-plan H tier-2 entry point: pipeline's per-upload reprocess job (one per affected upload as identified by ListUploadsForReprocess) calls this to mint a fresh update token and dispatch a new ParseUpload task, which will recompute resolvePrimary and rewrite the upload's thumbnail_content_type_urn + regenerate the S3 thumbnail when dispatch differs. Idempotent within the reprocess sweep — running again is harmless.
postRevoke integration API key
Disables API key authentication for the integration and deletes the stored key.
postStart a reprocess sweep over all uploads
Kicks off a one-shot background reprocess of every non-deleted Upload row. Re-runs detect+classify, writes detected_* + thumbnail_content_type_urn, stamps reprocessed_at. Idempotent unless force=true. Returns the count queued; reprocessing runs asynchronously.
postUpsert integration
Creates or updates an integration for an OAuth client, with ownership verification. Application association is derived from the client.
postUpsert integration bucket type
Creates or updates a bucket type for an integration, with ownership verification.
postUpsert integration content type
Creates or updates a content type for an integration, with ownership verification.
postUpsert integration metadata key
Creates or updates a metadata key registration for an integration. The key local part is immutable after creation.
postUpsert integration new file
Creates or updates a new file template for an integration, with ownership verification.
postValidate an OAuth client for integration
Checks the OAuth client is configured correctly for upl integration.