---
title: "Acquire a pinned public registry skill for one installation"
method: POST
path: "/v1/skills/{owner}/{name}/acquire"
tags: ["public"]
---

# Acquire a pinned public registry skill for one installation

`POST /v1/skills/{owner}/{name}/acquire`

## Request

- Base URL: `https://api.runx.ai`
- URL: `https://api.runx.ai/v1/skills/{owner}/{name}/acquire`
- Auth: none declared

## Path parameters

- `owner` string, required
- `name` string, required

## Request body

- AcquireSkillRequest
  - `installation_id` string, required
  - `version` string
  - `channel` string

## Response `200`

Registry skill acquisition payload.

- AcquireSkillResponse
  - `status` 'success', required
  - `install_count` integer, required
  - `acquisition` object, required
    - `skill_id` string, required
    - `owner` string, required
    - `name` string, required
    - `version` string, required
    - `digest` string, required
    - `signed_manifest` RegistrySignedManifest
      - `schema` 'runx.registry.signed_manifest.v1', required
      - `subject` RegistrySubject, required
        - `kind` 'skill' | 'connector', required
        - `ref` string, required
      - `version` string, required
      - `content_digest` string, required
      - `signer` object, required
        - `id` string, required
        - `key_id` string, required
      - `signature` object, required
        - `alg` 'ed25519', required
        - `value` string, required
    - `markdown` string, required
    - `profile_document` string
    - `profile_digest` string
    - `package_files` object[]
      - `path` string, required
      - `content` string, required
    - `package_digest` string
    - `paid_listing` RunxPaidSkillListing
      - `offers` object, required
      - `package_digest` string, required
      - `profile_digest` string, required
      - `skill_digest` string, required
      - `skill_id` string, required
      - `vendor_ref` object, required
        - `label` string
        - `locator` string
        - `observed_at` string
        - `proof_kind` 'effect_evidence' | 'effect_finality' | 'credential_resolution'
        - `provider` string
        - `type` 'principal', required
        - `uri` string, required
      - `version` string, required
    - `trust_tier` 'first_party' | 'verified' | 'community', required
    - `publisher` PublicRegistryPublisher, required
      - `kind` 'organization' | 'user' | 'team' | 'service' | 'publisher', required
      - `id` string, required
      - `handle` string
      - `display_name` string
    - `source_metadata` PublicRegistrySource
      - `provider` 'github', required
      - `repo` string, required
      - `repo_url` string, required
      - `skill_path` string, required
      - `profile_path` string
      - `ref` string, required
      - `sha` string, required
      - `default_branch` string, required
      - `event` 'enrollment' | 'push' | 'tag' | 'tombstone', required
      - `immutable` boolean, required
      - `live` boolean, required
      - `tombstoned` boolean
      - `tag` string
      - `publisher_handle` string
    - `attestations` PublicRegistryAttestation[], required
      - `kind` 'source' | 'publisher' | 'verification', required
      - `id` string, required
      - `status` 'verified' | 'declared', required
      - `summary` string, required
      - `source` string
      - `issued_at` string
      - `metadata` object
    - `runner_names` string[], required

## Other responses

- `400`: Validation error.
- `404`: Skill not found.
- `503`: Registry store unavailable.

---

[API](https://skmtc.dev/runx/apis/runx-hosted-api.md) · [All operations](https://skmtc.dev/runx/apis/runx-hosted-api/llms.txt) · [OpenAPI document](https://skmtc.dev/runx/apis/runx-hosted-api/revisions/6c940d8edacc?raw)
