---
title: "GET /developer-apps"
method: GET
path: "/developer-apps"
tags: ["Control plane"]
---

# GET /developer-apps

`GET /developer-apps`

## Request

- Base URL: `https://api.team0.ai/v1`
- URL: `https://api.team0.ai/v1/developer-apps`
- Auth: one of:
  - OAuth 2 (authorization code, authorization URL `https://clerk.team0.ai/oauth/authorize`, token URL `https://clerk.team0.ai/oauth/token`)
  - HTTP bearer

## Query parameters

- `cursor` string

## Response `200`

Developer applications owned by the tenant.

- DeveloperAppList
  - `data` DeveloperApp[], required
    - `id` string, required
    - `object` 'developer_app', required
    - `name` string, required
    - `kind` 'oauth_public' | 'oauth_confidential' | 'service', required
    - `protocol_status` 'not_applicable' | 'pending' | 'ready' | 'mismatch' | 'disabled', required
    - `client_id` string, nullable: Clerk OAuth client ID for ready OAuth applications; never a client secret.
    - `redirect_uris` string[], required
    - `allowed_origins` string[], required
    - `maximum_execution_policy` 'caller_acts' | 'team0_asks_first' | 'team0_may_act', required: Maximum or effective action owner. A request may narrow an application's maximum but never widen it.
    - `version` integer, required
    - `created_at` string, date-time, required
  - `next_cursor` string, nullable
  - `has_more` boolean, required

## Other responses

- `default`: RFC 9457 problem response. Cross-tenant identity is non-enumerating.

---

[API](https://skmtc.dev/team0/apis/team0-external-api.md) · [All operations](https://skmtc.dev/team0/apis/team0-external-api/llms.txt) · [OpenAPI document](https://skmtc.dev/team0/apis/team0-external-api/revisions/9b838d20a98f?raw)
