---
title: Package
summary: Fastly Compute is a computation platform capable of running custom binary packages that you compile on your own systems and upload to Fastly. These packages are associated with a service version and are deployed to Fastly's edge network.
url: https://www.fastly.com/documentation/reference/api/services/package
---

Fastly Compute is a computation platform capable of running custom binary packages that you compile on your own systems and upload to Fastly. These packages are associated with a service version and are deployed to Fastly's edge network.

## Data model

| Field | Type | Description |
|-------|------|-------------|
| `metadata` | object | <a href="#metadata-model">Package metadata</a> that has been extracted from the uploaded package. |
| `created_at` | string | Date and time in ISO 8601 format. (Read-only) |
| `deleted_at` | string | Date and time in ISO 8601 format. (Read-only) |
| `id` | string | Alphanumeric string identifying the package. (Read-only) |
| `service_id` | string | Alphanumeric string identifying the service. (Read-only) |
| `updated_at` | string | Date and time in ISO 8601 format. (Read-only) |
| `version` | integer | Integer identifying a service version. (Read-only) |

## Data model

| Field | Type | Description |
|-------|------|-------------|
| `authors` | array | A list of package authors' email addresses. |
| `description` | string | Description of the Compute package. |
| `files_hash` | string | Hash of the files within the Compute package. |
| `hashsum` | string | Hash of the Compute package. This is deprecated in favor of <code>files_hash</code>. |
| `language` | string | The language of the Compute package. |
| `name` | string | Name of the Compute package. |
| `size` | integer | Size of the Compute package in bytes. This is deprecated along with <code>hashsum</code>. |

## Data model

| Field | Type | Description |
|-------|------|-------------|
| `package` | string | The content of the Wasm binary package. |

## API endpoints

### Get details of the service's Compute package

**GET** `/service/{service_id}/version/{version_id}/package`

List detailed information about the Compute package for the specified service.

**Parameters:**

| Name | Type | In | Required | Description |
|------|------|----|---------|--------------|
| `service_id` | string | path | Yes | Alphanumeric string identifying the service. |
| `version_id` | integer | path | Yes | Integer identifying a service version. |

### Upload a Compute package

**PUT** `/service/{service_id}/version/{version_id}/package`

Upload a Compute package associated with the specified service version.

**Parameters:**

| Name | Type | In | Required | Description |
|------|------|----|---------|--------------|
| `expect` | string | header | No | We recommend using the Expect header because it may identify issues with the request based upon the headers alone instead of requiring you to wait until the entire binary package upload has completed. |
| `service_id` | string | path | Yes | Alphanumeric string identifying the service. |
| `version_id` | integer | path | Yes | Integer identifying a service version. |

