---
title: "Download the certificate as a PKCS#12 (.p12)"
method: GET
path: "/appsec/7.0/apple/certificates/{id}/p12"
tags: ["Certificates"]
---

# Download the certificate as a PKCS#12 (.p12)

`GET /appsec/7.0/apple/certificates/{id}/p12`

## Request

- Base URL: `https://cloud.codenameone.com`
- URL: `https://cloud.codenameone.com/appsec/7.0/apple/certificates/{id}/p12`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/codenameone/apis/codename-one-apple-signing-service/docs/appsec/7.0/apple/certificates/:id/p12/get.ts> (a function with typed inputs; its response is checked against the schema)

Materialises the private key + certificate into a password-protected `.p12`. Only available for certificates we generated (those with a stored private key); imported/reconciled certificates return 409.

## Path parameters

- `id` integer, required

## Query parameters

- `password` string

## Response `200`

The .p12 bytes

## Other responses

- `400`: Missing or invalid parameters (plain-text reason in the body).
- `403`: Caller is anonymous / not authenticated.
- `409`: No private key stored for this certificate

---

[API](https://skmtc.dev/codenameone/apis/codename-one-apple-signing-service.md) - [All operations](https://skmtc.dev/codenameone/apis/codename-one-apple-signing-service/llms.txt) - [OpenAPI document](https://skmtc.dev/codenameone/apis/codename-one-apple-signing-service/revisions/f0b48d0af96f?raw)
