Create and Publish an Application Listing

You can create an application listing with basic, required information and then add optional content like screenshots and banners. After a Marketplace administrator approves the application listing, you can publish it.

To create and publish an application listing:

  1. Create an Application Listing

  2. Upload an Icon

  3. Create Screenshots and Videos

  4. Create a Banner

  5. Add Related Documents

  6. Submit the Application Listing for Approval

  7. Publish the Application Listing to Marketplace

Create an Application Listing

The Create Application API creates a new application listing with basic information.

POST	/appstore/publisher/v1/applications

Request Headers

Header Name Data Type Remarks Sample Data

Authorization

String

Authorization token

Bearer access_token

X-Oracle-UserId

String

Partner login email

partneruser.email@oracle.com

Content-Type

String

Content type allowed

application/jsonapplication/xml

charset

String

Character encoding

utf-8

Cache-Control

String

no-cache

Request Payload

{
    "name": "DocumentManager",
    "shortDescription": "DocumentManager is a simple solution for keeping all your photos organized.???",
    "longDescription": "You can use DocumentManager to keep all files, including media files, organized. It can search, organize, share, and synch files across devices too.",
    "pricing": {
        "type": "PAYGO",
        "pricingRate": 0.28,
        "pricingStrategy": "PER_OCPU_LINEAR",
        "ociListing": true
    },
    "products": [
        {
            "code": "compute",
            "categories": [
                {
                    "code": "VIRTUAL_MACHINES"
                }
            ]
        }
    ],
    "support": {
        "contacts": [
            {
                "email": "support@docmanager.com",
                "name": "DocumentManager Support",
                "subject": "Document Manager Application"
            }
        ],
        "links": [
            {
                "name": "Document Manager",
                "url": "https://support.documentmanager.com"
            }
        ]
    },
    "systemRequirements": "Oracle Cloud<br/>Minimum profile: General OC3 | 1 OCPU, 7.5 Gb RAM, 60 GB Local Disk ",
    "deviceType": {
        "code": "BROWSER"
    },
    "languages": [
        {
            "code": "en_US"
        }
    ],
    "tagLine": "The most popular documents manager",
    "tags": "Files, Documents, Cloud",
    "versionDetails": {
        "description": "<a target=\"_blank\" href=\"https://DocumentManager.com/changelog.txt\">Change Log</a>",
        "releaseDate": "2013-06-30T07:00:00.000Z",
        "versionNumber": "16.2 Document Manager"
    },
    "demoURL": "https://www.youtube.com/watch?v=Re4UA6_sD1E"
}

The description of the Create Application endpoint describes properties that can provide basic information in the request payload.

Response

Response Details

Headers

Content-Type, Content-Encoding, Location

Status: 201, 400, 401, 403, 404, 405, 500

Status Codes describes when each of these HTTP status codes is returned.

Payload

{"message":"Listing creation successful.",
"entityId":"(int)",
"name":"DocumentManager"}

The entityId value returned in this response is an application ID that can be used in other REST APIs to add to, update, or delete from this application listing.

Upload an Icon

The Create Icon API uploads an icon for the application listing that the Create Application API created.

POST /appstore/publisher/v1/applications/entityId/icon

The entityId value is the application ID returned in the result of the Create Application API call.

Request Headers

Header Name Data Type Remarks Sample Data

Authorization

String

Authorization token

Bearer access_token

X-Oracle-UserId

String

Partner login email

partneruser.email@oracle.com

Content-Type

String

Content type allowed

Multipart/form-data

Cache-Control

String

no-cache

Request Payload

image=@icon absolute path

Response

Response Details

Headers

Content-Type, Content-Encoding, Location

Status: 201, 400, 401, 403, 404, 405, 500

Status Codes describes when each of these HTTP status codes is returned.

Payload

{"message":"Icon upload was successful.", "entityId": (int)}

Create Screenshots and Videos

The Create Screenshot API uploads a screenshot and video for the application listing that the Create Application API created.

POST	/appstore/publisher/v1/applications/entityId/screenshots

The entityId value is the application ID returned in the result of the Create Application API call.

Request Headers

Header Name Data Type Remarks Sample Data

Authorization

String

Authorization token

Bearer access_token

X-Oracle-UserId

String

Partner login email

partneruser.email@oracle.com

Content-Type

String

Content type allowed

Multipart/form-data

Cache-Control

String

no-cache

Request Payload

image=@screenshot absolute path
[
 {
   "name": "screen_shots_1", 
   "description": " screen_shots_1 create",
   "fileName": " screen_shots_1.png",
   "sourceType": "INTERNAL"
 },
 {
   "name":"YouTube video",
   "description":"YouTube video create",
   "sourceType":"EXTERNAL",
   "sourceURL":https://www.youtube.com/watch?v=Re4UA6_sD1E
 }
]

Response

Response Details

Headers

Content-Type, Content-Encoding, Location

Status: 201, 400, 401, 403, 404, 405, 500

Status Codes describes when each of these HTTP status codes is returned.

Payload

  "items": [
    {
      "acknowledgement": {
        "entityId": "8435204",
        "name": "Youtube video"
      }
    },
    {
      "acknowledgement": {
        "entityId": "8435206",
        "name": "sh2"
      }
    }
  ],
  "hasMore": false,
  "count": 0,
  "totalResults": 0,
  "links": [
    {
      "rel": "CANONICAL",
      "href": "https://ocm-apis-cloud.oracle.com/appstore/publisher/v1/applications/8432130/screenshots"
    },
    {
      "rel": "SELF",
      "href": "https://ocm-apis-cloud.oracle.com/appstore/publisher/v1/applications/8432130/screenshots"
    }
  ]
}

Create a Banner

An application listing can have a banner that shows up at the top of the Application Listings Detail page. The Create Banner API adds a banner to the listing.

POST	/appstore/publisher/v1/applications/entityId/banner

The entityId value is the application ID returned in the result of the Create Application API call.

Request Headers

Header Name Data Type Remarks Sample Data

Authorization

String

Authorization token

Bearer access_token

X-Oracle-UserId

String

Partner login email

partneruser.email@oracle.com

Content-Type

String

Content type allowed

Multipart/form-data

Cache-Control

String

no-cache

Request Payload

image=@banner absolute path
{     "name": "Banner"  }

Response

Response Details

Headers

Content-Type, Content-Encoding, Location

Status: 201, 400, 401, 403, 404, 405, 500

Status Codes describes when each of these HTTP status codes is returned.

Payload

{"message":"Banner upload was successful.",
"entityId": (int)}

Add Related Documents

An application listing can have related documents, which could be white papers, case studies, and so on. The Create Application Related Docs API adds these documents.

POST	/appstore/publisher/v1/applications/entityId/relateddocs

The entityId value is the application ID returned in the result of the Create Application API call.

Request Headers

Header Name Data Type Remarks Sample Data

Authorization

String

Authorization token

Bearer access_token

X-Oracle-UserId

String

Partner login email

partneruser.email@oracle.com

Content-Type

String

Content type allowed

Multipart/form-data

Cache-Control

String

no-cache

Request Payload

 [ 
  { 
    "name":"related_docs_1",
    "description":"related_docs_1 create",
    "sourceType":"INTERNAL",
    "contentType ":"USER_GUIDES",
    "fileName": "file1.pdf"
  },
  { 
    "name":" e40540",
    "description":"related_docs_2 create",
    "sourceType":"EXTERNAL",
    "contentType":"USER_GUIDES",
    "sourceURL": "https://docs.oracle.com/cd/E11882_01/server.112/e40540.pdf"
  }
]

Response

Response Details

Headers

Content-Type, Content-Encoding, Location

Status: 201, 400, 401, 403, 404, 405, 500

Status Codes describes when each of these HTTP status codes is returned.

Payload

"items": [
    {
      "acknowledgement": {
        "entityId": "3451142",
        "name": "e40540",
        "uri": "https://docs.oracle.com/cd/E11882_01/server.112/e40540.pdf"
      }
    },
    {
      "acknowledgement": {
        "entityId": "3451144",
        "name": "related_docs_1"
      }
    }
  ],
  "hasMore": false,
  "count": 2,
  "totalResults": 2,
  "links": [
    {
      "rel": "CANONICAL",
      "href": "host/appstore/publisher/v1/applications/3450697/relateddocs"
    },
    {
      "rel": "SELF",
      "href": "host/appstore/publisher/v1/applications/3450697/relateddocs"
    }
  ]
}

Submit the Application Listing for Approval

After an application listing has all the required information and additional content, the Update Application State API submits the listing for approval by a Marketplace administrator. Once approved, the application listing is ready for publishing. If the application listing is rejected, you can edit and submit it again for approval..

/appstore/publisher/v1/applications/entityId

The entityId value is the application ID returned in the result of the Create Application API call.

Request Headers

Header Name Data Type Remarks Sample Data

Authorization

String

Authorization token

Bearer access_token

X-Oracle-UserId

String

Partner login email

partneruser.email@oracle.com

Content-Type

String

Content type allowed

Multipart/form-data

Cache-Control

String

no-cache

Request Payload

{
 "action": "submit",
  "note": ???<any submission notes for admin>???  
}

Response

Response Details

Headers

Content-Type, Content-Encoding, Location

Status: 201, 400, 401, 403, 404, 405, 500

Status Codes describes when each of these HTTP status codes is returned.

Payload

{"message":"Submit operation successful.", "entityId": (int)} 

The value of entityId is used in the Update Application State API call to publish the application listing.

Publish the Application Listing to Marketplace

Once a Marketplace administrator has approved the submitted application listing, it???s ready for publishing to Marketplace. The Update Application State API publishes the application listing to Marketplace.

PATCH	/appstore/publisher/v1/applications/entityId

The entityId value is the application ID returned in the result of the Create Application API call.

Request Headers

Header Name Data Type Remarks Sample Data

Authorization

String

Authorization token

Bearer access_token

X-Oracle-UserId

String

Partner login email

partneruser.email@oracle.com

Content-Type

String

Content type allowed

Multipart/form-data

Cache-Control

String

no-cache

Request Payload

{
  "action": "publish"
}

Response

Response Details

Headers

Content-Type, Content-Encoding, Location

Status: 201, 400, 401, 403, 404, 405, 500

Status Codes describes when each of these HTTP status codes is returned.

Payload

{"message":"Publish operation successful.",
"entityId": (int)}

This entityId value is used in the Update Application State API.