Conversation
- Remove fetch_pdf / reqwest (URL passthrough instead of re-upload) - Fix ConnectInfo extraction (into_make_service_with_connect_info) - Remove dead cleanup method from RateLimiter - Add Content-Disposition: attachment to S3 uploads - Remove unused aws-config and reqwest dependencies - Pin all dependencies to latest versions - Extract AgentResponse::new to deduplicate response building - Bump JSON body limit from 64KB to 1MB
…point - GET / serves SKILL.md as text/markdown for agent discovery - POST /agents accepts ?companyIdentifier to route to custom portals - Default editor: embed.simplepdf.com, with identifier: <id>.simplepdf.com - Rename SIMPLEPDF_URL env to DEFAULT_EDITOR_HOST
- Enable axum multipart feature (required for Multipart extractor) - Make rate limiter proxy-aware via X-Forwarded-For header - URL-encode the open parameter to handle signed URLs correctly - Fix react snippet to use EmbedPDF with documentURL prop
- Enable axum multipart feature (build fix) - Fix tracing_subscriber::fmt::init() (build fix) - Proxy-aware rate limiting with TRUST_PROXY env + bounded bucket eviction - Validate companyIdentifier (subdomain pattern) and url (http/https only) - HTML-escape all values in iframe/react snippets - Include companyIdentifier in react snippet when present - Correct privacy statement: file uploads stored temporarily (1hr) - URL case is now GET /?url=... (no POST needed for URL passthrough) - POST / reserved for file uploads only - Rename agents.simplepdf.com -> agent.simplepdf.com - Add Cargo.lock for reproducible builds - Add .gitignore for target/ - Add GitHub Actions workflow (fmt, clippy, build)
…he single entry point
Paketo Rust buildpack does not find Cargo.toml with source_dir. Dockerfile gives full control over the build.
… hosts - POST with JSON body for signed/sensitive URLs (keeps them out of logs) - Default TRUST_PROXY to false, explicitly enable in production - Use rightmost X-Forwarded-For hop instead of leftmost - Remove agent.simplepdf.com from response example (implementation detail) - Document GET vs POST URL choice in SKILL.md - Add TRUST_PROXY to app.yaml reference config
- DEFAULT_EDITOR_HOST now ai.simplepdf.com (was embed.simplepdf.com)
- React snippet always includes companyIdentifier ("ai" as default)
- All response fields (url, iframe, react) point to same host
…ing and help links
- Upload without public-read ACL (private by default) - Generate 24h presigned GET URL after upload - Remove S3_PUBLIC_URL env var (no longer needed)
…/ URLs - Replace TRUST_PROXY bool with TRUSTED_IP_HEADER string (set to do-connecting-ip for DO App Platform, empty to disable) - Only accept https:// URLs (http:// causes mixed-content in the editor)
Deploying web-embed with
|
| Latest commit: |
5ab91fc
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://a930b31c.simplepdf-embed.pages.dev |
| Branch Preview URL: | https://replace-create-fields-with-d.simplepdf-embed.pages.dev |
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
simplepdf-webhooks | 5ab91fc | Commit Preview URL Branch Preview URL |
Mar 20 2026, 02:27 PM |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Background
CREATE_FIELDrequired callers to manually specify each field's type, position, dimensions, and page - making programmatic field creation tedious and error-prone.DETECT_FIELDSreplaces this by automatically detecting flattened form fields in a document.Changes
createFieldwithdetectFields()in the React embed component (EmbedActions,useEmbed,EmbedPDF)CreateFieldOptionsdiscriminated union types andCreateFieldResultCREATE_FIELDwithDETECT_FIELDSin iframe documentationLOAD_DOCUMENTdata URL, log detected field countNotes
Breaking change in theory but practically no usage for
createField- safe to release as major.