canonical: https://jentic.com/apis/playcanvas.com/playcanvas

# PlayCanvas API

REST API for PlayCanvas, a web-based 3D game engine. Manage apps, assets, branches, scenes, checkpoints, jobs, and project exports. The API exposes 11 endpoints secured with bearer authentication.

## For AI agents

Programmatically download app, get app. Covers 11 operations with bearer authentication.

## Scope

Does not handle payments, communications, or crm - use for hr and recruiting only.

## Capabilities

- Download app
- Get app
- Create asset
- Delete asset
- List assets

## Use cases

### HR and Recruiting Operations

Use the PlayCanvas API to perform hr recruiting operations programmatically. The API provides 11 endpoints covering core functionality including download app, get app, get project apps.

Example prompt: Call POST `/apps/download` to download app

### Automated Apps Management

Automate apps operations by combining multiple PlayCanvas API endpoints. Agents can get app and then get project apps in a single workflow.

Example prompt: Call GET `/apps/{id}` to get app, then verify the result

### AI Agent Integration via Jentic

AI agents discover and call PlayCanvas API endpoints through Jentic without managing credentials directly. An agent searches for the required operation by intent, receives the matching endpoint schema, and executes the call with Jentic-managed authentication. This eliminates the need to read API documentation or handle bearer tokens manually.

Example prompt: Search Jentic for 'download app', load the operation schema, and execute with Jentic-managed credentials

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/apps/download` | Download app |
| GET | `/apps/{id}` | Get app |
| GET | `/projects/{projectId}/apps` | Get project apps |
| POST | `/assets` | Create asset |
| GET | `/assets/{assetId}` | Get asset |
| DELETE | `/assets/{assetId}` | Delete asset |
| GET | `/projects/{projectId}/assets` | List assets |
| GET | `/projects/{projectId}/branches` | List branches |

## Key resources

- **Apps** — Operations for apps
- **Assets** — Operations for assets
- **Jobs** — Operations for jobs
- **Projects** — Operations for projects

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 66 / 100
- **Maturity:** AI-Aware
- **Dimensions:**
  - Foundational Compliance: 90 / 100
  - Developer Experience & Jentic Compatibility: 63 / 100
  - AI-Readiness & Agent Experience: 48 / 100
  - Agent Usability: 94 / 100
  - Security: 60 / 100
  - AI Discoverability: 72 / 100
- **View full report:** https://jentic.com/apis/playcanvas.com/playcanvas/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring the PlayCanvas API by hand means learning its bearer auth and hand-building requests across its app, asset, project and branch endpoints yourself. Through Jentic you install once, import PlayCanvas from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** PlayCanvas puts the resource id in the URL path (`/projects/{projectId}/assets`, `/assets/{assetId}`), so a rule can pin your agent to one project or asset: it reads and lists that project's assets and branches and nothing else. You choose the operations it may call, so destructive ones like deleting an asset are not included unless you add them.
- **Credential handling:** Your PlayCanvas token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'download an app build' or 'list a project's assets', and Jentic returns the matching PlayCanvas operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Greenhouse** — Alternative hr recruiting API
- **Lever** — Alternative hr recruiting API
- **Workday** — Complementary hr recruiting API

## FAQ

### What authentication does the PlayCanvas API use?

The PlayCanvas API uses a Bearer token in the Authorization header. Through Jentic, these credentials are stored encrypted in your Jentic One instance and injected at execution time, so raw secrets never enter the agent context.

### Can I download app with the PlayCanvas API?

Yes. Use the POST `/apps/download` endpoint. The API returns structured JSON responses that agents can parse and act on directly.

### What are the rate limits for the PlayCanvas API?

Rate limits are not specified in the OpenAPI spec. Check the vendor documentation for current limits. Through Jentic, rate limiting is handled automatically with retry logic built into the execution layer.

### How do I download app through Jentic?

Install the Jentic SDK with pip install jentic, authenticate through Jentic One, the self-hosted execution layer, then search for 'download app'. Jentic returns the matching PlayCanvas API operation with its input schema. Load the schema and execute the call - credentials are injected automatically.

### How many endpoints does the PlayCanvas API have?

The PlayCanvas API exposes 11 endpoints covering apps, assets, jobs operations.

### Can I limit what my agent is allowed to do with the PlayCanvas API?

Yes. Jentic One is self-hosted, so your own rules decide which PlayCanvas operations and credentials the agent may use. Because PlayCanvas puts the resource id in the URL path, such as `/projects/{projectId}/assets` and `/assets/{assetId}`, you can pin the agent to a single project so it only lists and reads that project's assets and branches. You also choose which operations it may call, so a destructive endpoint like DELETE `/assets/{assetId}` stays off limits unless you explicitly add it.
