AppMaker API - OAS 3.0
Get a public presigned URL
File name
The base directory name to upload the file
tempThe params for the file upload
OK
Presigned URL
GET /api/v1/upload/presign/public?fileName=text HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
OK
{
"url": "text",
"fields": {
"bucket": "text",
"key": "text",
"X-Amz-Algorithm": "text",
"X-Amz-Credential": "text",
"X-Amz-Date": "text",
"X-Amz-Signature": "text",
"Policy": "text"
}
}Get a private presigned URL
File name
The base directory name to upload the file
tempThe params for the file upload
OK
Presigned URL
GET /api/v1/upload/presign/private?fileName=text HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
OK
{
"url": "text",
"fields": {
"bucket": "text",
"key": "text",
"X-Amz-Algorithm": "text",
"X-Amz-Credential": "text",
"X-Amz-Date": "text",
"X-Amz-Signature": "text",
"Policy": "text"
}
}Get a signed URL
Url
File name
OK
Signed URL
Unauthorized
GET /api/v1/download?url=text HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"url": "text"
}Get changelogs by user
The limit of per page
10OK
The total number of users
The limit of users per page
10Current page
1The total number of pages
Current page number
Has previous page
Has next page
Previous page number
Next page number
Unauthorized
Forbidden
GET /api/v1/changelogs HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"totalDocs": 1,
"limit": 10,
"page": 1,
"totalPages": 1,
"pagingCounter": 1,
"hasPrevPage": true,
"hasNextPage": true,
"prevPage": 1,
"nextPage": 1,
"docs": [
{
"_id": "63ea10b94a472e003305232b",
"targetVersion": "text",
"summary": "text",
"markdown": "text",
"rank": 0,
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
]
}Get a changelog by user
Entity ID
^[0-9a-fA-F]{24}$OK
Entity ID
63ea10b94a472e003305232bPattern: ^[0-9a-fA-F]{24}$Target version, formatted as semantic version
Changelog summary
Rank for sorting
0Date
Date
Unauthorized
Forbidden
Not Found
GET /api/v1/changelogs/{changelogId} HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"_id": "63ea10b94a472e003305232b",
"targetVersion": "text",
"summary": "text",
"markdown": "text",
"rank": 0,
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}Get notifications by user
The number of last days to fetch notifications from
Sort
{"value":"createdAt"}The limit of per page
10Current page number
1OK
The total number of users
The limit of users per page
10Current page
1The total number of pages
Current page number
Has previous page
Has next page
Previous page number
Next page number
Unauthorized
Forbidden
GET /api/v1/notifications HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"totalDocs": 1,
"limit": 10,
"page": 1,
"totalPages": 1,
"pagingCounter": 1,
"hasPrevPage": true,
"hasNextPage": true,
"prevPage": 1,
"nextPage": 1,
"docs": []
}Get organizations deployments by organization user
Entity ID
^[0-9a-fA-F]{24}$OK
The total number of users
The limit of users per page
10Current page
1The total number of pages
Current page number
Has previous page
Has next page
Previous page number
Next page number
Unauthorized
Forbidden
GET /api/v1/organizations/{organizationId}/deployments HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"totalDocs": 1,
"limit": 10,
"page": 1,
"totalPages": 1,
"pagingCounter": 1,
"hasPrevPage": true,
"hasNextPage": true,
"prevPage": 1,
"nextPage": 1,
"docs": [
{
"_id": "text",
"project": {
"_id": "text",
"name": "text",
"slug": "text",
"description": "text",
"organization": "text",
"credential": {},
"additionalCredentials": {},
"storeCredentials": {
"googlePlay": {
"googleServiceFile": "text",
"packageName": "text"
},
"appleAppStore": {
"keyId": "ABCDEFGHIJ",
"keyIssuerId": "12345678-1234-1234-1234-123456789012",
"apiKeyFile": "https://test-mobile-prv.s3.eu-central-1.amazonaws.com//_temp/b12ba00a-13ff-4e70-a2fc-41065b9d1e9d_b058caad-b7ba-4700-bb17-040206abb111_86851bc2-d08f-488c-9956-86ef6c7d5fc2_Akinon_shop_prod-(2)-(1).p8",
"keyInHouse": true,
"appIdentifier": "com.akinon.test",
"teamId": "ABCDEFGHIJ",
"teamName": "Akinon Team",
"appSpecificId": 1234567890
},
"huaweiAppGallery": {
"clientId": "text",
"clientSecret": "text"
}
},
"appStatuses": {
"android": {
"production": {
"createdAt": "text",
"deploymentId": "text",
"envVersion": "text",
"publishedAt": "text",
"publisher": "text",
"status": true,
"storeVersion": "text",
"tag": "text",
"updatedAt": "text",
"versionCode": 1
},
"staging": {
"createdAt": "text",
"deploymentId": "text",
"envVersion": "text",
"publishedAt": "text",
"publisher": "text",
"status": true,
"storeVersion": "text",
"tag": "text",
"updatedAt": "text",
"versionCode": 1
}
},
"huawei": {
"production": {
"createdAt": "text",
"deploymentId": "text",
"envVersion": "text",
"publishedAt": "text",
"publisher": "text",
"status": true,
"storeVersion": "text",
"tag": "text",
"updatedAt": "text",
"versionCode": 1
},
"staging": {
"createdAt": "text",
"deploymentId": "text",
"envVersion": "text",
"publishedAt": "text",
"publisher": "text",
"status": true,
"storeVersion": "text",
"tag": "text",
"updatedAt": "text",
"versionCode": 1
}
},
"ios": {
"production": {
"createdAt": "text",
"deploymentId": "text",
"envVersion": "text",
"publishedAt": "text",
"publisher": "text",
"status": true,
"storeVersion": "text",
"tag": "text",
"updatedAt": "text"
},
"staging": {
"createdAt": "text",
"deploymentId": "text",
"envVersion": "text",
"publishedAt": "text",
"publisher": "text",
"status": true,
"storeVersion": "text",
"tag": "text",
"updatedAt": "text"
}
}
},
"status": "draft",
"lastActivityAt": "2026-01-01T00:00:00.000Z",
"appIconUrl": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
},
"user": {
"_id": "text",
"username": "text",
"language": "text",
"region": "text",
"firstName": "text",
"lastName": "text",
"status": 0,
"attributes": {},
"avatarUrl": "text",
"settings": {
"mailOnBuildCompleted": true,
"mailOnCodePushCompleted": true
},
"lastLoginAt": "2026-01-01T00:00:00.000Z",
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
},
"parent": "text",
"description": "text",
"status": "pending",
"os": "android",
"buildTarget": "staging",
"deploymentType": "build",
"stages": [
{
"_id": "63ea10b94a472e003305232b",
"name": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
],
"startedAt": "2026-01-01T00:00:00.000Z",
"completedAt": "2026-01-01T00:00:00.000Z",
"abolisher": "text",
"forceUpdate": false,
"tag": "text",
"checksum": "text",
"size": 1,
"uploadDuration": 1,
"downloadUrl": "text",
"remoteId": 1,
"plugins": [
{
"name": "text",
"version": "text",
"moduleName": "text"
}
],
"issues": [
{
"type": "error",
"message": "text"
}
],
"timeline": [
{
"step": 1,
"startTime": "2026-01-01T00:00:00.000Z",
"finishTime": "2026-01-01T00:00:00.000Z",
"error": "text"
}
],
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z",
"versionCode": 1,
"javaVersion": "text",
"xcodeVersion": "text",
"extensions": [
"com.akinon.fashfed.RelatedDigitalNotificationExtension",
"com.akinon.fashfed.RelatedDigitalNotificationContent"
],
"envVersion": "text",
"storeVersion": "text",
"isLive": true,
"isOnStore": null
}
]
}Get organizations privileges by organization user
Entity ID
^[0-9a-fA-F]{24}$The limit of per page
10OK
Unauthorized
Forbidden
GET /api/v1/organizations/{organizationId}/privileges HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"organization": [
{
"id": "text",
"name": "text",
"description": "text",
"group": "administration"
}
]
}Init public multipart upload by organization user
Entity ID
^[0-9a-fA-F]{24}$File name
The base directory name to upload the file
tempThe part count to upload the chunked file. This is required for chunked file uploads.
The params for the file upload
OK
Upload urls
File bucket
File key
Upload Id
Bad Request
Unauthorized
Forbidden
GET /api/v1/organizations/{organizationId}/upload/multipart/presign/public?fileName=text HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"urls": [
"text"
],
"Bucket": "text",
"Key": "text",
"UploadId": "text"
}Init private multipart upload by organization user
Entity ID
^[0-9a-fA-F]{24}$File name
The base directory name to upload the file
tempThe part count to upload the chunked file. This is required for chunked file uploads.
The params for the file upload
OK
Upload urls
File bucket
File key
Upload Id
Bad Request
Unauthorized
Forbidden
GET /api/v1/organizations/{organizationId}/upload/multipart/presign/private?fileName=text HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"urls": [
"text"
],
"Bucket": "text",
"Key": "text",
"UploadId": "text"
}Complete public multipart upload by organization user
Entity ID
^[0-9a-fA-F]{24}$File key, formatted as .
test.apkUpload id
<uploadId>OK
File bucket
File ETag
File key
File location
https://examplebucket.s3.<Region>.amazonaws.com/bigobjectBad Request
Unauthorized
Forbidden
PUT /api/v1/organizations/{organizationId}/upload/multipart/complete/public HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 97
{
"key": "test.apk",
"uploadId": "<uploadId>",
"tags": [
{
"ETag": "<ETag>",
"PartNumber": "<PartNumber>"
}
]
}{
"Bucket": "text",
"ETag": "text",
"Key": "text",
"Location": "https://examplebucket.s3.<Region>.amazonaws.com/bigobject"
}Complete private multipart upload
Complete private multipart upload by organization user
Entity ID
^[0-9a-fA-F]{24}$File key, formatted as .
test.apkUpload id
<uploadId>OK
File bucket
File ETag
File key
File location
https://examplebucket.s3.<Region>.amazonaws.com/bigobjectBad Request
Unauthorized
Forbidden
PUT /api/v1/organizations/{organizationId}/upload/multipart/complete/private HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 97
{
"key": "test.apk",
"uploadId": "<uploadId>",
"tags": [
{
"ETag": "<ETag>",
"PartNumber": "<PartNumber>"
}
]
}{
"Bucket": "text",
"ETag": "text",
"Key": "text",
"Location": "https://examplebucket.s3.<Region>.amazonaws.com/bigobject"
}Get a public presigned URL
Entity ID
^[0-9a-fA-F]{24}$File name
The base directory name to upload the file
tempThe params for the file upload
OK
Presigned URL
GET /api/v1/organizations/{organizationId}/upload/presign/public?fileName=text HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
OK
{
"url": "text",
"fields": {
"bucket": "text",
"key": "text",
"X-Amz-Algorithm": "text",
"X-Amz-Credential": "text",
"X-Amz-Date": "text",
"X-Amz-Signature": "text",
"Policy": "text"
}
}Get a private presigned URL
Entity ID
^[0-9a-fA-F]{24}$File name
The base directory name to upload the file
tempThe params for the file upload
OK
Presigned URL
GET /api/v1/organizations/{organizationId}/upload/presign/private?fileName=text HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
OK
{
"url": "text",
"fields": {
"bucket": "text",
"key": "text",
"X-Amz-Algorithm": "text",
"X-Amz-Credential": "text",
"X-Amz-Date": "text",
"X-Amz-Signature": "text",
"Policy": "text"
}
}Create a ticket for help center by organization user
Entity ID
^[0-9a-fA-F]{24}$The type
The ticket message
This is a ticket messageThe s3 file url
https://example.com/attachment.pngOK
No content
Bad Request
Unauthorized
Forbidden
POST /api/v1/organizations/{organizationId}/help-center/feedback/{type} HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 85
{
"message": "This is a ticket message",
"files": [
"https://example.com/attachment.png"
]
}No content
Get plugins by organization user
The limit of per page
10Current page number
1Text
Organization ID
OK
The total number of users
The limit of users per page
10Current page
1The total number of pages
Current page number
Has previous page
Has next page
Previous page number
Next page number
Unauthorized
Forbidden
GET /api/v1/plugins HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"totalDocs": 1,
"limit": 10,
"page": 1,
"totalPages": 1,
"pagingCounter": 1,
"hasPrevPage": true,
"hasNextPage": true,
"prevPage": 1,
"nextPage": 1,
"docs": [
{
"isPrivate": true,
"readme": "text",
"isVisible": true,
"_id": "63ea10b94a472e003305232b",
"name": "text",
"organization": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z",
"lastDependencyPackage": {
"assetUrl": "text",
"isPrivate": true,
"readme": "text",
"_id": "63ea10b94a472e003305232b",
"versionNumber": "text",
"publisher": {
"_id": "63ea10b94a472e003305232b",
"firstName": "text",
"lastName": "text"
},
"dependency": "63ea10b94a472e003305232b",
"checksum": "text",
"rank": 1,
"envVersionNumber": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
},
{
"organization": {
"_id": "text",
"name": "text",
"slug": "text",
"description": "text",
"owner": "text",
"isExecutive": false,
"status": 0,
"privileges": [
"project:read",
"project:write"
],
"imageUrl": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
}
]
}Get plugins owners by organization user
OK
The total number of users
The limit of users per page
10Current page
1The total number of pages
Current page number
Has previous page
Has next page
Previous page number
Next page number
Unauthorized
Forbidden
GET /api/v1/plugins/owners HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"totalDocs": 1,
"limit": 10,
"page": 1,
"totalPages": 1,
"pagingCounter": 1,
"hasPrevPage": true,
"hasNextPage": true,
"prevPage": 1,
"nextPage": 1,
"docs": [
{
"_id": "63ea10b94a472e003305232b",
"name": "text"
}
]
}Get a plugin by organization user
Entity ID
^[0-9a-fA-F]{24}$OK
Dependency is private
Dependency readme
Dependency is visible
Entity ID
63ea10b94a472e003305232bPattern: ^[0-9a-fA-F]{24}$Dependency name
Organization id
Date
Date
Unauthorized
Forbidden
Not Found
GET /api/v1/plugins/{pluginId} HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"isPrivate": true,
"readme": "text",
"isVisible": true,
"_id": "63ea10b94a472e003305232b",
"name": "text",
"organization": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z",
"lastDependencyPackage": {
"assetUrl": "text",
"isPrivate": true,
"readme": "text",
"_id": "63ea10b94a472e003305232b",
"versionNumber": "text",
"publisher": {
"_id": "63ea10b94a472e003305232b",
"firstName": "text",
"lastName": "text"
},
"dependency": "63ea10b94a472e003305232b",
"checksum": "text",
"rank": 1,
"envVersionNumber": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
}Get plugin packages by organization user
Entity ID
^[0-9a-fA-F]{24}$The limit of per page
10Current page number
1Sort
{"value":"createdAt"}Version number
Env version number
OK
The total number of users
The limit of users per page
10Current page
1The total number of pages
Current page number
Has previous page
Has next page
Previous page number
Next page number
Unauthorized
Forbidden
Not Found
GET /api/v1/plugins/{dependencyId}/packages HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"totalDocs": 1,
"limit": 10,
"page": 1,
"totalPages": 1,
"pagingCounter": 1,
"hasPrevPage": true,
"hasNextPage": true,
"prevPage": 1,
"nextPage": 1,
"docs": [
{
"assetUrl": "text",
"isPrivate": true,
"readme": "text",
"_id": "63ea10b94a472e003305232b",
"versionNumber": "text",
"publisher": {
"_id": "63ea10b94a472e003305232b",
"firstName": "text",
"lastName": "text"
},
"dependency": "63ea10b94a472e003305232b",
"checksum": "text",
"rank": 1,
"envVersionNumber": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
]
}Get a upgrade diff
The tags to search, formatted as '..'
tag1..tag2OK
Bad Request
GET /api/v1/upgrade-helper/{tag} HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
textGet upgrade versions
The limit of per page
10OK
Bad Request
GET /api/v1/upgrade-helper/versions HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
{}
]Get a file
File path
src/v5.3.2/src/pages/homePage/widgets/imageLinkCategoryBanner/index.jsOK
Bad Request
GET /api/v1/upgrade-helper/file/{filePath} HTTP/1.1
Host: abp-api.akinon.net
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
textLast updated
Was this helpful?

