Back to Alchemy
Alchemy RecipeIntermediateautomation

Product launch social media content suite from press release

24 March 2026

Introduction

You've just finished writing a brilliant press release. Your product launch is real, it's happening, and now comes the part that makes most marketing teams groan: turning one announcement into a dozen social media posts across LinkedIn, Twitter, Instagram, and TikTok. Each platform needs different copy, different lengths, different tones. What should take two hours ends up taking two days because you're manually rewriting, reformatting, and scheduling everything yourself.

This is where automation becomes genuinely valuable. Instead of manually adapting your press release into platform-specific content, you can build a workflow that transforms one source document into a complete social media content suite, ready to post. The tools exist; you just need to wire them together correctly.

In this guide, we'll show you how to combine Copy.ai (for content generation), Mirra (for image generation), and Postwise (for social scheduling) into a single automated pipeline. You feed in your press release, and out comes scheduled posts for multiple platforms with matching visuals, all without touching anything in between.

The Automated Workflow

The workflow operates in four distinct stages: press release ingestion, content generation, image creation, and social scheduling. We'll use Make (formerly Integromat) as our orchestration tool because it handles file uploads well and integrates cleanly with all three services. However, we've included notes for Zapier and n8n users at the end.

Stage 1: Trigger and Input

Your workflow starts when a new press release lands somewhere accessible. This could be a Google Drive folder, an email attachment, or a Slack message. For this example, we'll assume you're uploading a press release document to a designated Google Drive folder. Make will monitor that folder for new files.


Trigger: Watch Folder
Service: Google Drive
Folder: /Marketing/Press Releases/Scheduled
Event: File Created
Output variables: File ID, File Name, File Content (via Google Drive's export functionality)

The Make integration will extract the full text of your press release. Make sure the file is either a .txt, .docx, or Google Doc for easy text extraction.

Stage 2: Content Generation with Copy.ai

Once Make captures the press release text, it sends it to Copy.ai's API. Copy.ai will generate multiple variants of your announcement, each optimised for a specific platform. You'll need a Copy.ai account with API access; sign up for their business plan or higher to unlock the API.

Here's the API call structure:


POST https://api.copy.ai/api/v1/generate
Headers:
  Authorization: Bearer YOUR_COPY_AI_API_KEY
  Content-Type: application/json

Body:
{
  "model": "model-gpt-4",
  "prompt": "You are a social media expert. Convert this press release into exactly 5 social media posts: one LinkedIn post (200 words, professional tone), one Twitter post (280 characters, engaging), one Instagram caption (150 words, conversational), one TikTok script (100 words, trendy and casual), and one email subject line. Press release content: [PRESS_RELEASE_TEXT_HERE]",
  "num_outputs": 1,
  "max_tokens": 2000,
  "temperature": 0.7
}

Copy.ai will return a JSON response containing all five generated posts. Parse this response in Make and store each variant in a separate variable:

{
  "status": "success",
  "outputs": [
    {
      "text": "LinkedIn Post: [generated content]\n\nTwitter Post: [generated content]\n\nInstagram Caption: [generated content]\n\nTikTok Script: [generated content]\n\nEmail Subject: [generated content]"
    }
  ]
}

Use a text parser in Make to split this output into individual posts. Regular expressions work well for this:


LinkedIn Post: (?<=LinkedIn Post: )(.+?)(?=\n\nTwitter Post)
Twitter Post: (?<=Twitter Post: )(.+?)(?=\n\nInstagram Caption)
Instagram Caption: (?<=Instagram Caption: )(.+?)(?=\n\nTikTok Script)
TikTok Script: (?<=TikTok Script: )(.+?)(?=\n\nEmail Subject)
Email Subject: (?<=Email Subject: )(.+)

In Make, use the "Text Parser" module to extract these patterns. You'll end up with five variables, each containing one complete social post.

Stage 3: Image Generation with Mirra

Mirra's API accepts text descriptions and generates relevant images. Send your press release headline to Mirra to generate a single hero image that works across all platforms.


POST https://api.mirra.ai/v1/generate-image
Headers:
  Authorization: Bearer YOUR_MIRRA_API_KEY
  Content-Type: application/json

Body:
{
  "prompt": "Create a professional, modern product launch hero image for this announcement: [PRESS_RELEASE_HEADLINE]. Include vibrant colours, clean typography, and a sense of excitement and innovation. Aspect ratio: 16:9",
  "aspect_ratio": "16:9",
  "style": "professional",
  "size": "1920x1080"
}

Mirra returns an image URL. Store this URL in a Make variable. Later, Postwise will download and resize it for different platforms automatically.

{
  "status": "success",
  "image_url": "https://images.mirra.ai/output/xyz123.jpg",
  "prompt_used": "[your prompt]"
}

Stage 4: Scheduling with Postwise

Postwise is where everything comes together. It accepts multiple posts, images, and scheduling instructions, then distributes them across LinkedIn, Twitter, Instagram, and TikTok on your behalf.

Postwise doesn't have a traditional REST API, but it does support Zapier integration. Since we're using Make, we have two options: either integrate through Zapier (using Make's Zapier module), or manually push data into Postwise via their webhook endpoint if available. For this guide, we'll assume direct API integration; check Postwise's current API documentation as their endpoints may have changed.


POST https://api.postwise.ai/v1/schedule-posts
Headers:
  Authorization: Bearer YOUR_POSTWISE_API_KEY
  Content-Type: application/json

Body:
{
  "posts": [
    {
      "platform": "linkedin",
      "content": "[LINKEDIN_POST_VARIABLE]",
      "image_url": "[MIRRA_IMAGE_URL]",
      "scheduled_time": "2024-01-15T09:00:00Z"
    },
    {
      "platform": "twitter",
      "content": "[TWITTER_POST_VARIABLE]",
      "image_url": "[MIRRA_IMAGE_URL]",
      "scheduled_time": "2024-01-15T10:00:00Z"
    },
    {
      "platform": "instagram",
      "content": "[INSTAGRAM_POST_VARIABLE]",
      "image_url": "[MIRRA_IMAGE_URL]",
      "scheduled_time": "2024-01-15T11:00:00Z"
    },
    {
      "platform": "tiktok",
      "content": "[TIKTOK_SCRIPT_VARIABLE]",
      "image_url": "[MIRRA_IMAGE_URL]",
      "scheduled_time": "2024-01-15T12:00:00Z"
    }
  ],
  "account_id": "YOUR_ACCOUNT_ID",
  "timezone": "Europe/London"
}

Postwise will confirm scheduling with a response containing post IDs. Store these IDs in a Make data store so you can reference them later if you need to modify or cancel posts.

Putting It All Together in Make

Here's the complete workflow sequence:

  1. Watch Google Drive folder for new press release files.
  2. Extract text content from the uploaded file.
  3. Send text to Copy.ai API to generate platform-specific posts.
  4. Parse the Copy.ai response to extract individual posts.
  5. Send press release headline to Mirra API to generate hero image.
  6. Wait for image generation (Mirra can take 30 to 60 seconds).
  7. Compile all posts and image URL into Postwise API request.
  8. Schedule posts across all platforms.
  9. Log post IDs and completion timestamp to Google Sheets for your records.

The entire flow should take fewer than 90 seconds from file upload to completed scheduling. Set up error handling at each step so if Copy.ai is slow or Mirra fails to generate an image, Make pauses and retries rather than proceeding with incomplete data.

Notes for Zapier and n8n Users

If you prefer Zapier, the workflow is similar but you'll need to use Zapier's native steps rather than raw API calls. Zapier offers direct integrations with Google Drive, Copy.ai, and Postwise. For image generation, use Zapier's third-party integration with Mirra or call Mirra's API using the "Webhooks by Zapier" action.

n8n offers more flexibility. You'll build the same workflow using n8n's HTTP node to call APIs directly, which is identical to the Make approach. n8n's advantage is that you can self-host it, avoiding API rate limits imposed by cloud orchestration services.

If you're using Claude Code (Anthropic's coding interface), you can write a Python script that performs the same orchestration. This gives you the most control but requires more setup and monitoring.

The Manual Alternative

If automation feels like overkill for your use case, here's the realistic manual process. Download your press release and manually rewrite it for each platform using Copy.ai's web interface. This takes 15 to 20 minutes. Then use Mirra's web interface to generate images, which takes another 10 minutes. Finally, log into Postwise and schedule each post individually, which takes another 10 to 15 minutes. Total time: 45 minutes to an hour per press release.

This approach works fine if you launch products infrequently. However, if you're doing product launches quarterly or more often, the automation pays for itself almost immediately in saved time. The manual method also introduces opportunities for typos and inconsistencies across platforms; automation eliminates that risk entirely.

Pro Tips

1. Rate Limiting and API Quotas

Copy.ai and Mirra both enforce rate limits. Copy.ai allows 20 requests per minute on most plans; Mirra allows 10 image generations per minute. If you're processing multiple press releases simultaneously, Make will queue requests automatically, but the entire workflow will slow down. Space out press release uploads if you're processing more than two at once, or upgrade to higher API tiers with increased quotas.

2. Image Aspect Ratios

Different platforms prefer different image dimensions. TikTok wants 9:16 (vertical), Instagram wants 1:1 (square) or 4:5, Twitter wants 16:9 (landscape). Instead of generating one image and letting Postwise resize it, generate three versions from Mirra with different aspect ratios. This takes longer but produces better results because Mirra can compose content specifically for each format rather than stretching a single image.

3. Handling Failed Generations

Copy.ai occasionally returns generic or low-quality content, especially for niche products. Add a manual approval step before scheduling. In Make, send a Slack notification to your marketing lead with the generated posts and ask for approval before proceeding to Postwise. This adds 5 minutes of human review but catches problems before they go live.

4. Cost Optimisation

Copy.ai charges per API call, typically £0.01 to £0.05 per request depending on model and output size. Mirra charges £0.10 to £0.50 per image. Postwise is usually a flat monthly fee. Instead of regenerating everything each time, save successful outputs. If you're launching a series of related products, reuse the same hero image across multiple posts to reduce Mirra costs.

5. Scheduling Cadence

Don't schedule all posts simultaneously. Stagger them across different times to avoid platform algorithms penalising you for spam-like behaviour. LinkedIn performs well at 8am on weekdays; Twitter peaks at 9am; Instagram at 11am; TikTok at 6pm to 9pm. Configure Make to calculate these times based on your timezone and schedule each platform independently rather than as a batch.

Cost Breakdown

ToolPlan NeededMonthly CostNotes
Copy.aiProfessional£25 to £50API access included; charged per request beyond free tier
MirraStandard£20 to £30100 to 500 image generations monthly depending on tier
PostwisePro£45 to £99Covers scheduling across all platforms; includes basic analytics
MakeStandard£9.99Enough for 10,000 operations monthly; most workflows use 50 to 100
Total£100 to £210Assuming 4 press releases monthly at 250 operations each

For a team processing more than four press releases monthly, this automation saves roughly 20 hours per month in manual work. At a fully-loaded cost of £40 per hour, that's £800 saved, making the tooling cost negligible.