---
name: Horizon Platform SDK Unity
slug: horizon-platform-sdk-unity
category: AI Engineering
description: "Horizon Platform SDK Unity helps integrate Meta Quest and Horizon OS platform features into Unity/C# apps, including initialization, data types, error handling, and package-specific APIs. Use it for achievements, IAP, users, leaderboards, presence, notifications, and related platform services."
github: "https://github.com/meta-quest/agentic-tools/tree/main/skills/hz-unity-platform-sdk"
language: "C#"
stars: 189
forks: 17
install: "npx degit https://github.com/meta-quest/agentic-tools/tree/main/skills/hz-unity-platform-sdk ~/.claude/skills/hz-unity-platform-sdk"
installs_to: ~/.claude/skills/hz-unity-platform-sdk
source_path: skills/hz-unity-platform-sdk/SKILL.md
collection_size: 25
category_size: 3278
collection_url: "https://dirskills.com/collections/meta-quest/agentic-tools"
added: 2026-09-06T05:19:44.976Z
last_synced: 2026-09-06T05:19:44.976Z
canonical_url: "https://dirskills.com/skills/horizon-platform-sdk-unity"
---

# Horizon Platform SDK Unity

Horizon Platform SDK Unity helps integrate Meta Quest and Horizon OS platform features into Unity/C# apps, including initialization, data types, error handling, and package-specific APIs. Use it for achievements, IAP, users, leaderboards, presence, notifications, and related platform services.

**Install:**

```bash
npx degit https://github.com/meta-quest/agentic-tools/tree/main/skills/hz-unity-platform-sdk ~/.claude/skills/hz-unity-platform-sdk
```

## README

# Horizon Platform SDK - Unity/C# Integration Guide

## When to Use

Use this skill when a developer:
- Wants to integrate any Horizon Platform SDK feature in a **Unity** Meta Quest application
- Asks about setup, initialization, or dependencies for the Unity SDK package (`com.meta.xr.sdk.platform`)
- Needs help with a specific public platform API (achievements, IAP, users, etc.) in C#
- Is troubleshooting errors or status codes from any SDK package in Unity
- Asks about `Core.AsyncInitialize`, `Oculus.Platform`, or platform message handling

For **Android/Kotlin** apps, use the `hz-platform-sdk` skill instead.

## Quick Start

- **Setup guide**: https://developers.meta.com/horizon/documentation/unity/ps-platform-intro/
- **UPM Package**: `com.meta.xr.sdk.platform` via Unity Package Manager
- **Namespace**: `Oculus.Platform` (backward compatible with legacy LibOVRPlatform SDK)

## Available APIs

| Feature | Reference | Description |
|---------|-----------|-------------|
| Abuse Report | `abuse-report` | Listen for system Report button events, respond with in-app flow |
| Achievements | `achievements` | Unlock, track progress, and query simple/count/bitfield achievements |
| Application | `application` | Get app version, launch other apps, manage self-update downloads |
| Application Lifecycle | `application-lifecycle` | Detect launch type, handle deeplinks and invites, log results |
| Asset File | `asset-file` | List, download, cancel, and delete downloadable asset files (DLC) |
| Challenges | `challenges` | Time-bound score competitions on top of leaderboards |
| Consent | `consent` | Check and launch user consent flows with version bumps |
| Device Application Integrity | `device-application-integrity` | Verify device and app integrity via JWT attestation |
| Entitlements | `entitlements` | Mandatory anti-piracy check required for all Store apps |
| Group Presence | `group-presence` | Set/clear presence, manage sessions, send invites, handle join intents |
| In-App Purchases (IAP) | `iap` | Retrieve products, purchase history, checkout flow, consume purchases |
| Language Pack | `language-pack` | Get/set language packs with auto-download |
| Leaderboards | `leaderboards` | Retrieve leaderboard info, fetch/write entries with filtering |
| Notifications | `notifications` | Send device notifications with toast, feed persistence, and action buttons |
| Rate and Review | `rate-and-review` | Check eligibility and launch the system rating/review UI |
| Rich Presence | `rich-presence` | Set/clear rich presence (deprecated; prefer group-presence) |
| User Age Category | `user-age-category` | Query user age group and report age categories for compliance |
| Users | `users` | Retrieve user profiles, friends, access tokens, identity verification |

## How to Use

1. **First**, read `references/common-setup.md` for shared setup instructions, initialization code, Editor testing, and common patterns that apply to all APIs.
2. **Then**, read the specific reference file for the API you need (e.g., `references/iap.md` for in-app purchases).

Each reference file contains only the package-specific content: API operations, data types, examples, and package-specific notes. The common setup, initialization patterns, and coding conventions are centralized in `common-setup.md` to avoid duplication.
