---
title: "Complete an installation once"
method: POST
path: "/api/plugin_installations/{plugin_installation_id}/completion"
tags: ["Installations"]
---

# Complete an installation once

`POST /api/plugin_installations/{plugin_installation_id}/completion`

## Request

- Base URL: `https://trmnl.com`
- URL: `https://trmnl.com/api/plugin_installations/{plugin_installation_id}/completion`
- Auth: HTTP bearer

## Path parameters

- `plugin_installation_id` string, uuid, required

## Response `200`

Completed installation

- object
  - `data` PluginInstallation
    - `id` string, uuid, required
    - `state` 'setup_required' | 'ready' | 'completed' | 'cancelled' | 'expired' | 'removed', required
    - `source` object, required
      - `kind` string, required
      - `id` integer, required
      - `revision` string, required
      - `choice_id` string, required
      - `device_id` integer
    - `plugin_setting_id` integer, nullable, required
    - `expires_at` string, date_time, required

## Other responses

- `422`: Required setup is incomplete

---

[API](https://skmtc.dev/trmnl/apis/trmnl-api.md) · [All operations](https://skmtc.dev/trmnl/apis/trmnl-api/llms.txt) · [OpenAPI document](https://skmtc.dev/trmnl/apis/trmnl-api/revisions/66179e6d663b?raw)
