The Helio-Additive GraphQL API offers flexibility and the ability to define precisely the data you want to
fetch. The SDK's we offer utilize the API listed below in order to get started quickly, for languages we don't
support the API documentation listed below can be utilized to create your own way to interact with our services.
The endpoint for requests is https://api.helioadditive.com/graphql
All requests should return a Trace-Id
header, which can be used in corespondance with us to identify any problems that may have occured.
GraphQL requests are regular JSON requests with two keys:
"query" : " query Materials($pageSize: Int) { materials(pageSize: $pageSize) { id name } } " ,
"variables" : { "pageSize" : 20 }
The
query
key is a single string of graphql syntax indicating what data to fetch, and the
variables
key is a map of any arguments needed by the query.
GraphQL has a strong type system, as such in almost all languages there exists strong support for automatically generating code for all types & request serialization/deserialization. You simply define a set of
.graphql
files, generate the code, and interact with our services as if it was part of the application itself.
We have a public repository on Github with code examples listing materials & printers, uploading a G-Code and triggering a simulation for the following languages:
Python ,
C++ &
Typescript .
Requests to our API should always return a
Trace-ID
header, please include this trace ID in any correspondance with us so that we may further assist you with any issues you may encounter.
The query type defines GraphQL operations that retrieve data from the server.
Retrieve a list of FAQ's.
Arguments for faqs
Name Description page
(Int
) The page number to retrieve pageSize
(Int
) The page size to retrieve
Retrieve a list of Events.
Arguments for events
Name Description page
(Int
) Page number (1-based index) pageSize
(Int
) Page size
Retrieve a list of G-Codes.
Arguments for gcodes
Name Description page
(Int
) The page number to retrieve pageSize
(Int
) The number of items per page sortBy
(GcodeField
) Field to sort the results by sortDirection
(SortDirection
) Direction to sort the results (ascending or descending). filters
([GcodeFilter!]
) List of filters to apply to the Gcode results
Retrieve details of a single G-Code by its ID.
Arguments for gcode
Name Description id
(ID!
) ID of the Gcode to retrieve
Fetch thermal history asset data.
Arguments for thermalHistories
Name Description optimizationId
(ID!
) (No description provided) layer
(Int!
) (No description provided) isOptimized
(Boolean!
) (No description provided)
Retrieve a list of materials
Arguments for materials
Name Description page
(Int
) The page number to retrieve (1-based index). pageSize
(Int
) The number of items per page. sortBy
(MaterialField
) Field to sort the results by. sortDirection
(SortDirection
) Direction to sort the results (ascending or descending). filters
([MaterialFilter!]
) List of filters to apply to the Material results.
Retrieve details of a single material by its ID.
Arguments for material
Name Description id
(ID!
) The unique identifier of the Material to retrieve.
Retrieve a list of material brands.
Arguments for materialBrands
Name Description page
(Int!
) (No description provided) pageSize
(Int!
) (No description provided)
Retrieve a summary of materials.
Retrieve login history for the user.
Retrieve personal access tokens for the user.
Retrieve a list of printers.
Arguments for printers
Name Description page
(Int
) The page number to retrieve (1-based index). pageSize
(Int
) The number of items per page. sortBy
(PrinterField
) Field to sort the results by. sortDirection
(SortDirection
) Direction to sort the results (ascending or descending). filters
([PrinterFilter!]
) List of filters to apply to the Printer results.
Retrieve a specific printer by its ID.
Arguments for printer
Name Description id
(ID!
) The unique identifier of the Printer to retrieve.
Retrieve the default simulation parameters.
Arguments for newsArticle
Name Description id
(ID!
) (No description provided)
Retrieve a list of News articles.
Arguments for newsArticles
Name Description page
(Int
) Page number pageSize
(Int
) Page size
Feedback for a news article.
Arguments for newsArticleFeedback
Name Description newsArticleId
(ID!
) (No description provided)
Retrieve a list of simulations.
Arguments for simulations
Name Description page
(Int
) The page number to retrieve (1-based index). pageSize
(Int
) The number of items per page. sortBy
(SimulationField
) Field to sort the results by. sortDirection
(SortDirection
) Direction to sort the results (ascending or descending). filters
([SimulationFilter!]
) List of filters to apply to the Simulation results.
Retrieve a list of optimizations.
Arguments for optimizations
Name Description page
(Int
) The page number to retrieve (1-based index). pageSize
(Int
) The number of items per page. sortBy
(SimulationField
) Field to sort the results by. sortDirection
(SortDirection
) Direction to sort the results (ascending or descending). filters
([SimulationFilter!]
) List of filters to apply to the Optimization results.
Retrieve the default simulation parameters.
Arguments for defaultSimulationSettings
Name Description gcodeId
(ID!
) The unique identifier of the G-Code for which to get default simulation settings. roomTemperature
(Float
) Ambient room temperature in Celsius. stabilizedTemperature
(Float
) Stabilized air temperature in Celsius. constantPlatformTemperature
(Float
) Constant platform temperature in Celsius.
Retrieve the default simulation parameters.
Arguments for defaultOptimizationSettings
Name Description gcodeId
(ID!
) The unique identifier of the G-Code for which to get default optimization settings.
Retrieve the default simulation parameters.
Arguments for optimization
Name Description id
(ID!
) The unique identifier of the Optimization to retrieve.
Retrieve the default simulation parameters.
Arguments for simulation
Name Description id
(ID!
) The unique identifier of the Simulation to retrieve.
Retrieve a summary of the platform.
Generate a presigned URL for uploading a file.
Arguments for getPresignedUrl
Name Description fileName
(String!
) (No description provided)
Retrieve transaction histories for the currently authenticated user.
Arguments for transactionHistoriesForUser
Name Description page
(Int!
) (No description provided) pageSize
(Int!
) (No description provided)
Retrieve the currently authenticated user.
The mutation type defines GraphQL operations that change data on the server.
Create a new G-Code.
Arguments for createGcode
Name Description input
(CreateGcodeInput!
) Input object containing all fields required to create a new G-Code.
Delete an existing G-Code by its ID.
Arguments for deleteGcode
Name Description id
(ID!
) (No description provided)
Update an existing G-Code.
Arguments for updateGcode
Name Description id
(ID!
) The unique identifier of the G-Code to update. input
(UpdateGcodeInput!
) Input object containing fields to update for the specified G-Code.
Create a comment on a news article.
Arguments for createNewsArticleComment
Name Description newsArticleId
(ID!
) (No description provided) commentMarkdown
(String!
) (No description provided)
Create a new simulation based on a G-Code.
Arguments for createSimulation
Create a new personal access token.
Arguments for createPersonalAccessToken
Name Description name
(String!
) (No description provided) expirationDaysDelta
(Int!
) (No description provided)
Create a new optimization based on a G-code.
Arguments for createOptimization
Create a new suggestion for the L-FAM platform.
Arguments for createSuggestion
Increment the buy now click count for a material.
Arguments for incrementBuyNowClickCount
Name Description id
(ID!
) (No description provided)
Redeem a free trial code for the platform.
Arguments for redeemFreeTrialCode
Update feedback for a news article.
Arguments for updateNewsArticleFeedback
Subscriptions are useful for notifying your client in real time about changes to back-end data, such as the creation of a new object or updates to an important field.
Fields for AlternativeMaterialNames
Name Description bambustudio
(String
)
Fields for AlternativePrinterNames
Name Description bambustudio
(String
)
Represents a news articles comments.
Fields for Author
Name Description id
(ID!
) name
(String!
) Name of the author. position
(String!
) Position or title of the author. avatarUrl
(String
) URL of the author's avatar image. insertedAt
(DateTime!
) Timestamp when the comment was created. updatedAt
(DateTime!
) Timestamp when the comment was last updated.
Represents the result of attempting to create a new G-code entry.
Fields for CreateGcodeResponse
Name Description gcode
(Gcode
) The parsed G-code object if creation was successful; otherwise, null. errors
([GcodeError!]!
) Detailed failure flags if the G-code could not be created.
Response object for creating a personal access token.
Fields for CreatePatTokenResponse
An event entry with details such as date, location, and status.
Fields for Event
Name Description id
(ID!
) Unique identifier for the event. name
(String!
) Name of the event. location
(String!
) Location where the event takes place. startDate
(DateTime!
) Start date and time of the event. endDate
(DateTime!
) End date and time of the event. link
(String
) Optional URL link with more details or registration for the event. isUpcoming
(Boolean!
) Indicates if the event is upcoming based on current date. insertedAt
(DateTime!
) Timestamp when the event was created. updatedAt
(DateTime!
) Timestamp of the last update to the event.
Frequently Asked Question entry with localized question and answer content.
Fields for Faq
Name Description id
(ID!
) Unique identifier for the FAQ entry. question
(String
) Localized question text shown to users. answer
(String
) Localized answer text shown to users. category
(FaqCategory
) Category the FAQ belongs to, such as General or Technical. insertedAt
(DateTime!
) Timestamp of when the FAQ was created. updatedAt
(DateTime!
) Timestamp of the last update to the FAQ.
Details of free trial codes.
Fields for FreeTrialCode
Name Description id
(ID!
) Unique identifier for the code. code
(String!
) The free trial code itself. isUsed
(Boolean!
) Indicates whether the free trial code has been used. group
(FreeTrialCodeGroup!
) The group this code belongs to. user
(User
) User who redeemed the code, if any. insertedAt
(DateTime!
) Timestamp when the free trial code was created. updatedAt
(DateTime!
) Timestamp when the free trial code was last updated.
Details of free trial code groups.
Fields for FreeTrialCodeGroup
Name Description id
(ID!
) Unique identifier for the code group. subscription
(HelioSubscription!
) ID of the associated subscription. company
(String!
) Company associated with the code group. name
(String!
) Name of the code group. expirationDate
(DateTime!
) Expiration date of the code group. quantityOfCodes
(Int!
) Number of codes in the group. isExpired
(Boolean!
) Whether the code group is expired. insertedAt
(DateTime!
) Timestamp when the code group was created. updatedAt
(DateTime!
) Timestamp when the code group was last updated.
Represents parsed data and metadata extracted from a G-code file.
Fields for Gcode
Name Description id
(ID!
) Unique identifier for the G-code file. name
(String!
) Original name of the G-code file. sizeKb
(Float!
) Size of the G-code file in kilobytes. height
(Float!
) Maximum height reached during the print, in millimetres. width
(Float!
) Maximum width of the print area, in millimetres. depth
(Float!
) Maximum depth of the print area, in millimetres. platformTemperature
(GcodeCustomFloat
) Platform (bed) temperature used during the print. May be overridden or missing. nozzleTemperatureMin
(GcodeCustomFloat!
) Minimum nozzle temperature detected in the G-code. nozzleTemperatureMax
(GcodeCustomFloat!
) Maximum nozzle temperature detected in the G-code. gcodeUrl
(String!
) URL to the G-code file in storage, if available. May be null if not stored. gcodeKey
(String!
) Key used to access the G-code file in storage. This is not a URL but a unique identifier. roadWidthMin
(GcodeCustomFloat!
) Minimum road width specified in the G-code. roadWidthMax
(GcodeCustomFloat!
) Maximum road width specified in the G-code. layerHeightMin
(GcodeCustomFloat!
) Minimum layer height specified in the G-code. layerHeightMax
(GcodeCustomFloat!
) Maximum layer height specified in the G-code. speedMin
(GcodeCustomFloat!
) Minimum print speed specified in the G-code. speedMax
(GcodeCustomFloat!
) Maximum print speed specified in the G-code. fanSpeedMin
(GcodeCustomFloat!
) Minimum fan speed used in the G-code. fanSpeedMax
(GcodeCustomFloat!
) Maximum fan speed used in the G-code. numberOfLayers
(Int!
) Total number of layers found in the G-code. slicer
(Slicer!
) Slicer software identified from the G-code metadata. material
(Material!
) Material associated with this G-code. printer
(Printer!
) Printer associated with this G-code. flowRatio
(Float
) Optional flow ratio specified in the G-code, if available. overrideGcodeParams
(OverrideGcodeParams
) Overrides applied to G-code parameters, if any. isSingleShell
(Boolean!
) Indicates whether the print is a single-shell structure. insertedAt
(DateTime!
) Timestamp when the G-code was first processed or uploaded. updatedAt
(DateTime!
) Timestamp of the last update to this G-code record.
Represents a float value from a G-code with its override and state metadata.
Fields for GcodeCustomFloat
Name Description floatType
(FloatType!
) Indicates the nature of the value: regular float, NaN, positive/negative infinity, etc. isOverriden
(Boolean!
) True if the value was manually overridden by the user or system. value
(Float
) The actual numeric value if valid; otherwise, null for NaN or infinite values.
Details of subscriptions.
Fields for HelioSubscription
Name Description id
(ID!
) Unique identifier for the user. name
(String!
) Name of the subscription plan. description
(String
) Description of the subscription plan. optsPerMonth
(Int!
) Number of optimization runs allowed per month under this subscription. membershipDuration
(Int!
) Duration of the subscription in months. insertedAt
(DateTime!
) Timestamp when the subscription was created. updatedAt
(DateTime!
) Timestamp when the subscription was last updated.
Fields for LayerRange
Name Description fromLayer
(Int!
) The starting layer number for the specified range (inclusive). toLayer
(Int!
) The ending layer number for the specified range (inclusive).
Represents a user's login record.
Fields for Login
Name Description id
(ID!
) Unique identifier of the login record. user
(User!
) The user associated with this login record. loginType
(LoginType!
) Type of login method used (e.g. username/password or Auth0). upUsername
(String
) Username used for traditional login, if applicable. upPassword
(String
) Password hash used for traditional login, if applicable. auth0UserId
(String
) Auth0 user ID if the user logged in via Auth0. auth0Email
(String
) Email associated with the Auth0 login, if applicable.
Fields for Material
Name Description id
(ID!
) Unique identifier for the material. name
(String!
) Name of the material. density
(Float!
) Density of the material (e.g., in g/cm^3). alternativeNames
(AlternativeMaterialNames!
) Alternative names for the materials. brand
(MaterialBrand!
) Brand associated with the material. description
(String
) Description of the material. conductivityY
(Float
) Thermal conductivity of the material (e.g., in W/(m·K)). capacity
(Float!
) Heat capacity of the material (e.g., in J/(g·K)). conductivityX
(Float!
) Thermal conductivity of the material (e.g., in W/(m·K)). conductivityZ
(Float
) Thermal conductivity of the material (e.g., in W/(m·K)). emissivity
(Float!
) Emissivity of the material, representing its ability to emit thermal radiation. tg
(Float!
) Glass transition temperature, where material changes from glassy to rubbery. minExtrusionTemp
(Float
) Min extrusion temp defined by filament manufacturer. maxExtrusionTemp
(Float
) Max extrusion temp defined by filament manufacturer. dryingTemp
(Float
) Drying temperature in °C dryingTimeHours
(Float
) Drying time in hours at that temperature bedTempMin
(Float
) Minimum bed temperature in °C bedTempMax
(Float
) Maximum bed temperature in °C heatedChamberRequirement
(HeatedChamberRequirement
) Heated chamber requirement for this material. applicationAreas
([ApplicationArea!]!
) List of application areas for this material. insertedAt
(DateTime!
) Timestamp of when the material was first added. updatedAt
(DateTime!
) Timestamp of the last update to the material.
Fields for MaterialBrand
Name Description id
(ID!
) Unique identifier for the material brand. name
(String!
) Name of the material brand. logoUrl
(String
) URL of the material brand's logo. description
(String
) Description of the material brand. emailToBuy
(String
) Email address used to inquire or purchase from the material brand. insertedAt
(DateTime!
) Timestamp of when the material brand was first added. updatedAt
(DateTime!
) Timestamp of the last update to the material brand.
Fields for MaterialsSummary
Name Description brands
(Int!
) desktopMaterials
(Int!
) lfamMaterials
(Int!
) experimentalMaterials
(Int!
)
Represents a news article.
Fields for NewsArticle
Name Description id
(ID!
) Unique identifier for the news article. title
(String!
) The headline or title of the news article. summary
(String!
) A short summary or teaser of the article's content. markdown
(String!
) The full article content written in Markdown format. coverUrl
(String
) Optional URL to the article's cover image. status
(NewsArticleStatus!
) The current publication status of the article. tags
([NewsArticleTag!]!
) List of tags categorizing the article. comments
([NewsArticleComment!]!
) List of comments made on the article. nLikes
(Int!
) Number of likes the article has received. nComments
(Int!
) Number of comments on the article. author
(Author!
) The author of the article, if available. insertedAt
(DateTime!
) Timestamp when the article was created. updatedAt
(DateTime!
) Timestamp of the last article update.
Represents a news articles comments.
Fields for NewsArticleComment
Name Description id
(ID!
) user
(User
) User associated with this login record. commentMarkdown
(String!
) Markdown content of the comment. insertedAt
(DateTime!
) Timestamp when the comment was created. updatedAt
(DateTime!
) Timestamp when the comment was last updated.
Represents feedback for news articles.
Fields for NewsArticleFeedback
Name Description id
(ID!
) user
(User
) User associated with this login record. isLike
(Boolean!
) Indicates if the feedback is a like (True) or dislike (False). isNotImportant
(Boolean!
) Indicates if the feedback is marked as not important. isNiceToHave
(Boolean!
) Indicates if the feedback is marked as nice to have. isImportant
(Boolean!
) Indicates if the feedback is marked as important. isCritical
(Boolean!
) Indicates if the feedback is marked as critical. insertedAt
(DateTime!
) Timestamp when the comment was created. updatedAt
(DateTime!
) Timestamp when the comment was last updated.
Represents an optimization simulation with detailed configuration and results.
Fields for Optimization
Name Description id
(ID!
) Unique identifier for the optimization simulation. spec
(Int!
) Specification version or type used in the simulation. name
(String!
) Name of the optimization simulation. index
(Int!
) Index or sequence number of the simulation. isOptimization
(Boolean!
) Indicates if this is an optimization simulation. progress
(Float!
) Progress percentage of the simulation (between 0 and 100) status
(SimulationStatus!
) Current status or state of the simulation. originalPreviewImageUrl
(String
) URL for the original simulation preview image. optimizedPreviewImageUrl
(String
) URL for the optimized simulation preview image. originalReportJsonUrl
(String
) Presigned URL for the original simulation report. optimizedReportJsonUrl
(String
) Presigned URL for the optimized simulation report. optimizedGcodeUrl
(String
) Presigned URL for the optimized G-code. optimizedGcodeWithThermalIndexesUrl
(String
) Presigned URL for the optimized G-code annotated with thermal indexes. extrusionPathsAsset
(SimulationAsset
) Parquet asset with extrusion path data. originalMeshAsset
(SimulationAsset
) Parquet asset of the original public mesh. contactsAsset
(SimulationAsset
) Parquet asset with contact data. originalCoordinateAsset
(SimulationAsset
) Parquet asset with original coordinates. optimizedMeshAsset
(SimulationAsset
) Parquet asset of the optimized public mesh. simulationSettings
(SimulationSettings!
) Settings used for the simulation, including overrides for temperatures and fan speeds. optimizationSettings
(OptimizationSettings!
) Settings specific to the optimization run, including variable overrides and constraints. optimizationReductionStrategySettings
(OptimizationReductionStrategySettings!
) Settings for the reduction strategy used in the optimization run. optimizationResidualStrategySettings
(OptimizationResidualStrategySettings!
) Settings for the residual strategy used in the optimization run. gcode
(Gcode!
) G-code file associated with the optimization run. printer
(Printer!
) Printer model used in the simulation. material
(Material!
) Material used for the simulation. optimizedThermalIndexStatistics
(OptimizedThermalIndexStatistics!
) Statistics related to thermal indices in the optimization run. originalThermalIndexStatistics
(ThermalIndexStatistics!
) Statistics related to thermal indices in the original run. insertedAt
(DateTime!
) Timestamp when the simulation was created. updatedAt
(DateTime!
) Timestamp when the simulation was last updated.
Fields for OptimizationReductionStrategySettings
Name Description optimizationReductionStrategy
(OptimizationReductionStrategy
) Reduction strategy used in the optimization run. optimizationReductionAutolinearDoCriticality
(Boolean
) Whether to apply autolinear criticality reduction. optimizationReductionAutolinearDoFitness
(Boolean
) Whether to apply autolinear fitness-based reduction. optimizationReductionAutolinearDoInterpolation
(Boolean
) Whether to apply interpolation in autolinear reduction. optimizationReductionAutolinearCriticalityMaxNodesDensity
(Float
) Max node density for autolinear criticality. optimizationReductionAutolinearCriticalityThreshold
(Float
) Threshold value for autolinear criticality. optimizationReductionAutolinearFitnessMaxNodesDensity
(Float
) Max node density for autolinear fitness. optimizationReductionAutolinearFitnessThreshold
(Float
) Threshold value for autolinear fitness. optimizationReductionAutolinearInterpolationLevels
(Int
) Number of interpolation levels in autolinear reduction. optimizationReductionLinearNodesLimit
(Int
) Limit on number of nodes in linear reduction strategy.
Fields for OptimizationResidualStrategySettings
Name Description optimizationResidualStrategy
(OptimizationResidualStrategy
) Residual Strategy used in the optimization run. optimizationResidualExponentialPenaltyLow
(Float
) Low value of exponential penalty applied to residuals. optimizationResidualExponentialPenaltyHigh
(Float
) High value of exponential penalty applied to residuals.
Fields for OptimizationSettings
Name Description minVelocity
(Float!
) Minimum velocity used during optimization. maxVelocity
(Float!
) Maximum velocity allowed during optimization. minVelocityIncrement
(Float!
) Minimum velocity increment allowed. minExtruderFlowRate
(Float!
) Maximum extruder flow rate during optimization. maxExtruderFlowRate
(Float!
) Minimum extruder flow rate during optimization. tolerance
(Float!
) Tolerance value for convergence in optimization. maxIterations
(Int!
) Maximum number of iterations in the optimization run. nNodes
(Int!
) Number of nodes used in the optimization process. reductionStrategySettings
(ReductionStrategySettings!
) Configuration settings for the reduction strategy used during optimization. residualStrategySettings
(ResidualStrategySettings!
) Configuration settings for the residual strategy used during optimization. layersToOptimize
([LayerRange!]!
) List of layer ranges to include in the optimization process. optimizer
(Optimizer!
) Selected optimization algorithm to use during the simulation process.
Fields for OptimizedThermalIndexStatistics
Name Description optimizedThermalIndexCount
(Int
) Number of thermal index data points in the optimized simulation. optimizedThermalIndexMean
(Float
) Mean value of the optimized thermal index. optimizedThermalIndexStd
(Float
) Standard deviation of the optimized thermal index. optimizedThermalIndexMin
(Float
) Minimum value of the optimized thermal index. optimizedThermalIndex25
(Float
) 25th percentile of the optimized thermal index. optimizedThermalIndex50
(Float
) 50th percentile (median) of the optimized thermal index. optimizedThermalIndex75
(Float
) 75th percentile of the optimized thermal index. optimizedThermalIndexMax
(Float
) Maximum value of the optimized thermal index.
Override values for key G-code parameters used during simulation or optimization.
Fields for OverrideGcodeParams
Name Description overrideConstantNozzleTemperature
(Float
) Constant nozzle temperature override in Kelvin. overrideConstantLayerHeight
(Float
) Constant layer height override in mm, if specified. overrideConstantRoadWidth
(Float
) Constant road width override in mm, if specified. overrideConstantPlatformTemperature
(Float
) Constant platform temperature override in Kelvin, if specified.
Metadata about the pagination state.
Fields for PageInfo
Name Description hasPreviousPage
(Boolean!
) Indicates if there is a previous page. hasNextPage
(Boolean!
) Indicates if there is a next page.
Paginated list of objects
Fields for PaginatedResponse
Represents a personal access token for user authentication.
Fields for PersonalAccessToken
Name Description name
(String!
) Name or identifier for the personal access token. expiresOn
(DateTime!
) Expiration date and time of the personal access token.
Contains information for uploading a file using a presigned URL.
Fields for PresignedUrl
Name Description mimeType
(String!
) MIME type of the file associated with the presigned URL. url
(String!
) Presigned URL allowing for direct uploads. key
(String!
) Key or identifier associated with the file in storage.
Fields for Printer
Name Description id
(ID!
) Unique identifier for the printer. name
(String!
) Name of the printer. alternativeNames
(AlternativePrinterNames!
) Alternative names for the printers. brand
(PrinterBrand!
) Brand associated with the printer. nozzleDiameter
(Float!
) Diameter of the printer's nozzle. heatedBed
(Boolean!
) Indicates if the printer has a heated bed. heatedChamber
(Boolean!
) Indicates if the printer has a heated chamber. maxExtruderFlowRate
(Float!
) Maximum extruder flow rate. minExtruderFlowRate
(Float!
) Minimum extruder flow rate. maxHardwareExtrusionTemp
(Float!
) Maximum temperature the printer's hardware can achieve during extrusion. minHardwareExtrusionTemp
(Float!
) Minimum temperature the printer's hardware operates at during extrusion. minHardwarePrintSpeed
(Float!
) Minimum print speed the printer can handle, in mm/s. maxHardwarePrintSpeed
(Float!
) Maximum print speed the printer can handle, in mm/s. chamberType
(ChamberType!
) Type of the printer's chamber, e.g., no chamber, heated or unheated. nNodes
(Int!
) Number of nodes in the printer's model. insertedAt
(DateTime!
) Timestamp when the printer was created. updatedAt
(DateTime!
) Timestamp of the last update.
Fields for PrinterBrand
Name Description id
(ID!
) Unique identifier for the printer brand. name
(String!
) Name of the printer brand. logoUrl
(String
) URL to the brand's logo, if available. description
(String
) Detailed description of the brand, if provided. insertedAt
(DateTime!
) Timestamp of when the brand was added. updatedAt
(DateTime!
) Timestamp of the last update to the brand.
Fields for ReductionStrategySettings
Name Description strategy
(OptimizationReductionStrategy!
) The strategy used to reduce the number of nodes in the optimization process. autolinearDoCriticality
(Boolean!
) Enable automatic linear reduction based on thermal criticality. autolinearDoFitness
(Boolean!
) Enable automatic linear reduction based on fitness values. autolinearDoInterpolation
(Boolean!
) Enable interpolation during automatic linear reduction. autolinearCriticalityMaxNodesDensity
(Float!
) Maximum nodes density for criticality-based auto-linear reduction. autolinearCriticalityThreshold
(Float!
) Thermal index threshold for triggering criticality-based reduction. autolinearFitnessMaxNodesDensity
(Float!
) Maximum nodes density for fitness-based auto-linear reduction. autolinearFitnessThreshold
(Float!
) Fitness threshold for triggering fitness-based reduction. autolinearInterpolationLevels
(Int!
) Number of interpolation levels to apply in auto-linear strategy. linearNodesLimit
(Int!
) Maximum number of nodes allowed for the linear reduction strategy.
Fields for ResidualStrategySettings
Name Description strategy
(OptimizationResidualStrategy!
) The residual strategy used for optimization, such as linear or exponential. exponentialPenaltyHigh
(Float!
) Penalty applied to residuals above the target range when using exponential strategy. exponentialPenaltyLow
(Float!
) Penalty applied to residuals below the target range when using exponential strategy.
Represents a simulation run with associated metadata and results.
Fields for Simulation
Name Description id
(ID!
) Unique identifier for the simulation. name
(String!
) Name or title of the simulation. progress
(Float!
) Progress percentage of the simulation (between 0 and 100) status
(SimulationStatus!
) Current status or phase of the simulation. meshUrl
(SimulationAsset
) Public-facing original mesh asset (Parquet). gcode
(Gcode!
) G-code used to run the simulation. printer
(Printer!
) Printer used for the simulation. material
(Material!
) Material used for the simulation. reportJsonUrl
(String
) Presigned URL for downloading the original simulation report. thermalIndexGcodeUrl
(String
) Presigned URL to download thermal index G-code. estimatedSimulationDurationSeconds
(Float
) Estimated duration of the simulation in seconds. simulationSettings
(SimulationSettings!
) thermalIndexStatistics
(ThermalIndexStatistics!
) Statistics related to thermal indices in the simulation. updatedAt
(DateTime!
) Timestamp when the simulation was last updated. insertedAt
(DateTime!
) Timestamp when the simulation was created.
Fields for SimulationAsset
Fields for SimulationSettings
Name Description airTemperatureAboveBuildPlate
(Float!
) Ambient air temperature just above the build plate, in degrees Kelvin. temperatureStabilizationHeight
(Float!
) Height at which temperature stabilization occurs, in millimeters. stabilizedAirTemperature
(Float!
) The temperature maintained at the stabilization height, in degrees Kelvin. constantPlatformTemperature
(Float
) Optional override for the platform (bed) temperature, in degrees Kelvin. constantNozzleTemperature
(Float
) Optional override for the nozzle temperature, in degrees Kelvin. constantFanSpeed
(Float
) Optional override for fan speed as a percentage (0–100).
Represents a suggestion for the Lfam dashboard.
Fields for Suggestion
Fields for Summary
Name Description simulationCount
(Int!
) materialCount
(Int!
) printerCount
(Int!
)
Fields for ThermalIndexStatistics
Name Description thermalIndexCount
(Int
) Number of thermal index values in the original simulation. thermalIndexMean
(Float
) Mean of the thermal index values in the original simulation. thermalIndexStd
(Float
) Standard deviation of the original thermal index values. thermalIndexMin
(Float
) Minimum thermal index value observed. thermalIndex25
(Float
) 25th percentile of thermal index values. thermalIndex50
(Float
) Median or 50th percentile of thermal index values. thermalIndex75
(Float
) 75th percentile of thermal index values. thermalIndexMax
(Float
) Maximum thermal index value observed.
Represents a record of a user's subscription transaction.
Fields for TransactionHistory
Name Description id
(ID!
) Unique identifier of the transaction record. user
(User!
) The user associated with this transaction. name
(String!
) Name of the subscription or transaction item. description
(String
) Optional description of the transaction. optsPerMonth
(Int!
) Number of optimizations allowed per month in this transaction. subscriptionStartDate
(DateTime
) Start date of the subscription associated with this transaction. subscriptionEndDate
(DateTime
) End date of the subscription associated with this transaction. insertedAt
(DateTime!
) Timestamp when the transaction record was created. updatedAt
(DateTime!
) Timestamp when the transaction record was last updated.
Represents the result of attempting to update an uploaded G-code.
Fields for UpdateGcodeResponse
Name Description gcode
(Gcode
) The parsed G-code object if the file was successfully processed; otherwise, null. errors
([GcodeError!]!
) Detailed failure flags if the G-code update encountered issues during parsing.
Details of a user in the system.
Fields for User
Name Description id
(ID!
) Unique identifier of the user. email
(String
) User's email address. handle
(String
) Custom user handle or username. type
(UserType!
) The user type or role in the system (e.g. Hobbyist, Academic). avatarUrl
(String
) URL to the user's avatar image. transactionHistories
([TransactionHistory!]!
) List of the user's transaction history records. remainingOptsThisMonth
(Int
) Remaining number of optimizations allowed for the user this month. subscriptionStartDate
(DateTime
) Start date of the user's subscription, if active. subscriptionEndDate
(DateTime
) End date of the user's subscription, if active. subscription
(HelioSubscription
) Subscription details for the user, if any. logins
([Login!]!
) List of user login records. membershipStatus
(String!
) Indicates if the user has an active subscription.
Fields for CreateGcodeInput
Name Description name
(String!
) The name of the gcode. materialId
(ID!
) The ID of the material. printerId
(ID!
) The ID of the printer. gcodeKey
(String!
) The key of the gcode. nozzleTemperature
(Float
) The nozzle temperature. isSingleShell
(Boolean!
) Whether the gcode is single shell. layerHeight
(Float
) The layer height. lineWidth
(Float
) The line width. platformTemperature
(Float
) The platform temperature.
Fields for CreateOptimizationInput
Name Description name
(String!
) User-defined name for the optimization run. gcodeId
(ID!
) Unique identifier of the G-code to optimize. simulationSettings
(SimulationSettingsInput
) Settings related to the simulation environment and initial conditions. optimizationSettings
(OptimizationSettingsInput
) Parameters and strategy configurations for running the optimization.
Fields for CreateSimulationInput
Name Description name
(String!
) User-defined name for the simulation. gcodeId
(ID!
) Unique identifier of the G-code to simulate. simulationSettings
(SimulationSettingsInput
) Settings related to the simulation environment and parameters.
Fields for CreateSuggestionInput
Name Description content
(String
) Suggestion.
Fields for GcodeFilter
Name Description field
(GcodeField!
) The field to filter on, e.g., 'name', 'status'. filter
(Filter!
) The value or condition to filter the field by, e.g., 'active', 'completed'.
Fields for IntFilter
Name Description equalTo
(Int
) notEqualTo
(Int
) greaterThan
(Int
) greaterThanOrEqualTo
(Int
) lessThan
(Int
) lessThanOrEqualTo
(Int
) inList
([Int!]!
) notInList
([Int!]!
)
Fields for LayerRangeInput
Name Description fromLayer
(Int!
) The starting layer number for the specified range (inclusive). toLayer
(Int!
) The ending layer number for the specified range (inclusive).
Fields for MaterialFilter
Name Description field
(MaterialField!
) The field to filter on, e.g., 'name', 'status'. filter
(Filter!
) The value or condition to filter the field by, e.g., 'active', 'completed'.
Fields for NewsArticleFeedbackInput
Name Description isLike
(Boolean
) Indicates if the user liked the article. If None, it means no feedback was given. isNotImportant
(Boolean
) Indicates if the user found the article not important. If None, it means no feedback was given. isNiceToHave
(Boolean
) Indicates if the user found the article nice to have. If None, it means no feedback was given. isImportant
(Boolean
) Indicates if the user found the article important. If None, it means no feedback was given. isCritical
(Boolean
) Indicates if the user found the article critical. If None, it means no feedback was given.
Fields for OptimizationSettingsInput
Name Description minVelocity
(Float
) Minimum print head velocity during optimization, in mm/s. maxVelocity
(Float
) Maximum print head velocity during optimization, in mm/s. minVelocityIncrement
(Float
) Minimum step size to increment velocity values during optimization, in mm/s. minExtruderFlowRate
(Float
) Minimum allowed extruder flow rate during optimization, in mm³/s. maxExtruderFlowRate
(Float
) Maximum allowed extruder flow rate during optimization, in mm³/s. tolerance
(Float
) Tolerance threshold for optimization convergence. maxIterations
(Int
) Maximum number of iterations allowed during optimization. reductionStrategySettings
(ReductionStrategySettingsInput
) Configuration settings for the reduction strategy used during optimization. residualStrategySettings
(ResidualStrategySettingsInput
) Configuration settings for the residual strategy used during optimization. layersToOptimize
([LayerRangeInput!]!
) List of layer ranges to include in the optimization process. optimizer
(Optimizer
) Selected optimization algorithm to use during the simulation process.
Fields for PrinterFilter
Name Description field
(PrinterField!
) The field to filter on, e.g., 'name', 'status'. filter
(Filter!
) The value or condition to filter the field by, e.g., 'active', 'completed'.
Fields for RedeemFreeTrialCodeInput
Name Description code
(String!
) Free trial code to redeem.
Fields for ReductionStrategySettingsInput
Name Description strategy
(OptimizationReductionStrategy
) The strategy used to reduce the number of nodes in the optimization process. autolinearDoCriticality
(Boolean
) Enable automatic linear reduction based on thermal criticality. autolinearDoFitness
(Boolean
) Enable automatic linear reduction based on fitness values. autolinearDoInterpolation
(Boolean
) Enable interpolation during automatic linear reduction. autolinearCriticalityMaxNodesDensity
(Float
) Maximum nodes density for criticality-based auto-linear reduction. autolinearCriticalityThreshold
(Float
) Thermal index threshold for triggering criticality-based reduction. autolinearFitnessMaxNodesDensity
(Float
) Maximum nodes density for fitness-based auto-linear reduction. autolinearFitnessThreshold
(Float
) Fitness threshold for triggering fitness-based reduction. autolinearInterpolationLevels
(Int
) Number of interpolation levels to apply in auto-linear strategy. linearNodesLimit
(Int
) Maximum number of nodes allowed for the linear reduction strategy.
Fields for ResidualStrategySettingsInput
Name Description strategy
(OptimizationResidualStrategy
) The residual strategy used for optimization, such as linear or exponential. exponentialPenaltyHigh
(Float
) Penalty applied to residuals above the target range when using exponential strategy. exponentialPenaltyLow
(Float
) Penalty applied to residuals below the target range when using exponential strategy.
Fields for SimulationFilter
Name Description field
(SimulationField!
) The field to filter on, e.g., 'name', 'status'. filter
(Filter!
) The value or condition to filter the field by, e.g., 'active', 'completed'.
Fields for SimulationSettingsInput
Name Description roomTemperature
(Float
) Ambient air temperature in the room, in degrees Kelvin airTemperatureAboveBuildPlate
(Float
) Ambient air temperature just above the build plate, in degrees Kelvin. temperatureStabilizationHeight
(Float
) The height at which the air temperature around the print begins to stabilize. stabilizedAirTemperature
(Float
) The temperature maintained at the stabilization height, in degrees Kelvin. constantPlatformTemperature
(Float
) Optional override for the platform (bed) temperature, in degrees Kelvin. constantNozzleTemperature
(Float
) Optional override for the nozzle temperature, in degrees Kelvin. constantFanSpeed
(Float
) Optional override for fan speed as a percentage (0–100).
Fields for SimulationStatusFilter
Fields for StringFilter
Name Description equalTo
(String
) notEqualTo
(String
) caseSensitiveContains
(String
) caseInsensitiveContains
(String
) caseSensitiveStartsWith
(String
) caseInsensitiveStartsWith
(String
) caseSensitiveEndsWith
(String
) caseInsensitiveEndsWith
(String
) notCaseSensitiveContains
(String
) notCaseInsensitiveContains
(String
) notCaseSensitiveStartsWith
(String
) notCaseInsensitiveStartsWith
(String
) notCaseSensitiveEndsWith
(String
) notCaseInsensitiveEndsWith
(String
)
Fields for UpdateGcodeInput
Name Description name
(String!
) The name of the gcode. materialId
(ID!
) The ID of the material. printerId
(ID!
) The ID of the printer. nozzleTemperature
(Float
) The nozzle temperature. isSingleShell
(Boolean!
) Whether the gcode is single shell. layerHeight
(Float
) The layer height. lineWidth
(Float
) The line width. platformTemperature
(Float
) The platform temperature.
Values for ApplicationArea
Name Description SCULPTURE
SCULPTURE LOW_TEMP_MOLD
LOW_TEMP_MOLD MED_TEMP_MOLD
MED_TEMP_MOLD HIGH_TEMP_MOLD
HIGH_TEMP_MOLD INTERIOR_DESIGN
INTERIOR_DESIGN EXTERIOR_DESIGN
EXTERIOR_DESIGN AUTOMOTIVE
AUTOMOTIVE AEROSPACE
AEROSPACE INDUSTRIAL_PROTOTYPING
INDUSTRIAL_PROTOTYPING ENGINEERING_PROTOTYPING
ENGINEERING_PROTOTYPING GENERAL_PROTOTYPING
GENERAL_PROTOTYPING TOOLING_MANUFACTURING
TOOLING_MANUFACTURING MANUFACTURING_AIDS
MANUFACTURING_AIDS CONSTRUCTION_ARCHITECTURE
CONSTRUCTION_ARCHITECTURE LIGHTING_EQUIPMENT
LIGHTING_EQUIPMENT ELECTRONICS
ELECTRONICS ELECTRICAL
ELECTRICAL CONSUMER_PRODUCTS
CONSUMER_PRODUCTS OUTDOOR_EQUIPMENT
OUTDOOR_EQUIPMENT MARINE
MARINE MEDICAL
MEDICAL ART
ART EDUCATION
EDUCATION MATERIAL_RESEARCH
MATERIAL_RESEARCH RECYCLING
RECYCLING ECO_SUSTAINABILITY
ECO_SUSTAINABILITY LARGE_SCALE_PROTOTYPING
LARGE_SCALE_PROTOTYPING ROBOTICS
ROBOTICS DRONES
DRONES HOBBY
HOBBY WEARABLES
WEARABLES
Values for ChamberType
Name Description HEATED_CHAMBER
HEATED_CHAMBER NO_CHAMBER
NO_CHAMBER UNHEATED_CHAMBER
UNHEATED_CHAMBER
Category that classifies the type of FAQ.
Values for FaqCategory
Name Description MATERIAL
MATERIAL SIMULATION
SIMULATION GCODE
GCODE
Values for FloatType
Name Description NEG_INF
NEG_INF POS_INF
POS_INF NAN
NAN VALUE
VALUE
Values for GcodeError
Name Description HAS_NEGATIVE_Z_COORDINATES
HAS_NEGATIVE_Z_COORDINATES HAS_NO_COMMANDS
HAS_NO_COMMANDS HAS_UNCERTAIN_ENCODING
HAS_UNCERTAIN_ENCODING HAS_ZERO_SPEED
HAS_ZERO_SPEED LAYER_HEIGHT_NOT_FOUND
LAYER_HEIGHT_NOT_FOUND LINE_WIDTH_NOT_FOUND
LINE_WIDTH_NOT_FOUND NOZZLE_TEMPERATURE_NOT_FOUND
NOZZLE_TEMPERATURE_NOT_FOUND PLATFORM_TEMPERATURE_NOT_FOUND
PLATFORM_TEMPERATURE_NOT_FOUND
Values for GcodeField
Name Description NAME
NAME DESCRIPTION
DESCRIPTION SIZE_KB
SIZE_KB HEIGHT
HEIGHT WIDTH
WIDTH DEPTH
DEPTH ROAD_WIDTH
ROAD_WIDTH LAYER_HEIGHT
LAYER_HEIGHT PLATFORM_TEMP
PLATFORM_TEMP FLOW_RATIO
FLOW_RATIO NOZZLE_TEMP
NOZZLE_TEMP INFILL_SPEED
INFILL_SPEED NUMBER_OF_LAYERS
NUMBER_OF_LAYERS
Values for HeatedChamberRequirement
Name Description NOT_REQUIRED
NOT_REQUIRED OPTIONAL
OPTIONAL REQUIRED
REQUIRED
Values for LoginType
Name Description USERNAME_PASSWORD
USERNAME_PASSWORD AUTH_0
AUTH_0
Values for MaterialField
Name Description ID
ID NAME
NAME BAMBUSTUDIO_NAME
BAMBUSTUDIO_NAME MIN_EXTRUSION_TEMP
MIN_EXTRUSION_TEMP MAX_EXTRUSION_TEMP
MAX_EXTRUSION_TEMP DRYING_TEMP
DRYING_TEMP DRYING_TIME_HOURS
DRYING_TIME_HOURS BED_TEMP_MIN
BED_TEMP_MIN BED_TEMP_MAX
BED_TEMP_MAX APPLICATION_AREAS
APPLICATION_AREAS
Status of a news article.
Values for NewsArticleStatus
Name Description UNDER_CONSIDERATION
UNDER_CONSIDERATION IN_DEVELOPMENT
IN_DEVELOPMENT RECENTLY_RELEASED
RECENTLY_RELEASED
Tags associated with a news article.
Values for NewsArticleTag
Name Description PRINTER
PRINTER MATERIAL
MATERIAL GCODE
GCODE SIMULATION
SIMULATION COMPANY
COMPANY UPDATES
UPDATES MISC
MISC
Values for OptimizationReductionStrategy
Name Description AUTOLINEAR
AUTOLINEAR LINEAR
LINEAR NO_STRATEGY
NO_STRATEGY
Values for OptimizationResidualStrategy
Name Description LINEAR
LINEAR EXPONENTIAL
EXPONENTIAL
Values for Optimizer
Name Description FULL
FULL HYBRID
HYBRID
Values for PrinterField
Name Description ID
ID NAME
NAME BAMBUSTUDIO_NAME
BAMBUSTUDIO_NAME BRAND
BRAND NOZZLE_DIAMETER
NOZZLE_DIAMETER HEATED_BED
HEATED_BED HEATED_CHAMBER
HEATED_CHAMBER MAX_EXTRUDER_FLOW_RATE
MAX_EXTRUDER_FLOW_RATE MIN_EXTRUDER_FLOW_RATE
MIN_EXTRUDER_FLOW_RATE MAX_HARDWARE_PRINT_SPEED
MAX_HARDWARE_PRINT_SPEED MIN_HARDWARE_PRINT_SPEED
MIN_HARDWARE_PRINT_SPEED
Defines the type or format of a simulation asset.
Values for SimulationAssetType
Name Description PARQUET
PARQUET JSON
JSON
Defines the simulation fields
Values for SimulationField
Name Description NAME
NAME STATUS
STATUS IS_BAAM
IS_BAAM IS_OPTIMIZATION
IS_OPTIMIZATION PROGRESS
PROGRESS PRINTABILITY
PRINTABILITY BONDING_RATE_MEAN
BONDING_RATE_MEAN BONDING_RATE_STD
BONDING_RATE_STD BONDING_RATE_MIN
BONDING_RATE_MIN BONDING_RATE_MAX
BONDING_RATE_MAX EQUIVALENT_TIME_MEAN
EQUIVALENT_TIME_MEAN EQUIVALENT_TIME_STD
EQUIVALENT_TIME_STD EQUIVALENT_TIME_MIN
EQUIVALENT_TIME_MIN EQUIVALENT_TIME_MAX
EQUIVALENT_TIME_MAX THERMAL_INDEX_MEAN
THERMAL_INDEX_MEAN THERMAL_INDEX_STD
THERMAL_INDEX_STD THERMAL_INDEX_MIN
THERMAL_INDEX_MIN THERMAL_INDEX_MAX
THERMAL_INDEX_MAX
Represents the current lifecycle status of a simulation.
Values for SimulationStatus
Name Description PENDING
PENDING INITIALIZING
INITIALIZING SIMULATING
SIMULATING ARCHIVING
ARCHIVING FINISHED
FINISHED FAILED
FAILED STOPPED
STOPPED
Values for Slicer
Name Description SIMPLIFY3D
SIMPLIFY3D IDEAMAKER
IDEAMAKER CURA
CURA BAMBU_LABS
BAMBU_LABS SUPERSLICER
SUPERSLICER SLIC3R
SLIC3R FUSION360
FUSION360 BAAM
BAAM MW
MW CEAD_BAAM
CEAD_BAAM KRAUSS_MAFFEI
KRAUSS_MAFFEI PIOCREATE
PIOCREATE KUYING
KUYING CEAD
CEAD AI_BUILD
AI_BUILD AI_BUILD_GCODE
AI_BUILD_GCODE AI_BUILD_SRC
AI_BUILD_SRC ADAONE
ADAONE PRUSA_SLICER
PRUSA_SLICER SIGNIFY
SIGNIFY ORCA_SLICER
ORCA_SLICER CARACOL
CARACOL UNKNOWN
UNKNOWN
sort direction for paginated queries.
Values for SortDirection
Name Description ASCENDING
ASCENDING DESCENDING
DESCENDING
Values for UserType
Name Description HOBBYIST
HOBBYIST ACADEMIC
ACADEMIC PROFESSIONAL
PROFESSIONAL INDUSTRIAL
INDUSTRIAL
Used for ID's and can be treated as a String
A floating-point data type
Date with time (isoformat)