API Reference
AppForges APIs are layered by resource ownership. Every endpoint sits under /v1/ as the major version; fine-grained evolution is carried by the API-Version: YYYY-MM-DD header. The identity × credential filter at the top hides incompatible endpoints based on your current selection.
10 services · 53 operations · spec v0.59.4
POST
Stable/v1/creative/assetsAssetService.UploadAssetDirectly upload a small file (recommended < 4MB) — the file bytes are carried in the gRPC message body. For larger files use the pre-signed upload flow instead.
identity:useridentity:orgcred:oauth2cred:api_keycreative:write
POST
Stable/v1/creative/assets/sign-urlsAssetService.SignAssetUrlsFor assets whose object_key has been cached client-side, regenerate the pre-signed access URL (use when the previously issued URL is expired or near expiry).
identity:useridentity:orgcred:oauth2cred:api_keycreative:read
POST
Stable/v1/creative/platform-accounts/verifyPublishService.VerifyPlatformAccountVerify whether platform account credentials are valid; useful as a pre-flight check before binding or publishing.
identity:useridentity:orgcred:oauth2cred:api_keycreative:write
POST
Beta/v1/creative/wechat-mp/articlesPublishService.PublishToWechatMpPublish Markdown or HTML content to a WeChat Official Account (公众号) in one shot — preprocesses the content, uploads the cover, creates or updates the draft, and optionally triggers a mass-send. Designed for direct invocation from CLI tooling.
identity:useridentity:orgcred:oauth2cred:api_keycreative:writecreative:publish
GET
Stable/v1/creative/template-presetsTemplateService.ListPresetsList all custom presets owned by the current user.
identity:useridentity:orgcred:oauth2cred:api_keycreative:read
GET
Stable/v1/creative/templatesTemplateService.ListTemplatesList all system-provided typography templates.
identity:useridentity:orgcred:oauth2cred:api_keycreative:read
GET
Stable/v1/creative/templates/{template_id}/promptTemplateService.GetPromptTemplateGet the typography prompt for the given template. The prompt describes the template's layout rules and can be passed directly into an LLM instruction.
identity:useridentity:orgcred:oauth2cred:api_keycreative:read
POST
Stable/v1/oauth/authorizeOAuthAuthorizationService.AuthorizeGenerate an authorization code after the user grants consent on the consent screen.
identity:usercred:oauth2
POST
Stable/v1/oauth/introspectOAuthAuthorizationService.IntrospectTokenIntrospect a token to determine its validity and metadata (RFC 7662).
identity:nonecred:none
GET
Stable/v1/oauth/jwksOAuthAuthorizationService.GetJWKSReturns the active ID-Token signing public keys (JWKS, RFC 7517 §5). Used for local verification of id_tokens (JWT, RS256) under the OIDC dual-token model.
identity:nonecred:none
POST
Stable/v1/oauth/revokeOAuthAuthorizationService.RevokeTokenRevoke an access or refresh token (RFC 7009).
identity:nonecred:none
POST
Stable/v1/oauth/tokenOAuthAuthorizationService.TokenExchange an authorization code, refresh token, or client credentials for tokens.
identity:nonecred:none
GET
Stable/v1/scopesScopeService.ListScopesList all available scopes, optionally filtered by category.
identity:nonecred:none
identity:nonecred:none
GET
Stable/v1/users/meUserService.GetProfileGetProfileRequest is empty — caller identity comes from the OAuth access token. `me` in the URL is a reserved word meaning "holder of the current token"; substituting `/v1/users/{user_id}` is rejected with 403 PERMISSION_DENIED.
identity:usercred:oauth2cred:api_keyuser:profile:read
GET
Stable/v1/users/{user_id}/pinpage-categoriesCategoryService.ListCategoriesList one level of direct child categories.
identity:usercred:oauth2pinpage:read
DELETE
Stable/v1/users/{user_id}/pinpage-categories/{category_id}CategoryService.DeleteCategoryRevoke a confirmed subtree and its pages, then schedule exact cleanup.
identity:usercred:oauth2pinpage:write
POST
Stable/v1/users/{user_id}/pinpage-categories/{category_id}:preview-deletionCategoryService.PreviewCategoryDeletionProduce a signed exact impact snapshot for one category subtree.
identity:usercred:oauth2pinpage:write
POST
Stable/v1/users/{user_id}/pinpage-categories:apply-organizationCategoryService.ApplyCategoryOrganizationApply one unexpired settled preview without a second charge.
identity:usercred:oauth2pinpage:write
POST
Stable/v1/users/{user_id}/pinpage-categories:estimate-organizationCategoryService.EstimateCategoryOrganizationCreate a durable estimate for one natural-language organization request.
identity:usercred:oauth2pinpage:write
POST
Stable/v1/users/{user_id}/pinpage-categories:preview-organizationCategoryService.PreviewCategoryOrganizationConsume an estimate and accept asynchronous organization planning.
identity:usercred:oauth2pinpage:write
GET
Stable/v1/users/{user_id}/pinpage-category-organization-jobs/{organization_job_id}CategoryService.GetCategoryOrganizationJobReturn one user-requested category organization job.
identity:usercred:oauth2pinpage:read
GET
Stable/v1/users/{user_id}/pinpage-category-organization-jobs/{organization_job_id}/previewCategoryService.GetCategoryOrganizationPreviewReturn the durable settled preview produced by a successful job.
identity:usercred:oauth2pinpage:read
GET
Stable/v1/users/{user_id}/pinpage-category-preferenceCategoryService.GetCategoryPreferenceReturn the user-scoped singleton category preference.
identity:usercred:oauth2pinpage:read
PUT
Stable/v1/users/{user_id}/pinpage-category-preferenceCategoryService.UpdateCategoryPreferenceFully replace or explicitly clear the singleton category preference.
identity:usercred:oauth2pinpage:write
POST
Stable/v1/users/{user_id}/pinpage-jobsJobService.CreateGenerationAtomically freeze the user input and create a page plus generation job.
Vertex owns LLM charging and quota admission; this request deliberately
carries no quote, balance, budget, or user-authorized charge fields.
identity:usercred:oauth2pinpage:write
GET
Stable/v1/users/{user_id}/pinpage-jobs/{job_id}JobService.GetJobReturn the authoritative state of one generation job.
identity:usercred:oauth2pinpage:read
GET
Stable/v1/users/{user_id}/pinpage-jobs/{job_id}/progressJobService.GetGenerationProgressRead current state and immutable history without triggering recovery.
identity:usercred:oauth2pinpage:read
POST
Stable/v1/users/{user_id}/pinpage-jobs/{job_id}:retryJobService.RetryJobConsume a RETRY_JOB estimate and create a new job with frozen input.
identity:usercred:oauth2pinpage:write
POST
Stable/v1/users/{user_id}/pinpage-jobs:estimateJobService.EstimateGenerationCreate a durable, short-lived estimate without starting generation.
Deprecated. New clients call CreateGeneration directly.
identity:usercred:oauth2pinpage:write
POST
Stable/v1/users/{user_id}/pinpage-jobs:submitJobService.SubmitGenerationConsume a CREATE_PAGE estimate and atomically create a page and job.
Deprecated. New clients call CreateGeneration directly.
identity:usercred:oauth2pinpage:write
GET
Stable/v1/users/{user_id}/pinpage-pagesPageService.ListPagesList the user's recent pages or pages directly assigned to one category.
identity:usercred:oauth2pinpage:read
GET
Stable/v1/users/{user_id}/pinpage-pages/{page_id}PageService.GetPageReturn one authoritative page without embedding version HTML.
identity:usercred:oauth2pinpage:read
DELETE
Stable/v1/users/{user_id}/pinpage-pages/{page_id}PageService.DeletePageRevoke page access and accept its exact content scope for cleanup.
identity:usercred:oauth2pinpage:write
GET
Stable/v1/users/{user_id}/pinpage-pages/{page_id}/instructionsPageService.ListPageInstructionsRead private requirements for an owned page; never includes system prompts.
identity:usercred:oauth2pinpage:read
GET
Stable/v1/users/{user_id}/pinpage-pages/{page_id}/promptPageService.GetPagePromptRead private requirements for an owned page; never includes system prompts.
identity:usercred:oauth2pinpage:read
GET
Stable/v1/users/{user_id}/pinpage-pages/{page_id}/versionsPageService.ListPageVersionsList immutable published-version summaries for one page.
identity:usercred:oauth2pinpage:read
GET
Stable/v1/users/{user_id}/pinpage-pages/{page_id}/versions/{version_id}PageService.GetPageVersionReturn one complete immutable version, including validated HTML.
identity:usercred:oauth2pinpage:read
GET
Stable/v1/users/{user_id}/pinpage-pages/{page_id}/versions/{version_id}/exports/{export_id}PageService.GetPageExportRefresh the controlled download ticket for a published artifact.
identity:usercred:oauth2pinpage:read
GET
Stable/v1/users/{user_id}/pinpage-pages/{page_id}/versions/{version_id}/metadataPageService.GetPageVersionMetadataReturn authoritative published-version metadata without HTML or download tickets.
identity:usercred:oauth2pinpage:read
POST
Stable/v1/users/{user_id}/pinpage-pages/{page_id}/versions/{version_id}:restorePageService.RestorePageVersionMake one immutable historical version current without creating a job.
identity:usercred:oauth2pinpage:write
POST
Stable/v1/users/{user_id}/pinpage-pages/{page_id}:preview-deletionPageService.PreviewPageDeletionProduce a signed, short-lived exact deletion-impact snapshot.
identity:usercred:oauth2pinpage:write
POST
Stable/v1/users/{user_id}/pinpage-pages/{page_id}:regeneratePageService.RegeneratePageConsume a REGENERATE_PAGE estimate and create a new logical job.
identity:usercred:oauth2pinpage:write
POST
Stable/v1/users/{user_id}/pinpage-pages/{page_id}:renamePageService.RenamePageSave a user display name without regenerating immutable artifacts.
identity:usercred:oauth2pinpage:write
GET
Stable/v1/users/{user_id}/pinpage-materials/{material_id}UploadService.GetMaterialReturn one user-owned material's validation and parsing fact.
identity:usercred:oauth2pinpage:read
DELETE
Stable/v1/users/{user_id}/pinpage-materials/{material_id}UploadService.DeleteMaterialRevoke access to one unbound material and schedule cleanup.
identity:usercred:oauth2pinpage:write
GET
Stable/v1/users/{user_id}/pinpage-storage-protectionUploadService.GetStorageProtectionReturn the user's authoritative hosted-content protection state.
identity:usercred:oauth2pinpage:read
POST
Stable/v1/users/{user_id}/pinpage-uploadsUploadService.CreateUploadConsume one estimate item and create a durable multipart session.
identity:usercred:oauth2pinpage:upload
GET
Stable/v1/users/{user_id}/pinpage-uploads/{upload_id}UploadService.GetUploadReturn and reconcile one durable multipart session.
identity:usercred:oauth2pinpage:upload
POST
Stable/v1/users/{user_id}/pinpage-uploads/{upload_id}:abortUploadService.AbortUploadAbort an unfinished multipart session without creating a material.
identity:usercred:oauth2pinpage:upload
POST
Stable/v1/users/{user_id}/pinpage-uploads/{upload_id}:completeUploadService.CompleteUploadComplete and verify multipart content, then create a material on success.
identity:usercred:oauth2pinpage:upload
POST
Stable/v1/users/{user_id}/pinpage-uploads/{upload_id}:sign-partsUploadService.SignUploadPartsSign short-lived PUT capabilities for explicitly requested parts.
identity:usercred:oauth2pinpage:upload
POST
Stable/v1/users/{user_id}/pinpage-uploads:estimateUploadService.EstimateUploadCreate a durable file-service estimate before reserving or signing work.
identity:usercred:oauth2pinpage:upload
OpenAPI spec v0.59.4 · synced 10/11/2026, 11:27:14 PM