---
title: "Export artifact version as ZIP"
method: GET
path: "/groups/{groupId}/artifacts/{artifactId}/versions/{versionExpression}/export"
tags: ["Versions"]
---

# Export artifact version as ZIP

`GET /groups/{groupId}/artifacts/{artifactId}/versions/{versionExpression}/export`

Exports a Protobuf artifact version with all its transitive dependencies as a ZIP file.
The files in the ZIP are organized by their package names to match the expected directory
structure for protoc compilation. Import statements are rewritten to use canonical
package-based paths.

This operation is only supported for PROTOBUF artifact types.

This operation can fail for the following reasons:

* No artifact with this `artifactId` exists (HTTP error `404`)
* No version with this `version` exists (HTTP error `404`)
* Artifact is not of type PROTOBUF (HTTP error `400`)
* A server error occurred (HTTP error `500`)

## Response `200`

The Protobuf artifact and its dependencies exported as a ZIP file with package-structured directories.

## Other responses

- `400` — Common response for all operations that can return a `400` error.
- `401` — Common response for all operations that can return a `401` error indicating authentication is required.
- `403` — Common response for all operations that can return a `403` error indicating the user is authenticated but not authorized.
- `404` — Common response for all operations that can return a `404` error.
- `500` — Common response for all operations that can fail with an unexpected server error.

---

[API](https://skmtc.net/apicurio/apis/apicurio-registry-api-v3.md) · [All operations](https://skmtc.net/apicurio/apis/apicurio-registry-api-v3/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/apicurio/apicurio-registry-api-v3/revisions/c39cb56d7dbc/schema)
