๐Ÿ’ก Publish your app

You will find here a complete guide to publish your private app on Edusign's App Marketplace.

How to publish a private app

We are assuming that you have already created a private application on Edusign, if you haven't yet, you can follow our complete guide to create your private app first.

Step 1 : Access the "Publish" tab

The first step is to head toward the details of your private app :

Step 2: Complete the inputs

We defined a list of mandatory information to provide for reviewing :

Global informations :

  • Payment : Is your app free of charge to use or not
  • App name
  • Category : In which category fits your app
  • Informations regarding the creator of the app or the company (name, email and website)
  • A logo for your app
  • Short description : The short description displayed on the homepage of the App Marketplace
  • Description : The description displayed in the details of your app on the app marketplace
  • Technical contact email : The email must be valid for publishing the app
  • Redirection URL(s)

Technical information :

  • The link(s) to the following elements :
    • Documentation regarding your app
    • Terms of Uses of your app
    • Privacy Policy of your app
    • Support regarding your app
    • Installation and uninstallation URLs : Webhooks allowing to call your services when a new user install or uninstall your app

Installation URL :

 Using the "/install" POST route, we receive the following informations in the body via webhook:
{
  "schoolId": "008fh3ju17xfe415q",
  "client_id": "vtpgjb8uq7h10at7",
  "client_secret": "eb4835bf-e0da-444f-9039-fd41e63946f1",
  "token": "16553b3d825f237c7bfe3b0961046a0294ccf97bf5c5642092a006a8ec6eb3b6",
  "parametersValues": {
    "PARAMETER_TEST": "example value"
  },
  "parameters": [
    {
      "NAME": "PARAMETER_TEST",
      "LABEL": "Parameter Test",
      "OPTIONS": "",
      "TYPE": "text",
      "LINK": null
    }
  ],
}

Example "/install" route to save the credentials :
const routeInstall = async (body: any) => {
  try {
    const { schoolId, token } = body;
    await db('[micro_app_name]_credentials').insert({ school_id: schoolId, api_key: token });
    return "App successfully installed";
  } catch (error) {
    throw new Error('Error installing app');
  }
}

Uninstallation URL :

 Using the "/uninstall" POST route, we receive the following informations in the body via webhook:
{
  "schoolId": "008fh3ju17xfe415q",
  "client_id": "vtpgjb8uq7h10at7",
  "client_secret": "eb4835bf-e0da-444f-9039-fd41e63946f1",
  "token": "16553b3d825f237c7bfe3b0961046a0294ccf97bf5c5642092a006a8ec6eb3b6"
}

Example "/uninstall" route to remove the credentials and other table entries :
const routeUninstall = async (body: any) => {
  try {
    const { schoolId } = body;
    await db('[micro_app_name]_documents').where('school_id', schoolId).del();
    await db('[micro_app_name]_credentials').where('school_id', schoolId).del();
    return 'App successfully uninstalled';
  } catch (error) {
    throw new Error('Error uninstalling app');
  }
}

Testing process :

  • Everything here you find relevant to list in order to let our teams test your app (testing account, a procedure, data, etc.)

๐Ÿ“–

Don't be afraid to provide details

Our dedicated teams will review your app before publishing it on our Marketplace.
Providing a relevant level of information will help us review your app faster !

Step 3: Submit your app for review

Our goal is to ensure that your application respects our publishing guidelines and provides the best user experience.

  • If your app is published: Congratulations your app is publicly available for installation from Edusign's app marketplace!
  • If your app is refused: You will receive an email in order to explain why your app was refused.
    You can, of course, update your publishing form in order to correct the input(s) and submit your app again for a new review by our teams.