Iteration Layer

Chain your document and image APIs into one workflow

Iteration Layer is a composable API platform for document, image, and content processing. Extract documents, generate images, transform files, and produce PDFs with one credit pool, one API style, and no glue code. EU-hosted and GDPR-compliant.

No credit card required — start with free trial credits

Zero data retention · GDPR Made & hosted in the EU 80€ free trial credits No credit card required 14-day money-back guarantee

One output feeds the next

APIs that cover every step of your content pipeline — ingestion, transformation, and generation. One key, one credit pool, and structured JSON responses designed to chain together.

Fits into your existing stack

Native SDKs for Node, Python, and Go. OpenAPI spec for everything else. MCP server for AI agents and Claude Code skills. n8n community node for visual workflows.

Mix and match freely

Extract data from a document, generate visuals from the results, then compile everything into a finished report. Mix, match, and build your own pipeline.

Real-world pipelines, ready to ship

Each recipe chains multiple APIs into a complete workflow. Pick one, tweak it, and deploy — or use it as a starting point for your own pipeline.

Extract Invoice Data

Extract vendor name, line items, totals, and dates from invoice documents.

Generate Social Card

Generate an Open Graph social sharing card with dynamic title, description, and branding.

Remove Product Background

Remove the background from a product photo using AI-powered segmentation.

Extract Resume Data

Extract candidate name, contact details, work history, and skills from resumes.

Generate Certificate Image

Generate a professional certificate image with recipient name, course title, and completion date for digital sharing, social media, or email delivery.

Smart Crop Group Photo

Use AI detection to smart-crop individual portraits from a group photo.

Compress Image for Email

Resize, sharpen, and compress an image to fit email platform size limits in a single pipeline.

Compress Image to Target File Size

Compress an image to fit within a specific file size in bytes using quality-first compression.

Convert Contract to Markdown

Convert a contract PDF to clean markdown for clause extraction or LLM analysis.

Convert Document for Knowledge Base

Convert external documents — specs, contracts, reports — to markdown for knowledge base ingestion.

Convert Document for RAG Ingestion

Convert a document to clean markdown suitable for chunking and embedding in a RAG pipeline.

Convert Image Format

Convert an image between PNG, JPEG, and WebP formats with quality control for web optimization.

Convert Invoice to Markdown

Convert a PDF invoice to clean markdown for LLM processing or document pipelines.

Convert Resume to Markdown

Convert a resume PDF to clean markdown for LLM parsing or candidate pipelines.

Convert Website to Markdown for RAG

Extract clean title, summary, markdown sections, and source metadata from a public documentation page for RAG ingestion.

Convert Document to Markdown

Convert PDF, DOCX, HTML, or image documents to clean, structured Markdown.

Extract 1098 Data

Extract structured fields from 1098 documents.

Extract 1099-MISC Data

Extract structured fields from 1099-misc documents.

Extract 1099-NEC Data

Extract structured fields from 1099-nec documents.

Extract Academic Paper Metadata

Extract title, authors, abstract, and citation info from academic papers.

Extract ACORD 25 Data

Extract structured fields from acord 25 documents.

Extract Aging Report Data

Extract structured fields from aging report documents.

Extract Air Cargo Manifest Data

Extract structured fields from air cargo manifest documents.

Extract Air Waybill Data

Extract structured fields from air waybill documents.

Extract Article Text

Extract clean article content — title, author, date, and body text — from PDFs, Word docs, and web pages.

Extract Auto Insurance Claim Data

Extract structured fields from auto insurance claim documents.

Extract Balance Sheet Data

Extract structured fields from balance sheet documents.

Extract Bank Statements Data

Extract structured fields from bank statements documents.

Extract Bill of Entry Data

Extract structured fields from bill of entry documents.

Extract Bill of Lading Data

Extract structured fields from bill of lading documents.

Extract Busta Paga Data

Extract employee, employer, gross pay, INPS/IRPEF deductions, and net pay from Italian payslips.

Extract Cargo Manifest Data

Extract structured fields from cargo manifest documents.

Extract Carrier Invoices to Spreadsheet

Extract line-level charges from multiple carrier invoices, then generate an XLSX freight cost tracker in a single pipeline.

Extract Cash Flow Statement Data

Extract structured fields from cash flow statement documents.

Extract Certificate of Insurance Data

Extract structured fields from certificate of insurance documents.

Extract Certificate of Origin Data

Extract structured fields from certificate of origin documents.

Extract Certificazione Unica Data

Extract structured fields from certificazione unica documents.

Extract CFDI Carta Porte Data

Extract structured fields from cfdi carta porte documents.

Extract CFDI Invoice Data

Extract structured fields from cfdi invoice documents.

Extract Cfdi Nomina Data

Extract structured fields from cfdi nomina documents.

Extract Closing Disclosure Data

Extract structured fields from closing disclosure documents.

Extract Closing Statement Data

Extract structured fields from closing statement documents.

Extract CMR Waybill Data

Extract structured fields from cmr waybill documents.

Extract Commercial Invoice Data

Extract structured fields from commercial invoice documents.

Extract Commercial Lease Data

Extract parties, premises, lease term, rent, escalation, deposit, options, and expense obligations from commercial leases.

Extract Contract Clause Data

Extract parties, dates, and clauses from a contract into structured JSON for legal review workflows.

Extract Contracts to a Register

Extract key terms from multiple signed contracts and build a structured XLSX contract register tracking parties, dates, value, and renewal terms.

Extract Court Filing Data

Extract case numbers, parties, filing dates, court details, and relief sought from court filing documents and legal pleadings.

Extract Credit Card Statements Data

Extract structured fields from credit card statements documents.

Extract Credit Invoice Data

Extract structured fields from credit invoice documents.

Extract CT600 Data

Extract structured fields from ct600 documents.

Extract Customer Invoice Data

Extract structured fields from customer invoice documents.

Extract Customs Declaration

Merge a commercial invoice, packing list, and bill of lading into a unified customs declaration.

Extract Customs Declarations to Spreadsheet

Extract HS codes, declared values, and duty amounts from customs declaration documents, then generate an XLSX import duty log.

Extract Declaration Impots Data

Extract structured fields from declaration impots documents.

Extract Delivery Note Data

Extract shipment details, item quantities, and delivery confirmation data from warehouse delivery notes and goods received notes.

Extract Delivery Order Data

Extract release order, carrier, consignee, pickup location, goods, and validity fields from delivery orders.

Extract Delivery Receipt Data

Extract proof-of-delivery number, recipient, delivery time, items, exceptions, and signature status from delivery receipts.

Extract Dichiarazione Iva Data

Extract structured fields from dichiarazione iva documents.

Extract Factura Data

Extract structured fields from factura documents.

Extract Facture Data

Extract structured fields from facture documents.

Extract Fattura Elettronica Data

Extract structured fields from fattura elettronica documents.

Extract Fiche de Paie Data

Extract employee, employer, gross pay, cotisations, tax, and net pay from French payslips.

Extract Fleet Vehicle Registration Data

Extract vehicle identification, owner details, registration dates, and technical specifications from vehicle registration documents.

Extract Freight Bill Data

Extract carrier invoice, shipment references, rates, accessorials, taxes, and total charges from freight bills.

Extract Help Center Article from Website

Extract title, summary, steps, related links, and last updated date from a public help center article.

Extract Home Inspection Data

Extract structured fields from home inspection documents.

Extract I-9 Data

Extract structured fields from i-9 documents.

Extract Income Statement Data

Extract structured fields from income statement documents.

Extract Insurance Claim Data

Extract structured fields from insurance claim documents.

Extract Invoices and Build Accounts Payable Spreadsheet

Extract structured data from multiple invoice PDFs in one call, then pipe the results directly into an XLSX accounts payable tracker.

Extract Job Listings from Website

Extract role title, location, salary range, requirements, and application details from a public job posting.

Extract Jpk Vat Data

Extract structured fields from jpk vat documents.

Extract Keihi Seisansho Data

Extract employee, department, expense lines, tax, totals, and approval fields from Japanese expense settlement forms.

Extract KPI Data

Extract campaign or business KPIs from report documents — metrics, values, periods, and targets.

Extract KPIs and Generate a Client Report

Extract key performance indicators from client documents, then generate a branded PDF report summarizing the results.

Extract Ksef Faktura Data

Extract structured fields from ksef faktura documents.

Extract KYC Onboarding Data

Extract company information, submitted identity-document references, and beneficial ownership data from onboarding packets.

Extract Kyuyo Meisai Data

Extract employee, employer, allowances, deductions, taxes, and net pay from Japanese payslips.

Extract Lease Renewal Data

Extract tenant, property, renewal term, new rent, deposit changes, and signature fields from lease renewal notices or agreements.

Extract Legal Invoice Data

Extract timekeeper entries, disbursements, matter references, and billing summaries from law firm invoices.

Extract Listing Data and Generate a Brochure

Extract property listing details from a real estate document, then generate a branded PDF brochure and a social media image for the listing.

Extract Lohnabrechnung Data

Extract employee, employer, gross wage, tax deductions, social insurance, and net wage from German payslips.

Extract Lohnsteuerbescheinigung Data

Extract structured fields from lohnsteuerbescheinigung documents.

Extract Loss Run Report Data

Extract structured fields from loss run report documents.

Extract Modello 730 Data

Extract structured fields from modello 730 documents.

Extract Modello F24 Data

Extract structured fields from modello f24 documents.

Extract Mortgage Statements Data

Extract structured fields from mortgage statements documents.

Extract Multi-Invoice Data

Extract structured data from multiple invoice files in a single API call using an array schema.

Extract NDA Terms and Generate a Compliance Checklist

Extract key terms from a non-disclosure agreement, then generate a compliance checklist spreadsheet tracking obligations and deadlines.

Extract NDA Terms

Extract parties, obligations, restrictions, permitted disclosures, and expiry dates from non-disclosure agreements.

Extract News Article Metadata from Website

Extract headline, author, publication date, summary, category, and named entities from a public news article.

Extract Nomina Data

Extract employee, employer, earnings, deductions, tax, and net pay from Spanish or Latin American payroll slips.

Extract Note de Frais Data

Extract employee, trip, expense lines, VAT, totals, and approvals from French expense claims.

Extract Ocean Bill of Lading Data

Extract structured fields from ocean bill of lading documents.

Extract P11D Data

Extract structured fields from p11d documents.

Extract P45 Data

Extract structured fields from p45 documents.

Extract P60 Data

Extract structured fields from p60 documents.

Extract Packing List Data

Extract shipper, consignee, order references, carton lines, weights, and package totals from packing lists.

Extract Pit 11 Data

Extract structured fields from pit 11 documents.

Extract Pit 37 Data

Extract structured fields from pit 37 documents.

Extract Pricing Table from Website

Extract plan names, prices, billing periods, and feature lists from a public pricing page.

Extract Product Catalog Entry

Extract product name, SKU, price, and specifications from a catalog document into structured JSON for e-commerce workflows.

Extract Product Data and Generate a Listing Image

Extract product details from a supplier data sheet, then generate a branded e-commerce listing image with the product name, price, and key specs.

Extract Product Data from Website

Extract product name, price, availability, description, and specifications from a public product page.

Extract Profit Loss Data

Extract structured fields from profit loss documents.

Extract Proforma Invoice Data

Extract structured fields from proforma invoice documents.

Extract Property Appraisal

Extract appraised value, property details, and comparable sales from a property appraisal report into structured JSON.

Extract Property Deed Data

Extract property ownership, legal descriptions, encumbrances, and recording details from property deeds and land registry documents.

Extract Property Insurance Claim Data

Extract structured fields from property insurance claim documents.

Extract Property Survey Data

Extract structured fields from property survey documents.

Extract Public Registry Page

Extract organization name, registration number, status, registration date, and officers from a public registry page.

Extract a Purchase Order and Generate a Confirmation

Extract line items and delivery details from a customer purchase order PDF, then generate a formatted order confirmation PDF ready to send back to the buyer.

Extract Purchase Order Data

Extract line items, quantities, unit prices, delivery dates, and supplier details from purchase order documents.

Extract Quittung Data

Extract receipt number, issuer, payer, date, VAT, and total from German receipts.

Extract Real Estate Listing from Website

Extract address, listing price, bedrooms, bathrooms, amenities, and agent contact details from a public listing page.

Extract Real Estate Listing

Extract property address, price, room count, and features from a listing document into structured JSON for MLS and property platforms.

Extract Receipt Data

Extract merchant, date, line items, tax, and total from receipts.

Extract Receipts and Generate Expense Report

Extract merchant, date, amount, and category from receipt photos and PDFs in one call, then generate an XLSX expense report with a totals row.

Extract Rechnung Data

Extract structured fields from rechnung documents.

Extract Recu Data

Extract receipt number, issuer, payer, date, VAT, and total from French receipts.

Extract Recurring Invoice Data

Extract structured fields from recurring invoice documents.

Extract Reisekostenabrechnung Data

Extract employee, trip, mileage, per diem, expense lines, VAT, and totals from German travel expense claims.

Extract Rent Roll Data

Extract property, unit, tenant, lease dates, rents, deposits, and occupancy fields from rent rolls.

Extract Rental Application

Extract applicant details, employment history, income, and references from a rental application form into structured JSON for tenant screening.

Extract Rental Applications to Spreadsheet

Extract applicant details from rental application PDFs and generate a side-by-side XLSX for comparing income, employment, and move-in dates.

Extract Residential Lease Data

Extract landlord, tenant, property, lease dates, rent, deposit, utilities, occupants, and pet terms from residential leases.

Extract Restaurant Menu from Website

Extract menu item names, prices, descriptions, and dietary notes from a public restaurant menu page.

Extract Resume Data and Generate an Employee Profile

Extract candidate information from a resume PDF, then generate a formatted employee profile document for HR onboarding.

Extract RO e-Factura Data

Extract structured fields from ro e-factura documents.

Extract Ryoshusho Data

Extract receipt number, issuer, payer, date, tax, and total from Japanese receipts.

Extract SA100 Data

Extract structured fields from sa100 documents.

Extract Sales Invoice Data

Extract structured fields from sales invoice documents.

Extract Schedule K 1 Data

Extract structured fields from schedule k 1 documents.

Extract Seikyusho Data

Extract structured fields from seikyusho documents.

Extract Shipping Request Data

Extract requestor, ship-from, ship-to, service, package, and handling instructions from shipping requests.

Extract Steuerbescheid Data

Extract structured fields from steuerbescheid documents.

Extract Steuererklaerung Data

Extract structured fields from steuererklaerung documents.

Extract Straight Bill of Lading Data

Extract structured fields from straight bill of lading documents.

Extract Supplier Catalog from Website

Extract SKUs, product names, unit prices, availability, and minimum order quantities from a supplier catalog page.

Extract Supplier Catalog to Spreadsheet

Extract every product from a supplier catalog PDF — SKUs, names, prices, MOQs — and generate a ready-to-import XLSX in two API calls.

Extract Supplier Invoice Data for ERP Import

Extract supplier invoice details structured for direct import into ERP systems like SAP, Oracle, or Microsoft Dynamics.

Extract T1 General Data

Extract structured fields from t1 general documents.

Extract T4 Slip Data

Extract structured fields from t4 slip documents.

Extract Terms and Conditions

Extract clause types, obligations, limitations, and governing law from terms and conditions documents.

Extract Terms and Generate a Simplified Summary

Extract key clauses from terms and conditions documents, then generate a plain-language PDF summary for client review.

Extract Title Insurance Data

Extract structured fields from title insurance documents.

Extract Title Search Data

Extract property, owner, legal description, liens, mortgages, easements, and tax status from title search reports.

Extract Traffic Fine Data

Extract violation details, fine amounts, vehicle information, and payment deadlines from traffic fine notices.

Extract Umsatzsteuervoranmeldung Data

Extract structured fields from umsatzsteuervoranmeldung documents.

Extract VAT100 Data

Extract structured fields from vat100 documents.

Extract Violations and Generate a Fine Summary

Extract traffic violation data from fine notices, then generate a spreadsheet summarizing all violations for fleet management.

Extract W-2 Data

Extract structured fields from w-2 documents.

Extract W-4 Data

Extract structured fields from w-4 documents.

Extract W-8BEN Data

Extract structured fields from w-8ben documents.

Extract W-9 Data

Extract structured fields from w-9 documents.

Extract Warehouse Receipt Data

Extract structured fields from warehouse receipt documents.

Extract ZATCA E-Invoice Data

Extract structured fields from zatca e-invoice documents.

Generate A+ Content Banner

Generate an Amazon A+ Content banner image for book marketing with cover art, title, and branding.

Generate Billing Statement

Generate an XLSX billing statement with a merged company header, subscription line items, overages, credits, and subtotal/tax/total formulas.

Generate Book Cover Spreads

Generate print-ready book cover spreads with back cover, spine, and front cover in a single image.

Generate a Compliance Audit Document

Generate a formatted PDF compliance audit document with findings, risk ratings, remediation recommendations, and sign-off sections.

Generate DOCX Contract

Generate an editable DOCX service agreement with parties, terms, and payment schedule.

Generate Email Banner

Generate a personalized email banner image with text, logo, and brand colors.

Generate Employee Offer Letter

Generate a professional offer letter PDF with role, compensation, start date, and company details.

Generate Employee Report

Generate an XLSX employee report with departments, salaries, hire dates, and currency formatting.

Generate EPUB Book

Generate a complete EPUB e-book with chapters, table of contents, and rich text formatting.

Generate Event Ticket

Generate an event ticket image with QR code, event name, date, venue, and seat information.

Generate Front Book Cover

Generate a front cover image with custom artwork, title text, and author attribution.

Generate Inventory Report

Generate an XLSX inventory report with stock levels, reorder points, unit costs, and total value formulas for purchasing teams.

Generate Invoice Spreadsheet

Generate an XLSX invoice with company info, line items, subtotal/tax/total formulas, and currency formatting.

Generate a Multi-Client Usage Report

Generate a multi-sheet XLSX report tracking API usage, credit consumption, and billing across multiple agency clients.

Generate NDA

Generate a non-disclosure agreement PDF with party names, effective date, and standard confidentiality terms.

Generate OG Image

Generate a branded Open Graph image with a generative wave background, logo, and tagline.

Generate Order Export

Export e-commerce order data to CSV with order numbers, customer details, amounts, and fulfillment status.

Generate Packing Slip and Shipping Label

Generate a PDF packing slip and a PNG shipping label from the same order data in a single fulfillment workflow.

Generate Packing Slip

Generate a packing slip PDF with order details, item list, and shipping address.

Generate PDF Certificate

Generate a professional achievement certificate with recipient name, course details, date, and a QR code for formal download or print.

Generate PDF Invoice

Generate a professional PDF invoice with company branding, line items, and totals.

Generate PDF Manuscript

Generate a print-ready PDF manuscript with title page, table of contents, and chapters at 6x9 inch trim size.

Generate PDF Report

Generate a professional PDF report with title, executive summary, data table, and footer.

Generate Product Datasheet

Generate a professional product specification sheet with images, feature tables, technical specs, and contact information.

Generate Product Listing Image

Generate a product listing image with photo, price badge, and promotional text overlay.

Generate Product Promo Banner

Optimize a product photo and compose it into a promotional banner with sale text and pricing.

Generate Product Promo Card

Generate a product promotional card with a product photo, sale badge, and pricing text.

Generate Product Slide

Generate a branded product slide image with headline, feature pills, and a call-to-action — all arranged with layout layers.

Generate Quarterly Report

Create a structured quarterly business report with table of contents, data tables, and page numbers.

Generate Real Estate Listing Graphic

Generate a branded property listing graphic with a property photo, status badge, price, address, and key stats.

Generate Report Card Image

Generate a visual KPI report card with a headline metric, secondary stats, and branding — shareable as an image.

Generate Restaurant Menu

Generate a branded restaurant menu PDF with sections, items, prices, and descriptions.

Generate Sales Dashboard

Generate a multi-sheet XLSX workbook with quarterly revenue, expenses, and summary formulas.

Generate Sales Report Spreadsheet

Generate a formatted XLSX spreadsheet with sales data, currency formatting, and bold headers.

Generate Shipping Label

Generate a compact PDF shipping label with sender and recipient addresses, barcode, and tracking number.

Generate Slide Deck

Build a PowerPoint slide deck with title slide, content slides, and call-to-action page.

Generate Social Media Book Promo

Generate a vertical story image for TikTok or Instagram book promotion with cover art, hook text, and author branding.

Generate Thumbnail

Resize a source image to a thumbnail and convert to WebP.

Generate Timesheet Export

Generate an XLSX timesheet with logged hours, hourly rates, per-entry amount formulas, and totals for client billing or payroll.

Generate a White-Label PDF Report

Generate a branded PDF report with custom client logo placeholder, colors, and content sections for white-label agency delivery.

Generate YouTube Thumbnail

Generate a YouTube thumbnail with bold title text, gradient background, and a static image cutout.

Resize, Watermark, and Convert Image

Resize an image, add a branded text watermark, and convert to WebP in a two-step pipeline.

Invoice to PDF Report

Extract invoice data and generate a formatted PDF summary in a single pipeline.

Convert Markdown to Styled PDF

Generate a professionally styled PDF document from Markdown content with custom fonts, headers, and page numbers.

Optimize Product Image for Amazon

Prepare a product photo to meet Amazon's main image requirements: pure white background, square format, 2000×2000px, JPEG.

Optimize Product Image for Etsy

Smart crop a product photo to Etsy's recommended 2000×2000px square format and export as JPEG.

Optimize Product Image for Shopify

Resize a product photo to Shopify's recommended 2048×2048px square format, sharpen, and convert to WebP for fast storefront load times.

Optimize Product Photo

Resize, enhance, and compress a product photo for an e-commerce listing with consistent quality.

Preprocess Document for LLM Classification

Convert a document to markdown and classify it with an LLM in a single pipeline.

Process Real Estate Photo

Enhance and standardize a property listing photo with auto-contrast, sharpening, and consistent sizing.

Remove Background and Generate Product Card

Remove the background from a raw product photo, then compose it into a branded listing card with the product name and price.

Resize Image for Print Publishing

Resize and convert manuscript images to KDP-compliant dimensions at 300 DPI for print-on-demand.

Resize Image for Social Media

Resize and crop a single image into platform-specific dimensions for social media.

Smart Crop Avatar and Remove Background

Smart crop to face, remove the background, and convert to WebP for a clean user avatar.

Smart Crop Product Image

AI-powered subject-aware crop that centers on the product regardless of its position in the frame.

Upscale Low-Resolution Image

Upscale a low-resolution image using AI super-resolution for print or high-DPI display.

Watermark an Image

Apply a text watermark to a photo using layer-based image composition for brand protection and copyright.

One n8n node for your entire pipeline

Most n8n document workflows chain three or four separate services. The Iteration Layer community node covers extraction, transformation, and generation in a single install — wire up multi-step pipelines visually instead of writing glue code.

Stop wiring vendors together by hand

Every API returns structured output that feeds straight into the next. Official SDKs for TypeScript, Python, and Go. OpenAPI spec for everything else. MCP-ready for AI agents.

Input Preview
Invoice INV-2024-0042
Output Preview

invoice_number

INV-2024-0042

vendor

Northwind Accounting Services GmbH

due_date

2024-04-14

line_items

description

Month-end close automation workshop

amount

USD 720.00

description

Invoice schema rollout and testing

amount

USD 480.00

description

Vendor onboarding playbook update

amount

USD 190.00

total_due

USD 1,390.00
Request
curl -X POST \
  https://api.iterationlayer.com/document-extraction/v1/extract \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "files": [{
    "type": "url",
    "name": "accounts-payable-invoice.pdf",
    "url": "https://iterationlayer.com/code-samples/accounts-payable-invoice.pdf"
  }],
  "schema": {
    "fields": [
      {
        "name": "invoice_number",
        "type": "TEXT",
        "description": "The invoice number"
      },
      {
        "name": "vendor",
        "type": "TEXT",
        "description": "The vendor legal name"
      },
      {
        "name": "due_date",
        "type": "DATE",
        "description": "The invoice due date"
      },
      {
        "name": "line_items",
        "type": "ARRAY",
        "description": "Line items",
        "fields": [
          {
            "name": "description",
            "type": "TEXT",
            "description": "Line item description"
          },
          {
            "name": "amount",
            "type": "CURRENCY_AMOUNT",
            "description": "Line item amount"
          }
        ]
      },
      {
        "name": "total_due",
        "type": "CURRENCY_AMOUNT",
        "description": "The final amount due"
      }
    ]
  }
}'
Response
{
  "success": true,
  "data": {
    "invoice_number": {
      "type": "TEXT",
      "value": "INV-2024-0042",
      "confidence": 0.97,
      "citations": ["Invoice #INV-2024-0042"],
      "source": "accounts-payable-invoice.pdf"
    },
    "vendor": {
      "type": "TEXT",
      "value": "Northwind Accounting Services GmbH",
      "confidence": 0.98,
      "citations": ["Northwind Accounting Services GmbH"],
      "source": "accounts-payable-invoice.pdf"
    },
    "due_date": {
      "type": "DATE",
      "value": "2024-04-14",
      "confidence": 0.96,
      "citations": ["Due Date: 2024-04-14"],
      "source": "accounts-payable-invoice.pdf"
    },
    "line_items": {
      "type": "ARRAY",
      "value": [
        {
          "description": {
            "value": "Month-end close automation workshop",
            "confidence": 0.98,
            "citations": ["Month-end close automation workshop"]
          },
          "amount": {
            "value": 720.00,
            "confidence": 0.96,
            "citations": ["USD 720.00"]
          }
        },
        {
          "description": {
            "value": "Invoice schema rollout and testing",
            "confidence": 0.97,
            "citations": ["Invoice schema rollout and testing"]
          },
          "amount": {
            "value": 480.00,
            "confidence": 0.95,
            "citations": ["USD 480.00"]
          }
        },
        {
          "description": {
            "value": "Vendor onboarding playbook update",
            "confidence": 0.95,
            "citations": ["Vendor onboarding playbook update"]
          },
          "amount": {
            "value": 190.00,
            "confidence": 0.94,
            "citations": ["USD 190.00"]
          }
        }
      ],
      "confidence": 0.97,
      "citations": [],
      "source": "accounts-payable-invoice.pdf"
    },
    "total_due": {
      "type": "CURRENCY_AMOUNT",
      "value": 1390.00,
      "confidence": 0.97,
      "citations": ["Total Due: USD 1,390.00"],
      "source": "accounts-payable-invoice.pdf"
    }
  }
}
Request
import { IterationLayer } from "iterationlayer";

const client = new IterationLayer({
  apiKey: "YOUR_API_KEY",
});

const result = await client.extractDocument({
  files: [{
    type: "url",
    name: "accounts-payable-invoice.pdf",
    url: "https://iterationlayer.com/code-samples/accounts-payable-invoice.pdf",
  }],
  schema: {
    fields: [
      {
        type: "TEXT",
        name: "invoice_number",
        description: "The invoice number",
      },
      {
        type: "TEXT",
        name: "vendor",
        description: "The vendor legal name",
      },
      {
        type: "DATE",
        name: "due_date",
        description: "The invoice due date",
      },
      {
        type: "ARRAY",
        name: "line_items",
        description: "Line items",
        fields: [
          { type: "TEXT", name: "description", description: "Line item description" },
          { type: "CURRENCY_AMOUNT", name: "amount", description: "Line item amount" },
        ],
      },
      {
        type: "CURRENCY_AMOUNT",
        name: "total_due",
        description: "The final amount due",
      },
    ],
  },
});
Response
{
  "success": true,
  "data": {
    "invoice_number": {
      "type": "TEXT",
      "value": "INV-2024-0042",
      "confidence": 0.97,
      "citations": ["Invoice #INV-2024-0042"],
      "source": "accounts-payable-invoice.pdf"
    },
    "vendor": {
      "type": "TEXT",
      "value": "Northwind Accounting Services GmbH",
      "confidence": 0.98,
      "citations": ["Northwind Accounting Services GmbH"],
      "source": "accounts-payable-invoice.pdf"
    },
    "due_date": {
      "type": "DATE",
      "value": "2024-04-14",
      "confidence": 0.96,
      "citations": ["Due Date: 2024-04-14"],
      "source": "accounts-payable-invoice.pdf"
    },
    "line_items": {
      "type": "ARRAY",
      "value": [
        {
          "description": {
            "value": "Month-end close automation workshop",
            "confidence": 0.98,
            "citations": ["Month-end close automation workshop"]
          },
          "amount": {
            "value": 720.00,
            "confidence": 0.96,
            "citations": ["USD 720.00"]
          }
        },
        {
          "description": {
            "value": "Invoice schema rollout and testing",
            "confidence": 0.97,
            "citations": ["Invoice schema rollout and testing"]
          },
          "amount": {
            "value": 480.00,
            "confidence": 0.95,
            "citations": ["USD 480.00"]
          }
        },
        {
          "description": {
            "value": "Vendor onboarding playbook update",
            "confidence": 0.95,
            "citations": ["Vendor onboarding playbook update"]
          },
          "amount": {
            "value": 190.00,
            "confidence": 0.94,
            "citations": ["USD 190.00"]
          }
        }
      ],
      "confidence": 0.97,
      "citations": [],
      "source": "accounts-payable-invoice.pdf"
    },
    "total_due": {
      "type": "CURRENCY_AMOUNT",
      "value": 1390.00,
      "confidence": 0.97,
      "citations": ["Total Due: USD 1,390.00"],
      "source": "accounts-payable-invoice.pdf"
    }
  }
}
Request
from iterationlayer import IterationLayer

client = IterationLayer(
    api_key="YOUR_API_KEY"
)

result = client.extract_document(
    files=[{
        "type": "url",
        "name": "accounts-payable-invoice.pdf",
        "url": "https://iterationlayer.com/code-samples/accounts-payable-invoice.pdf",
    }],
    schema={
        "fields": [
            {
                "type": "TEXT",
                "name": "invoice_number",
                "description": "The invoice number",
            },
            {
                "type": "TEXT",
                "name": "vendor",
                "description": "The vendor legal name",
            },
            {
                "type": "DATE",
                "name": "due_date",
                "description": "The invoice due date",
            },
            {
                "type": "ARRAY",
                "name": "line_items",
                "description": "Line items",
                "fields": [
                    {"type": "TEXT", "name": "description", "description": "Line item description"},
                    {"type": "CURRENCY_AMOUNT", "name": "amount", "description": "Line item amount"},
                ],
            },
            {
                "type": "CURRENCY_AMOUNT",
                "name": "total_due",
                "description": "The final amount due",
            },
        ],
    },
)
Response
{
  "success": true,
  "data": {
    "invoice_number": {
      "type": "TEXT",
      "value": "INV-2024-0042",
      "confidence": 0.97,
      "citations": ["Invoice #INV-2024-0042"],
      "source": "accounts-payable-invoice.pdf"
    },
    "vendor": {
      "type": "TEXT",
      "value": "Northwind Accounting Services GmbH",
      "confidence": 0.98,
      "citations": ["Northwind Accounting Services GmbH"],
      "source": "accounts-payable-invoice.pdf"
    },
    "due_date": {
      "type": "DATE",
      "value": "2024-04-14",
      "confidence": 0.96,
      "citations": ["Due Date: 2024-04-14"],
      "source": "accounts-payable-invoice.pdf"
    },
    "line_items": {
      "type": "ARRAY",
      "value": [
        {
          "description": {
            "value": "Month-end close automation workshop",
            "confidence": 0.98,
            "citations": ["Month-end close automation workshop"]
          },
          "amount": {
            "value": 720.00,
            "confidence": 0.96,
            "citations": ["USD 720.00"]
          }
        },
        {
          "description": {
            "value": "Invoice schema rollout and testing",
            "confidence": 0.97,
            "citations": ["Invoice schema rollout and testing"]
          },
          "amount": {
            "value": 480.00,
            "confidence": 0.95,
            "citations": ["USD 480.00"]
          }
        },
        {
          "description": {
            "value": "Vendor onboarding playbook update",
            "confidence": 0.95,
            "citations": ["Vendor onboarding playbook update"]
          },
          "amount": {
            "value": 190.00,
            "confidence": 0.94,
            "citations": ["USD 190.00"]
          }
        }
      ],
      "confidence": 0.97,
      "citations": [],
      "source": "accounts-payable-invoice.pdf"
    },
    "total_due": {
      "type": "CURRENCY_AMOUNT",
      "value": 1390.00,
      "confidence": 0.97,
      "citations": ["Total Due: USD 1,390.00"],
      "source": "accounts-payable-invoice.pdf"
    }
  }
}
Request
import il "github.com/iterationlayer/sdk-go"

client := il.NewClient("YOUR_API_KEY")

result, err := client.ExtractDocument(il.ExtractDocumentRequest{
  Files: []il.FileInput{
    il.NewFileFromURL(
      "accounts-payable-invoice.pdf",
      "https://iterationlayer.com/code-samples/accounts-payable-invoice.pdf",
    ),
  },
  Schema: il.ExtractionSchema{
    "invoice_number": il.NewTextFieldConfig(
      "invoice_number",
      "The invoice number",
    ),
    "vendor": il.NewTextFieldConfig(
      "vendor",
      "The vendor legal name",
    ),
    "due_date": il.NewDateFieldConfig(
      "due_date",
      "The invoice due date",
    ),
    "line_items": il.NewArrayFieldConfig(
      "line_items",
      "Line items",
      []il.FieldConfig{
        il.NewTextFieldConfig("description", "Line item description"),
        il.NewCurrencyAmountFieldConfig("amount", "Line item amount"),
      },
    ),
    "total_due": il.NewCurrencyAmountFieldConfig(
      "total_due",
      "The final amount due",
    ),
  },
})
Response
{
  "success": true,
  "data": {
    "invoice_number": {
      "type": "TEXT",
      "value": "INV-2024-0042",
      "confidence": 0.97,
      "citations": ["Invoice #INV-2024-0042"],
      "source": "accounts-payable-invoice.pdf"
    },
    "vendor": {
      "type": "TEXT",
      "value": "Northwind Accounting Services GmbH",
      "confidence": 0.98,
      "citations": ["Northwind Accounting Services GmbH"],
      "source": "accounts-payable-invoice.pdf"
    },
    "due_date": {
      "type": "DATE",
      "value": "2024-04-14",
      "confidence": 0.96,
      "citations": ["Due Date: 2024-04-14"],
      "source": "accounts-payable-invoice.pdf"
    },
    "line_items": {
      "type": "ARRAY",
      "value": [
        {
          "description": {
            "value": "Month-end close automation workshop",
            "confidence": 0.98,
            "citations": ["Month-end close automation workshop"]
          },
          "amount": {
            "value": 720.00,
            "confidence": 0.96,
            "citations": ["USD 720.00"]
          }
        },
        {
          "description": {
            "value": "Invoice schema rollout and testing",
            "confidence": 0.97,
            "citations": ["Invoice schema rollout and testing"]
          },
          "amount": {
            "value": 480.00,
            "confidence": 0.95,
            "citations": ["USD 480.00"]
          }
        },
        {
          "description": {
            "value": "Vendor onboarding playbook update",
            "confidence": 0.95,
            "citations": ["Vendor onboarding playbook update"]
          },
          "amount": {
            "value": 190.00,
            "confidence": 0.94,
            "citations": ["USD 190.00"]
          }
        }
      ],
      "confidence": 0.97,
      "citations": [],
      "source": "accounts-payable-invoice.pdf"
    },
    "total_due": {
      "type": "CURRENCY_AMOUNT",
      "value": 1390.00,
      "confidence": 0.97,
      "citations": ["Total Due: USD 1,390.00"],
      "source": "accounts-payable-invoice.pdf"
    }
  }
}
Input Preview
Invoice INV-2024-0042
Output Preview
# Northwind Accounting Services GmbH

## Invoice INV-2024-0042

Pappelallee 18  
10437 Berlin  
accounts@northwind.example  
DE813529441

**Invoice Date:** 2024-03-15  
**Due Date:** 2024-04-14  
**Payment Terms:** Net 30

## Bill To

Acme Retail Europe  
Finance Team  
Nieuwezijds Voorburgwal 21  
1012 RC Amsterdam

| Description | Hours | Rate | Amount |
| --- | ---: | ---: | ---: |
| Month-end close automation workshop | 6 | USD 120.00 | USD 720.00 |
| Invoice schema rollout and testing | 4 | USD 120.00 | USD 480.00 |
| Vendor onboarding playbook update | 2 | USD 95.00 | USD 190.00 |

**Subtotal:** USD 1,390.00  
**Tax (0%):** USD 0.00  
**Total Due:** USD 1,390.00

Please remit payment within 30 days via bank transfer using reference **INV-2024-0042**. IBAN: DE42 1001 0010 0987 6543 21.
Request
curl -X POST \
  https://api.iterationlayer.com/document-to-markdown/v1/convert \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "file": {
    "type": "url",
    "name": "accounts-payable-invoice.pdf",
    "url": "https://iterationlayer.com/code-samples/accounts-payable-invoice.pdf"
  }
}'
Response
{
  "success": true,
  "data": {
    "name": "accounts-payable-invoice.pdf",
    "mime_type": "application/pdf",
    "markdown": "# Northwind Accounting Services GmbH\n\n## Invoice INV-2024-0042\n\nPappelallee 18\n10437 Berlin\naccounts@northwind.example\nDE813529441\n\n**Invoice Date:** 2024-03-15\n**Due Date:** 2024-04-14\n**Payment Terms:** Net 30\n\n## Bill To\n\nAcme Retail Europe\nFinance Team\nNieuwezijds Voorburgwal 21\n1012 RC Amsterdam\n\n| Description | Hours | Rate | Amount |\n|---|---:|---:|---:|\n| Month-end close automation workshop | 6 | USD 120.00 | USD 720.00 |\n| Invoice schema rollout and testing | 4 | USD 120.00 | USD 480.00 |\n| Vendor onboarding playbook update | 2 | USD 95.00 | USD 190.00 |\n\n**Subtotal:** USD 1,390.00\n**Tax (0%):** USD 0.00\n**Total Due:** USD 1,390.00"
  }
}
Request
import { IterationLayer } from "iterationlayer";

const client = new IterationLayer({
  apiKey: "YOUR_API_KEY",
});

const result = await client.convertDocumentToMarkdown({
  file: {
    type: "url",
    name: "accounts-payable-invoice.pdf",
    url: "https://iterationlayer.com/code-samples/accounts-payable-invoice.pdf",
  },
});
Response
{
  "success": true,
  "data": {
    "name": "accounts-payable-invoice.pdf",
    "mime_type": "application/pdf",
    "markdown": "# Northwind Accounting Services GmbH\n\n## Invoice INV-2024-0042\n\nPappelallee 18\n10437 Berlin\naccounts@northwind.example\nDE813529441\n\n**Invoice Date:** 2024-03-15\n**Due Date:** 2024-04-14\n**Payment Terms:** Net 30\n\n## Bill To\n\nAcme Retail Europe\nFinance Team\nNieuwezijds Voorburgwal 21\n1012 RC Amsterdam\n\n| Description | Hours | Rate | Amount |\n|---|---:|---:|---:|\n| Month-end close automation workshop | 6 | USD 120.00 | USD 720.00 |\n| Invoice schema rollout and testing | 4 | USD 120.00 | USD 480.00 |\n| Vendor onboarding playbook update | 2 | USD 95.00 | USD 190.00 |\n\n**Subtotal:** USD 1,390.00\n**Tax (0%):** USD 0.00\n**Total Due:** USD 1,390.00"
  }
}
Request
from iterationlayer import IterationLayer

client = IterationLayer(
    api_key="YOUR_API_KEY"
)

result = client.convert_document_to_markdown(
    file={
        "type": "url",
        "name": "accounts-payable-invoice.pdf",
        "url": "https://iterationlayer.com/code-samples/accounts-payable-invoice.pdf",
    }
)
Response
{
  "success": true,
  "data": {
    "name": "accounts-payable-invoice.pdf",
    "mime_type": "application/pdf",
    "markdown": "# Northwind Accounting Services GmbH\n\n## Invoice INV-2024-0042\n\nPappelallee 18\n10437 Berlin\naccounts@northwind.example\nDE813529441\n\n**Invoice Date:** 2024-03-15\n**Due Date:** 2024-04-14\n**Payment Terms:** Net 30\n\n## Bill To\n\nAcme Retail Europe\nFinance Team\nNieuwezijds Voorburgwal 21\n1012 RC Amsterdam\n\n| Description | Hours | Rate | Amount |\n|---|---:|---:|---:|\n| Month-end close automation workshop | 6 | USD 120.00 | USD 720.00 |\n| Invoice schema rollout and testing | 4 | USD 120.00 | USD 480.00 |\n| Vendor onboarding playbook update | 2 | USD 95.00 | USD 190.00 |\n\n**Subtotal:** USD 1,390.00\n**Tax (0%):** USD 0.00\n**Total Due:** USD 1,390.00"
  }
}
Request
import il "github.com/iterationlayer/sdk-go"

client := il.NewClient("YOUR_API_KEY")

result, err := client.ConvertDocumentToMarkdown(il.ConvertDocumentToMarkdownRequest{
  File: il.NewFileFromURL(
    "accounts-payable-invoice.pdf",
    "https://iterationlayer.com/code-samples/accounts-payable-invoice.pdf",
  ),
})
Response
{
  "success": true,
  "data": {
    "name": "accounts-payable-invoice.pdf",
    "mime_type": "application/pdf",
    "markdown": "# Northwind Accounting Services GmbH\n\n## Invoice INV-2024-0042\n\nPappelallee 18\n10437 Berlin\naccounts@northwind.example\nDE813529441\n\n**Invoice Date:** 2024-03-15\n**Due Date:** 2024-04-14\n**Payment Terms:** Net 30\n\n## Bill To\n\nAcme Retail Europe\nFinance Team\nNieuwezijds Voorburgwal 21\n1012 RC Amsterdam\n\n| Description | Hours | Rate | Amount |\n|---|---:|---:|---:|\n| Month-end close automation workshop | 6 | USD 120.00 | USD 720.00 |\n| Invoice schema rollout and testing | 4 | USD 120.00 | USD 480.00 |\n| Vendor onboarding playbook update | 2 | USD 95.00 | USD 190.00 |\n\n**Subtotal:** USD 1,390.00\n**Tax (0%):** USD 0.00\n**Total Due:** USD 1,390.00"
  }
}
Input Preview
https://www.linkedin.com/jobs/view/engineer-manager-people-innovations-labs-openai
Engineer Manager, People Innovations Labs — OpenAI
Output Preview

title

Engineer Manager, People Innovations Labs

company

OpenAI

location

San Francisco, CA

posted_ago

7 minutes ago

applicant_note

Be among the first 25 applicants

department

People Organization
Request
curl -X POST   https://api.iterationlayer.com/website-extraction/v1/extract   -H "Authorization: Bearer YOUR_API_KEY"   -H "Content-Type: application/json"   -d '{
    "file": {
      "type": "url",
      "url": "https://example.com/pricing"
    },
    "schema": {
    "fields": [
      {
        "name": "plan_name",
        "type": "TEXT",
        "description": "The name of the pricing plan"
      },
      {
        "name": "monthly_price",
        "type": "CURRENCY_AMOUNT",
        "description": "The advertised monthly price"
      },
      {
        "name": "features",
        "type": "ARRAY",
        "description": "Included plan features",
        "fields": [
          {
            "name": "feature",
            "type": "TEXT",
            "description": "Feature label"
          }
        ]
      }
    ]
  }
}'
Response
{
  "success": true,
  "data": {
    "plan_name": {
      "type": "TEXT",
      "value": "Startup",
      "confidence": 0.97,
      "citations": ["Startup — $119 per month"],
      "source": "pricing.html"
    },
    "monthly_price": {
      "type": "CURRENCY_AMOUNT",
      "value": 119,
      "confidence": 0.95,
      "citations": ["$119 per month"],
      "source": "pricing.html"
    }
  }
}
Request
import { IterationLayer } from "iterationlayer";

const client = new IterationLayer({
  apiKey: "YOUR_API_KEY",
});

const result = await client.extractWebsite({
  file: {
    type: "url",
    url: "https://example.com/pricing",
  },
  schema: {
    fields: [
      { type: "TEXT", name: "plan_name", description: "The name of the pricing plan" },
      { type: "CURRENCY_AMOUNT", name: "monthly_price", description: "The advertised monthly price" },
      {
        type: "ARRAY",
        name: "features",
        description: "Included plan features",
        fields: [{ type: "TEXT", name: "feature", description: "Feature label" }],
      },
    ],
  },
});
Response
{
  "success": true,
  "data": {
    "plan_name": {
      "type": "TEXT",
      "value": "Startup",
      "confidence": 0.97,
      "citations": ["Startup — $119 per month"],
      "source": "pricing.html"
    },
    "monthly_price": {
      "type": "CURRENCY_AMOUNT",
      "value": 119,
      "confidence": 0.95,
      "citations": ["$119 per month"],
      "source": "pricing.html"
    }
  }
}
Request
from iterationlayer import IterationLayer

client = IterationLayer(api_key="YOUR_API_KEY")

result = client.extract_website(
    file={
        "type": "url",
        "url": "https://example.com/pricing",
    },
    schema={
        "fields": [
            {"type": "TEXT", "name": "plan_name", "description": "The name of the pricing plan"},
            {"type": "CURRENCY_AMOUNT", "name": "monthly_price", "description": "The advertised monthly price"},
            {
                "type": "ARRAY",
                "name": "features",
                "description": "Included plan features",
                "fields": [{"type": "TEXT", "name": "feature", "description": "Feature label"}],
            },
        ]
    },
)
Response
{
  "success": true,
  "data": {
    "plan_name": {
      "type": "TEXT",
      "value": "Startup",
      "confidence": 0.97,
      "citations": ["Startup — $119 per month"],
      "source": "pricing.html"
    },
    "monthly_price": {
      "type": "CURRENCY_AMOUNT",
      "value": 119,
      "confidence": 0.95,
      "citations": ["$119 per month"],
      "source": "pricing.html"
    }
  }
}
Request
import il "github.com/iterationlayer/sdk-go"

client := il.NewClient("YOUR_API_KEY")

result, err := client.ExtractWebsite(il.ExtractWebsiteRequest{
  File: il.NewWebsiteFromURL("https://example.com/pricing"),
  Schema: il.ExtractionSchema{
    "plan_name": il.NewTextFieldConfig("plan_name", "The name of the pricing plan"),
    "monthly_price": il.NewCurrencyAmountFieldConfig("monthly_price", "The advertised monthly price"),
    "features": il.NewArrayFieldConfig("features", "Included plan features", []il.FieldConfig{
      il.NewTextFieldConfig("feature", "Feature label"),
    }),
  },
})
Response
{
  "success": true,
  "data": {
    "plan_name": {
      "type": "TEXT",
      "value": "Startup",
      "confidence": 0.97,
      "citations": ["Startup — $119 per month"],
      "source": "pricing.html"
    },
    "monthly_price": {
      "type": "CURRENCY_AMOUNT",
      "value": 119,
      "confidence": 0.95,
      "citations": ["$119 per month"],
      "source": "pricing.html"
    }
  }
}
Input Preview
Group photo before smart crop

Wide group photo before cropping to a narrow banner where face retention matters

Output Preview
Narrow smart-cropped group photo output

AI smart crop shifts the crop upward so the banner keeps the group’s heads in frame

Request
curl -X POST \
  https://api.iterationlayer.com/image-transformation/v1/transform \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "file": {
    "type": "url",
    "name": "group-photo.jpg",
    "url": "https://iterationlayer.com/code-samples/group-photo.jpg"
  },
  "operations": [
    {
      "type": "smart_crop",
      "width_in_px": 728,
      "height_in_px": 160
    }
  ]
}'
Response
{
  "success": true,
  "data": {
    "buffer": "/9j/4AAQSkZJRgABAQ...",
    "mime_type": "image/jpeg"
  }
}
Request
import { IterationLayer } from "iterationlayer";

const client = new IterationLayer({
  apiKey: "YOUR_API_KEY",
});

const result = await client.transformImage({
  file: {
    type: "url",
    name: "group-photo.jpg",
    url: "https://iterationlayer.com/code-samples/group-photo.jpg",
  },
  operations: [
    {
      type: "smart_crop",
      width_in_px: 728,
      height_in_px: 160,
    },
  ],
});
Response
{
  "success": true,
  "data": {
    "buffer": "/9j/4AAQSkZJRgABAQ...",
    "mime_type": "image/jpeg"
  }
}
Request
from iterationlayer import IterationLayer

client = IterationLayer(
    api_key="YOUR_API_KEY"
)

result = client.transform_image(
    file={
        "type": "url",
        "name": "group-photo.jpg",
        "url": "https://iterationlayer.com/code-samples/group-photo.jpg",
    },
    operations=[
        {
            "type": "smart_crop",
            "width_in_px": 728,
            "height_in_px": 160,
        },
    ],
)
Response
{
  "success": true,
  "data": {
    "buffer": "/9j/4AAQSkZJRgABAQ...",
    "mime_type": "image/jpeg"
  }
}
Request
import il "github.com/iterationlayer/sdk-go"

client := il.NewClient("YOUR_API_KEY")

result, err := client.TransformImage(il.TransformImageRequest{
  File: il.NewFileFromURL(
      "group-photo.jpg",
      "https://iterationlayer.com/code-samples/group-photo.jpg",
  ),
  Operations: []il.TransformOperation{
    il.NewSmartCropOperation(728, 160),
  },
})
Response
{
  "success": true,
  "data": {
    "buffer": "/9j/4AAQSkZJRgABAQ...",
    "mime_type": "image/jpeg"
  }
}
Input Preview
{
  "dimensions": {
    "width_in_px": 1200,
    "height_in_px": 630
  },
  "output_format": "jpeg",
  "layers": [
    {
      "index": 0,
      "type": "solid-color",
      "hex_color": "#FFFFFF"
    },
    {
      "index": 1,
      "type": "image",
      "file": {
        "type": "base64",
        "name": "waves.svg",
        "base64": "<wave-svg-base64>"
      },
      "position": { "x_in_px": 20, "y_in_px": 20 },
      "dimensions": { "width_in_px": 1160, "height_in_px": 478 },
      "border_radius": 24
    },
    {
      "index": 2,
      "type": "image",
      "file": {
        "type": "base64",
        "name": "logo.svg",
        "base64": "<logo-svg-base64>"
      },
      "position": { "x_in_px": 20, "y_in_px": 542 },
      "dimensions": { "width_in_px": 56, "height_in_px": 56 }
    },
    {
      "index": 3,
      "type": "text",
      "text": "Iteration Layer",
      "font_name": "Inter",
      "font_size_in_px": 32,
      "font_weight": "bold",
      "text_color": "#000000",
      "vertical_align": "center",
      "position": { "x_in_px": 90, "y_in_px": 542 },
      "dimensions": { "width_in_px": 400, "height_in_px": 56 }
    },
    {
      "index": 4,
      "type": "text",
      "text": "Image & Document Extraction and Generation APIs",
      "font_name": "Inter",
      "font_size_in_px": 32,
      "font_weight": "medium",
      "text_color": "#6B7280",
      "text_align": "right",
      "vertical_align": "center",
      "should_auto_scale": true,
      "position": { "x_in_px": 20, "y_in_px": 542 },
      "dimensions": { "width_in_px": 1160, "height_in_px": 56 }
    }
  ]
}
Output Preview
Generated OG image with wave art and Iteration Layer branding

Deterministic 1200 × 630 OG image generated from JSON layers

Request
curl -X POST \
  https://api.iterationlayer.com/image-generation/v1/generate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "dimensions": {
    "width_in_px": 1200,
    "height_in_px": 630
  },
  "output_format": "jpeg",
  "layers": [
    {
      "index": 0,
      "type": "solid-color",
      "hex_color": "#FFFFFF"
    },
    {
      "index": 1,
      "type": "image",
      "file": {
        "type": "base64",
        "name": "waves.svg",
        "base64": "<wave-svg-base64>"
      },
      "position": {
        "x_in_px": 20.0,
        "y_in_px": 20.0
      },
      "dimensions": {
        "width_in_px": 1160,
        "height_in_px": 478
      },
      "border_radius": 24
    },
    {
      "index": 2,
      "type": "image",
      "file": {
        "type": "base64",
        "name": "logo.svg",
        "base64": "<logo-svg-base64>"
      },
      "position": {
        "x_in_px": 20.0,
        "y_in_px": 542.0
      },
      "dimensions": {
        "width_in_px": 56,
        "height_in_px": 56
      }
    },
    {
      "index": 3,
      "type": "text",
      "text": "Iteration Layer",
      "font_name": "Inter",
      "font_size_in_px": 32,
      "font_weight": "bold",
      "text_color": "#000000",
      "vertical_align": "center",
      "position": {
        "x_in_px": 90.0,
        "y_in_px": 542.0
      },
      "dimensions": {
        "width_in_px": 400,
        "height_in_px": 56
      }
    },
    {
      "index": 4,
      "type": "text",
      "text": "Image & Document Extraction and Generation APIs",
      "font_name": "Inter",
      "font_size_in_px": 32,
      "font_weight": "medium",
      "text_color": "#6B7280",
      "text_align": "right",
      "vertical_align": "center",
      "should_auto_scale": true,
      "position": {
        "x_in_px": 20.0,
        "y_in_px": 542.0
      },
      "dimensions": {
        "width_in_px": 1160,
        "height_in_px": 56
      }
    }
  ]
}'
Response
{
  "success": true,
  "data": {
    "buffer": "/9j/4AAQSkZJRgABAQ...",
    "mime_type": "image/jpeg"
  }
}
Request
import { IterationLayer } from "iterationlayer";

const client = new IterationLayer({
  apiKey: "YOUR_API_KEY",
});

const waveSvgBase64 = generateWaveSvg(slug);
const logoSvgBase64 = Buffer.from(logoSvg).toString("base64");

const result = await client.generateImage({
  dimensions: {
    width_in_px: 1200,
    height_in_px: 630,
  },
  output_format: "jpeg",
  layers: [
    {
      index: 0,
      type: "solid-color",
      hex_color: "#FFFFFF",
    },
    {
      index: 1,
      type: "image",
      file: {
        type: "base64",
        name: "waves.svg",
        base64: waveSvgBase64,
      },
      position: {
        x_in_px: 20,
        y_in_px: 20,
      },
      dimensions: {
        width_in_px: 1160,
        height_in_px: 478,
      },
      border_radius: 24,
    },
    {
      index: 2,
      type: "image",
      file: {
        type: "base64",
        name: "logo.svg",
        base64: logoSvgBase64,
      },
      position: {
        x_in_px: 20,
        y_in_px: 542,
      },
      dimensions: {
        width_in_px: 56,
        height_in_px: 56,
      },
    },
    {
      index: 3,
      type: "text",
      text: "Iteration Layer",
      font_name: "Inter",
      font_size_in_px: 32,
      font_weight: "bold",
      text_color: "#000000",
      vertical_align: "center",
      position: { x_in_px: 90, y_in_px: 542 },
      dimensions: {
        width_in_px: 400,
        height_in_px: 56,
      },
    },
    {
      index: 4,
      type: "text",
      text: "Image & Document Extraction and Generation APIs",
      font_name: "Inter",
      font_size_in_px: 32,
      font_weight: "medium",
      text_color: "#6B7280",
      text_align: "right",
      vertical_align: "center",
      should_auto_scale: true,
      position: { x_in_px: 20, y_in_px: 542 },
      dimensions: {
        width_in_px: 1160,
        height_in_px: 56,
      },
    },
  ],
});
Response
{
  "success": true,
  "data": {
    "buffer": "/9j/4AAQSkZJRgABAQ...",
    "mime_type": "image/jpeg"
  }
}
Request
from iterationlayer import IterationLayer

client = IterationLayer(
    api_key="YOUR_API_KEY"
)

wave_svg_base64 = generate_wave_svg(slug)
logo_svg_base64 = base64.b64encode(logo_svg.encode()).decode()

result = client.generate_image(
    dimensions={
        "width_in_px": 1200,
        "height_in_px": 630,
    },
    output_format="jpeg",
    layers=[
        {
            "index": 0,
            "type": "solid-color",
            "hex_color": "#FFFFFF",
        },
        {
            "index": 1,
            "type": "image",
            "file": {
                "type": "base64",
                "name": "waves.svg",
                "base64": wave_svg_base64,
            },
            "position": {
                "x_in_px": 20,
                "y_in_px": 20,
            },
            "dimensions": {
                "width_in_px": 1160,
                "height_in_px": 478,
            },
            "border_radius": 24,
        },
        {
            "index": 2,
            "type": "image",
            "file": {
                "type": "base64",
                "name": "logo.svg",
                "base64": logo_svg_base64,
            },
            "position": {
                "x_in_px": 20,
                "y_in_px": 542,
            },
            "dimensions": {
                "width_in_px": 56,
                "height_in_px": 56,
            },
        },
        {
            "index": 3,
            "type": "text",
            "text": "Iteration Layer",
            "font_name": "Inter",
            "font_size_in_px": 32,
            "font_weight": "bold",
            "text_color": "#000000",
            "vertical_align": "center",
            "position": {
                "x_in_px": 90,
                "y_in_px": 542,
            },
            "dimensions": {
                "width_in_px": 400,
                "height_in_px": 56,
            },
        },
        {
            "index": 4,
            "type": "text",
            "text": "Image & Document Extraction and Generation APIs",
            "font_name": "Inter",
            "font_size_in_px": 32,
            "font_weight": "medium",
            "text_color": "#6B7280",
            "text_align": "right",
            "vertical_align": "center",
            "should_auto_scale": True,
            "position": {
                "x_in_px": 20,
                "y_in_px": 542,
            },
            "dimensions": {
                "width_in_px": 1160,
                "height_in_px": 56,
            },
        },
    ],
)
Response
{
  "success": true,
  "data": {
    "buffer": "/9j/4AAQSkZJRgABAQ...",
    "mime_type": "image/jpeg"
  }
}
Request
import il "github.com/iterationlayer/sdk-go"

client := il.NewClient("YOUR_API_KEY")

waveSvgBase64 := generateWaveSvg(slug)
logoSvgBase64 := base64.StdEncoding.EncodeToString([]byte(logoSvg))

result, err := client.GenerateImage(
  il.GenerateImageRequest{
    Dimensions: il.Dimensions{
      WidthInPx:  1200,
      HeightInPx: 630,
    },
    OutputFormat: "jpeg",
    Layers: []il.Layer{
      il.NewSolidColorBackgroundLayer(0, "#FFFFFF"),
      il.NewImageLayer(
        1,
        il.NewFileFromBase64("waves.svg", waveSvgBase64),
        il.Position{
          XInPx: 20,
          YInPx: 20,
        },
        il.Dimensions{
          WidthInPx:  1160,
          HeightInPx: 478,
        },
      ),
      il.NewImageLayer(
        2,
        il.NewFileFromBase64("logo.svg", logoSvgBase64),
        il.Position{
          XInPx: 20,
          YInPx: 542,
        },
        il.Dimensions{
          WidthInPx:  56,
          HeightInPx: 56,
        },
      ),
      il.NewTextLayer(
        3, "Iteration Layer",
        "Inter", 32, "#000000",
        il.Position{
          XInPx: 90,
          YInPx: 542,
        },
        il.Dimensions{
          WidthInPx:  400,
          HeightInPx: 56,
        },
      ),
      il.NewTextLayer(
        4,
        "Image & Document Extraction and Generation APIs",
        "Inter", 32, "#6B7280",
        il.Position{
          XInPx: 20,
          YInPx: 542,
        },
        il.Dimensions{
          WidthInPx:  1160,
          HeightInPx: 56,
        },
      ),
    },
  },
)
Response
{
  "success": true,
  "data": {
    "buffer": "/9j/4AAQSkZJRgABAQ...",
    "mime_type": "image/jpeg"
  }
}
Input Preview
{
  "format": "pdf",
  "document": {
    "metadata": { "title": "Series A Board Pack" },
    "page": {
      "size": { "preset": "A4" },
      "margins": {
        "top_in_pt": 48,
        "right_in_pt": 48,
        "bottom_in_pt": 54,
        "left_in_pt": 48
      }
    },
    "styles": {
      "text": { "font_family": "Helvetica", "font_size_in_pt": 11, "color": "#334155", "line_height": 1.5 },
      "headline": { "font_family": "Helvetica", "font_size_in_pt": 28, "color": "#0F172A", "font_weight": "bold" },
      "table": {
        "header": { "background_color": "#E2E8F0", "text_color": "#0F172A", "font_size_in_pt": 10, "font_weight": "bold" },
        "body": { "background_color": "#FFFFFF", "text_color": "#334155", "font_size_in_pt": 10 }
      }
    },
    "content": [
      { "type": "headline", "level": "h1", "text": "Series A Board Pack" },
      { "type": "paragraph", "markdown": "**Q4 revenue:** USD 4.8M  |  **Gross margin:** 78%  |  **Net retention:** 123%" },
      { "type": "separator" },
      { "type": "headline", "level": "h2", "text": "Operating Highlights" },
      { "type": "list", "variant": "unordered", "items": [
        { "text": "Opened Frankfurt region with 14 enterprise accounts" },
        { "text": "Reduced median document extraction latency to 1.9 seconds" },
        { "text": "Launched deterministic OG image generation for every public page" }
      ] },
      { "type": "headline", "level": "h2", "text": "Regional Revenue" },
      { "type": "table", "column_widths_in_percent": [34, 22, 18, 26], "header": { "cells": [
        { "text": "Region" },
        { "text": "Revenue" },
        { "text": "Growth" },
        { "text": "Gross Margin" }
      ] }, "rows": [
        { "cells": [{ "text": "North America" }, { "text": "USD 2.1M" }, { "text": "+31%" }, { "text": "81%" }] },
        { "cells": [{ "text": "Europe" }, { "text": "USD 1.7M" }, { "text": "+26%" }, { "text": "77%" }] },
        { "cells": [{ "text": "APAC" }, { "text": "USD 1.0M" }, { "text": "+18%" }, { "text": "73%" }] }
      ] },
      { "type": "paragraph", "markdown": "Next quarter focus: enterprise onboarding, deeper spreadsheet generation adoption, and gross margin expansion." }
    ]
  }
}
Output Preview
Generated board pack PDF preview

First page preview of the generated PDF

Request
curl -X POST \
  https://api.iterationlayer.com/document-generation/v1/generate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "format": "pdf",
  "document": {
    "metadata": {
      "title": "Series A Board Pack"
    },
    "page": {
      "size": { "preset": "A4" },
      "margins": {
        "top_in_pt": 48,
        "right_in_pt": 48,
        "bottom_in_pt": 54,
        "left_in_pt": 48
      }
    },
    "styles": {
      "text": {
        "font_family": "Helvetica",
        "font_size_in_pt": 11,
        "color": "#334155",
        "line_height": 1.5
      },
      "headline": {
        "font_family": "Helvetica",
        "font_size_in_pt": 28,
        "color": "#0F172A",
        "font_weight": "bold"
      },
      "table": {
        "header": {
          "background_color": "#E2E8F0",
          "text_color": "#0F172A",
          "font_size_in_pt": 10,
          "font_weight": "bold"
        },
        "body": {
          "background_color": "#FFFFFF",
          "text_color": "#334155",
          "font_size_in_pt": 10
        }
      }
    },
    "content": [
      {
        "type": "headline",
        "level": "h1",
        "text": "Series A Board Pack"
      },
      {
        "type": "paragraph",
        "markdown": "**Q4 revenue:** USD 4.8M  |  **Gross margin:** 78%  |  **Net retention:** 123%"
      },
      {
        "type": "separator"
      },
      {
        "type": "headline",
        "level": "h2",
        "text": "Operating Highlights"
      },
      {
        "type": "list",
        "variant": "unordered",
        "items": [
          { "text": "Opened Frankfurt region with 14 enterprise accounts" },
          { "text": "Reduced median document extraction latency to 1.9 seconds" },
          { "text": "Launched deterministic OG image generation for every public page" }
        ]
      },
      {
        "type": "headline",
        "level": "h2",
        "text": "Regional Revenue"
      },
      {
        "type": "table",
        "column_widths_in_percent": [34, 22, 18, 26],
        "header": {
          "cells": [
            { "text": "Region" },
            { "text": "Revenue" },
            { "text": "Growth" },
            { "text": "Gross Margin" }
          ]
        },
        "rows": [
          { "cells": [{ "text": "North America" }, { "text": "USD 2.1M" }, { "text": "+31%" }, { "text": "81%" }] },
          { "cells": [{ "text": "Europe" }, { "text": "USD 1.7M" }, { "text": "+26%" }, { "text": "77%" }] },
          { "cells": [{ "text": "APAC" }, { "text": "USD 1.0M" }, { "text": "+18%" }, { "text": "73%" }] }
        ]
      },
      {
        "type": "paragraph",
        "markdown": "Next quarter focus: enterprise onboarding, deeper spreadsheet generation adoption, and margin expansion."
      }
    ]
  }
}'
Response
{
  "success": true,
  "data": {
    "buffer": "JVBERi0xLjcKMSAwIG9iago8...",
    "mime_type": "application/pdf"
  }
}
Request
import { IterationLayer } from "iterationlayer";

const client = new IterationLayer({
  apiKey: "YOUR_API_KEY",
});

const result = await client.generateDocument({
  format: "pdf",
  document: {
    metadata: { title: "Series A Board Pack" },
    page: {
      size: { preset: "A4" },
      margins: {
        top_in_pt: 48,
        right_in_pt: 48,
        bottom_in_pt: 54,
        left_in_pt: 48,
      },
    },
    styles: {
      text: {
        font_family: "Helvetica",
        font_size_in_pt: 11,
        color: "#334155",
        line_height: 1.5,
      },
      headline: {
        font_family: "Helvetica",
        font_size_in_pt: 28,
        color: "#0F172A",
        font_weight: "bold",
      },
      table: {
        header: {
          background_color: "#E2E8F0",
          text_color: "#0F172A",
          font_size_in_pt: 10,
          font_weight: "bold",
        },
        body: {
          background_color: "#FFFFFF",
          text_color: "#334155",
          font_size_in_pt: 10,
        },
      },
    },
    content: [
      {
        type: "headline",
        level: "h1",
        text: "Series A Board Pack",
      },
      {
        type: "paragraph",
        markdown: "**Q4 revenue:** USD 4.8M  |  **Gross margin:** 78%  |  **Net retention:** 123%",
      },
      {
        type: "separator",
      },
      {
        type: "headline",
        level: "h2",
        text: "Operating Highlights",
      },
      {
        type: "list",
        variant: "unordered",
        items: [
          { text: "Opened Frankfurt region with 14 enterprise accounts" },
          { text: "Reduced median document extraction latency to 1.9 seconds" },
          { text: "Launched deterministic OG image generation for every public page" },
        ],
      },
      {
        type: "headline",
        level: "h2",
        text: "Regional Revenue",
      },
      {
        type: "table",
        column_widths_in_percent: [34, 22, 18, 26],
        header: {
          cells: [
            { text: "Region" },
            { text: "Revenue" },
            { text: "Growth" },
            { text: "Gross Margin" },
          ],
        },
        rows: [
          { cells: [{ text: "North America" }, { text: "USD 2.1M" }, { text: "+31%" }, { text: "81%" }] },
          { cells: [{ text: "Europe" }, { text: "USD 1.7M" }, { text: "+26%" }, { text: "77%" }] },
          { cells: [{ text: "APAC" }, { text: "USD 1.0M" }, { text: "+18%" }, { text: "73%" }] },
        ],
      },
      {
        type: "paragraph",
        markdown: "Next quarter focus: enterprise onboarding, deeper spreadsheet generation adoption, and margin expansion.",
      },
    ],
  },
});
Response
{
  "success": true,
  "data": {
    "buffer": "JVBERi0xLjcKMSAwIG9iago8...",
    "mime_type": "application/pdf"
  }
}
Request
from iterationlayer import IterationLayer

client = IterationLayer(
    api_key="YOUR_API_KEY"
)

result = client.generate_document(
    format="pdf",
    document={
        "metadata": {
            "title": "Series A Board Pack",
        },
        "page": {
            "size": {"preset": "A4"},
            "margins": {
                "top_in_pt": 48,
                "right_in_pt": 48,
                "bottom_in_pt": 54,
                "left_in_pt": 48,
            },
        },
        "styles": {
            "text": {
                "font_family": "Helvetica",
                "font_size_in_pt": 11,
                "color": "#334155",
                "line_height": 1.5,
            },
            "headline": {
                "font_family": "Helvetica",
                "font_size_in_pt": 28,
                "color": "#0F172A",
                "font_weight": "bold",
            },
            "table": {
                "header": {
                    "background_color": "#E2E8F0",
                    "text_color": "#0F172A",
                    "font_size_in_pt": 10,
                    "font_weight": "bold",
                },
                "body": {
                    "background_color": "#FFFFFF",
                    "text_color": "#334155",
                    "font_size_in_pt": 10,
                },
            },
        },
        "content": [
            {
                "type": "headline",
                "level": "h1",
                "text": "Series A Board Pack",
            },
            {
                "type": "paragraph",
                "markdown": "**Q4 revenue:** USD 4.8M  |  **Gross margin:** 78%  |  **Net retention:** 123%",
            },
            {
                "type": "separator",
            },
            {
                "type": "headline",
                "level": "h2",
                "text": "Operating Highlights",
            },
            {
                "type": "list",
                "variant": "unordered",
                "items": [
                    {"text": "Opened Frankfurt region with 14 enterprise accounts"},
                    {"text": "Reduced median document extraction latency to 1.9 seconds"},
                    {"text": "Launched deterministic OG image generation for every public page"},
                ],
            },
            {
                "type": "headline",
                "level": "h2",
                "text": "Regional Revenue",
            },
            {
                "type": "table",
                "column_widths_in_percent": [34, 22, 18, 26],
                "header": {
                    "cells": [
                        {"text": "Region"},
                        {"text": "Revenue"},
                        {"text": "Growth"},
                        {"text": "Gross Margin"},
                    ]
                },
                "rows": [
                    {"cells": [{"text": "North America"}, {"text": "USD 2.1M"}, {"text": "+31%"}, {"text": "81%"}]},
                    {"cells": [{"text": "Europe"}, {"text": "USD 1.7M"}, {"text": "+26%"}, {"text": "77%"}]},
                    {"cells": [{"text": "APAC"}, {"text": "USD 1.0M"}, {"text": "+18%"}, {"text": "73%"}]},
                ],
            },
            {
                "type": "paragraph",
                "markdown": "Next quarter focus: enterprise onboarding, deeper spreadsheet generation adoption, and margin expansion.",
            },
        ],
    },
)
Response
{
  "success": true,
  "data": {
    "buffer": "JVBERi0xLjcKMSAwIG9iago8...",
    "mime_type": "application/pdf"
  }
}
Request
import il "github.com/iterationlayer/sdk-go"

client := il.NewClient("YOUR_API_KEY")

result, err := client.GenerateDocument(
  il.GenerateDocumentRequest{
    Format: "pdf",
    Document: il.DocumentDefinition{
      Metadata: il.DocumentMetadata{
        Title: "Series A Board Pack",
      },
      Page: il.DocumentPage{
        Size: il.DocPageSize{
          Preset: "A4",
        },
        Margins: il.DocMargins{
          TopInPt:    48,
          RightInPt:  48,
          BottomInPt: 54,
          LeftInPt:   48,
        },
      },
      Styles: il.DocumentStyles{
        Text: il.TextStyle{
          FontFamily:  "Helvetica",
          FontSizeInPt: 11,
          Color:       "#334155",
          LineHeight:  1.5,
        },
        Headline: il.HeadlineStyle{
          FontFamily:  "Helvetica",
          FontSizeInPt: 28,
          Color:       "#0F172A",
        },
      },
      Content: []il.ContentBlock{
        il.NewHeadlineBlock("h1", "Series A Board Pack"),
        il.ParagraphBlock{
          Type:     "paragraph",
          Markdown: "**Q4 revenue:** USD 4.8M  |  **Gross margin:** 78%  |  **Net retention:** 123%",
        },
        il.NewSeparatorBlock(),
        il.NewHeadlineBlock("h2", "Operating Highlights"),
        il.ListBlock{Type: "list", Variant: "unordered", Items: []il.ListItem{
          {Text: "Opened Frankfurt region with 14 enterprise accounts"},
          {Text: "Reduced median document extraction latency to 1.9 seconds"},
          {Text: "Launched deterministic OG image generation for every public page"},
        }},
        il.NewHeadlineBlock("h2", "Regional Revenue"),
        il.NewTableBlock([]il.TableRow{
          {Cells: []il.TableCell{{Text: "North America"}, {Text: "USD 2.1M"}, {Text: "+31%"}, {Text: "81%"}}},
          {Cells: []il.TableCell{{Text: "Europe"}, {Text: "USD 1.7M"}, {Text: "+26%"}, {Text: "77%"}}},
          {Cells: []il.TableCell{{Text: "APAC"}, {Text: "USD 1.0M"}, {Text: "+18%"}, {Text: "73%"}}},
        }),
        il.ParagraphBlock{Type: "paragraph", Markdown: "Next quarter focus: enterprise onboarding, deeper spreadsheet generation adoption, and margin expansion."},
      },
    },
  },
)
Response
{
  "success": true,
  "data": {
    "buffer": "JVBERi0xLjcKMSAwIG9iago8...",
    "mime_type": "application/pdf"
  }
}
Input Preview
{
  "format": "xlsx",
  "styles": {
    "header": {
      "is_bold": true,
      "background_color": "#4472C4",
      "font_color": "#FFFFFF"
    }
  },
  "sheets": [
    {
      "name": "FY2026 Pipeline",
      "columns": [
        { "name": "Region", "width": 18 },
        { "name": "Account Executive", "width": 24 },
        { "name": "Plan", "width": 18 },
        { "name": "Stage", "width": 16 },
        { "name": "ARR", "width": 16 },
        { "name": "Renewal", "width": 16 }
      ],
      "rows": [
        [{ "value": "Germany" }, { "value": "Mia Fischer" }, { "value": "Enterprise" }, { "value": "Contract" }, { "value": 182000, "format": "currency", "currency_code": "EUR" }, { "value": "2026-11-30", "format": "date" }],
        [{ "value": "France" }, { "value": "Lucas Moreau" }, { "value": "Growth" }, { "value": "Security Review" }, { "value": 96000, "format": "currency", "currency_code": "EUR" }, { "value": "2026-09-15", "format": "date" }],
        [{ "value": "Spain" }, { "value": "Sofia Ramos" }, { "value": "Growth" }, { "value": "Negotiation" }, { "value": 74000, "format": "currency", "currency_code": "EUR" }, { "value": "2026-10-04", "format": "date" }],
        [{ "value": "United States" }, { "value": "Ava Thompson" }, { "value": "Enterprise" }, { "value": "Pilot" }, { "value": 265000, "format": "currency", "currency_code": "USD" }, { "value": "2026-12-20", "format": "date" }],
        [{ "value": "Canada" }, { "value": "Noah Bennett" }, { "value": "Startup" }, { "value": "Proposal" }, { "value": 42000, "format": "currency", "currency_code": "USD" }, { "value": "2026-08-05", "format": "date" }],
        [{ "value": "Mexico" }, { "value": "Camila Ortiz" }, { "value": "Growth" }, { "value": "Qualified" }, { "value": 58000, "format": "currency", "currency_code": "USD" }, { "value": "2026-09-21", "format": "date" }],
        [{ "value": "Singapore" }, { "value": "Ethan Tan" }, { "value": "Enterprise" }, { "value": "Procurement" }, { "value": 118000, "format": "currency", "currency_code": "USD" }, { "value": "2026-10-12", "format": "date" }],
        [{ "value": "Australia" }, { "value": "Chloe Walsh" }, { "value": "Growth" }, { "value": "Discovery" }, { "value": 64000, "format": "currency", "currency_code": "USD" }, { "value": "2026-07-28", "format": "date" }],
        [{ "value": "Japan" }, { "value": "Haruto Sato" }, { "value": "Enterprise" }, { "value": "Legal" }, { "value": 143000, "format": "currency", "currency_code": "USD" }, { "value": "2026-11-08", "format": "date" }],
        [{ "value": "South Korea" }, { "value": "Min Seo Park" }, { "value": "Growth" }, { "value": "Demo" }, { "value": 51000, "format": "currency", "currency_code": "USD" }, { "value": "2026-08-19", "format": "date" }]
      ]
    }
  ]
}
Output Preview
Region Account Executive Plan Stage ARR Renewal
GermanyMia FischerEnterpriseContractEUR 182,0002026-11-30
FranceLucas MoreauGrowthSecurity ReviewEUR 96,0002026-09-15
SpainSofia RamosGrowthNegotiationEUR 74,0002026-10-04
United StatesAva ThompsonEnterprisePilotUSD 265,0002026-12-20
CanadaNoah BennettStartupProposalUSD 42,0002026-08-05
MexicoCamila OrtizGrowthQualifiedUSD 58,0002026-09-21
SingaporeEthan TanEnterpriseProcurementUSD 118,0002026-10-12
AustraliaChloe WalshGrowthDiscoveryUSD 64,0002026-07-28
JapanHaruto SatoEnterpriseLegalUSD 143,0002026-11-08
South KoreaMin Seo ParkGrowthDemoUSD 51,0002026-08-19
Request
curl -X POST \
  https://api.iterationlayer.com/sheet-generation/v1/generate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "format": "xlsx",
  "styles": {
    "header": {
      "is_bold": true,
      "background_color": "#4472C4",
      "font_color": "#FFFFFF"
    }
  },
  "sheets": [
    {
      "name": "FY2026 Pipeline",
      "columns": [
        {
          "name": "Region",
          "width": 18
        },
        {
          "name": "Account Executive",
          "width": 24
        },
        {
          "name": "Plan",
          "width": 18
        },
        {
          "name": "Stage",
          "width": 16
        },
        {
          "name": "ARR",
          "width": 16
        },
        {
          "name": "Renewal",
          "width": 16
        }
      ],
      "rows": [
        [
          {
            "value": "Germany"
          },
          {
            "value": "Mia Fischer"
          },
          {
            "value": "Enterprise"
          },
          {
            "value": "Contract"
          },
          {
            "value": 182000,
            "format": "currency",
            "currency_code": "EUR"
          },
          {
            "value": "2026-11-30",
            "format": "date"
          }
        ],
        [
          {
            "value": "France"
          },
          {
            "value": "Lucas Moreau"
          },
          {
            "value": "Growth"
          },
          {
            "value": "Security Review"
          },
          {
            "value": 96000,
            "format": "currency",
            "currency_code": "EUR"
          },
          {
            "value": "2026-09-15",
            "format": "date"
          }
        ],
        [
          {
            "value": "United States"
          },
          {
            "value": "Ava Thompson"
          },
          {
            "value": "Enterprise"
          },
          {
            "value": "Pilot"
          },
          {
            "value": 265000,
            "format": "currency",
            "currency_code": "USD"
          },
          {
            "value": "2026-12-20",
            "format": "date"
          }
        ],
        [
          {
            "value": "Canada"
          },
          {
            "value": "Noah Bennett"
          },
          {
            "value": "Startup"
          },
          {
            "value": "Proposal"
          },
          {
            "value": 42000,
            "format": "currency",
            "currency_code": "USD"
          },
          {
            "value": "2026-08-05",
            "format": "date"
          }
        ],
        [
          {
            "value": "Singapore"
          },
          {
            "value": "Ethan Tan"
          },
          {
            "value": "Enterprise"
          },
          {
            "value": "Procurement"
          },
          {
            "value": 118000,
            "format": "currency",
            "currency_code": "USD"
          },
          {
            "value": "2026-10-12",
            "format": "date"
          }
        ],
        [
          {
            "value": "Australia"
          },
          {
            "value": "Chloe Walsh"
          },
          {
            "value": "Growth"
          },
          {
            "value": "Discovery"
          },
          {
            "value": 64000,
            "format": "currency",
            "currency_code": "USD"
          },
          {
            "value": "2026-07-28",
            "format": "date"
          }
        ]
      ]
    }
  ]
}'
Response
{
  "success": true,
  "data": {
    "buffer": "UEsDBBQAAAAIAA...",
    "mime_type": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
  }
}
Request
import { IterationLayer } from "iterationlayer";

const client = new IterationLayer({
  apiKey: "YOUR_API_KEY",
});

const result = await client.generateSheet({
  format: "xlsx",
  styles: {
    header: {
      is_bold: true,
      background_color: "#4472C4",
      font_color: "#FFFFFF",
    },
  },
  sheets: [
    {
      name: "FY2026 Pipeline",
      columns: [
        {
          name: "Region",
          width: 18,
        },
        {
          name: "Account Executive",
          width: 24,
        },
        {
          name: "Plan",
          width: 18,
        },
        {
          name: "Stage",
          width: 16,
        },
        {
          name: "ARR",
          width: 16,
        },
        {
          name: "Renewal",
          width: 16,
        },
      ],
      rows: [
        [
          {
            value: "Germany",
          },
          {
            value: "Mia Fischer",
          },
          {
            value: "Enterprise",
          },
          {
            value: "Contract",
          },
          {
            value: 182000,
            format: "currency",
            currency_code: "EUR",
          },
          {
            value: "2026-11-30",
            format: "date",
          },
        ],
        [
          {
            value: "France",
          },
          {
            value: "Lucas Moreau",
          },
          {
            value: "Growth",
          },
          {
            value: "Security Review",
          },
          {
            value: 96000,
            format: "currency",
            currency_code: "EUR",
          },
          {
            value: "2026-09-15",
            format: "date",
          },
        ],
        [
          {
            value: "Spain",
          },
          {
            value: "Sofia Ramos",
          },
          {
            value: "Growth",
          },
          {
            value: "Negotiation",
          },
          {
            value: 74000,
            format: "currency",
            currency_code: "EUR",
          },
          {
            value: "2026-10-04",
            format: "date",
          },
        ],
        [
          {
            value: "United States",
          },
          {
            value: "Ava Thompson",
          },
          {
            value: "Enterprise",
          },
          {
            value: "Pilot",
          },
          {
            value: 265000,
            format: "currency",
            currency_code: "USD",
          },
          {
            value: "2026-12-20",
            format: "date",
          },
        ],
        [
          {
            value: "Canada",
          },
          {
            value: "Noah Bennett",
          },
          {
            value: "Startup",
          },
          {
            value: "Proposal",
          },
          {
            value: 42000,
            format: "currency",
            currency_code: "USD",
          },
          {
            value: "2026-08-05",
            format: "date",
          },
        ],
        [
          {
            value: "Mexico",
          },
          {
            value: "Camila Ortiz",
          },
          {
            value: "Growth",
          },
          {
            value: "Qualified",
          },
          {
            value: 58000,
            format: "currency",
            currency_code: "USD",
          },
          {
            value: "2026-09-21",
            format: "date",
          },
        ],
        [
          {
            value: "Singapore",
          },
          {
            value: "Ethan Tan",
          },
          {
            value: "Enterprise",
          },
          {
            value: "Procurement",
          },
          {
            value: 118000,
            format: "currency",
            currency_code: "USD",
          },
          {
            value: "2026-10-12",
            format: "date",
          },
        ],
        [
          {
            value: "Australia",
          },
          {
            value: "Chloe Walsh",
          },
          {
            value: "Growth",
          },
          {
            value: "Discovery",
          },
          {
            value: 64000,
            format: "currency",
            currency_code: "USD",
          },
          {
            value: "2026-07-28",
            format: "date",
          },
        ],
        [
          {
            value: "Japan",
          },
          {
            value: "Haruto Sato",
          },
          {
            value: "Enterprise",
          },
          {
            value: "Legal",
          },
          {
            value: 143000,
            format: "currency",
            currency_code: "USD",
          },
          {
            value: "2026-11-08",
            format: "date",
          },
        ],
        [
          {
            value: "South Korea",
          },
          {
            value: "Min Seo Park",
          },
          {
            value: "Growth",
          },
          {
            value: "Demo",
          },
          {
            value: 51000,
            format: "currency",
            currency_code: "USD",
          },
          {
            value: "2026-08-19",
            format: "date",
          },
        ],
      ],
    },
  ],
});
Response
{
  "success": true,
  "data": {
    "buffer": "UEsDBBQAAAAIAA...",
    "mime_type": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
  }
}
Request
from iterationlayer import IterationLayer

client = IterationLayer(
    api_key="YOUR_API_KEY"
)

result = client.generate_sheet(
    format="xlsx",
    styles={
        "header": {
            "is_bold": True,
            "background_color": "#4472C4",
            "font_color": "#FFFFFF",
        },
    },
    sheets=[
        {
            "name": "FY2026 Pipeline",
            "columns": [
                {
                    "name": "Region",
                    "width": 18,
                },
                {
                    "name": "Account Executive",
                    "width": 24,
                },
                {
                    "name": "Plan",
                    "width": 18,
                },
                {
                    "name": "Stage",
                    "width": 16,
                },
                {
                    "name": "ARR",
                    "width": 16,
                },
                {
                    "name": "Renewal",
                    "width": 16,
                },
            ],
            "rows": [
                [
                    {
                        "value": "Germany",
                    },
                    {
                        "value": "Mia Fischer",
                    },
                    {
                        "value": "Enterprise",
                    },
                    {
                        "value": "Contract",
                    },
                    {
                        "value": 182000,
                        "format": "currency",
                        "currency_code": "EUR",
                    },
                    {
                        "value": "2026-11-30",
                        "format": "date",
                    },
                ],
                [
                    {
                        "value": "France",
                    },
                    {
                        "value": "Lucas Moreau",
                    },
                    {
                        "value": "Growth",
                    },
                    {
                        "value": "Security Review",
                    },
                    {
                        "value": 96000,
                        "format": "currency",
                        "currency_code": "EUR",
                    },
                    {
                        "value": "2026-09-15",
                        "format": "date",
                    },
                ],
                [
                    {
                        "value": "Spain",
                    },
                    {
                        "value": "Sofia Ramos",
                    },
                    {
                        "value": "Growth",
                    },
                    {
                        "value": "Negotiation",
                    },
                    {
                        "value": 74000,
                        "format": "currency",
                        "currency_code": "EUR",
                    },
                    {
                        "value": "2026-10-04",
                        "format": "date",
                    },
                ],
                [
                    {
                        "value": "United States",
                    },
                    {
                        "value": "Ava Thompson",
                    },
                    {
                        "value": "Enterprise",
                    },
                    {
                        "value": "Pilot",
                    },
                    {
                        "value": 265000,
                        "format": "currency",
                        "currency_code": "USD",
                    },
                    {
                        "value": "2026-12-20",
                        "format": "date",
                    },
                ],
                [
                    {
                        "value": "Canada",
                    },
                    {
                        "value": "Noah Bennett",
                    },
                    {
                        "value": "Startup",
                    },
                    {
                        "value": "Proposal",
                    },
                    {
                        "value": 42000,
                        "format": "currency",
                        "currency_code": "USD",
                    },
                    {
                        "value": "2026-08-05",
                        "format": "date",
                    },
                ],
                [
                    {
                        "value": "Mexico",
                    },
                    {
                        "value": "Camila Ortiz",
                    },
                    {
                        "value": "Growth",
                    },
                    {
                        "value": "Qualified",
                    },
                    {
                        "value": 58000,
                        "format": "currency",
                        "currency_code": "USD",
                    },
                    {
                        "value": "2026-09-21",
                        "format": "date",
                    },
                ],
                [
                    {
                        "value": "Singapore",
                    },
                    {
                        "value": "Ethan Tan",
                    },
                    {
                        "value": "Enterprise",
                    },
                    {
                        "value": "Procurement",
                    },
                    {
                        "value": 118000,
                        "format": "currency",
                        "currency_code": "USD",
                    },
                    {
                        "value": "2026-10-12",
                        "format": "date",
                    },
                ],
                [
                    {
                        "value": "Australia",
                    },
                    {
                        "value": "Chloe Walsh",
                    },
                    {
                        "value": "Growth",
                    },
                    {
                        "value": "Discovery",
                    },
                    {
                        "value": 64000,
                        "format": "currency",
                        "currency_code": "USD",
                    },
                    {
                        "value": "2026-07-28",
                        "format": "date",
                    },
                ],
                [
                    {
                        "value": "Japan",
                    },
                    {
                        "value": "Haruto Sato",
                    },
                    {
                        "value": "Enterprise",
                    },
                    {
                        "value": "Legal",
                    },
                    {
                        "value": 143000,
                        "format": "currency",
                        "currency_code": "USD",
                    },
                    {
                        "value": "2026-11-08",
                        "format": "date",
                    },
                ],
                [
                    {
                        "value": "South Korea",
                    },
                    {
                        "value": "Min Seo Park",
                    },
                    {
                        "value": "Growth",
                    },
                    {
                        "value": "Demo",
                    },
                    {
                        "value": 51000,
                        "format": "currency",
                        "currency_code": "USD",
                    },
                    {
                        "value": "2026-08-19",
                        "format": "date",
                    },
                ],
            ],
        },
    ],
)
Response
{
  "success": true,
  "data": {
    "buffer": "UEsDBBQAAAAIAA...",
    "mime_type": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
  }
}
Request
import il "github.com/iterationlayer/sdk-go"

client := il.NewClient("YOUR_API_KEY")

result, err := client.GenerateSheet(
  il.GenerateSheetRequest{
    Format: "xlsx",
    Styles: &il.SheetStyles{
      Header: &il.CellStyle{
        IsBold:          true,
        BackgroundColor: "#4472C4",
        FontColor:       "#FFFFFF",
      },
    },
    Sheets: []il.Sheet{
      {
        Name: "FY2026 Pipeline",
        Columns: []il.SheetColumn{
          {
            Name:  "Region",
            Width: 18,
          },
          {
            Name:  "Account Executive",
            Width: 24,
          },
          {
            Name:  "Plan",
            Width: 18,
          },
          {
            Name:  "Stage",
            Width: 16,
          },
          {
            Name:  "ARR",
            Width: 16,
          },
          {
            Name:  "Renewal",
            Width: 16,
          },
        },
        Rows: [][]il.SheetCell{
          {
            {
              Value: "Germany",
            },
            {
              Value: "Mia Fischer",
            },
            {
              Value: "Enterprise",
            },
            {
              Value: "Contract",
            },
            {
              Value:        182000,
              Format:       "currency",
              CurrencyCode: "EUR",
            },
            {
              Value:  "2026-11-30",
              Format: "date",
            },
          },
          {
            {
              Value: "France",
            },
            {
              Value: "Lucas Moreau",
            },
            {
              Value: "Growth",
            },
            {
              Value: "Security Review",
            },
            {
              Value:        96000,
              Format:       "currency",
              CurrencyCode: "EUR",
            },
            {
              Value:  "2026-09-15",
              Format: "date",
            },
          },
          {
            {
              Value: "Spain",
            },
            {
              Value: "Sofia Ramos",
            },
            {
              Value: "Growth",
            },
            {
              Value: "Negotiation",
            },
            {
              Value:        74000,
              Format:       "currency",
              CurrencyCode: "EUR",
            },
            {
              Value:  "2026-10-04",
              Format: "date",
            },
          },
          {
            {
              Value: "United States",
            },
            {
              Value: "Ava Thompson",
            },
            {
              Value: "Enterprise",
            },
            {
              Value: "Pilot",
            },
            {
              Value:        265000,
              Format:       "currency",
              CurrencyCode: "USD",
            },
            {
              Value:  "2026-12-20",
              Format: "date",
            },
          },
          {
            {
              Value: "Canada",
            },
            {
              Value: "Noah Bennett",
            },
            {
              Value: "Startup",
            },
            {
              Value: "Proposal",
            },
            {
              Value:        42000,
              Format:       "currency",
              CurrencyCode: "USD",
            },
            {
              Value:  "2026-08-05",
              Format: "date",
            },
          },
          {
            {
              Value: "Mexico",
            },
            {
              Value: "Camila Ortiz",
            },
            {
              Value: "Growth",
            },
            {
              Value: "Qualified",
            },
            {
              Value:        58000,
              Format:       "currency",
              CurrencyCode: "USD",
            },
            {
              Value:  "2026-09-21",
              Format: "date",
            },
          },
          {
            {
              Value: "Singapore",
            },
            {
              Value: "Ethan Tan",
            },
            {
              Value: "Enterprise",
            },
            {
              Value: "Procurement",
            },
            {
              Value:        118000,
              Format:       "currency",
              CurrencyCode: "USD",
            },
            {
              Value:  "2026-10-12",
              Format: "date",
            },
          },
          {
            {
              Value: "Australia",
            },
            {
              Value: "Chloe Walsh",
            },
            {
              Value: "Growth",
            },
            {
              Value: "Discovery",
            },
            {
              Value:        64000,
              Format:       "currency",
              CurrencyCode: "USD",
            },
            {
              Value:  "2026-07-28",
              Format: "date",
            },
          },
          {
            {
              Value: "Japan",
            },
            {
              Value: "Haruto Sato",
            },
            {
              Value: "Enterprise",
            },
            {
              Value: "Legal",
            },
            {
              Value:        143000,
              Format:       "currency",
              CurrencyCode: "USD",
            },
            {
              Value:  "2026-11-08",
              Format: "date",
            },
          },
          {
            {
              Value: "South Korea",
            },
            {
              Value: "Min Seo Park",
            },
            {
              Value: "Growth",
            },
            {
              Value: "Demo",
            },
            {
              Value:        51000,
              Format:       "currency",
              CurrencyCode: "USD",
            },
            {
              Value:  "2026-08-19",
              Format: "date",
            },
          },
        },
      },
    },
  },
)
Response
{
  "success": true,
  "data": {
    "buffer": "UEsDBBQAAAAIAA...",
    "mime_type": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
  }
}

Official SDKs for every major language

Install the SDK, set your API key, and start chaining requests. Full type safety, automatic retries, and idiomatic error handling included.

Your data stays in the EU

Your data is processed on EU servers and never stored beyond temporary logs. Zero retention, GDPR-compliant by design, with a Data Processing Agreement available for every customer. Learn more about our security practices .

No data storage, no model training

We don't store your files or processing results, and your data is never used to train or improve AI models. Logs are automatically deleted after 90 days.

EU-hosted infrastructure

All processing runs on servers located in the European Union. Your data never leaves the EU.

GDPR-compliant by design

Full compliance with EU data protection regulations. Data Processing Agreement available for all customers.

Pricing

Start with free trial credits. No credit card required.

Developer

For individuals & small projects

39.99€ /month
1,000 credits included
Most Popular

Startup

Save 40%

For growing teams

149.99€ /month
5,000 credits included

Business

Save 47%

For high-volume workloads

399.99€ /month
15,000 credits included

Or pay as you go from 0.028€/credit with automatic volume discounts.

All APIs included Free trial credits per API Project-based budget caps Auto overage billing

Built for how you work

Whether you're building pipelines in code, automating workflows, orchestrating AI agents, or shipping client projects — Iteration Layer fits your process.

Build your first workflow in minutes

Chain our APIs together and ship a complete pipeline before lunch. Free trial credits included — no credit card required.