docs:sdkRef.title
docs:sdkRef.desc
docs:sdkRef.install.title
npm / yarn / pnpm
npm install @promstack-1/sdk
# or
yarn add @promstack-1/sdk
# or
pnpm add @promstack-1/sdkdocs:sdkRef.init.title
TypeScript
import { PromStackClient } from '@promstack-1/sdk';
// Basic setup
const client = new PromStackClient('your-api-key');
// Full options
const client = new PromStackClient({
apiKey: 'your-api-key',
baseUrl: 'https://promstack.com',
timeout: 30000,
retries: 3,
enableCache: true,
cacheTTL: 60000,
});docs:sdkRef.methods
docs:sdkRef.categories.prompts
getPrompts(options?)
docs:sdkRef.methodDescs.getPrompts
Returns: Promise<Prompt[]>
getPrompt(id)
docs:sdkRef.methodDescs.getPrompt
Returns: Promise<Prompt>
getPromptVersion(id, version)
docs:sdkRef.methodDescs.getPromptVersion
Returns: Promise<PromptVersion>
getPromptVersions(id)
NEWdocs:sdkRef.methodDescs.getPromptVersions
Returns: Promise<PromptVersion[]>
searchPrompts(query, options?)
NEWdocs:sdkRef.methodDescs.searchPrompts
Returns: Promise<SearchResult>
docs:sdkRef.categories.categoryTags
getCategories()
NEWdocs:sdkRef.methodDescs.getCategories
Returns: Promise<Category[]>
getTags()
NEWdocs:sdkRef.methodDescs.getTags
Returns: Promise<Tag[]>
docs:sdkRef.categories.runs
recordRun(input)
docs:sdkRef.methodDescs.recordRun
Returns: Promise<{ id: number }>
getRuns(options?)
NEWdocs:sdkRef.methodDescs.getRuns
Returns: Promise<Run[]>
batchRecordRuns(inputs)
NEWdocs:sdkRef.methodDescs.batchRecordRuns
Returns: Promise<BatchRunResult>
docs:sdkRef.categories.project
getProject()
docs:sdkRef.methodDescs.getProject
Returns: Promise<Project>
getStats()
docs:sdkRef.methodDescs.getStats
Returns: Promise<ProjectStats>
docs:sdkRef.categories.utilities
renderPrompt(template, variables)
docs:sdkRef.methodDescs.renderPrompt
Returns: string
parseVariables(template)
docs:sdkRef.methodDescs.parseVariables
Returns: string[]
validateVariables(template, variables)
docs:sdkRef.methodDescs.validateVariables
Returns: boolean
createRunner(options)
docs:sdkRef.methodDescs.createRunner
Returns: PromptRunner
docs:sdkRef.examples.title
docs:sdkRef.examples.prompts
import { PromStackClient } from '@promstack-1/sdk';
const client = new PromStackClient({
apiKey: process.env.PROMSTACK_API_KEY!,
baseUrl: 'https://promstack.com',
});
// Get prompts
const prompts = await client.getPrompts({ category: 'writing' });
const prompt = prompts[0];
// Render template
const content = client.renderPrompt(prompt.content, {
name: 'John',
topic: 'AI'
});
// Record result
const { id } = await client.recordRun({
promptId: prompt.id,
response: 'AI response...',
provider: 'openai',
variables: { name: 'John', topic: 'AI' }
});