API

All API endpoints are fully functional and each even has its own HTTP interface. Here are the important API endpoints for EDAsolver:

Component discovery

The following GET request will return a list of all components currently in the database:

http://edasolver.com/api/components/

To get to the HTTP interface of this call, simply visit the above URL. This list will include a lot of information about each component, especially each component’s ID. To get information about a specific component, the following GET request can be made:

http://edasolver.com/api/components/<component_id>/

And to get an annotated list of pin names:

http://edasolver.com/api/components/<component_id>/pins/

Solving designs

The first step to solving a design is uploading it to the server:

http://edasolver.com/api/designs/

This should be a POST request with the design key in the data. The value for this is the design JSON, encoded as ASCII.

To start solving the design, send a POST request to:

http://edasolver.com/api/solvers/

Include the design_id from before as a key in the POST request. If you wish to skip the first step, you can simply send a design key rather than a design_id key to this endpoint with the same result. This call will return a solver_id that can be used to get the output from the solver:

http://edasolver.com/api/solvers/<solver_id>/read/

You can poll this endpoint repeatedly until the solving process has finished executing.