---
title: "Generate a signed local license request"
method: POST
path: "/license-request/generate"
tags: ["Setup"]
---

# Generate a signed local license request

`POST /license-request/generate`

## Request body

- GenerateLicenseRequestRequest
  - `algorithm` string, nullable
  - `use` string, nullable
  - `deployment` LicenseRequestDeployment, required
    - `deployment` LicenseRequestDeploymentScope, required
      - `id` string, nullable
      - `baseDomains` string[], required
    - `organizationName` string, required
    - `organizationUnit` string, nullable
    - `locality` string, nullable
    - `state` string, nullable
    - `country` string, nullable
    - `licenseDeliveryMethod` 'MANUAL'
    - `contacts` LicenseRequestContact[], required
      - `email` string, email, required
      - `givenName` string, required
      - `familyName` string, required
      - `roles` LicenseRequestContactRole[], required
      - `displayName` string, nullable
  - `serialNumber` integer, nullable

## Response `200`

Signed license request to deliver manually to the license issuer.

- LicenseRequestResponse
  - `request` LicenseRequestPayload, required
    - `version` string, required
    - `requestId` string, required
    - `generatedAt` string, date-time, required
    - `deployment` LicenseRequestDeploymentScope, required
      - `id` string, nullable
      - `baseDomains` string[], required
    - `platformIssuer` string, uri, required
    - `tenant` LicenseRequestTenant, required
      - `name` string, required
      - `slug` string, required
    - `owner` LicenseRequestOwner, required
      - `email` string, email, required
      - `displayName` string, required
    - `contacts` LicenseRequestContact[], required
      - `email` string, email, required
      - `givenName` string, required
      - `familyName` string, required
      - `roles` LicenseRequestContactRole[], required
      - `displayName` string, nullable
    - `organizationName` string, nullable
    - `organizationUnit` string, nullable
    - `licenseDeliveryMethod` 'MANUAL', required
    - `localCertificate` LocalInstanceCertificate, required
      - `commonName` string, required
      - `organizationName` string, nullable
      - `organizationUnit` string, nullable
      - `locality` string, nullable
      - `state` string, nullable
      - `country` string, nullable
      - `email` string, nullable
      - `serialNumber` integer, required
    - `localPublicKey` LocalInstancePublicKey, required
      - `alias` string, required
      - `providerId` string, required
      - `kid` string, nullable
      - `publicJwk` object, required
    - `certificateSigningRequest` LicenseRequestCertificateSigningRequest, required
      - `derBase64` string, byte, required
      - `pem` string, required
      - `fingerprint` string, required
    - `licenseRecipient` LicenseRecipientPublicKey, required
      - `kid` string, required
      - `publicJwk` object, required
      - `thumbprint` string, required
      - `certificate` LicenseRecipientCertificate
        - `derBase64` string, byte, required
        - `pem` string, required
        - `chainBase64` string[], required
        - `fingerprint` string, required
  - `requestJson` string, required
  - `signature` LicenseRequestSignature, required
    - `algorithm` string, required
    - `keyId` string, nullable
    - `signatureBase64` string, byte, required
  - `artifactDigest` string, nullable

## Other responses

- `404` — Setup gate is closed.

## Changes

> 12 revisions in range; 2 could not be searched.

- **2026-06-19** `ef25767f07be` — 6 breaking, 3 warning, 4 info
  - added the new required request property `deployment/contacts`
  - added the new required request property `deployment/deployment`
  - removed the required property `request/administratorContact` from the response with the `200` status
  - removed the required property `request/deploymentId` from the response with the `200` status
  - …9 more
- **2026-06-15** `2dff14597aa9` — 5 breaking, 6 warning, 6 info
  - added the new required request property `deployment/administratorContact`
  - added the new required request property `deployment/technicalContact`
  - the request property `deployment/organizationName` became required
  - request property `deployment/organizationName` list-of-types was narrowed by removing types `null` from media type `application/json`
  - …13 more
- **2026-06-12** `e18dc47aad73` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/sphereon-opensource/apis/platform-setup-api/changes/license-request/generate/post.md)

---

[API](https://skmtc.dev/sphereon-opensource/apis/platform-setup-api.md) · [All operations](https://skmtc.dev/sphereon-opensource/apis/platform-setup-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/sphereon-opensource/platform-setup-api/revisions/f6d32c93ac68/schema)
