This is the API equivalent of the PVsyst import in the web application. The web import keeps its review page, where you can resolve missing equipment by selecting or uploading a replacement before creating the project. The API has no review step — see Why a variant might be skipped.
Before you start
You need API credentials. Your company administrator generates them once per user: Manage Account (the gear icon, bottom left), select the user, then Generate API Credentials. Record the Client ID and Client Secret, which are shown only once. Exchange them for an access token the same way as any other PlantPredict API call, using the client credentials grant with your Client ID and Secret sent as a Basic auth header:Authorization: Bearer. Tokens last about an hour, and an import can outlive one, so refresh it if a long poll starts returning 401.
Step 1: send the ZIP
Post the file exactly as PVsyst exported it.202 Accepted straight away, with the id you use to follow the import:
Step 2: check back until it finishes
The import runs in the background and a large export can take several minutes. Checking once every 10 seconds is plenty.status is one of three values:
Every response also carries a
summary: one sentence describing the outcome in plain language, which you can show to a person as-is.
A finished import
Why a variant might be skipped
A PVsyst variant points at the module, inverter and weather files it was simulated against. PlantPredict imports a variant when it can account for every one of those files, either from the ZIP itself or by matching a record already in your library. A variant is skipped when a file it references cannot be used:The file is not in the ZIP
The file is not in the ZIP
PVsyst does not bundle components that come from its own built-in database, so exports frequently arrive without them. Re-export from PVsyst with the components included, or add the equipment to your PlantPredict library first.
The file is in the ZIP but cannot be read
The file is in the ZIP but cannot be read
The file is present but PlantPredict could not parse it. The
problem field carries the specific reason. Re-sending the same file will not help.When an import fails
Failed means no project was created. errorCode tells you whether it is something you can fix:
The first two are worth retrying with a corrected export. The third is not.
Notes
- An import is private to the account that created it. A token belonging to a different account cannot see it.
- The
jobIdis worth logging. It is the fastest way for support to find a specific import. importedis empty until the import finishes, so readstatusfirst.