Call the solver service
Discover enabled problem types and submit structured requests to a provisioned solver endpoint.
Before you begin
You need a provisioned solver base URL, an authorized token and the problem manifest for the deployment you will use. Request access through Helixor to confirm service placement, supported types and commercial terms.
Use your approved secret store for tokens. Keep solver credentials on your backend; do not ship them in browser JavaScript. Production application clients should use the versioned generated SDK for their service contract.
Discover the available manifests
The manifest catalog is scoped to the authenticated caller. Read the catalog, then inspect the schema for the problem type you intend to solve. Availability depends on the enabled packs and deployed version.
curl --fail-with-body \
"$HELIXOR_SOLVER_URL/api/v1/manifests" \
-H "Authorization: Bearer $HELIXOR_TOKEN"
curl --fail-with-body \
"$HELIXOR_SOLVER_URL/api/v1/manifests/rostering" \
-H "Authorization: Bearer $HELIXOR_TOKEN"Submit a solve request
Create solve-request.json with your populated problem, solver settings and options. The public route carries the problem type in its URL; it does not use the internal server-to-worker request envelope.
The request body accepts problem, solver, options and an optional admitted context. Use the manifest to define problem records and the deployment contract to choose engine options.
curl --fail-with-body \
"$HELIXOR_SOLVER_URL/api/v1/solve/rostering" \
-H "Authorization: Bearer $HELIXOR_TOKEN" \
-H "Content-Type: application/json" \
--data-binary @solve-request.jsonThis template requires HELIXOR_SOLVER_URL, HELIXOR_TOKEN and a validated solve-request.json. No request is sent by this website.
Handle completion explicitly
The execution path determines whether a response contains a completed result or a job reference. Follow the response contract for your deployed version. If a job is returned, its status route is GET /api/v1/solve/{job_id} and is scoped to the job owner.
Do not run an unbounded status loop. Agree a completion mechanism and bounded retry policy for your deployment, and preserve the job reference when handling a timeout.