Service Types
Comprehensive guide to different types of services you can build
Explore the different categories of services you can build as software, each with unique characteristics and use cases.
AI Services
Services that leverage artificial intelligence for content generation, analysis, and decision-making.
Content Generation Services
Create various types of content automatically using AI models. Learn more about Content Generation Services →
import $, { ai, on, send } from 'sdk.do'
// Blog post generation service
const blogService = await $.Service.create({
name: 'AI Blog Writer',
type: $.ServiceType.ContentGeneration,
subtype: 'blog-posts',
pricing: {
model: 'per-word',
rate: 0.05,
minimumCharge: 50.0,
},
})
on($.ServiceRequest.created, async (request) => {
if (request.serviceId !== blogService.id) return
// Generate blog post
const post = await ai.generate({
model: 'gpt-5',
type: 'blog-post',
inputs: {
topic: request.inputs.topic,
keywords: request.inputs.keywords,
tone: request.inputs.tone || 'professional',
length: request.inputs.wordCount || 1500,
audience: request.inputs.audience,
},
quality: {
minReadability: 60,
keywordDensity: { min: 0.01, max: 0.03 },
uniqueness: 0.95,
},
})
// Generate SEO metadata
const seo = await ai.generate({
model: 'gpt-5',
type: 'seo-metadata',
context: { post, keywords: request.inputs.keywords },
})
// Deliver results
await send($.ServiceResult.deliver, {
requestId: request.id,
outputs: {
content: post.content,
title: post.title,
excerpt: post.excerpt,
seo: {
metaDescription: seo.description,
metaKeywords: seo.keywords,
ogTitle: seo.ogTitle,
ogDescription: seo.ogDescription,
},
},
})
// Bill for service
const cost = Math.max(post.wordCount * blogService.pricing.rate, blogService.pricing.minimumCharge)
await send($.Payment.charge, {
customerId: request.customerId,
amount: cost,
description: `Blog Post: ${post.title}`,
})
})Other Content Generation Examples:
- Marketing copy (ads, landing pages, emails)
- Technical documentation
- Product descriptions
- Social media content
- Video scripts
- Email campaigns
Analysis & Insights Services
Extract insights from data using AI-powered analysis. Learn more about Analysis Services →
// Market research analysis service
const researchService = await $.Service.create({
name: 'Market Research Analyzer',
type: $.ServiceType.Analysis,
subtype: 'market-research',
pricing: {
model: 'per-analysis',
baseRate: 100.0,
variables: {
dataSize: { perGB: 10.0 },
depth: { basic: 1.0, detailed: 1.5, comprehensive: 2.0 },
},
},
})
on($.ServiceRequest.created, async (request) => {
if (request.serviceId !== researchService.id) return
// Analyze market data
const analysis = await ai.analyze({
model: 'gpt-5',
data: request.inputs.marketData,
analyses: ['market-size-estimation', 'competitor-analysis', 'trend-identification', 'opportunity-assessment', 'risk-analysis', 'growth-projections'],
depth: request.inputs.depth || 'detailed',
})
// Generate visualizations
const visualizations = await ai.visualize({
data: analysis,
types: ['market-size-chart', 'competitor-matrix', 'trend-graph'],
})
// Create executive summary
const summary = await ai.summarize({
model: 'gpt-5',
content: analysis,
format: 'executive-summary',
length: 'one-page',
})
// Deliver comprehensive report
await send($.ServiceResult.deliver, {
requestId: request.id,
outputs: {
analysis,
visualizations,
summary,
recommendations: analysis.recommendations,
},
format: request.inputs.format || 'pdf',
})
})Other Analysis Examples:
- Sentiment analysis
- Financial analysis
- Competitive intelligence
- Customer behavior analysis
- Performance optimization
- Risk assessment
Decision Support Services
Help make informed decisions using AI-powered recommendations. Learn more about Decision Support Services →
// Pricing optimization service
const pricingService = await $.Service.create({
name: 'Dynamic Pricing Optimizer',
type: $.ServiceType.DecisionSupport,
subtype: 'pricing-optimization',
pricing: {
model: 'value-based',
valueMultiplier: 0.1, // 10% of value created
},
})
on($.ServiceRequest.created, async (request) => {
if (request.serviceId !== pricingService.id) return
// Analyze current pricing
const currentPerformance = await ai.analyze({
model: 'gpt-5',
data: request.inputs.salesData,
focus: ['revenue', 'conversion-rate', 'price-elasticity'],
})
// Optimize pricing
const optimization = await ai.optimize({
model: 'gpt-5',
objective: 'maximize-revenue',
constraints: {
minMargin: request.inputs.minMargin || 0.3,
competitorPricing: request.inputs.competitors,
brandPositioning: request.inputs.positioning,
},
variables: {
currentPricing: request.inputs.currentPrices,
costStructure: request.inputs.costs,
marketData: request.inputs.marketData,
},
})
// Simulate outcomes
const simulation = await ai.simulate({
model: 'gpt-5',
scenarios: optimization.recommendations,
timeframe: '90-days',
iterations: 1000,
})
// Deliver recommendations
await send($.ServiceResult.deliver, {
requestId: request.id,
outputs: {
currentAnalysis: currentPerformance,
recommendations: optimization.recommendations,
expectedImpact: simulation.summary,
implementation: optimization.implementationPlan,
},
})
// Value-based billing
const expectedValue = simulation.summary.revenueIncrease
const fee = expectedValue * pricingService.pricing.valueMultiplier
await send($.Payment.charge, {
customerId: request.customerId,
amount: fee,
description: 'Pricing Optimization (10% of projected value)',
})
})Other Decision Support Examples:
- Resource allocation
- Inventory management
- Hiring decisions
- Investment analysis
- Strategic planning
- Risk mitigation
Automation Services
Services that automate workflows and business processes. Explore all Automation Services →
Workflow Automation
Automate multi-step processes with intelligent orchestration. Learn more about Workflow Automation →
// Invoice processing automation
const invoiceService = await $.Service.create({
name: 'Invoice Processor',
type: $.ServiceType.Automation,
subtype: 'invoice-processing',
pricing: {
model: 'per-invoice',
rate: 2.0,
volume: [
{ min: 0, max: 100, rate: 2.0 },
{ min: 101, max: 1000, rate: 1.5 },
{ min: 1001, max: Infinity, rate: 1.0 },
],
},
})
on($.Invoice.received, async (invoice) => {
// Extract data from invoice
const data = await ai.extract({
model: 'gpt-5',
document: invoice.file,
schema: {
vendorName: 'string',
invoiceNumber: 'string',
invoiceDate: 'date',
dueDate: 'date',
lineItems: [
{
description: 'string',
quantity: 'number',
unitPrice: 'number',
amount: 'number',
},
],
subtotal: 'number',
tax: 'number',
total: 'number',
},
})
// Validate invoice
const validation = await validateInvoice(data, invoice.purchaseOrder)
if (!validation.valid) {
await send($.Invoice.flagForReview, {
invoiceId: invoice.id,
issues: validation.issues,
})
return
}
// Match with purchase order
const poMatch = await db.findOne($.PurchaseOrder, {
number: data.poNumber,
})
// Create accounting entries
await send($.AccountingEntry.create, {
type: 'accounts-payable',
vendor: data.vendorName,
amount: data.total,
dueDate: data.dueDate,
invoice: invoice.id,
})
// Schedule payment
await send($.Payment.schedule, {
payee: data.vendorName,
amount: data.total,
date: data.dueDate,
reference: data.invoiceNumber,
})
// Update inventory
for (const item of data.lineItems) {
await send($.Inventory.update, {
sku: item.sku,
quantity: { increment: item.quantity },
})
}
// Mark invoice as processed
await db.update(invoice, {
status: 'processed',
processedAt: new Date(),
extractedData: data,
})
})Other Workflow Automation Examples:
- Order fulfillment
- Customer onboarding
- Employee onboarding
- Expense approval
- Contract management
- Support ticket routing
Data Pipeline Services
Transform and move data efficiently with automated pipelines. Learn more about Data Pipeline Services →
// ETL pipeline service
const etlService = await $.Service.create({
name: 'Data Pipeline Builder',
type: $.ServiceType.DataPipeline,
subtype: 'etl',
pricing: {
model: 'per-gb',
rate: 1.0,
minimumCharge: 10.0,
},
})
on($.DataPipeline.execute, async (pipeline) => {
// Extract from source
const sourceData = await extractData(pipeline.source)
// Transform data
const transformed = await ai.transform({
model: 'gpt-5',
data: sourceData,
operations: pipeline.transformations,
schema: pipeline.targetSchema,
})
// Validate transformed data
const validation = await ai.validate({
data: transformed,
schema: pipeline.targetSchema,
rules: pipeline.validationRules,
})
if (!validation.valid) {
await send($.DataPipeline.fail, {
pipelineId: pipeline.id,
errors: validation.errors,
})
return
}
// Load to destination
await loadData(pipeline.destination, transformed)
// Update pipeline metrics
await db.update(pipeline, {
lastRun: new Date(),
recordsProcessed: transformed.length,
status: 'success',
})
})Other Data Pipeline Examples:
- Real-time data synchronization
- Data warehouse loading
- Data enrichment
- Data quality checking
- Log aggregation
- Backup automation
Data Services
Services focused on data processing, enrichment, and management. Explore all Data Services →
Data Enrichment
Add value to existing data through intelligent augmentation. Learn more about Data Enrichment →
// Contact enrichment service
const enrichmentService = await $.Service.create({
name: 'Contact Enricher',
type: $.ServiceType.DataEnrichment,
subtype: 'contact-data',
pricing: {
model: 'per-contact',
rate: 0.5,
enrichmentLevels: {
basic: 1.0, // Email verification only
standard: 2.0, // + company info
premium: 3.0, // + social profiles, job details
},
},
})
on($.ServiceRequest.created, async (request) => {
if (request.serviceId !== enrichmentService.id) return
const enriched = []
for (const contact of request.inputs.contacts) {
const enrichedContact = { ...contact }
// Email verification
enrichedContact.email = await verifyEmail(contact.email)
if (request.inputs.level !== 'basic') {
// Company information
enrichedContact.company = await ai.research({
model: 'gpt-5',
query: contact.companyName,
sources: ['linkedin', 'crunchbase', 'company-website'],
})
}
if (request.inputs.level === 'premium') {
// Social profiles
enrichedContact.socialProfiles = await findSocialProfiles(contact)
// Job details
enrichedContact.jobDetails = await ai.extract({
model: 'gpt-5',
source: enrichedContact.socialProfiles.linkedin,
schema: {
title: 'string',
seniority: 'string',
department: 'string',
startDate: 'date',
},
})
}
enriched.push(enrichedContact)
}
// Deliver enriched data
await send($.ServiceResult.deliver, {
requestId: request.id,
outputs: { contacts: enriched },
})
})Other Data Enrichment Examples:
- Lead scoring
- Product data enrichment
- Location data enhancement
- Image metadata generation
- Document classification
- Entity resolution
Data Transformation
Convert data between formats with schema mapping. Learn more about Data Transformation →
// Data format converter
const converterService = await $.Service.create({
name: 'Universal Data Converter',
type: $.ServiceType.DataTransformation,
supportedFormats: {
input: ['json', 'xml', 'csv', 'yaml', 'parquet', 'avro'],
output: ['json', 'xml', 'csv', 'yaml', 'parquet', 'avro'],
},
pricing: {
model: 'per-mb',
rate: 0.1,
},
})
on($.ServiceRequest.created, async (request) => {
if (request.serviceId !== converterService.id) return
// Parse input data
const parsed = await parseData(request.inputs.data, request.inputs.sourceFormat)
// Apply transformations
if (request.inputs.transformations) {
for (const transform of request.inputs.transformations) {
parsed = await applyTransformation(parsed, transform)
}
}
// Convert to target format
const converted = await convertData(parsed, request.inputs.targetFormat, request.inputs.options)
// Deliver converted data
await send($.ServiceResult.deliver, {
requestId: request.id,
outputs: {
data: converted,
format: request.inputs.targetFormat,
size: converted.length,
},
})
})Integration Services
Services that connect different systems and platforms. Explore all Integration Services →
API Integration
Connect to third-party services with automated synchronization. Learn more about API Integration →
// CRM sync service
const crmSyncService = await $.Service.create({
name: 'CRM Synchronizer',
type: $.ServiceType.Integration,
subtype: 'crm-sync',
supportedPlatforms: ['salesforce', 'hubspot', 'pipedrive', 'zoho'],
pricing: {
model: 'subscription',
tiers: [
{ name: 'basic', price: 50, records: 1000 },
{ name: 'professional', price: 150, records: 10000 },
{ name: 'enterprise', price: 500, records: 100000 },
],
},
})
// Bidirectional sync
on($.Contact.created, async (contact) => {
// Get CRM integration
const integration = await db.findOne($.Integration, {
businessId: contact.businessId,
type: 'crm',
})
if (!integration) return
// Create in external CRM
const externalContact = await createInCRM(integration.platform, integration.credentials, contact)
// Store mapping
await db.create($.IntegrationMapping, {
internalId: contact.id,
externalId: externalContact.id,
platform: integration.platform,
type: 'contact',
})
})
// Sync from CRM
on($.Integration.sync, async (integration) => {
// Fetch updates from CRM
const updates = await fetchCRMUpdates(integration.platform, integration.credentials, integration.lastSync)
// Apply updates locally
for (const update of updates) {
const mapping = await db.findOne($.IntegrationMapping, {
externalId: update.id,
platform: integration.platform,
})
if (mapping) {
await db.update($.Contact, {
where: { id: mapping.internalId },
data: mapCRMFieldsToInternal(update),
})
} else {
// Create new contact
const contact = await $.Contact.create(mapCRMFieldsToInternal(update))
await db.create($.IntegrationMapping, {
internalId: contact.id,
externalId: update.id,
platform: integration.platform,
})
}
}
// Update last sync time
await db.update(integration, {
lastSync: new Date(),
})
})Other Integration Examples:
- Email marketing platforms
- Payment processors
- Shipping providers
- Accounting systems
- Communication tools
- Analytics platforms
Business Services
Complete business process automation. Explore all Business Services →
Customer Service Automation
Automated customer support with AI agents. Learn more about Customer Service Automation →
// Customer support bot service
const supportService = await $.Service.create({
name: 'AI Support Agent',
type: $.ServiceType.CustomerService,
capabilities: ['answer-questions', 'troubleshoot-issues', 'process-returns', 'schedule-callbacks', 'escalate-to-human'],
pricing: {
model: 'per-interaction',
rate: 1.0,
escalationFee: 5.0,
},
})
on($.SupportTicket.created, async (ticket) => {
// Classify ticket
const classification = await ai.classify({
model: 'gpt-5',
text: ticket.description,
categories: ['product-question', 'technical-issue', 'billing-inquiry', 'return-request', 'complaint'],
})
// Determine if AI can handle
const complexity = await ai.assess({
ticket,
classification,
customerHistory: await getCustomerHistory(ticket.customerId),
})
if (complexity.score > 0.7) {
// Escalate to human
await send($.SupportTicket.escalate, {
ticketId: ticket.id,
reason: complexity.reason,
priority: 'high',
})
return
}
// Handle with AI
const response = await ai.generate({
model: 'gpt-5',
type: 'support-response',
context: {
ticket,
classification,
knowledge: await getRelevantKnowledge(classification.category),
customerHistory: complexity.customerHistory,
},
})
// Take action if needed
if (classification.category === 'return-request') {
await send($.Return.create, {
customerId: ticket.customerId,
orderId: extractOrderId(ticket.description),
reason: extractReturnReason(ticket.description),
})
}
// Respond to customer
await send($.SupportTicket.respond, {
ticketId: ticket.id,
response: response.message,
actions: response.actions,
})
// Mark ticket as resolved
if (response.resolved) {
await db.update(ticket, {
status: 'resolved',
resolvedBy: 'ai-agent',
resolvedAt: new Date(),
})
}
})Other Business Service Examples:
- Sales automation
- Marketing campaign management
- Financial reporting
- Compliance monitoring
- Quality assurance
- Performance management
Choosing the Right Service Type
Consider these factors:
1. Problem Domain
- Creative work → AI Services (Content Generation)
- Repetitive tasks → Automation Services
- Data quality issues → Data Services
- System connectivity → Integration Services
- End-to-end processes → Business Services
2. Value Proposition
- Reduce costs → Automation Services
- Improve quality → AI Services (Analysis)
- Increase speed → Data Services (Pipelines)
- Enable scale → Integration Services
- Transform operations → Business Services
3. Complexity Level
- Simple → Single-purpose services (e.g., email verification)
- Moderate → Multi-step workflows (e.g., invoice processing)
- Complex → Composite services (e.g., full customer journey)
4. Monetization Model
- Per-use → Transaction services (API calls, content generation)
- Subscription → Ongoing services (monitoring, syncing)
- Value-based → Optimization services (pricing, resource allocation)
- Hybrid → Complex services (base fee + usage)
Next Steps
- Build Your First Service → - Start implementing
- Learn Service Composition → - Combine services
- Explore Monetization → - Price your services