Page tree
Skip to end of metadata
Go to start of metadata

API : Application Resources

DELETE /rest/apps/:apiKey

Description

Deletes the Application Key from the authenticated user. This sets the Application Key .deleted status to true.

URI Parameters
  • apiKey < string >: The Application Key ID.
Parameters

None

Return Format
  • status < integer >: The status that indicates success or failure
    • value = 0: Failure state. This displays message.
    • value = 1: Success state. This displays content.

  • message < string >: Error message when status is unsuccessful.
Example DELETE Request Body

No example parameters to show.

GET /rest/apps/:apiKey

Description

Gets the Application Key information from the authenticated user.

Note that other users can view the Application Key ID and name if they know the Application Key ID

URI Parameters
  • apiKey < string >: The Application Key ID.
Parameters

None

Return Format
  • status < integer >: The status that indicates success or failure
    • value = 0: Failure state. This displays message.
    • value = 1: Success state. This displays content.

  • message < string >: Error message when status is unsuccessful.

  • content < JSON >: The Application Key information.

    • appid < string >: The Application Key ID.

    • appname < string >: The Application Key name.

    • created < string >: The Application Key created datetime stamp in ISO String.

    • update < string >: The Application Key created datetime stamp in ISO String.

    • deleted < boolean >: If true, it means that the Application Key is deleted.

    • parent < string >: The parent Application Key. If the Application Key is parent key, the value will be "root", else the Application Key is an alias key.

    • corsurl < string >: For client-side only web applications you need to specify the domain-name that will be accessing our APIs. (Cross-Origin-Resource-Sharing). No spaces in-between. E.g www.myapp.com,myapp.com,localhost.

    • region < string > (Default: "us2"): [This is not longer required as automatic region selection is implemented] The server region the Application Key connects to.
      • value = "us2": United States, West Coast
      • value = "sg": APAC, Singapore - experimenetal.

    • platform < string >: The platform the key will be used with. Use alias-keys to have access the same realm from apps on other platforms.
      • value = "web": The application is built on the Web platform.
      • value = "android": The application is built on the Android platform.
      • value = "ios": The application is built on the iOS platform.
      • value = "other": The application is built on other platforms not specified.

    • description < string >: The description what the Application Key is built for and what it does.

    • link < string >: The platform application website URL. !! Optional parameter.

    • category < string >: The category field the application serves for. 
      • value = "-": N/A.
      • value = "autoVehicles": Autos & Vehicles
      • value = "beautyFitness": Beauty & Fitness'
      • value = "booksLiterature": Books & Literature
      • value = "businessIndustry": Business & Industry
      • value = "computers": Computers
      • value = "consumerElectronics": Consumer Electronics
      • value = "education": Education
      • value = "entertainment": Entertainment
      • value = "finance": Finance
      • value = "foodDrink": Food & Drink
      • value = "games": Games
      • value = "health": Health
      • value = "homeGarden": Home & Garden
      • value = "internetServices": Internet Services
      • value = "jobs": Jobs
      • value = "lawGovernment": Law & Government
      • value = "news": News
      • value = "onlineCommunites": Online Communities
      • value = "petsAnimals": Pets & Animals
      • value = "realEstate": Real Estate
      • value = "shopping": Shopping
      • value = "sports": Sports
      • value = "telecommunications": Telecommunications
      • value = "travel": Travel
      • value = "other" Other

    • estimatedUsers < integer >: How many active users expected roughly for the application.
      • value = -1: N/A.
      • value = 0: It's a new application.
      • value = 500: 0 - 500 range.
      • value = 5000: 501 - 5,000 range.
      • value = 50000: 5,001 - 50,000 range.
      • value = 500000: 50,001 - 500,000 range.
      • value = 5000000: 500,001 - 5,000,000 range.
      • value = 50000000: 5,000,000 or more range.

    • room < boolean >: If selected, room contexts will be created based on scheduled times instead of active sessions. The scheduling of which is done via the SDK methods or direct REST API calls. Any given key can support either dynamic or persistent rooms but not both. This option can be changed at any time however changing it from persistent to dynamic will destroy any currently schedule room contexts.

    • space < boolean > (Default: "ON")[The shared realm feature is currently unavailable till we upgrade our key management systems, and it will return as "isolate this key" in the near future]
      Create rooms in the realm of the parent API key instead of an isolated realm. !! Only for alias Application Keys. Read more at the API keys, alias keys, realms, rooms and peers section.

    • mcu < string > (Default: "OFF"): [The MCU feature is only configurable by parent key]
      If selected, the MCU will be used for any rooms accessing with this Application Key.
      • value = "OFF": MCU is turned off for this Application Key.
      • value = "ON": MCU is turned on for this Application Key.

    • turn < string >: If "ON", TURN will be used for any rooms accessing with this Application Key.
      • value = "OFF": TURN is turned off for this Application Key.
      • value = "ON": TURN is turned on for this Application Key.

    • expire < string >: The expiry date of the Application Key.

    • status: The Application Key active status.
      • value = "enable": This Application Key is enabled.

    • secret < string >: [Previously was token < string >] The Application Key secret.

    • totalusage < integer >: The total usage (in minutes) accumulated for the last 30 days.

    • username < string >: The username that creates this Application Key.

    • isPrivileged < boolean > (Default: false): If true, the peer using the key becomes privileged peer and can utilise privileged key features like for example in the Web SDK: getPeers() and introduce(). !! Only for alias Application Keys.

    • autoIntroduce < boolean > (Default: true): If false, the peer using this key will not automatically initiate the peer connection with other peers in the room. To connect to other peers, this peer needs to be introduced by another privileged peer. !! Only for alias Application Keys.
Example GET Request Body

No example parameters to show.

GET /rest/apps/

Description

Gets the list of Application Keys from the authenticated user.

Parameters

None

Return Format
  • status < integer >: The status that indicates success or failure
    • value = 0: Failure state. This displays message.
    • value = 1: Success state. This displays content.

  • message < string >: Error message when status is unsuccessful.

  • content < Array >: The list of Application Keys.

    • (#index) < JSON >: The Application Key.

      • appid < string >: The Application Key ID.

      • parent < string >: The parent Application Key. To figure if the key is a parent key, you may check if value is "root" or null.

      • appname < string >: The Application Key name.
Example GET Request Body

No example parameters to show.

POST /rest/apps/

Description

Creates a new Application Key for the authenticated user.

Parameters
  • parent< string >: The parent Application Key. !! Only required for alias Application Key creation.

  • appname < string >: The Application Key name.

  • corsurl < string >: For client-side only web applications you need to specify the domain-name that will be accessing our APIs. (Cross-Origin-Resource-Sharing). No spaces in-between. E.g www.myapp.com,myapp.com,localhost.

  • platform < string >: The platform the key will be used with. Use alias-keys to have access the same realm from apps on other platforms.
    • value = "web": The application is built on the Web platform.
    • value = "android": The application is built on the Android platform.
    • value = "ios": The application is built on the iOS platform.
    • value = "other": The application is built on other platforms not specified.

  • description < string >: The description what the Application Key is built for and what it does.

  • link < string >: The platform application website URL. !! Optional parameter.

  • category < string >: The category field the application serves for. 
    • value = "-": N/A.
    • value = "autoVehicles": Autos & Vehicles
    • value = "beautyFitness": Beauty & Fitness'
    • value = "booksLiterature": Books & Literature
    • value = "businessIndustry": Business & Industry
    • value = "computers": Computers
    • value = "consumerElectronics": Consumer Electronics
    • value = "education": Education
    • value = "entertainment": Entertainment
    • value = "finance": Finance
    • value = "foodDrink": Food & Drink
    • value = "games": Games
    • value = "health": Health
    • value = "homeGarden": Home & Garden
    • value = "internetServices": Internet Services
    • value = "jobs": Jobs
    • value = "lawGovernment": Law & Government
    • value = "news": News
    • value = "onlineCommunites": Online Communities
    • value = "petsAnimals": Pets & Animals
    • value = "realEstate": Real Estate
    • value = "shopping": Shopping
    • value = "sports": Sports
    • value = "telecommunications": Telecommunications
    • value = "travel": Travel
    • value = "other" Other

  • estimatedUsers< integer >: How many active users expected roughly for the application.
    • value = -1: N/A.
    • value = 0: It's a new application.
    • value = 500: 0 - 500 range.
    • value = 5000: 501 - 5,000 range.
    • value = 50000: 5,001 - 50,000 range.
    • value = 500000: 50,001 - 500,000 range.
    • value = 5000000: 500,001 - 5,000,000 range.
    • value = 50000000: 5,000,000 or more range.

  • room < boolean >: If selected, room contexts will be created based on scheduled times instead of active sessions. The scheduling of which is done via the SDK methods or direct REST API calls. Any given key can support either dynamic or persistent rooms but not both. This option can be changed at any time however changing it from persistent to dynamic will destroy any currently schedule room contexts.

  • space < boolean > (Default: "ON"): [The shared realm feature is currently unavailable till we upgrade our key management systems, and it will return as "isolate this key" in the near future]
    Create rooms in the realm of the parent API key instead of an isolated realm. !! Only for alias Application Keys.Read more at the API keys, alias keys, realms, rooms and peers section.

  • mcu < string > (Default: "OFF"): [The MCU feature is only configurable by parent key]
    If selected, the MCU will be used for any rooms accessing with this Application Key.
    • value = "OFF": MCU is turned off for this Application Key.
    • value = "ON": MCU is turned on for this Application Key.

  • isPrivileged < boolean > (Default: false): If true, the peer using the key becomes privileged peer and can utilise privileged key features like for example in the Web SDK: getPeers() and introduce(). !! Only for alias Application Keys.

  • autoIntroduce < boolean > (Default: true): If false, the peer using this key will not automatically initiate the peer connection with other peers in the room. To connect to other peers, this peer needs to be introduced by another privileged peer. !! Only for alias Application Keys.
Return Format
  • status < integer >: The status that indicates success or failure
    • value = 0: Failure state. This displays message.
    • value = 1: Success state. This displays content.

  • message < string >: Error message when status is unsuccessful.

  • content < JSON >: The Application Key information.

    • appid < string >: The Application Key ID.

    • appname < string >: The Application Key name.

    • created < string >: The Application Key created datetime stamp in ISO String.

    • update < string >: The Application Key created datetime stamp in ISO String.

    • deleted < boolean >: If true, it means that the Application Key is deleted.

    • parent < string >: The parent Application Key. If the Application Key is parent key, the value will be "root", else the Application Key is an alias key.

    • corsurl < string >: For client-side only web applications you need to specify the domain-name that will be accessing our APIs. (Cross-Origin-Resource-Sharing). No spaces in-between. E.g www.myapp.com,myapp.com,localhost.

    • region < string > (Default: "us2")[This is not longer required as automatic region selection is implemented] The server region the Application Key connects to.
      • value = "us2": United States, West Coast
      • value = "sg": APAC, Singapore - experimenetal.

    • platform < string >: The platform the key will be used with. Use alias-keys to have access the same realm from apps on other platforms.
      • value = "web": The application is built on the Web platform.
      • value = "android": The application is built on the Android platform.
      • value = "ios": The application is built on the iOS platform.
      • value = "other": The application is built on other platforms not specified.

    • description < string >: The description what the Application Key is built for and what it does.

    • link < string >: The platform application website URL. !! Optional parameter.

    • category < string >: The category field the application serves for. 
      • value = "-": N/A.
      • value = "autoVehicles": Autos & Vehicles
      • value = "beautyFitness": Beauty & Fitness'
      • value = "booksLiterature": Books & Literature
      • value = "businessIndustry": Business & Industry
      • value = "computers": Computers
      • value = "consumerElectronics": Consumer Electronics
      • value = "education": Education
      • value = "entertainment": Entertainment
      • value = "finance": Finance
      • value = "foodDrink": Food & Drink
      • value = "games": Games
      • value = "health": Health
      • value = "homeGarden": Home & Garden
      • value = "internetServices": Internet Services
      • value = "jobs": Jobs
      • value = "lawGovernment": Law & Government
      • value = "news": News
      • value = "onlineCommunites": Online Communities
      • value = "petsAnimals": Pets & Animals
      • value = "realEstate": Real Estate
      • value = "shopping": Shopping
      • value = "sports": Sports
      • value = "telecommunications": Telecommunications
      • value = "travel": Travel
      • value = "other" Other

    • estimatedUsers < integer >: How many active users expected roughly for the application.
      • value = -1: N/A.
      • value = 0: It's a new application.
      • value = 500: 0 - 500 range.
      • value = 5000: 501 - 5,000 range.
      • value = 50000: 5,001 - 50,000 range.
      • value = 500000: 50,001 - 500,000 range.
      • value = 5000000: 500,001 - 5,000,000 range.
      • value = 50000000: 5,000,000 or more range.

    • room < boolean >: If selected, room contexts will be created based on scheduled times instead of active sessions. The scheduling of which is done via the SDK methods or direct REST API calls. Any given key can support either dynamic or persistent rooms but not both. This option can be changed at any time however changing it from persistent to dynamic will destroy any currently schedule room contexts.

    • space < boolean > (Default: "ON")[The shared realm feature is currently unavailable till we upgrade our key management systems, and it will return as "isolate this key" in the near future]
      Create rooms in the realm of the parent API key instead of an isolated realm. !! Only for alias Application Keys. Read more at the API keys, alias keys, realms, rooms and peers section.

    • mcu < string > (Default: "OFF"): [The MCU feature is only configurable by parent key]
      If selected, the MCU will be used for any rooms accessing with this Application Key.
      • value = "OFF": MCU is turned off for this Application Key.
      • value = "ON": MCU is turned on for this Application Key.

    • turn < string >: If "ON", TURN will be used for any rooms accessing with this Application Key.
      • value = "OFF": TURN is turned off for this Application Key.
      • value = "ON": TURN is turned on for this Application Key.

    • expire < string >: The expiry date of the Application Key.

    • status: The Application Key active status.
      • value = "enable": This Application Key is enabled.

    • token < string >: [Same as secret < string >] The Application Key secret.

    • totalusage < integer >: The total usage (in minutes) accumulated for the last 30 days.

    • username < string >: The username that creates this Application Key.

    • isPrivileged < boolean > (Default: false): If true, the peer using the key becomes privileged peer and can utilise privileged key features like for example in the Web SDK: getPeers() and introduce(). !! Only for alias Application Keys.

    • autoIntroduce < boolean > (Default: true): If false, the peer using this key will not automatically initiate the peer connection with other peers in the room. To connect to other peers, this peer needs to be introduced by another privileged peer. !! Only for alias Application Keys.
Example POST Request Body

For Content-Type: application/json example, here's the values passed:

{
  "parent": "parent_key_id",
  "appname": "My Awesome Application",
  "corsurl": "domain.com",
  "type": "default", // always required for creating application keys
  "region": "sg",
  "static": true // persistent
}

For Content-Type: application/x-www-form-urlencoded; charset=UTF-8 example, here's the values passed:

?&parent=parent_key_id&appname=My%20Awesome%20Application&corsurl=domain.com&type=default&region=sg&static=true

PUT /rest/apps/:apiKey

Description

Updates an existing Application Key from the authenticated user.

URI Parameters
  • apiKey : string - The Application Key ID.
Parameters
  • appname < string >: The Application Key name.

  • corsurl < string >: For client-side only web applications you need to specify the domain-name that will be accessing our APIs. (Cross-Origin-Resource-Sharing). No spaces in-between. E.g www.myapp.com,myapp.com,localhost.

  • platform < string >: The platform the key will be used with. Use alias-keys to have access the same realm from apps on other platforms.
    • value = "web": The application is built on the Web platform.
    • value = "android": The application is built on the Android platform.
    • value = "ios": The application is built on the iOS platform.
    • value = "other": The application is built on other platforms not specified.

  • description < string >: The description what the Application Key is built for and what it does.

  • link < string >: The platform application website URL. !! Optional parameter.

  • category < string >: The category field the application serves for. 
    • value = "-": N/A.
    • value = "autoVehicles": Autos & Vehicles
    • value = "beautyFitness": Beauty & Fitness'
    • value = "booksLiterature": Books & Literature
    • value = "businessIndustry": Business & Industry
    • value = "computers": Computers
    • value = "consumerElectronics": Consumer Electronics
    • value = "education": Education
    • value = "entertainment": Entertainment
    • value = "finance": Finance
    • value = "foodDrink": Food & Drink
    • value = "games": Games
    • value = "health": Health
    • value = "homeGarden": Home & Garden
    • value = "internetServices": Internet Services
    • value = "jobs": Jobs
    • value = "lawGovernment": Law & Government
    • value = "news": News
    • value = "onlineCommunites": Online Communities
    • value = "petsAnimals": Pets & Animals
    • value = "realEstate": Real Estate
    • value = "shopping": Shopping
    • value = "sports": Sports
    • value = "telecommunications": Telecommunications
    • value = "travel": Travel
    • value = "other" Other

  • estimatedUsers< integer >: How many active users expected roughly for the application.
    • value = -1: N/A.
    • value = 0: It's a new application.
    • value = 500: 0 - 500 range.
    • value = 5000: 501 - 5,000 range.
    • value = 50000: 5,001 - 50,000 range.
    • value = 500000: 50,001 - 500,000 range.
    • value = 5000000: 500,001 - 5,000,000 range.
    • value = 50000000: 5,000,000 or more range.

  • room < boolean >: If selected, room contexts will be created based on scheduled times instead of active sessions. The scheduling of which is done via the SDK methods or direct REST API calls. Any given key can support either dynamic or persistent rooms but not both. This option can be changed at any time however changing it from persistent to dynamic will destroy any currently schedule room contexts.

  • space < boolean > (Default: "ON")[The shared realm feature is currently unavailable till we upgrade our key management systems, and it will return as "isolate this key" in the near future]
    Create rooms in the realm of the parent API key instead of an isolated realm. !! Only for alias Application Keys.Read more at the API keys, alias keys, realms, rooms and peers section.

  • mcu < string > (Default: "OFF"): [The MCU feature is only configurable by parent key]
    If selected, the MCU will be used for any rooms accessing with this Application Key.
    • value = "OFF": MCU is turned off for this Application Key.
    • value = "ON": MCU is turned on for this Application Key.

  • isPrivileged < boolean > (Default: false): If true, the peer using the key becomes privileged peer and can utilise privileged key features like for example in the Web SDK: getPeers() and introduce(). !! Only for alias Application Keys.

  • autoIntroduce < boolean > (Default: true): If false, the peer using this key will not automatically initiate the peer connection with other peers in the room. To connect to other peers, this peer needs to be introduced by another privileged peer. !! Only for alias Application Keys.
Return Format
  • status < integer >: The status that indicates success or failure
    • value = 0: Failure state. This displays message.
    • value = 1: Success state. This displays content.

  • message < string >: Error message when status is unsuccessful.

  • content < JSON >: The Application Key information.

    • appid < string >: The Application Key ID.

    • appname < string >: The Application Key name.

    • created < string >: The Application Key created datetime stamp in ISO String.

    • update < string >: The Application Key created datetime stamp in ISO String.

    • deleted < boolean >: If true, it means that the Application Key is deleted.

    • parent < string >: The parent Application Key. If the Application Key is parent key, the value will be "root", else the Application Key is an alias key.

    • corsurl < string >: For client-side only web applications you need to specify the domain-name that will be accessing our APIs. (Cross-Origin-Resource-Sharing). No spaces in-between. E.g www.myapp.com,myapp.com,localhost.

    • region < string > (Default: "us2")[This is not longer required as automatic region selection is implemented] The server region the Application Key connects to.
      • value = "us2": United States, West Coast
      • value = "sg": APAC, Singapore - experimenetal.

    • platform < string >: The platform the key will be used with. Use alias-keys to have access the same realm from apps on other platforms.
      • value = "web": The application is built on the Web platform.
      • value = "android": The application is built on the Android platform.
      • value = "ios": The application is built on the iOS platform.
      • value = "other": The application is built on other platforms not specified.

    • description < string >: The description what the Application Key is built for and what it does.

    • link < string >: The platform application website URL. !! Optional parameter.

    • category < string >: The category field the application serves for. 
      • value = "-": N/A.
      • value = "autoVehicles": Autos & Vehicles
      • value = "beautyFitness": Beauty & Fitness'
      • value = "booksLiterature": Books & Literature
      • value = "businessIndustry": Business & Industry
      • value = "computers": Computers
      • value = "consumerElectronics": Consumer Electronics
      • value = "education": Education
      • value = "entertainment": Entertainment
      • value = "finance": Finance
      • value = "foodDrink": Food & Drink
      • value = "games": Games
      • value = "health": Health
      • value = "homeGarden": Home & Garden
      • value = "internetServices": Internet Services
      • value = "jobs": Jobs
      • value = "lawGovernment": Law & Government
      • value = "news": News
      • value = "onlineCommunites": Online Communities
      • value = "petsAnimals": Pets & Animals
      • value = "realEstate": Real Estate
      • value = "shopping": Shopping
      • value = "sports": Sports
      • value = "telecommunications": Telecommunications
      • value = "travel": Travel
      • value = "other" Other

    • estimatedUsers < integer >: How many active users expected roughly for the application.
      • value = -1: N/A.
      • value = 0: It's a new application.
      • value = 500: 0 - 500 range.
      • value = 5000: 501 - 5,000 range.
      • value = 50000: 5,001 - 50,000 range.
      • value = 500000: 50,001 - 500,000 range.
      • value = 5000000: 500,001 - 5,000,000 range.
      • value = 50000000: 5,000,000 or more range.

    • room < boolean >: If selected, room contexts will be created based on scheduled times instead of active sessions. The scheduling of which is done via the SDK methods or direct REST API calls. Any given key can support either dynamic or persistent rooms but not both. This option can be changed at any time however changing it from persistent to dynamic will destroy any currently schedule room contexts.

    • space < boolean > (Default: "ON")[The shared realm feature is currently unavailable till we upgrade our key management systems, and it will return as "isolate this key" in the near future]
      Create rooms in the realm of the parent API key instead of an isolated realm. !! Only for alias Application Keys. Read more at the API keys, alias keys, realms, rooms and peers section.

    • mcu < string > (Default: "OFF"): [The MCU feature is only configurable by parent key]
      If selected, the MCU will be used for any rooms accessing with this Application Key.
      • value = "OFF": MCU is turned off for this Application Key.
      • value = "ON": MCU is turned on for this Application Key.

    • turn < string >: If "ON", TURN will be used for any rooms accessing with this Application Key.
      • value = "OFF": TURN is turned off for this Application Key.
      • value = "ON": TURN is turned on for this Application Key.

    • expire < string >: The expiry date of the Application Key.

    • status: The Application Key active status.
      • value = "enable": This Application Key is enabled.

    • token < string >: [Same as secret < string >] The Application Key secret.

    • totalusage < integer >: The total usage (in minutes) accumulated for the last 30 days.

    • username < string >: The username that creates this Application Key.

    • isPrivileged < boolean > (Default: false): If true, the peer using the key becomes privileged peer and can utilise privileged key features like for example in the Web SDK: getPeers() and introduce(). !! Only for alias Application Keys.

    • autoIntroduce < boolean > (Default: true): If false, the peer using this key will not automatically initiate the peer connection with other peers in the room. To connect to other peers, this peer needs to be introduced by another privileged peer. !! Only for alias Application Keys.
Example PUT Request Body

For Content-Type: application/json example, here's the values passed:

{
  "parent": "parent_key_id",
  "appname": "My Awesome Application",
  "corsurl": "domain.com",
  "type": "default", // always required for creating application keys
  "region": "sg",
  "static": true // persistent
}

For Content-Type: application/x-www-form-urlencoded; charset=UTF-8 example, here's the values passed:

?&parent=parent_key_id&appname=My%20Awesome%20Application&corsurl=domain.com&type=default&region=sg&static=true
  • No labels