Skip to main content
POST
/
v1
/
authentication
Register App
curl --request POST \
  --url https://api.jtl-cloud.com/erp/v1/authentication \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'x-challengecode: <x-challengecode>' \
  --header 'x-tenant-id: <x-tenant-id>' \
  --data '
{
  "AppId": "<string>",
  "DisplayName": "<string>",
  "Description": "<string>",
  "Version": "<string>",
  "ProviderName": "<string>",
  "ProviderWebsite": "<string>",
  "MandatoryApiScopes": [
    "<string>"
  ],
  "AppIcon": "aSDinaTvuI8gbWludGxpZnk=",
  "LocalizedDisplayNames": [
    {
      "LanguageIso": "<string>",
      "Name": "<string>"
    }
  ],
  "LocalizedDescriptions": [
    {
      "LanguageIso": "<string>",
      "Name": "<string>"
    }
  ],
  "OptionalApiScopes": [
    "<string>"
  ],
  "RegistrationType": 0,
  "Signature": "aSDinaTvuI8gbWludGxpZnk=",
  "SignatureData": "2023-11-07T05:31:56Z"
}
'
{
  "AppId": "<string>",
  "RegistrationRequestId": "<string>",
  "Status": 0
}

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Headers

x-challengecode
string
required

You can enter any custom value here. The X-ChallengeCode is used during app registration and must be the same for all registration requests. The maximum length is 30 characters.

x-tenant-id
string<uuid>
required

The tenant ID for the target ERP instance.

Body

application/json

Contains the registration request's data

Model Class: CreateAppRegistrationRequest

AppId
string
required

Unique identifier of the application

DisplayName
string
required

Default display name of the application

Description
string
required

Default description of the application

Version
string
required

Version of the application to be registered

ProviderName
string
required

Name of the application's provider

ProviderWebsite
string
required

Website of the application's provider

MandatoryApiScopes
string[]
required

Mandatory required API scopes for the application to work

AppIcon
string<byte>
required

Base64 encoded data of an image.

LocalizedDisplayNames
object[]

Localized display names of the application

LocalizedDescriptions
object[]

Localized descriptions of the application

OptionalApiScopes
string[]

Optional (recommended) API scopes for the application

RegistrationType
enum<integer>

multiple instances of the application possible

Available options:
0,
1,
2,
3
Signature
string<byte>

The Signature of the App, it combines AppId.SignatureData like myApp/v1.2025-08-03T25:48:00 in UTC Time

SignatureData
string<date-time>

The Data as DateTimeOffset must be in a range from 10 Minutes equals, and is base for the Signature and must be in UTC Time

Response

Status of the registration process (including the unique identifiers for application and registration request)

Model Class: RegistrationRequestStatusInfo

AppId
string
required

Unique identifier of the application

RegistrationRequestId
string
required

Unique identifier of the registration request

Status
enum<integer>
required

Status of the registration process

Available options:
0,
1,
2