1. What is Avaya Spaces?
  2. What is the Avaya Spaces API?
  3. What is the Avaya Spaces SDK?
  4. Application Types
  5. Terminology
  6. Getting Started

1 What is Avaya Spaces?

Avaya Spaces is a combination of traditional chat rooms, video conferencing, task management tools, blogs, and other communication tools. The purpose of a space is to provide a common workspace for a group of people to collaborate efficiently. This API documentation is designed for an audience with a working knowledge of Spaces; if you haven’t already, check it out at spaces.avayacloud.com.

2 What is the Avaya Spaces API?

The Avaya Spaces API is an interface that allows third-party developers to integrate their products with Avaya Spaces. Potential applications include browser extensions, mobile applications, desktop programs, and more. The API is RESTful, using HTTP requests to access the functions and data stored on Avaya Cloud servers. API requests will usually specify content in the JSON format within the request body, while responses will return content within a JSON under the data key.

3 What is the Avaya Spaces SDK?

The Avaya Spaces SDK enables customers, partners and developers to integrate Avaya Spaces functionalities into their own applications. The SDK encapsulates underlined Spaces APIs e.g. authenticating user, handling socket communication, media streams etc. thereby significantly reducing the development period for the application. The features that the SDK supports are: Make audio/video calls, call controls like mute/unmute audio, enable/disable video, flip camera, search users, direct messaging with the user, exchange text messages with attachments, create/edit/delete tasks, posts, share screen etc. The list is being enriched with more features in an incremental manner. The Avaya Spaces SDK is being offered for Web, Android and iOS platforms.

4 Application Types

You can create two types of applications – OAuth and Service.

The OAuth type of application utilizes the Oauth 2.0 authorization framework and can access user’s Spaces resources with user’s OAuth2 token. For example, a custom mobile client application can act as the user to send a chat message or join a meeting.

The Service type of application is designed for the server-to-server communication. The Service type of application utilizes the service account to access the Spaces API. The service account is a special user account under a company. It doesn’t allow login. It can be assigned with a Spaces license. For example, a chat bot application can use the service account identity to send a chat message into a space.

5 Terminology

To use this documentation effectively, it’s important for you as a developer to understand the terminology being used.

There are two types of users on Avaya Spaces:

  1. Registered User. Only registered users can create a space and invite others.
  2. Anonymous User. Avaya Spaces allows unregistered individuals to join a space as an anonymous user. An anonymous user cannot own a space, and can only join a space as a guest. Anonymous users will still receive a JSON Web Token (JWT) for authentication in a session (this token expires in 24 hours).

There are two types of spaces:

  1. Group.
    • Can have many space members.
  2. Direct.
    • Only has 2 users
    • Only has chat messages
    • Cannot remove party
    • Cannot invite additional parties
    • Cannot be archived

There are three roles within a space:

  1. Admin.
    • Can invite other people to be an admin/member/guest of the space.
    • Can promote/demote any party in the space.
    • Can add/edit/delete any messages/posts/tasks.
    • Can remove any other party from space.
    • Can archive/unarchive the space.
  2. Member.
    • Can invite other people to be a guest of the space.
    • Can remove guests from the space.
  3. Guest.
    • Guests can read the posted messages that were created since they joined, and can also send messages and participate in a call.

Developers may frequently find the term topic used throughout the API reference. Don't be alarmed: The word topic is just a synonym for space.

6 Getting Started

Avaya Cloud recommends three different ways to get started. Developers who want to take their time and familiarize themselves with the technology being used beforehand will benefit from examining the technologies and protocols we use, then looking through the API reference. Alternatively, the tutorials can walk you through the process of creating a client-side application. Finally, experienced developers who want to immediately get to work with coding can create an OAuth2 application.

Upon approval of your request, you will be able to manage OAuth2 apps and download the Spaces SDK files.