# Apple Developer Integration via LowCodeAPI

**Last Updated**: February 11, 2026

## Overview

The Apple Developer API provides programmatic access to App Store Connect, enabling you to manage apps, builds, and resources programmatically. This skill covers listing apps and builds.

## Base Endpoint

https://api.lowcodeapi.com/appledeveloper

**Important**: Always include the provider name `appledeveloper` in the URL path after `api.lowcodeapi.com/`

## Authentication

Apple Developer API uses JWT token authentication.

### Setup Instructions

1. Go to [App Store Connect API](https://appstoreconnect.apple.com/access/api)
2. Create an API key
3. Download the private key (PKCS8 format)
4. Generate a JWT token from your private key

### Authentication Details

- **Type**: JWT Token
- **Header**: `Authorization: Bearer {jwt_token}`
- **How to get credentials**: [App Store Connect API](https://appstoreconnect.apple.com/access/api)

When using LowCodeAPI, you only need to provide your JWT token. The system handles authentication automatically.

## URL Format

LowCodeAPI supports two URL formats for endpoints. Always try the **New Format** first, fall back to **Old Format** if needed.

### New Format (Priority)

Path parameters stay in the URL path.

**Pattern**:
```
https://api.lowcodeapi.com/appledeveloper/v1/apps?api_token=YOUR_API_TOKEN
```

### Old Format (Fallback)

Path parameters become query parameters.

**Pattern**:
```
https://api.lowcodeapi.com/appledeveloper/v1/apps?api_token=YOUR_API_TOKEN
```

### Decision Flow for AI Agents

1. **Always use New Format first** - Path parameters in URL path
2. If you receive a 404 or error, try **Old Format**
3. Log which format worked for future requests to this provider

## API Categories

- **Apps** - Manage App Store apps
- **Builds** - Access app builds

## Common Endpoints

### List Apps

Get all apps registered in your App Store Connect account.

**Method**: GET | **LowCodeAPI Path**: `/v1/apps`

**New Format URL**:
```
https://api.lowcodeapi.com/appledeveloper/v1/apps?api_token=YOUR_API_TOKEN
```

**Old Format URL**:
```
https://api.lowcodeapi.com/appledeveloper/v1/apps?api_token=YOUR_API_TOKEN
```

**Response**:
```json
{
  "data": {
    "data": [
      {
        "type": "apps",
        "id": "APP_ID",
        "attributes": {
          "name": "My App",
          "bundleId": "com.example.myapp",
          "sku": "SKU001"
        }
      }
    ]
  }
}
```

**Official Documentation**: [List Apps](https://developer.apple.com/documentation/appstoreconnectapi/list_apps)

---

### List Builds

Get builds for all apps in your App Store Connect account.

**Method**: GET | **LowCodeAPI Path**: `/v1/builds`

**New Format URL**:
```
https://api.lowcodeapi.com/appledeveloper/v1/builds?api_token=YOUR_API_TOKEN
```

**Old Format URL**:
```
https://api.lowcodeapi.com/appledeveloper/v1/builds?api_token=YOUR_API_TOKEN
```

**Response**:
```json
{
  "data": {
    "data": [
      {
        "type": "builds",
        "id": "BUILD_ID",
        "attributes": {
          "version": "1.0.0",
          "uploadedDate": "2026-02-11T00:00:00.000Z"
        }
      }
    ]
  }
}
```

**Official Documentation**: [List Builds](https://developer.apple.com/documentation/appstoreconnectapi/list_builds)

## Complete Endpoint Reference

| Method | Endpoint | Category |
|--------|----------|----------|
| GET | `/v1/apps` | Apps |
| GET | `/v1/builds` | Builds |

## API Definition Endpoints

Get the complete API specification for Apple Developer:

- **New Format (OpenAPI)**: `https://backend.lowcodeapi.com/appledeveloper/openapi`
- **Old Format (Definition)**: `https://backend.lowcodeapi.com/appledeveloper/definition`

## Usage Examples

### Example 1: List All Apps

List all registered apps in your App Store Connect account.

```bash
curl -X GET "https://api.lowcodeapi.com/appledeveloper/v1/apps?api_token=YOUR_API_TOKEN"
```

**Response**: Returns array of apps with bundle IDs, names, and metadata.

### Example 2: List All Builds

Get all builds across all your apps.

```bash
curl -X GET "https://api.lowcodeapi.com/appledeveloper/v1/builds?api_token=YOUR_API_TOKEN"
```

**Response**: Returns array of builds with version numbers and upload dates.

## Error Handling

| Status Code | Meaning |
|-------------|---------|
| 200 | Success |
| 401 | Unauthorized - Invalid or expired JWT token |
| 403 | Forbidden - Insufficient permissions |
| 404 | Resource not found |
| 429 | Too many requests - Rate limit exceeded |

## Response Format

All responses are wrapped in a `data` key:

```json
{
  "data": {
    // Actual response from Apple Developer API
  }
}
```

## Additional Resources

- **Official Documentation**: [App Store Connect API](https://developer.apple.com/documentation/appstoreconnectapi)
- **API Keys**: [App Store Connect Access API](https://appstoreconnect.apple.com/access/api)
- **LowCodeAPI Docs**: https://docs.lowcodeapi.com