Generate patent-office-compliant figures via the PatentFig AI API — patent line art from text (PNG or SVG), vectorize drawings to SVG/DXF/vector PDF, AI-upscale images, and convert to filing-ready TIFF/PDF/PNG. Use when the user asks for patent drawings, patent figures, invention diagrams, USPTO/EPO-compliant line art, vectorizing a drawing for CAD, or preparing figures for a patent filing. Requires a PATENTFIG_API_KEY environment variable.
Scanned 9/2/2026
Install to Claude Code
npx -y skills add davila7/claude-code-templates --skill patentfig --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Patentfig?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/davila7-patentfig)More formats (shields.io, HTML) on the badges page.
---
name: patentfig
description: Generate patent-office-compliant figures via the PatentFig AI API — patent line art from text (PNG or SVG), vectorize drawings to SVG/DXF/vector PDF, AI-upscale images, and convert to filing-ready TIFF/PDF/PNG. Use when the user asks for patent drawings, patent figures, invention diagrams, USPTO/EPO-compliant line art, vectorizing a drawing for CAD, or preparing figures for a patent filing. Requires a PATENTFIG_API_KEY environment variable.
version: 1.0.0
author: TopLocalAI
license: MIT
tags: [Patent, Patent Drawings, Line Art, SVG, Vectorize, DXF, USPTO, Image Generation, API]
metadata:
homepage: https://patentfig.ai
docs: https://patentfig.ai/docs
---
# PatentFig AI API
Generate and convert patent figures through the PatentFig AI REST API.
- **Base URL**: `https://patentfig.ai/api/v1`
- **Auth**: `Authorization: Bearer $PATENTFIG_API_KEY`
- **All endpoints are synchronous** and return JSON: `{ "success": true, "data": {...} }` on success, `{ "success": false, "error": { "code", "message" } }` on failure.
- Generated files are returned as URLs on `https://cdn.patentfig.ai` — pass them to the user or feed them into follow-up calls.
## Setup
The key comes from the `PATENTFIG_API_KEY` environment variable. Never hardcode it, print it, or write it into files or logs.
If the variable is not set, tell the user to create a key at https://patentfig.ai/settings/api-keys (requires a PatentFig AI account; keys start with `pfig_`) and export it:
```bash
export PATENTFIG_API_KEY="pfig_..."
```
Verify connectivity and credit balance (free call):
```bash
curl -s https://patentfig.ai/api/v1/credits \
-H "Authorization: Bearer $PATENTFIG_API_KEY"
# → { "success": true, "data": { "balance": 500 } }
```
## Generate a patent figure (10 credits)
`POST /figures` — the core endpoint. One prompt → one figure. Views, diagram type, and composition are all controlled through the prompt; for a multi-view set (front/side/top), make one call per view.
```bash
curl -s -X POST https://patentfig.ai/api/v1/figures \
-H "Authorization: Bearer $PATENTFIG_API_KEY" \
-H "Content-Type: application/json" \
--max-time 300 \
-d '{
"prompt": "Exploded view of a wireless earbud charging case showing lid, hinge, charging coil, and battery",
"output": "svg",
"labeled": true
}'
```
- `output`: `"png"` (raster figure) or `"svg"` (stroke-based line art, CAD-friendly). Default `"png"`.
- `labeled: true` adds patent-style numeric reference callouts (100, 102, …).
- `referenceImageUrls`: up to 4 public image URLs (sketch/photo/prior figure) used as the structural baseline.
- Response `data.url` is the figure; with `output: "svg"` the full SVG source is also in `data.svg`.
Prompting tips: name the parts to draw (names tell the model WHAT to draw, not what to label); for flowcharts/block diagrams, name every node explicitly.
## Convert an existing image
All three endpoints accept either JSON with `imageUrl` (public URL) or `multipart/form-data` with a `file` field (PNG/JPEG/WebP/TIFF, ≤10 MB).
**Vectorize (20 credits)** — raster → SVG / DXF / vector PDF:
```bash
curl -s -X POST https://patentfig.ai/api/v1/vectorize \
-H "Authorization: Bearer $PATENTFIG_API_KEY" \
-H "Content-Type: application/json" \
--max-time 300 \
-d '{ "imageUrl": "https://example.com/drawing.png", "format": "dxf", "engine": "lineart" }'
```
`engine: "lineart"` (default) redraws as clean single-stroke patent line art — use for CAD/DXF. `engine: "trace"` reproduces the input pixels faithfully, preserving fills — use when output must match the original.
**Enhance (20 credits)** — AI super-resolution: `POST /enhance` with `scale` (2 or 4, controls pixels) and `dpi` (300 or 600, metadata stamp only).
**Convert (20 credits)** — filing-ready raster: `POST /convert` with `format` (`png`/`tiff`/`pdf`) and `dpi` (300 or 600).
Full parameter tables for every endpoint: see [references/endpoints.md](references/endpoints.md). Machine-readable spec: https://patentfig.ai/api/openapi.yaml
## Operational rules
- **Set a client timeout of at least 300 seconds** — generation and vectorization take from ~20s up to a few minutes.
- Credits are charged **only on success**; retrying a failed call never double-bills.
- Rate limit: 60 requests/minute per key. On `429` back off (start at 5s) and retry.
- On `402 INSUFFICIENT_CREDITS`, stop and tell the user to top up at https://patentfig.ai/pricing.
- On `500 GENERATION_FAILED`, one retry is reasonable; persistent failures usually mean the input doesn't suit the pipeline (e.g., a photo sent for line-art vectorization — suggest `POST /figures` with the photo as `referenceImageUrls` instead).
- Before a batch of billable calls, check `GET /credits` and confirm the balance covers it.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!