Woocommerce products to Instagram as carousel posts

Hi make.com community!

My goal is to automatically post all Woocommerce products to Instagram (business account) as carousel posts.

I already tried to directly use the Woocommerce modul, but it does not give me the image urls of the product gallery beyond the main image.
Therefore I created a Script for Google Sheet to directly write from Woocommerce API all products into Google Sheet, which outputs e.g. all image URLs of a product into separate columns.

This is my current Scenario:

The modul seems to receive the data as Bundles, Bundle1 = Table Headers, Bundle2 = 1. Product, Bundle3 = 2. Product, etc.

I also made clear in the modul setting that the table has headers:

Instagram for Business modul seems to be set up ok, but still I receive error messages:

BundleValidationError
Validation failed for 6 parameter(s).
Invalid URL in parameter 'image_url'.
Invalid URL in parameter 'image_url'.
Invalid URL in parameter 'image_url'.
Invalid URL in parameter 'image_url'.
Invalid URL in parameter 'image_url'.
Invalid URL in parameter 'image_url'.

Origin
Make

How can this be solved? Please looking for advice!

Many thanks!

Currently the instagram carousel module is not working as expected in Make. You can take a different approach for the carousel posts. You can make api call instagram for carousel posts.
But this is a 3 step process.

You may publish up to 10 images, videos, or a mix of the two in a single post (a carousel post). Publishing carousels is a three step process:

  1. Use the POST /{ig-user-id}/media endpoint to create individual item containers for each image and video that will appear in the carousel.
  2. Use the POST /{ig-user-id}/media endpoint again to create a single carousel container for the items.
  3. Use the POST /{ig-user-id}/media_publish endpoint to publish the carousel container.

Please refer to the official facebook documentation for the details on the parameters of each endpoint. I’ve included the official doc link with each endpoint.

Hello Sami,

from the screenshots you are providing it looks like the issue is that the Watch New Rows module is returning the table headers despite being configured properly. I suggest contacting Make support directly about this and informing them of the issue.

In the mean time you can try setting up a filter after it to make sure that only bundles with urls in those fields pass through.

2 Likes

Hi @Stoyan_Vatov,

I was able to make it work - although not perfectly.

In the instagram module for carousel posts I configured 6 images. The Woocommerce products usually have up to 6 images.
The issue is, not all products have 6 images, some have less. And that creates an issue. The module expects image_url input, but if the cell is empty the module stops working and shows the error message.

If I lower the number of images to 4 in the Instagram module, it seems to work for most of the products. But still not quite reliable… also very tricky to get my head around. Hoped that zero / no code platforms like make would be a little easier to use :smile:

Many thanks for your help anyway.

Hi @Raktim_Ahmed,

many thanks for your advice. I will definitely check out the Instagram api module!

As I described in my answer to @Stoyan_Vatov Woocommerce products to Instagram as carousel posts - #4 by Sami_Goze
I ran into issues because of varying number of images per product. Do you know if the Instagram API module is able to handle this better?

With best regards!

@Sami_Goze When you have varying number of images/videos, the best way is to directly use Instagram api endpoints.
Because you create container for each item and then put them all together in the carousel container giving you more control over the process.
The algorithm of the solution would be something like this:
Aggregate all the image urls in an array from your google sheet discarding the null values and then iterate over them one by one creating the container for items and saving the container ID in the process. Then create the carousel container with all the container ID of items created before and publish the carrousel post.

This solution can be implemented by a simple custom coded python script, if not by make. Then Upload the script to a cloud platform and integrate into your make scenario via ssh command module. I did it many times before for solutions that can’t be done in Make

1 Like