{"uid":"cap_yKZwSRvzvJlhgCReGB8yZ","slug":"openscad-print-validation-4f398586","name":"OpenSCAD Print Validation","description":"Render a self-contained OpenSCAD model and perform bounded slicer checks","url":"https://print.api.williamrobinson.dev/v1/print/validate","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"source":{"type":"string","maxLength":16384,"minLength":1,"description":"Self-contained OpenSCAD, interpreted in millimetres; maximum 16 KiB UTF-8 before and after overrides. External imports are prohibited."},"profile":{"enum":["fdm-pla-0.4","fdm-petg-0.4"],"type":"string","default":"fdm-pla-0.4"},"maxSizeMm":{"type":"array","items":{"type":"number","maximum":1000,"exclusiveMinimum":0},"default":[220,220,250],"maxItems":3,"minItems":3},"parameters":{"type":"object","default":{},"description":"Overrides must name unique top-level scalar literal assignments, not derived expressions or reserved names.","maxProperties":64,"propertyNames":{"pattern":"^[A-Za-z_][A-Za-z0-9_]{0,63}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":512,"description":"Maximum 512 UTF-8 bytes."},{"type":"number","maximum":1000000,"minimum":-1000000},{"type":"boolean"}]}}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.05","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.05/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.05","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.05","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_R9uCiaol9GKGZm36UiXed","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.05","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Renders a self-contained OpenSCAD model and checks whether it fits within slicer bounds for FDM 3D printing","exampleAgentPrompt":"Can you validate this OpenSCAD model for FDM printing with PLA on a 0.4mm nozzle — here's the source code — and check if it fits within a 220x220x250mm build volume?","exampleUseCases":[{"title":"Parametric part fit check","prompt":"I have an OpenSCAD script for a custom bracket with a variable `wall_thickness` — can you validate it with wall_thickness set to 3.5 using the fdm-pla-0.4 profile and confirm it fits on a 220x220x250mm bed?"},{"title":"PETG print feasibility check","prompt":"Before I slice this OpenSCAD enclosure, can you render it and run slicer checks using the fdm-petg-0.4 profile to make sure it won't exceed my printer's build volume?"},{"title":"Automated CI print validation","prompt":"As part of my design pipeline, validate this OpenSCAD source file with the default PLA profile and a max size of 200x200x180mm, and tell me if it passes all bounded slicer checks."}],"resultDescription":"Returns a structured validation result indicating whether the rendered OpenSCAD model passes bounded slicer checks, including whether the model fits within the specified build volume dimensions for the chosen FDM profile (fdm-pla-0.4 or fdm-petg-0.4). May include bounding box data, render status, and any constraint violations.","failureModes":["OpenSCAD source exceeds 16 KiB limit — rejected with size error","External imports in OpenSCAD source — prohibited and rejected","Model bounding box exceeds specified maxSizeMm — validation fails with size violation","Invalid parameter overrides (derived expressions, reserved names, >64 properties) — rejected","OpenSCAD syntax errors causing render failure — error returned","Unsupported profile enum value — rejected with schema error"],"whenToPreferThis":"Use this endpoint when you need to programmatically verify that a self-contained OpenSCAD model is geometrically valid and physically fits within a target FDM printer's build volume before slicing or ordering a print. Prefer this over generic STL validators when your source is parametric OpenSCAD code and you want to test with specific parameter overrides and profile-specific constraints.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T12:34:02.392Z","isFirstParty":false}