@apicity/googleflow
useapi.net Google Flow proxy.
Every method resolves to the generic GoogleFlowResponse and never validates the response body. For typed access, parse the result with the response schema the package exports for that endpoint; each schema has a same-name z.output type. For example, GoogleFlowImagesResponseSchema.parse(await flow.v1.images(req)) types media[].image.generatedImage.fifeUrl. The schemas follow useapi.net's documented response models and are not yet verified against live responses, so parsing reports any drift instead of trusting it.
Runtime dependencies:
zod@^4.6.6— request schemas attached to every POST endpoint as.schema
Installation
npm install @apicity/googleflow
# or
pnpm add @apicity/googleflow
Quick Start
import { createGoogleFlow } from "@apicity/googleflow";
const googleflow = createGoogleFlow({ apiKey: process.env.GOOGLE_FLOW_API_KEY! });
API Reference
26 endpoints across 7 groups. Each method mirrors an upstream URL path.
accounts
DELETE googleflow.v1.accounts
DELETE https://api.useapi.net/v1/google-flow/accounts/{email}
Cost tier: prohibitive
const res = await googleflow.delete.v1.accounts({ /* ... */ });
GET googleflow.v1.accounts
GET https://api.useapi.net/v1/google-flow/accounts
Cost tier: prohibitive
const res = await googleflow.get.v1.accounts({ /* ... */ });
GET googleflow.v1.accounts.captchaProviders
GET https://api.useapi.net/v1/google-flow/accounts/captcha-providers
Cost tier: prohibitive
const res = await googleflow.get.v1.accounts.captchaProviders({ /* ... */ });
GET googleflow.v1.accounts.captchaStats
GET https://api.useapi.net/v1/google-flow/accounts/captcha-stats{query}
Cost tier: prohibitive
const res = await googleflow.get.v1.accounts.captchaStats({ /* ... */ });
GET googleflow.v1.accounts.retrieve
GET https://api.useapi.net/v1/google-flow/accounts/{email}
Cost tier: prohibitive
const res = await googleflow.get.v1.accounts.retrieve({ /* ... */ });
POST googleflow.v1.accounts
POST https://api.useapi.net/v1/google-flow/accounts
Cost tier: prohibitive
const res = await googleflow.v1.accounts({ /* ... */ });
POST googleflow.v1.accounts.captchaProviders
POST https://api.useapi.net/v1/google-flow/accounts/captcha-providers
Cost tier: prohibitive
const res = await googleflow.v1.accounts.captchaProviders({ /* ... */ });
assets
GET googleflow.v1.assets.retrieve
GET https://api.useapi.net/v1/google-flow/assets/{mediaGenerationId}
Cost tier: prohibitive
const res = await googleflow.get.v1.assets.retrieve({ /* ... */ });
POST googleflow.v1.assets
POST https://api.useapi.net/v1/google-flow/assets
Cost tier: prohibitive
const res = await googleflow.v1.assets({ /* ... */ });
characters
DELETE googleflow.v1.characters
DELETE https://api.useapi.net/v1/google-flow/characters/{ref}
Cost tier: prohibitive
const res = await googleflow.delete.v1.characters({ /* ... */ });
GET googleflow.v1.characters
GET https://api.useapi.net/v1/google-flow/characters{query}
Cost tier: prohibitive
const res = await googleflow.get.v1.characters({ /* ... */ });
GET googleflow.v1.characters.retrieve
GET https://api.useapi.net/v1/google-flow/characters/{ref}
Cost tier: prohibitive
const res = await googleflow.get.v1.characters.retrieve({ /* ... */ });
POST googleflow.v1.characters
POST https://api.useapi.net/v1/google-flow/characters
Cost tier: prohibitive
const res = await googleflow.v1.characters({ /* ... */ });
images
POST googleflow.v1.images
POST https://api.useapi.net/v1/google-flow/images
Cost tier: prohibitive
const res = await googleflow.v1.images({ /* ... */ });
POST googleflow.v1.images.upscale
POST https://api.useapi.net/v1/google-flow/images/upscale
Cost tier: prohibitive
const res = await googleflow.v1.images.upscale({ /* ... */ });
jobs
GET googleflow.v1.jobs
GET https://api.useapi.net/v1/google-flow/jobs{query}
Cost tier: prohibitive
const res = await googleflow.get.v1.jobs({ /* ... */ });
GET googleflow.v1.jobs.retrieve
GET https://api.useapi.net/v1/google-flow/jobs/{jobId}
Cost tier: prohibitive
const res = await googleflow.get.v1.jobs.retrieve({ /* ... */ });
videos
POST googleflow.v1.videos
POST https://api.useapi.net/v1/google-flow/videos
Cost tier: prohibitive
const res = await googleflow.v1.videos({ /* ... */ });
POST googleflow.v1.videos.concatenate
POST https://api.useapi.net/v1/google-flow/videos/concatenate
Cost tier: prohibitive
const res = await googleflow.v1.videos.concatenate({ /* ... */ });
POST googleflow.v1.videos.extend
POST https://api.useapi.net/v1/google-flow/videos/extend
Cost tier: prohibitive
const res = await googleflow.v1.videos.extend({ /* ... */ });
POST googleflow.v1.videos.gif
POST https://api.useapi.net/v1/google-flow/videos/gif
Cost tier: prohibitive
const res = await googleflow.v1.videos.gif({ /* ... */ });
POST googleflow.v1.videos.upscale
POST https://api.useapi.net/v1/google-flow/videos/upscale
Cost tier: prohibitive
const res = await googleflow.v1.videos.upscale({ /* ... */ });
voices
DELETE googleflow.v1.voices
DELETE https://api.useapi.net/v1/google-flow/voices/{ref}
Cost tier: prohibitive
const res = await googleflow.delete.v1.voices({ /* ... */ });
GET googleflow.v1.voices
GET https://api.useapi.net/v1/google-flow/voices{query}
Cost tier: prohibitive
const res = await googleflow.get.v1.voices({ /* ... */ });
GET googleflow.v1.voices.retrieve
GET https://api.useapi.net/v1/google-flow/voices/{ref}
Cost tier: prohibitive
const res = await googleflow.get.v1.voices.retrieve({ /* ... */ });
POST googleflow.v1.voices
POST https://api.useapi.net/v1/google-flow/voices
Cost tier: prohibitive
const res = await googleflow.v1.voices({ /* ... */ });
Part of the apicity monorepo.
License
MIT — see LICENSE.