Quandela · Arazzo Workflow
Submit a Perceval job to Quandela Cloud and collect the result
Version 1.0.0
Mint a Cloud Job Token, verify account capacity, submit a photonic-circuit job, poll to completion, then retrieve the result and the submission record.
View Spec
View on GitHub
Quantum ComputingPhotonic QuantumPhotonicsSingle Photon SourcesQuantum HardwareQuantum CloudQPUPercevalPython SDKQuantum Random Number GenerationQuantum SimulationVariational Quantum AlgorithmsQuantum ChemistryGraph AlgorithmsJob OrchestrationOpen-SourceFranceArazzoWorkflows
Provider
Workflows
submit-and-collect-perceval-job
End-to-end Perceval job execution on Quandela Cloud.
Quandela Cloud is submit-then-poll — there is no webhook or event surface, so completion must be discovered by polling. There is also no idempotency key, so process_id is supplied on submission as a duplicate guard: on a timeout, re-sending the SAME process_id returns 400 rather than creating a second credit-consuming job.
1
mint-job-token
$sourceDescriptions.tokens.post_api_tokens
Mint a short-lived labelled Cloud Job Token for this run. Labels must be unique per account (400 "Label already exists").
2
check-availability
$sourceDescriptions.jobs.get_api_jobs_availability
Read the account's concrete concurrency ceilings and current usage. This is the only place the {MAX_WAITING_JOBS} / {MAX_QT_JOBS} values referenced by the 400/403 error text become numbers — the API sends no RateLimit-* headers.
3
submit-job
$sourceDescriptions.jobs.post_api_jobs
Create the job. Supply exactly one of platform_name or platform_id or the call fails with 400 "Require platform_id or platform_name".
4
poll-status
$sourceDescriptions.jobs.get_api_jobs_by_job_id_status
Poll until the job leaves its running state. Re-enter this step with exponential backoff; there is no Retry-After header to obey. last_intermediate_results carries partial progress before completion.
5
get-result
$sourceDescriptions.jobs.get_api_jobs_by_job_id_result
Retrieve the terminal result. Branch on results_type to interpret results.
6
get-job-data
$sourceDescriptions.jobs.get_api_jobs_by_job_id_data
Fetch the full submission record for audit — command, platform_name, pcvl_version, token_label, rerun_from.
7
revoke-job-token
$sourceDescriptions.tokens.post_api_tokens_revoke
Revoke the run's token. Revocation is reversible via post_api_tokens_reopen; use post_api_tokens_delete_by_ids to destroy it.
Source API Descriptions
openapi