---
title: "Read adopted file owner policy [read]"
method: GET
path: "/artifacts/{id}/policy"
tags: ["artifacts"]
---

# Read adopted file owner policy \[read\]

`GET /artifacts/{id}/policy`

## Request

- Base URL: `https://api.agentsky.dev/v1`
- URL: `https://api.agentsky.dev/v1/artifacts/{id}/policy`
- Auth: HTTP bearer

Owner-only current canonical policy under read scope plus the real credential ceiling; ordinary readers cannot inspect policy. Omit alias_id for full owner inspection. With alias_id, only the exact managed alias is returned: no other placement, grants or raw tokens. Exact workspace incarnation, alias grants and common public pin are retained. Receipts can recover raw tokens only when still matching current policy hashes; initial imported source tokens stay source-owned. Private content read grants discussion read; only current edit grants discussion writes. Public links reveal no discussion.

## Path parameters

- `id` string, required

## Query parameters

- `alias_id` string

## Response `200`

Exact lifecycle receipt; private, no-store

- ArtifactPolicyReceipt
  - `id` string, required
  - `request_id` string, uuid, nullable, required
  - `policy_version` integer, required
  - `name` string, required
  - `version` integer, required
  - `policy` ArtifactAccessPolicy, required
    - `version` unknown, required
    - `placement` object, nullable, required
      - `slug` string, required
      - `created_at` string, date-time, required
    - `aliases` object[], required
      - `id` string, required
      - `workspace` object, nullable, required
        - `slug` string, required
        - `created_at` string, date-time, required
      - `workspace_access` 'none' | 'view' | 'edit', required
      - `members` object[], required
        - `user_id` string, required
        - `access` 'view' | 'edit', required
      - `revision` integer, required
      - `public_token_hash` string
      - `shared_token_hash` string
    - `public_token_hash` string
    - `public_version` integer, nullable, required
  - `tokens` object, required: Only exact newly issued/revoked public and alias token receipts; private to the owner
  - `archived_at` string, date-time, nullable, required

## Other responses

- `default`: Error { error: { code, message } }; changed facts are 409, unavailable recovery retains fences and capacity

## Changes

- **2026-11-02** `e5e8f0229a99`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/agentsky/apis/agentsky-developer-api/changes/artifacts/:id/policy/get.md)

---

[API](https://skmtc.dev/agentsky/apis/agentsky-developer-api.md) - [All operations](https://skmtc.dev/agentsky/apis/agentsky-developer-api/llms.txt) - [OpenAPI document](https://skmtc.dev/agentsky/apis/agentsky-developer-api/revisions/8280a065ef6a?raw)
