With PDF Echo, you can generate PDFs from raw HTML or a public URL and upload them directly to your Google Cloud Storage (GCS) bucket — without temporarily storing the file on our servers. This guide walks you through:
  1. Generating a signed URL in Google Cloud Storage.
  2. Sending the signed URL to PDF Echo to upload your file directly.

1. Generate a Signed URL in Google Cloud Storage

A signed URL gives PDF Echo temporary permission to upload a file to your bucket without sharing your credentials. You can generate a signed URL in different ways:
  • Using the gsutil CLI.
  • Using the Google Cloud Console.
  • Programmatically via the GCP client libraries.

Example using gsutil CLI.

gsutil signurl -d 15m -m PUT ~/keys/my-service-account.json gs://YOUR_BUCKET_NAME/YOUR_PATH/filename.pdf
⚠️ Note: The signed URL must be valid until PDF Echo finishes uploading the file

2. Generate a PDF and upload it directly to GCS

To upload the PDF to your GCS bucket, send a request to the endpoint /v1/pdf with the following field:
{
  "storage": {
    "provider": "gcp_storage",
    "signed_url": "SIGNED_URL_FROM_GCS"
  }
}

Example request

curl -X POST "https://api.pdfecho.com/v1/pdf" \
  -u YOUR_API_KEY: \
  -H "Content-Type: application/json" \
  -d '{
    "source": "<html><body><h1>Hello PDF Echo</h1></body></html>",
    "storage": {
      "provider": "gcp_storage",
      "s3_destination": "SIGNED_URL_FROM_GCS"
    }
  }'

Example response

{
  "url": "https://storage.googleapis.com/YOUR_BUCKET_NAME/YOUR_PATH/filename.pdf",
  "file": {
    "name": "filename.pdf",
    "size": 5532
  },
  "compliance": {
    "hipaa": false,
    "gdpr": false
  }
}
Summary
  • No temporary storage — the PDF goes directly from PDF Echo to your bucket via the signed URL.
  • Secure — access is limited to ths specific file and time period you define.
  • Flexible — works with raw HTML or a public URL.