/v3/downloads/{scanId}/export/{exportId}
One of the most common patterns, when integrating with our services, is to submit a scan and download the full results as soon as the scan is completed. When the scan is completed, Copyleaks triggers a ‘Completed’ webhook to inform that the scan has been completed. At this point, you will have all the needed information (i.e. the ‘result ids’) to download and present the reports on your side. Since you may have large number of documents to download (the results, crawled version of the text and the pdf-report), you may need to send many HTTP REST calls to execute to export the data from our services.
The ‘Export’ method makes this process easier by specifying the content you would like to export in a single call and we will copy all the data according to your request. Then, we will fire an ‘export-completed; webhook with the export results summary.
If you are using a distributed cloud storage system (like AWS buckets, Google buckets or Azure Storage), we are able to export the data directly to your storage without the involvement of your servers. In order to do so, create a Signed URL for each data item that you would like to export. By specifying the request method (verb) and optionally added headers, the writing to this storage will be triggered, as per your definition.
Request
URL Parameters
scanId
REQUIRED Allowed characters are [a-z0-9]
and the following symbols: !@$^&-+%=_(){}<>';:/.",~`|
learn more about the criteria for creating a Scan ID .
exportId
REQUIRED Allowed characters are [a-z0-9]
and the following symbols: !@$^&-+%=_(){}<>';:/.",~`|
Body Parameters
completionWebhook
REQUIREDcompletionWebhookHeaders
[
[
"header-key",
"header-value"
],
...
]
maxRetries
completionWebhook
being executed. A low value (1) may lead to errors while your service is temporary having problems. Default: 3
developerPayload
results
Learn more about Result Webhook .
results.id
REQUIREDresults.endpoint
REQUIREDresults.verb
REQUIREDendpoint
. results.headers
[["header-key1", "header-value1"], ["header-key2", "header-value2"]]
pdfReport
pdfReport.endpoint
REQUIREDpdfReport.verb
REQUIREDendpoint
. pdfReport.headers
[["header-key1", "header-value1"], ["header-key2", "header-value2"]]
crawledVersion
Learn more about Crawled-Version Webhook .
crawledVersion.endpoint
REQUIREDcrawledVersion.verb
REQUIREDendpoint
. crawledVersion.headers
[["header-key1", "header-value1"], ["header-key2", "header-value2"]]
Request Example
Response
Codes
204
400
401
404
409
Other resources:
- Performance Considerations Important! - How to improve your scan performance.
- Exponential Backoff - Algorithm that helps applications define a retry strategy for consuming a network service.
- Present the Report on Your Site - have a complete white-labeled report, and present it on your domain.

Do you have a technical question?
Use stackoverflow.com to get help from our development team and other Copyleaks users.