Product Photo Generation

Generate professional product photography using each::sense API for e-commerce, marketing, and catalog imagery

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "Product Photo Generation" with this command: npx skills add eachlabs/skills/eachlabs-skills-product-photo-generation

Product Photo Generation

Generate professional product photography with the each::sense API. Create e-commerce ready images, lifestyle shots, and studio-quality product visuals for any item.

Overview

The each::sense API enables generation of high-quality product photography suitable for:

  • E-commerce product shots - Clean, professional images for online stores
  • Lifestyle context images - Products shown in real-world settings
  • White background photography - Standard catalog and marketplace images
  • Studio lighting setups - Professional lighting for premium product presentation
  • Marketing visuals - Eye-catching images for ads and promotions

You can also provide your own product images via image_urls to place your actual products into professionally styled scenes.

Quick Start

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Generate a professional product photo of a minimalist ceramic coffee mug on a white background with soft studio lighting",
    "mode": "max"
  }'

Product Photo Styles

StyleDescriptionBest For
White BackgroundClean, isolated product on pure whiteE-commerce, marketplaces, catalogs
LifestyleProduct in real-world context or environmentSocial media, brand storytelling
Flat LayTop-down view with arranged propsFashion, food, accessories
In-ContextProduct being used or in its natural settingMarketing campaigns, ads
Hero ShotDramatic lighting and angles for impactHomepage banners, featured products
Detail ShotClose-up focusing on texture and craftsmanshipLuxury goods, handmade items

Use Case Examples

White Background Product Shot

Standard e-commerce product photography with clean white background.

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Professional product photo of a stainless steel water bottle on pure white background, centered composition, soft box lighting from above and sides, no shadows, e-commerce style, 4K quality",
    "mode": "max"
  }'

Lifestyle Context Shot

Product shown in an aspirational real-world setting.

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Lifestyle product photography of premium wireless headphones on a modern wooden desk, morning light through window, MacBook and coffee cup in soft focus background, warm and inviting atmosphere",
    "mode": "max"
  }'

Flat Lay Composition

Top-down arrangement with complementary props.

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Flat lay product photography of a leather wallet, arranged with sunglasses, car keys, and a fountain pen on marble surface, overhead shot, even lighting, editorial style composition",
    "mode": "max"
  }'

Hero Shot with Dramatic Lighting

High-impact product image for marketing materials.

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Hero shot of a luxury perfume bottle, dramatic side lighting creating elegant shadows, dark moody background with subtle gradient, glass reflections and caustics, premium advertising quality",
    "mode": "max"
  }'

Detail/Macro Shot

Close-up focusing on product texture and craftsmanship.

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Macro detail shot of handcrafted leather bag stitching, extreme close-up showing texture and quality of leather grain, shallow depth of field, warm directional lighting highlighting craftsmanship",
    "mode": "max"
  }'

In-Use/Action Shot

Product being actively used or demonstrated.

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Action product shot of running shoes in motion, dynamic angle showing flexibility, slight motion blur on background, athletic track setting, energetic and sporty atmosphere",
    "mode": "max"
  }'

Seasonal/Themed Shot

Product styled for specific season or holiday.

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Holiday themed product photo of a scented candle surrounded by pine branches, dried oranges, and cinnamon sticks, warm cozy lighting, festive winter atmosphere, gift-ready presentation",
    "mode": "max"
  }'

Size Comparison Shot

Product shown with reference objects for scale.

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Product scale photo of a compact Bluetooth speaker next to a smartphone and coffee cup for size reference, clean white background, even lighting, showing portable dimensions clearly",
    "mode": "max"
  }'

Packaging Shot

Product with its packaging for unboxing experience.

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Product and packaging photo of premium skincare bottle emerging from elegant black box, tissue paper visible, unboxing moment, luxury presentation, soft lighting on neutral background",
    "mode": "max"
  }'

Using Your Own Product Images

Provide actual product photos via image_urls to place your products into professionally styled scenes.

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Place this product in a modern kitchen setting, morning light, marble countertop, lifestyle photography style",
    "image_urls": ["https://example.com/my-product.jpg"],
    "mode": "max"
  }'

Product with Custom Background

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Put this product on a pure white background with professional studio lighting, remove existing background, e-commerce ready",
    "image_urls": ["https://example.com/raw-product-photo.jpg"],
    "mode": "max"
  }'

Best Practices for Product Photography

Lighting Guidelines

  • Soft box lighting - Even illumination for e-commerce shots
  • Rim lighting - Creates separation from background
  • Natural window light - Warm, authentic lifestyle feel
  • Dramatic side lighting - Adds depth and premium look
  • Diffused overhead - Minimizes harsh shadows

Composition Tips

  • Center important products for e-commerce
  • Use rule of thirds for lifestyle shots
  • Leave negative space for text overlay
  • Consider the platform aspect ratio requirements
  • Include context elements that tell a story

Background Selection

  • Pure white (#FFFFFF) for marketplace requirements
  • Gradient backgrounds for premium products
  • Contextual environments for lifestyle appeal
  • Complementary colors that enhance product
  • Textured surfaces for artisanal products

Prompt Tips

Effective prompts for product photography include:

Lighting descriptors:

  • "soft box lighting", "natural window light", "dramatic side lighting"
  • "rim light", "backlit", "diffused overhead lighting"
  • "golden hour warmth", "cool studio lighting"

Angle specifications:

  • "eye-level shot", "45-degree angle", "overhead flat lay"
  • "low angle hero shot", "three-quarter view", "straight-on"

Background details:

  • "pure white background", "gradient gray backdrop"
  • "marble surface", "wooden table", "concrete texture"

Style references:

  • "e-commerce style", "editorial quality", "magazine advertisement"
  • "catalog photography", "Instagram aesthetic", "premium brand look"

Props and context:

  • "minimalist props", "lifestyle elements", "seasonal decorations"
  • "complementary accessories", "natural elements"

Mode Selection

ModeBest ForOutput Quality
maxHero shots, marketing materials, premium productsHighest quality, detailed rendering
ecoQuick iterations, bulk catalog photos, testing conceptsFast generation, good quality

Use max mode for final marketing assets and hero images. Use eco mode for rapid prototyping and generating multiple variations quickly.

Multi-Turn Sessions for Product Series

Use session_id to maintain consistency across a product line or catalog series.

Start a product series session

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Generate a product photo of a blue ceramic coffee mug on white background with soft natural lighting, minimalist style",
    "session_id": "product-catalog-2024",
    "mode": "max"
  }'

Continue with consistent style

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Now generate the matching red ceramic mug in the same style and lighting setup",
    "session_id": "product-catalog-2024",
    "mode": "max"
  }'

Add variations

curl -X POST "https://sense.eachlabs.run/chat" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Create a lifestyle version showing both mugs on a breakfast table with croissants",
    "session_id": "product-catalog-2024",
    "mode": "max"
  }'

Error Handling

ErrorCauseSolution
401 UnauthorizedInvalid or missing API keyVerify X-API-Key header is set correctly
400 Bad RequestMalformed request bodyCheck JSON syntax and required fields
429 Rate LimitedToo many requestsImplement exponential backoff
500 Server ErrorService temporarily unavailableRetry after a brief delay

Retry with exponential backoff

for i in 1 2 3; do
  response=$(curl -s -w "%{http_code}" -X POST "https://sense.eachlabs.run/chat" \
    -H "Content-Type: application/json" \
    -H "X-API-Key: $EACHLABS_API_KEY" \
    -H "Accept: text/event-stream" \
    -d '{
      "message": "Professional product photo of wireless earbuds on white background",
      "mode": "max"
    }')

  http_code="${response: -3}"
  if [ "$http_code" -eq 200 ]; then
    echo "${response%???}"
    break
  fi
  sleep $((2**i))
done

Related Skills

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

poster-design-generation

No summary provided by upstream source.

Repository SourceNeeds Review
General

eachlabs-image-edit

No summary provided by upstream source.

Repository SourceNeeds Review
General

subtitle-generation

No summary provided by upstream source.

Repository SourceNeeds Review
General

instagram-content-generation

No summary provided by upstream source.

Repository SourceNeeds Review