<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Service App API in Webex for Developers</title>
    <link>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4907887#M2382</link>
    <description>&lt;P&gt;You can only list all messages for spaces that you are in. Service Apps are their own machine account and don't act on behalf of the user that authorizes it like an integration does so unless you add the SA to the space it won't be able to list all messages. With the compliance scope you can only get specific message details. The CO role is meant to be used to poll the /events API and then get details of specific messages, memberships, etc...&lt;/P&gt;
&lt;P&gt;You can add the SA to a space using the /memberships API but you'll need to get the personId for the SA first, which can be obtained by querying /people/me with the SA token as long as it has the &lt;SPAN&gt;spark:people_read scope. &lt;/SPAN&gt;Once the SA is in the space then it would be able to list all messages with the user level scope &lt;SPAN&gt;spark:messages_read. &lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Fri, 18 Aug 2023 14:44:11 GMT</pubDate>
    <dc:creator>Jeff Marshall</dc:creator>
    <dc:date>2023-08-18T14:44:11Z</dc:date>
    <item>
      <title>Service App API</title>
      <link>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4907461#M2377</link>
      <description>&lt;P&gt;Hey,&lt;/P&gt;&lt;P&gt;I'm trying to create a service app for my organization to list &amp;amp; read messages from users. When using the API in the developer portal the call to "&lt;A href="https://webexapis.com/v1/messages?roomId=ID" target="_blank" rel="noopener"&gt;https://webexapis.com/v1/messages?roomId=ID&lt;/A&gt;"&amp;nbsp; returns a list of messages for that room. But the same call in service app returns a "&lt;SPAN&gt;message not found&lt;/SPAN&gt;&lt;SPAN&gt;" result.&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I am able to see a call from the service app if I provide the message id in the API ex .&lt;SPAN&gt;&lt;A href="https://webexapis.com/v1/messages/ID" target="_blank"&gt;https://webexapis.com/v1/messages/ID&lt;/A&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;Is there a different call to list all (direct) messages for a specific user when using a service app? &lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Thu, 17 Aug 2023 21:35:21 GMT</pubDate>
      <guid>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4907461#M2377</guid>
      <dc:creator>alexvelt</dc:creator>
      <dc:date>2023-08-17T21:35:21Z</dc:date>
    </item>
    <item>
      <title>Re: Service App API</title>
      <link>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4907700#M2378</link>
      <description>&lt;P&gt;&lt;a href="https://community.cisco.com/t5/user/viewprofilepage/user-id/1574864"&gt;@alexvelt&lt;/a&gt;&amp;nbsp;does the Service App has Compliance Officer scopes, namely&amp;nbsp;&lt;SPAN&gt;spark-compliance:messages_read and was the SA approved by a Compliance Officer in Control Hub?&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 18 Aug 2023 10:54:50 GMT</pubDate>
      <guid>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4907700#M2378</guid>
      <dc:creator>Janos Benyovszki</dc:creator>
      <dc:date>2023-08-18T10:54:50Z</dc:date>
    </item>
    <item>
      <title>Re: Service App API</title>
      <link>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4907855#M2380</link>
      <description>&lt;P&gt;Yes, The Service App has "spark-compliance:messages_read" and the Control Hub role used to approve has "advanced troubleshooting, Compliance officer, Full admin, User, Webex site admin, atlasRoles.WXC_Cdr_Rest_ReadOrgRole"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 18 Aug 2023 13:58:44 GMT</pubDate>
      <guid>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4907855#M2380</guid>
      <dc:creator>alexvelt</dc:creator>
      <dc:date>2023-08-18T13:58:44Z</dc:date>
    </item>
    <item>
      <title>Re: Service App API</title>
      <link>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4907883#M2381</link>
      <description>&lt;P&gt;Thanks. Please note, that even with a Compliance Officer, you will not be able to list all messages in a space. But you will be able to read individual messages. If you use the Events API&amp;nbsp;&lt;A href="https://developer.webex.com/docs/api/v1/events/list-events" target="_blank"&gt;https://developer.webex.com/docs/api/v1/events/list-events&lt;/A&gt;&amp;nbsp;to get a message ID, can you then read that message using&amp;nbsp;&lt;A href="https://developer.webex.com/docs/api/v1/messages/get-message-details" target="_blank"&gt;https://developer.webex.com/docs/api/v1/messages/get-message-details&lt;/A&gt;&amp;nbsp;?&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 18 Aug 2023 14:38:31 GMT</pubDate>
      <guid>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4907883#M2381</guid>
      <dc:creator>Janos Benyovszki</dc:creator>
      <dc:date>2023-08-18T14:38:31Z</dc:date>
    </item>
    <item>
      <title>Re: Service App API</title>
      <link>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4907887#M2382</link>
      <description>&lt;P&gt;You can only list all messages for spaces that you are in. Service Apps are their own machine account and don't act on behalf of the user that authorizes it like an integration does so unless you add the SA to the space it won't be able to list all messages. With the compliance scope you can only get specific message details. The CO role is meant to be used to poll the /events API and then get details of specific messages, memberships, etc...&lt;/P&gt;
&lt;P&gt;You can add the SA to a space using the /memberships API but you'll need to get the personId for the SA first, which can be obtained by querying /people/me with the SA token as long as it has the &lt;SPAN&gt;spark:people_read scope. &lt;/SPAN&gt;Once the SA is in the space then it would be able to list all messages with the user level scope &lt;SPAN&gt;spark:messages_read. &lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 18 Aug 2023 14:44:11 GMT</pubDate>
      <guid>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4907887#M2382</guid>
      <dc:creator>Jeff Marshall</dc:creator>
      <dc:date>2023-08-18T14:44:11Z</dc:date>
    </item>
    <item>
      <title>Re: Service App API</title>
      <link>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4910256#M2392</link>
      <description>&lt;P&gt;Hey Jeff,&lt;/P&gt;&lt;P&gt;Just to follow up on this is there a way to add the service app to a 1:1 / direct conversation. If not is there any way to read a 1:1 conversation with the compliance officer role?&lt;/P&gt;</description>
      <pubDate>Wed, 23 Aug 2023 01:07:46 GMT</pubDate>
      <guid>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4910256#M2392</guid>
      <dc:creator>alexvelt</dc:creator>
      <dc:date>2023-08-23T01:07:46Z</dc:date>
    </item>
    <item>
      <title>Re: Service App API</title>
      <link>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4910629#M2393</link>
      <description>&lt;P&gt;A 1:1 space can only have two participants so there would be no way to add another user or SA to a existing 1:1 space to be able to read all messages in the space. With the CO role you'd need to get all of the message events from the /events API. The message events do contain the message content so there would be no need to make additional queries. You can just pull all message events into a database or something and then filter them on your end by roomId to see all messages in a 1:1 space.&lt;/P&gt;</description>
      <pubDate>Wed, 23 Aug 2023 12:41:03 GMT</pubDate>
      <guid>https://community.cisco.com/t5/webex-for-developers/service-app-api/m-p/4910629#M2393</guid>
      <dc:creator>Jeff Marshall</dc:creator>
      <dc:date>2023-08-23T12:41:03Z</dc:date>
    </item>
  </channel>
</rss>

