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/v1/creative/assets
StableAssetService.UploadAsset
Directly 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/v1/creative/assets/sign-urls
StableAssetService.SignAssetUrls
For 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/v1/creative/platform-accounts/verify
StablePublishService.VerifyPlatformAccount
Verify whether platform account credentials are valid; useful as a pre-flight check before binding or publishing.
identity:useridentity:orgcred:oauth2cred:api_keycreative:write
POST/v1/creative/wechat-mp/articles
BetaPublishService.PublishToWechatMp
Publish 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/v1/creative/template-presets
StableTemplateService.ListPresets
List all custom presets owned by the current user.
identity:useridentity:orgcred:oauth2cred:api_keycreative:read
GET/v1/creative/templates
StableTemplateService.ListTemplates
List all system-provided typography templates.
identity:useridentity:orgcred:oauth2cred:api_keycreative:read
GET/v1/creative/templates/{template_id}/prompt
StableTemplateService.GetPromptTemplate
Get 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/v1/oauth/authorize
StableOAuthAuthorizationService.Authorize
Generate an authorization code after the user grants consent on the consent screen.
identity:usercred:oauth2
POST/v1/oauth/introspect
StableOAuthAuthorizationService.IntrospectToken
Introspect a token to determine its validity and metadata (RFC 7662).
identity:nonecred:none
GET/v1/oauth/jwks
StableOAuthAuthorizationService.GetJWKS
Returns 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/v1/oauth/revoke
StableOAuthAuthorizationService.RevokeToken
Revoke an access or refresh token (RFC 7009).
identity:nonecred:none
POST/v1/oauth/token
StableOAuthAuthorizationService.Token
Exchange an authorization code, refresh token, or client credentials for tokens.
identity:nonecred:none
GET/v1/scopes
StableScopeService.ListScopes
List all available scopes, optionally filtered by category.
identity:nonecred:none
GET/v1/scopes/{name}
StableScopeService.GetScope
Get a scope by its name.
identity:nonecred:none
GET/v1/users/me
StableUserService.GetProfile
GetProfileRequest 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/v1/users/{user_id}/pinpage-categories
StableCategoryService.ListCategories
List one level of direct child categories.
identity:usercred:oauth2pinpage:read
DELETE/v1/users/{user_id}/pinpage-categories/{category_id}
StableCategoryService.DeleteCategory
Revoke a confirmed subtree and its pages, then schedule exact cleanup.
identity:usercred:oauth2pinpage:write
POST/v1/users/{user_id}/pinpage-categories/{category_id}:preview-deletion
StableCategoryService.PreviewCategoryDeletion
Produce a signed exact impact snapshot for one category subtree.
identity:usercred:oauth2pinpage:write
POST/v1/users/{user_id}/pinpage-categories:apply-organization
StableCategoryService.ApplyCategoryOrganization
Apply one unexpired settled preview without a second charge.
identity:usercred:oauth2pinpage:write
POST/v1/users/{user_id}/pinpage-categories:estimate-organization
StableCategoryService.EstimateCategoryOrganization
Create a durable estimate for one natural-language organization request.
identity:usercred:oauth2pinpage:write
POST/v1/users/{user_id}/pinpage-categories:preview-organization
StableCategoryService.PreviewCategoryOrganization
Consume an estimate and accept asynchronous organization planning.
identity:usercred:oauth2pinpage:write
GET/v1/users/{user_id}/pinpage-category-organization-jobs/{organization_job_id}
StableCategoryService.GetCategoryOrganizationJob
Return one user-requested category organization job.
identity:usercred:oauth2pinpage:read
GET/v1/users/{user_id}/pinpage-category-organization-jobs/{organization_job_id}/preview
StableCategoryService.GetCategoryOrganizationPreview
Return the durable settled preview produced by a successful job.
identity:usercred:oauth2pinpage:read
GET/v1/users/{user_id}/pinpage-category-preference
StableCategoryService.GetCategoryPreference
Return the user-scoped singleton category preference.
identity:usercred:oauth2pinpage:read
PUT/v1/users/{user_id}/pinpage-category-preference
StableCategoryService.UpdateCategoryPreference
Fully replace or explicitly clear the singleton category preference.
identity:usercred:oauth2pinpage:write
POST/v1/users/{user_id}/pinpage-jobs
StableJobService.CreateGeneration
Atomically 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/v1/users/{user_id}/pinpage-jobs/{job_id}
StableJobService.GetJob
Return the authoritative state of one generation job.
identity:usercred:oauth2pinpage:read
GET/v1/users/{user_id}/pinpage-jobs/{job_id}/progress
StableJobService.GetGenerationProgress
Read current state and immutable history without triggering recovery.
identity:usercred:oauth2pinpage:read
POST/v1/users/{user_id}/pinpage-jobs/{job_id}:retry
StableJobService.RetryJob
Consume a RETRY_JOB estimate and create a new job with frozen input.
identity:usercred:oauth2pinpage:write
POST/v1/users/{user_id}/pinpage-jobs:estimate
StableJobService.EstimateGeneration
Create a durable, short-lived estimate without starting generation. Deprecated. New clients call CreateGeneration directly.
identity:usercred:oauth2pinpage:write
POST/v1/users/{user_id}/pinpage-jobs:submit
StableJobService.SubmitGeneration
Consume a CREATE_PAGE estimate and atomically create a page and job. Deprecated. New clients call CreateGeneration directly.
identity:usercred:oauth2pinpage:write
GET/v1/users/{user_id}/pinpage-pages
StablePageService.ListPages
List the user's recent pages or pages directly assigned to one category.
identity:usercred:oauth2pinpage:read
GET/v1/users/{user_id}/pinpage-pages/{page_id}
StablePageService.GetPage
Return one authoritative page without embedding version HTML.
identity:usercred:oauth2pinpage:read
DELETE/v1/users/{user_id}/pinpage-pages/{page_id}
StablePageService.DeletePage
Revoke page access and accept its exact content scope for cleanup.
identity:usercred:oauth2pinpage:write
GET/v1/users/{user_id}/pinpage-pages/{page_id}/instructions
StablePageService.ListPageInstructions
Read private requirements for an owned page; never includes system prompts.
identity:usercred:oauth2pinpage:read
GET/v1/users/{user_id}/pinpage-pages/{page_id}/prompt
StablePageService.GetPagePrompt
Read private requirements for an owned page; never includes system prompts.
identity:usercred:oauth2pinpage:read
GET/v1/users/{user_id}/pinpage-pages/{page_id}/versions
StablePageService.ListPageVersions
List immutable published-version summaries for one page.
identity:usercred:oauth2pinpage:read
GET/v1/users/{user_id}/pinpage-pages/{page_id}/versions/{version_id}
StablePageService.GetPageVersion
Return one complete immutable version, including validated HTML.
identity:usercred:oauth2pinpage:read
GET/v1/users/{user_id}/pinpage-pages/{page_id}/versions/{version_id}/exports/{export_id}
StablePageService.GetPageExport
Refresh the controlled download ticket for a published artifact.
identity:usercred:oauth2pinpage:read
GET/v1/users/{user_id}/pinpage-pages/{page_id}/versions/{version_id}/metadata
StablePageService.GetPageVersionMetadata
Return authoritative published-version metadata without HTML or download tickets.
identity:usercred:oauth2pinpage:read
POST/v1/users/{user_id}/pinpage-pages/{page_id}/versions/{version_id}:restore
StablePageService.RestorePageVersion
Make one immutable historical version current without creating a job.
identity:usercred:oauth2pinpage:write
POST/v1/users/{user_id}/pinpage-pages/{page_id}:preview-deletion
StablePageService.PreviewPageDeletion
Produce a signed, short-lived exact deletion-impact snapshot.
identity:usercred:oauth2pinpage:write
POST/v1/users/{user_id}/pinpage-pages/{page_id}:regenerate
StablePageService.RegeneratePage
Consume a REGENERATE_PAGE estimate and create a new logical job.
identity:usercred:oauth2pinpage:write
POST/v1/users/{user_id}/pinpage-pages/{page_id}:rename
StablePageService.RenamePage
Save a user display name without regenerating immutable artifacts.
identity:usercred:oauth2pinpage:write
GET/v1/users/{user_id}/pinpage-materials/{material_id}
StableUploadService.GetMaterial
Return one user-owned material's validation and parsing fact.
identity:usercred:oauth2pinpage:read
DELETE/v1/users/{user_id}/pinpage-materials/{material_id}
StableUploadService.DeleteMaterial
Revoke access to one unbound material and schedule cleanup.
identity:usercred:oauth2pinpage:write
GET/v1/users/{user_id}/pinpage-storage-protection
StableUploadService.GetStorageProtection
Return the user's authoritative hosted-content protection state.
identity:usercred:oauth2pinpage:read
POST/v1/users/{user_id}/pinpage-uploads
StableUploadService.CreateUpload
Consume one estimate item and create a durable multipart session.
identity:usercred:oauth2pinpage:upload
GET/v1/users/{user_id}/pinpage-uploads/{upload_id}
StableUploadService.GetUpload
Return and reconcile one durable multipart session.
identity:usercred:oauth2pinpage:upload
POST/v1/users/{user_id}/pinpage-uploads/{upload_id}:abort
StableUploadService.AbortUpload
Abort an unfinished multipart session without creating a material.
identity:usercred:oauth2pinpage:upload
POST/v1/users/{user_id}/pinpage-uploads/{upload_id}:complete
StableUploadService.CompleteUpload
Complete and verify multipart content, then create a material on success.
identity:usercred:oauth2pinpage:upload
POST/v1/users/{user_id}/pinpage-uploads/{upload_id}:sign-parts
StableUploadService.SignUploadParts
Sign short-lived PUT capabilities for explicitly requested parts.
identity:usercred:oauth2pinpage:upload
POST/v1/users/{user_id}/pinpage-uploads:estimate
StableUploadService.EstimateUpload
Create 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