Media
Upload, transform, and deliver images at scale with Serbices
Upload images through the Serbices API and serve them through our optimized delivery layer. On-the-fly resizing, format conversion, and long-lived CDN caching are built in.
Key capabilities
Built for production workloads with enterprise requirements.
API-based uploads with immediate acknowledgement
Optional wait-for-upload when you need confirmation
Fast delivery via cdn.serbices.com
On-the-fly resizing and format conversion
Automatic cache headers for long-lived assets
Supports base64 and URL-based ingestion
Background CDN warm-up for frequently used sizes
Features
Everything you need to integrate and scale with confidence.
API Uploads
Send base64 payloads or source URLs through the Serbices API. The upload response returns the filename and delivery URL.
Media Inventory
List uploaded items per account or scope using the media listing endpoint.
Delivery Layer
Images are served from cdn.serbices.com with long-lived cache headers and optimized content types.
Transformations
Resize images with width/height, choose output format, and use fit modes without changing the stored original.
CDN Warm-up
Optionally specify target sizes to pre-warm the CDN right after upload for instant first render.
Consistent URLs
Stable filenames make caching predictable and simplify asset management across environments.
Observability
Requests include timing and status metadata to keep asset pipelines transparent.
Use cases
How teams use this service to solve real problems.
Product Catalogs
Resize and deliver product imagery across web and mobile experiences.
User Uploads
Process avatars, profile headers, and UGC with consistent sizing rules.
Marketing Assets
Generate multiple aspect ratios for ads, landing pages, and emails.
Content Platforms
Serve editorial imagery with predictable performance and cache behavior.
API documentation
Simple REST API with consistent patterns across all endpoints.
Endpoints
Example request
curl -X POST https://api.serbices.com/media/v1/upload \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk_live_xxx" \
-d '{
"filename": "hero-banner.jpg",
"reference": "usr_93b1a2",
"base64": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD...",
"scopeKey": "connection_123",
"waitForUpload": false,
"sizes": [
{ "width": 640, "height": 360, "mode": "fill" },
{ "width": 1280, "height": 720 }
]
}'Example response
{
"success": true,
"filename": "hero-banner.jpg",
"storedFilename": "acc_example__connection_123__hero-banner.jpg",
"reference": "usr_93b1a2",
"url": "https://cdn.serbices.com/acc_example__connection_123__hero-banner.jpg",
"status": "pending"
}Simple, transparent pricing
Pay only for what you use. No hidden fees, no surprises.
Pricing depends on storage and CDN egress. Volume tiers available.
Other services
Explore more services to power your platform.