---
title: "Deliver a library file to a phone"
method: POST
path: "/phones/{phone_id}/deliveries"
tags: ["phones"]
---

# Deliver a library file to a phone

`POST /phones/{phone_id}/deliveries`

Sends a library file to a phone the caller's org holds: the phone downloads it over its own connection and inserts it into the media gallery, where app pickers can select it. Accepts either an upload or a download by id, and the file must already be ready - finish an upload with POST /uploads/{upload_id}/complete before delivering it. Returns 202 with the delivery record once the phone acknowledges the download started; watch GET /phones/{phone_id}/deliveries or the live preview for completion. Optionally choose the target collection (DCIM / Pictures / Movies).

## Path parameters

- `phone_id` string, required — target phone_id

## Request body

- FileDeliveryCreateRequest — Requests delivery of a library file to a phone.
  - `$schema` string, uri — A URL to the JSON Schema for this object.
  - `collection` 'DCIM' | 'Pictures' | 'Movies' — Media collection to insert into on the phone; defaults to Pictures for images and Movies for videos.
  - `file_id` string, uuid, required — Library file to deliver; accepts an upload or a download id.

## Response `202`

Accepted

- FilePushResponse — Acknowledges a dispatched push.
  - `$schema` string, uri — A URL to the JSON Schema for this object.
  - `delivery` FileDeliverySummary, required — One push of a library file to a phone.
    - `$schema` string, uri — A URL to the JSON Schema for this object.
    - `bytes_transferred` integer — Bytes the phone has downloaded so far. Absent until the phone reports progress.
    - `created_at` string, date-time, required — When the push was dispatched.
    - `error` string — Failure detail for failed deliveries.
    - `file_id` string — Library file that was pushed. Absent once that file has been deleted; the filename and size below are snapshots taken at push time and survive it.
    - `filename` string, required — Delivered file's display name.
    - `id` string, required — Delivery identifier.
    - `mime_type` string, required — Delivered file's MIME type.
    - `phone_id` string, required — Phone the file was pushed to.
    - `size_bytes` integer, required — Delivered file's size in bytes.
    - `status` 'dispatching' | 'dispatched' | 'delivered' | 'failed', required — dispatching while the push is being published, dispatched while the phone downloads, then delivered or failed once it reports back.

## Other responses

- `default` — Error

---

[API](https://skmtc.net/axilioai/apis/axilio-api.md) · [All operations](https://skmtc.net/axilioai/apis/axilio-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/axilioai/axilio-api/versions/108ab4b41051/schema)
