<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://all.docs.genesys.com/index.php?action=history&amp;feed=atom&amp;title=PEC-Developer%2FCurrent%2FWebAPIs%2FGetting_started</id>
	<title>PEC-Developer/Current/WebAPIs/Getting started - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://all.docs.genesys.com/index.php?action=history&amp;feed=atom&amp;title=PEC-Developer%2FCurrent%2FWebAPIs%2FGetting_started"/>
	<link rel="alternate" type="text/html" href="https://all.docs.genesys.com/index.php?title=PEC-Developer/Current/WebAPIs/Getting_started&amp;action=history"/>
	<updated>2026-04-09T23:45:09Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.1</generator>
	<entry>
		<id>https://all.docs.genesys.com/index.php?title=PEC-Developer/Current/WebAPIs/Getting_started&amp;diff=132787&amp;oldid=prev</id>
		<title>WikiSysop: Created page with &quot;{{Article |Standalone=No |DisplayName=Introduction to Engage Cloud APIs |Context=The Engage Cloud APIs are a collection of web APIs offered in Engage Clo...&quot;</title>
		<link rel="alternate" type="text/html" href="https://all.docs.genesys.com/index.php?title=PEC-Developer/Current/WebAPIs/Getting_started&amp;diff=132787&amp;oldid=prev"/>
		<updated>2023-11-26T04:31:16Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;{{Article |Standalone=No |DisplayName=Introduction to Engage Cloud APIs |Context=The Engage Cloud APIs are a collection of &lt;a href=&quot;https://en.wikipedia.org/wiki/Web_API&quot; class=&quot;extiw&quot; title=&quot;wikipedia:Web API&quot;&gt;web APIs&lt;/a&gt; offered in Engage Clo...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Article&lt;br /&gt;
|Standalone=No&lt;br /&gt;
|DisplayName=Introduction to Engage Cloud APIs&lt;br /&gt;
|Context=The Engage Cloud APIs are a collection of [[wikipedia:Web_API|web APIs]] offered in Engage Cloud that send and receive data over HTTP in [http://www.json.org/ JSON] (JavaScript Object Notation). You can use these APIs to create your own custom applications that integrate with Genesys.&lt;br /&gt;
|ComingSoon=No&lt;br /&gt;
|Section={{Section&lt;br /&gt;
|sectionHeading=Client libraries&lt;br /&gt;
|alignment=Vertical&lt;br /&gt;
|structuredtext=One of the first things you’ll need to decide is whether to use the APIs directly or use the client libraries. The libraries are designed to simplify how you interact with the API and they take care of a lot of the supporting code needed to make HTTP requests, handle HTTP responses, and enable CometD.&lt;br /&gt;
&lt;br /&gt;
The libraries are available on GitHub in Java and Node.js, which means others can make bug fixes or enhancements that would then be reviewed and approved by Genesys before becoming generally available.&lt;br /&gt;
&lt;br /&gt;
Genesys recommends using the client libraries if possible, but either way you should review the reference documentation for the Authentication API and any other Engage Cloud APIs you plan to use to develop your application.&lt;br /&gt;
|Status=No&lt;br /&gt;
}}{{Section&lt;br /&gt;
|sectionHeading=Authentication&lt;br /&gt;
|alignment=Vertical&lt;br /&gt;
|structuredtext=All Engage Cloud APIs implement and adhere to the [https://datatracker.ietf.org/doc/html/rfc6749 OAuth 2] standard for secure authentication. See the {{Link-SomewhereInThisVersion|manual=WebAPIs|topic=Authentication_API}} for details.&lt;br /&gt;
|Status=No&lt;br /&gt;
}}{{Section&lt;br /&gt;
|sectionHeading=CometD&lt;br /&gt;
|alignment=Vertical&lt;br /&gt;
|structuredtext=Many requests in the Engage Cloud APIs are asynchronous. When you send an asynchronous request, the API returns an HTTP response with a status code, but this only means the request was processed and sent to a backend Genesys server. When the server finishes processing the request and notifies the API of any changes in state or errors, the API then sends the updated state or error details to the client application as an unsolicited notification.&lt;br /&gt;
&lt;br /&gt;
The Engage Cloud APIs uses CometD to deliver these unsolicited notifications to clients. CometD is a library that allows the server to deliver messages to a web-based client with low-latency using a variety of transports. The transport used to deliver messages is negotiated between the client and server based on what the client supports running in a particular browser. For more information about CometD, or for details about where to obtain client-side CometD libraries for various platforms, see the [http://cometd.org/ official CometD site].&lt;br /&gt;
&lt;br /&gt;
These APIs require CometD to deliver notifications:&lt;br /&gt;
&lt;br /&gt;
*{{Link-SomewhereInThisVersion|manual=WebAPIs|topic=Provisioning_API}}&lt;br /&gt;
*{{Link-SomewhereInThisVersion|manual=WebAPIs|topic=Statistics_API}}&lt;br /&gt;
*{{Link-SomewhereInThisVersion|manual=WebAPIs|topic=Workspace_API}}&lt;br /&gt;
&lt;br /&gt;
Click the links above and review the “CometD” section on the API’s landing page for information about which channels you can subscribe to and the notification you’ll receive.&lt;br /&gt;
&lt;br /&gt;
When an API requires CometD, you’ll see a “Notifications” category in its API reference information (see the {{Link-SomewhereInThisVersion|manual=WebAPIs|topic=Statistics Notifications|display text=Statistics API Notifications page}} for an example). You can use these endpoints to implement CometD if you aren’t using a client-side CometD library.&lt;br /&gt;
|Status=No&lt;br /&gt;
}}{{Section&lt;br /&gt;
|sectionHeading=Requests&lt;br /&gt;
|alignment=Vertical&lt;br /&gt;
|structuredtext=The Engage Cloud APIs use the following standard HTTP verbs to perform actions on resources:&lt;br /&gt;
{{{!}} class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Verb&lt;br /&gt;
!Description&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}GET&lt;br /&gt;
{{!}}Retrieve resources.&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}POST&lt;br /&gt;
{{!}}Create resources.&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}PUT&lt;br /&gt;
{{!}}Update resources.&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}DELETE&lt;br /&gt;
{{!}}Delete resources.&lt;br /&gt;
{{!}}}&lt;br /&gt;
Requests support typical parameter types like body, header, path, and query, but there is also a special body parameter called '''data'''. This is a JSON object containing any information needed to execute the action. For example, if you POST to &amp;lt;code&amp;gt;/workspace/v3/voice/make-call&amp;lt;/code&amp;gt;, you must include a data object with the call destination:&lt;br /&gt;
 &amp;lt;source lang=&amp;quot;JSON&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;data&amp;quot;:{&lt;br /&gt;
       &amp;quot;destination&amp;quot;:&amp;quot;5002&amp;quot;&lt;br /&gt;
    }&lt;br /&gt;
 }&amp;lt;/source&amp;gt;&lt;br /&gt;
|Status=No&lt;br /&gt;
}}{{Section&lt;br /&gt;
|sectionHeading=Responses and errors&lt;br /&gt;
|alignment=Vertical&lt;br /&gt;
|structuredtext=All Engage Cloud APIs return a '''status''' JSON object with a required '''code''' field. You might also see the '''message''' and '''detail''' fields, which provide more information about the response. For example:&lt;br /&gt;
 &amp;lt;source lang=&amp;quot;JSON&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;status&amp;quot;:{&lt;br /&gt;
       &amp;quot;code&amp;quot;:0&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
For successful responses, you can expect to see the following codes:&lt;br /&gt;
{{{!}} class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Code&lt;br /&gt;
!Description&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}0&lt;br /&gt;
{{!}}The synchronous operation was successful.&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}1&lt;br /&gt;
{{!}}The asynchronous operation was sent successfully. You’ll find out about the state of the operation through CometD notifications. For example, if you POST to &amp;lt;code&amp;gt;/workspace/v3/initialize-workspace&amp;lt;/code&amp;gt;, the Workspace API immediately returns a response with a status code of &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; and later follows up with the WorkspaceInitializationComplete event, delivered via CometD.&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}2&lt;br /&gt;
{{!}}The synchronous operation was partially successful. This is returned if at least one action succeeds in a request that performs a bulk operation. In this case, the response includes the '''status''' object with a '''code''' of &amp;lt;code&amp;gt;2&amp;lt;/code&amp;gt;, as well as '''data''' and '''errors'''. The '''data''' object includes any resources that were successfully retrieved as part of the bulk operation. The '''errors''' object is an array of '''status''' objects for each of the operations that failed in the request.&lt;br /&gt;
{{!}}}&lt;br /&gt;
All other status codes indicate an error and include a '''message''', and possibly a '''detail''' field, with more information about the problem. For example:&lt;br /&gt;
 &amp;lt;source lang=&amp;quot;JSON&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;status&amp;quot;:{&lt;br /&gt;
       &amp;quot;code&amp;quot;:500,&lt;br /&gt;
       &amp;quot;message&amp;quot;:&amp;quot;Resource not found&amp;quot;,&lt;br /&gt;
       &amp;quot;detail&amp;quot;:{&lt;br /&gt;
          &amp;quot;ConfCode&amp;quot;:12345&lt;br /&gt;
       }&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
For asynchronous requests, you might also see errors delivered via CometD notifications. For example, the Workspace API returns an EventError message that includes the related DN, along with the error code and message, and the call connection ID and call UUID, if available.&lt;br /&gt;
|Status=No&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
</feed>