Tools API Blog
Sign in Create account

Create a .zip file

Create .zip is an API that bundles several files (any type: PDFs, images, spreadsheets…) into a single .zip. Great for packaging a flow's output before emailing it from n8n, Make or Zapier, with no servers to maintain.

How it works

You send a list of files, each with its name and its content in base64, and get back a single .zip with all of them inside. Nothing is stored: it's generated on the fly.

Since it's several files at once, this tool only accepts a JSON body (there's no "paste the raw file" mode).

All you need

  • Your API key. Create it in your dashboard with "+ Create key". It's shown only once, so copy and save it.
  • In your automation platform, an "HTTP Request" step (n8n, Make, Zapier, Pipedream… all have one).
  • Each file converted to base64 before sending it.

How to use it in n8n (step by step)

In the HTTP Request node:

  • Method: POST
  • URL: https://api.cofferdock.com/create-zip
  • Send Headers: on → add two: x-api-key = your key, and Content-Type = application/json
  • Send Body: on → Body Content Type: JSON → { "files": [{ "name": "invoice.pdf", "content": "<base64>" }, { "name": "photo.jpg", "content": "<base64>" }] }
  • Under Options → Response → Response Format: choose File (the response is already the .zip)

If a file arrives as binary data from an earlier step, convert it to base64 with a Code node using {{'{{'}}$binary.data.toString('base64'){{'}}'}}, or with the Move Binary Data node.

In Make (HTTP → Make a request module): same method and URL, Body type: Raw, Content type: JSON, with the same files array.

Options (inside the JSON)

OptionDefaultWhat it does
files-Required. Array of 1 to 50 files, each { "name": "...", "content": "<base64>" }.
outputbinarySet to json to receive the .zip as base64 inside a JSON instead of the raw file.

What you get back

By default, the .zip file itself, ready to save or send. With "output": "json" you get it as base64 inside a JSON object.