# Mutation Fields

> These are the top-level mutation fields in the schema.

## createKitDownload ([KitDownload!](/apis/graphql/objects.md#kitdownload))

_Start a kit download request._

This produces a [`KitDownload`](/apis/graphql/objects.md#kitdownload) object for downloading a kit zip archive of the latest revision of the kit at the time this mutation is invoked. If it has already been built, then the [`KitDownload`](/apis/graphql/objects.md#kitdownload) object will have a status of `READY` and its `url` will be a short-lived URL for downloading the kit immediately. In that case, no polling is required.

If the kit download zip for the latest revision of the kit has not yet built, then the status of the returned [`KitDownload`](/apis/graphql/objects.md#kitdownload) will be `PENDING`. The client must use the returned `buildId` value for the `buildId` arg in one or more subsequent queries of the [`getKitDownload`](/apis/graphql/query-fields.md#getkitdownload-kitdownload) field, until the kit download request completes.

| Argument    | <div style="width:70px;">Type</div>             | Description                                        |
| ----------- | ----------------------------------------------- | -------------------------------------------------- |
| `buildType` | [`BuildType!`](/apis/graphql/objects.md#buildtype) | _required_. The type of download to build.         |
| `kitToken`  | `String!`                                       | _required_. The kit token for the kit to download. |
