<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by John Wang on Medium]]></title>
        <description><![CDATA[Stories by John Wang on Medium]]></description>
        <link>https://medium.com/@Grokify?source=rss-49811220c6eb------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*XiTXKI2jMmBfec-xDukLWQ.jpeg</url>
            <title>Stories by John Wang on Medium</title>
            <link>https://medium.com/@Grokify?source=rss-49811220c6eb------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 20 Jun 2026 13:25:32 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@Grokify/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[DIRECT: Six Principles for Designing Software That AI Agents Can Use]]></title>
            <link>https://medium.com/@Grokify/direct-six-principles-for-designing-software-that-ai-agents-can-use-84be289b373e?source=rss-49811220c6eb------2</link>
            <guid isPermaLink="false">https://medium.com/p/84be289b373e</guid>
            <category><![CDATA[developer]]></category>
            <category><![CDATA[api]]></category>
            <category><![CDATA[ai-agent]]></category>
            <dc:creator><![CDATA[John Wang]]></dc:creator>
            <pubDate>Mon, 06 Apr 2026 12:50:12 GMT</pubDate>
            <atom:updated>2026-04-06T12:50:12.909Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Nlx1gYxZ__wB8EN-9sbKqg.png" /></figure><p>After three months of intensive collaboration with Claude, resulting in 3,500+ commits, 300+ releases, and over 1 million lines across 124 public repositories, I’ve distilled what I’ve learned into six principles I call <a href="https://grokify.github.io/direct-principles/"><strong>DIRECT</strong></a>. These principles are designed to help us think about designing the Agent Experience (AX), the same way that SOLID changed how we think about object-oriented design (OOD).</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*C-aPTR6Uh9d_oj4RVO7FGg.png" /><figcaption>Interactive version at <a href="https://grokify.github.io/direct-principles/">https://grokify.github.io/direct-principles/</a></figcaption></figure><h3><strong>The Conversation Has Started — Now We Need to Codify It</strong></h3><p>The industry has started to discuss Agent Experience, or AX. Netlify launched <a href="https://agentexperience.ax/">agentexperience.ax</a> to define AX as “the holistic experience AI agents have when interacting with a product, platform, or system” — the AI counterpart to UX and DX. This is important , and their call for community collaboration is valuable.</p><p>While discussion is a start, we need more. We need <strong>codified principles</strong> that developers and agents can apply and tools can enforce. That’s what DIRECT provides.</p><h3><strong>What is DIRECT?</strong></h3><p>DIRECT is to Agent Experience what SOLID is to Object-Oriented Design: a foundational set of principles that guide the creation of interfaces AI agents can reliably use.</p><ul><li><strong>D</strong>eterministic: Agents trust the system to behave the same way each time, making safe recovery from errors natural.</li><li><strong>I</strong>ntrospectable: Agents explore capabilities and understand data structures without requiring external docs or humans</li><li><strong>R</strong>ecoverable: Agents can diagnose what went wrong and take corrective action without human intervention</li><li><strong>E</strong>xplicit: Agents operate within clear boundaries and constraints so they act with confidence</li><li><strong>C</strong>onsistent: Agents build mental models once and apply them everywhere, scaling their effectiveness</li><li><strong>T</strong>estable: Agents can try actions safely before committing, learning what works without causing harm</li></ul><p>These aren’t abstract ideals. Each principle addresses a specific failure mode I encountered repeatedly while working with agents.</p><h3>AX Over DX: A Counterintuitive Approach</h3><p>Here’s what surprised me most: <strong>I stopped using traditional Developer Experience and started relying on Agent Experience.</strong></p><p>I built 25+ integrations for my <a href="https://plexusone.dev/">PlexusOne</a> stack across LLM providers (OpenAI, Anthropic, Google, xAI, Ollama), observability platforms (Opik, Langfuse, Phoenix), voice services (Deepgram, ElevenLabs, Twilio), search APIs, and infrastructure tools. Instead of reading documentation or learning SDKs myself, I provided information to Claude, such as OpenAPI specs, Python SDK source code, and we discuss the implementation together.</p><p>I know what good DX looks like, from both from using many APIs/SDKs and my time on the RingCentral Developer Program, which won seven industry awards including API World’s Best in Communications APIs (2018, 2019, 2021), DevPortal Awards’ Best Developer Dashboard, and Nordic APIs’ Best Public API.</p><p>But when working with agents, I’ve learned to make different choices. For example:</p><ul><li>When a human developer sees <strong>400 Bad Request</strong>, they read the error message, check the docs, maybe search Stack Overflow. They iterate through understanding.</li><li>When an agent sees <strong>400 Bad Request</strong>, it can hallucinates a fix that makes things worse. Agents don’t “understand” in the human sense, so I need to step in. They need structured, unambiguous interfaces to operate reliably.</li></ul><p>This realization led me to develop DIRECT.</p><h3><strong>How I Learned This (The Hard Way)</strong></h3><p>In Q1 2026, I ran an experiment: use AI agents as my primary development partner for as much work as possible. The results were staggering in scale:</p><ul><li>Commits: 3,561</li><li>Releases: 304</li><li>Lines Added: 1,696,636</li><li>Lines Deleted: 689,678</li><li>Net New Lines: 1,006,958</li><li>Repositories: 124</li></ul><p>But raw numbers don’t tell the entire story. The story is in what worked and what didn’t.</p><ul><li><strong>What worked:</strong> When I gave Claude well-structured specifications, explicit constraints, and consistent patterns, it produced code I could trust. Iteration was fast. Errors were recoverable.</li><li><strong>What didn’t work:</strong> When interfaces were ambiguous or counterintuitive, when error messages were vague, when behavior varied unpredictably- the agent would spin. I’d watch it make the same mistake multiple times, until I needed to step in and suggest alternative approaches.</li></ul><p>The pattern became clear: <strong>agent effectiveness depends more on interface design than on model capability.</strong></p><h3><strong>The Three Things You Should Do With Agents</strong></h3><p>Working this intensively with agents taught me there are three complementary activities, all of which can benefit from DIRECT experiences:</p><h4><strong>1. Working With Agents</strong></h4><p>This is where most people start. Use Claude, GPT, or Copilot to help you code. It works — sometimes brilliantly, sometimes frustratingly.</p><p>The frustration usually isn’t the agent’s fault. It’s the interface’s fault, which is why we’ve created the practice of prompt engineering.</p><h4><strong>2. Build Tools That Make Agents More Efficient</strong></h4><p>Once you see agents struggle with the same problems repeatedly, you start building solutions. Over Q1, I built or contributed to 11 tools specifically designed for agent-assisted development:</p><ul><li><a href="https://github.com/plexusone/agent-team-release">agent-team-release</a>: Release automation — R, C, T</li><li><a href="https://github.com/plexusone/ax-spec">ax-spec</a>: OpenAPI linting &amp; enrichment — I, E</li><li><a href="https://github.com/plexusone/design-system-spec">design-system-spec</a>: Design systems as code — I, C</li><li><a href="https://github.com/grokify/schemalint">schemalint</a>: Schema validation for static typing — D, E</li><li><a href="https://github.com/grokify/structured-changelog">structured-changelog</a>: Token-efficient changelogs — I, E, C</li><li><a href="https://github.com/grokify/traffic2openapi">traffic2openapi</a>: Generate specs from HTTP traffic — I, E</li><li><a href="https://github.com/plexusone/w3pilot">w3pilot</a>: Browser automation for agents — I, R, T</li></ul><p>Each tool embodies specific DIRECT principles and are agent-first. For example, structured-changelog is designed for changelog creation using LLM agents, unlike other solutions that use raw git logs determinisiticaly. It and other tools output in TOON format (Token-Oriented Object Notation) by default — approximately 8x more token-efficient than raw git log output. When agents pay for context in tokens, efficiency matters.</p><h4><strong>3. Orchestrating Agents in Teams</strong></h4><p>The most powerful pattern I discovered: agents working together, each with specialized capabilities, coordinated through well-defined interfaces.</p><p>This is where DIRECT principles become essential. When Agent A calls a tool that Agent B will consume the output of, every principle matters:</p><ul><li><strong>Deterministic</strong>: Agent B can rely on consistent output structure</li><li><strong>Introspectable</strong>: Agent B can discover what the output contains</li><li><strong>Recoverable</strong>: Errors include enough context for Agent B to adapt</li><li><strong>Explicit</strong>: No hidden assumptions between agents</li><li><strong>Consistent</strong>: Patterns learned from one interaction transfer to others</li><li><strong>Testable</strong>: Agents can validate their plans before execution</li></ul><p>My <a href="https://github.com/plexusone/agent-team-release">release agent team</a> orchestrates multiple specialized agents (QA, security, documentation, release management) to handle software releases. Each agent operates on DIRECT-compliant interfaces, enabling autonomous coordination. The team structure and handoff forms are defined using <a href="https://github.com/plexusone/multi-agent-spec">multi-agent-spec</a>—a formal specification that declares agent capabilities, workflow dependencies, and typed inputs/outputs between steps.</p><h3><strong>Example: Choosing ogen for OpenAPI code generation</strong></h3><p>When generating Go structs from OpenAPI specs, I evaluated several tools. The most “ergonomic” ones for humans — oapi-codegen, go-swagger — produce code that’s easier to read but makes assumptions that can confuse agents. They might flatten nested types, use interface{} for ambiguous schemas, or generate helper methods with implicit behavior.</p><p>I chose <a href="https://github.com/ogen-go/ogen">ogen</a> instead. It’s more verbose, less ergonomic for humans, but extremely <strong>correct</strong>. Every type is explicit. Every field is deterministic. Every validation is clear.</p><p>For a human developer, this verbosity feels like friction. For an agent, it’s clarity. The agent never has to guess what a type contains or how validation works — it’s all explicit in the generated code.</p><p>This is DIRECT’s <strong>Explicit</strong> principle in action: when the choice is between human ergonomics and machine clarity, choose clarity. Humans can learn conventions; agents need explicit declarations.</p><h3><strong>What Does “Developer Program” Mean in 2026?</strong></h3><p>This raises a question I’ve been thinking about: <strong>what does it mean to run a developer program when your users are no longer just humans?</strong></p><p>When I ran the RingCentral developer program, success metrics were human-centric: time-to-first-call, documentation satisfaction scores, SDK adoption rates, developer NPS. We optimized for humans reading docs, humans debugging in sandboxes, humans asking questions in forums.</p><p>But if agents are increasingly the ones consuming your APIs, the game changes:</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/005218e496e77944101779cb860fbf94/href">https://medium.com/media/005218e496e77944101779cb860fbf94/href</a></iframe><p>The developer program of the future might measure: agent success rate on first API call, mean time to autonomous recovery, schema coverage percentage, and how often agents need to fall back to human intervention.</p><p>This doesn’t mean abandoning human developers. It means recognizing that the “developer” consuming your API might be Claude helping a human, or an autonomous agent in a pipeline, or a human who never reads your docs because their agent already understands the OpenAPI spec.</p><p><strong>The platforms that win will be the ones optimized for both.</strong> DIRECT principles are one attempt to codify what “optimized for agents” actually means.</p><h3><strong>Concrete Example: Error Classification</strong></h3><p>Let me show how DIRECT principles translate to real code.</p><p><strong>The problem:</strong> Different APIs return errors in different formats. An agent calling ElevenLabs gets different error structures than one calling Deepgram. Without standardization, agents need per-provider error handling logic.</p><p><strong>The solution:</strong> Unified error classification with 8 categories.</p><pre>// From omnivoice-core/resilience<br>type ErrorInfo struct {<br>  Category   ErrorCategory // transient, rate_limit, validation, auth, etc.<br>  Retryable  bool<br>  Code       string<br>  Message    string<br>  Suggestion string<br>  RetryAfter time.Duration<br>}</pre><p>Now an agent can make decisions programmatically:</p><pre>if err.IsRetryable() {<br>  time.Sleep(err.GetRetryAfter())<br>  // retry…<br>} else {<br>  log.Printf(&quot;Cannot retry: %s. Suggestion: %s&quot;,<br>  err.GetCode(), err.GetSuggestion())<br>}</pre><p>This is <strong>Recoverable</strong> in action. The agent doesn’t parse error strings — it receives structured, actionable metadata.</p><h3><strong>The Website and Documentation</strong></h3><p>I’ve published the full DIRECT framework at <a href="https://grokify.github.io/direct-principles/"><strong>grokify.github.io/direct-principles</strong></a><strong>. </strong>The site includes:</p><ul><li><strong>Detailed principle definitions</strong> with examples and anti-patterns</li><li><strong>Compliance levels</strong> (AX-L1, AX-L2, AX-L3) for progressive adoption</li><li><strong>Case studies</strong> showing DIRECT applied across the tooling ecosystem</li><li><strong>Spectral rules</strong> via <a href="https://github.com/plexusone/ax-spec">ax-spec</a> to enforce DIRECT for OpenAPI specifications</li></ul><p>The case study on the <a href="https://grokify.github.io/direct-principles/case-studies/agent-tooling-ecosystem/">Agent Tooling Ecosystem</a> walks through how each tool applies specific principles.</p><h3><strong>Why This Matters Now</strong></h3><p>We’re at an inflection point. AI agents are moving from novelty to infrastructure. The companies and developers who figure out how to build agent-friendly interfaces will have a significant advantage. Consider:</p><ul><li><strong>APIs</strong> that agents can discover, call, and recover from errors automatically</li><li><strong>CLIs</strong> that agents can compose into pipelines without human intervention</li><li><strong>Documentation</strong> that machines can parse as effectively as humans can read</li><li><strong>SDKs</strong> with layers optimized separately for agent and human consumers</li></ul><p>This isn’t about replacing human developers. It’s about multiplying their effectiveness. In Q1, I shipped more than I ever have — not because I worked harder, but because agents could reliably handle more of the work.</p><p>The bottleneck was never the agent’s capability. It was always the interface.</p><h3><strong>Getting Started</strong></h3><p>If you want to apply DIRECT principles:</p><ol><li><strong>Start with one principle.</strong> Add `operationId` to every endpoint in your OpenAPI spec (Introspectable). Or ensure all errors return structured codes (Recoverable).</li><li><strong>Use ax-spec to audit.</strong> Run `vacuum lint — ruleset ax-spec/rules/ax-openapi.json your-api.yaml` to see where your API falls short.</li><li><strong>Design for the agent first.</strong> When adding a new endpoint or CLI command, ask: “Can an agent understand this without reading prose documentation?”</li><li><strong>Test with actual agents.</strong> The best validation is using Claude or GPT to interact with your interface. Where do they struggle? That’s where DIRECT principles apply.</li></ol><h3><strong>Conclusion</strong></h3><p>SOLID gave us a vocabulary for discussing object-oriented design. DIRECT aims to do the same for agent-facing interfaces.</p><p>The principles are:</p><ul><li><strong>D</strong>eterministic — Same input, same output, every time</li><li><strong>I</strong>ntrospectable — Machine-readable capabilities and schemas</li><li><strong>R</strong>ecoverable — Structured errors enable autonomous correction</li><li><strong>E</strong>xplicit — All constraints declared, nothing hidden</li><li><strong>C</strong>onsistent — Patterns that generalize across the interface</li><li><strong>T</strong>estable — Safe experimentation without consequences</li></ul><p>We’re early in the age of AI agents. The interfaces we build today will shape how effectively agents can augment human work tomorrow.</p><p>I believe that DIRECT principles — or something like them — will become as fundamental to agent-oriented development as SOLID is to object-oriented design.</p><p>The code, documentation, and tools are all open source. I’d love to hear what you think.</p><h3><strong>Resources</strong></h3><ul><li><a href="https://grokify.github.io/direct-principles/">DIRECT Principles (https://grokify.github.io/direct-principles/)</a> — Full documentation and case studies</li><li><a href="https://github.com/plexusone/ax-spec">AX Spec (https://github.com/plexusone/ax-spec</a>) — Spectral rules for OpenAPI compliance</li><li><a href="https://grokify.github.io/direct-principles/case-studies/agent-tooling-ecosystem/">Agent Tooling Ecosystem Case Study (https://grokify.github.io/direct-principles/case-studies/agent-tooling-ecosystem/)</a> — How DIRECT applies across 11 tools</li><li><a href="https://github.com/plexusone">PlexusOne (https://github.com/plexusone)</a> — Organization for agent tools and SDK integrations</li><li><a href="https://github.com/plexusone/multi-agent-spec">Multi-Agent Spec (https://github.com/plexusone/multi-agent-spec)</a> — Specification for defining agent teams and workflows</li><li><a href="https://plexusone.dev/integrations/">PlexusOne Integrations (https://plexusone.dev/integrations/)</a> — 25+ integrations across LLMs, voice, search, and infrastructure</li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=84be289b373e" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[RingCentral Developers Winter ’22 Release]]></title>
            <link>https://medium.com/ringcentral-developers/ringcentral-developers-winter-22-release-d555a98e15e3?source=rss-49811220c6eb------2</link>
            <guid isPermaLink="false">https://medium.com/p/d555a98e15e3</guid>
            <category><![CDATA[announcements]]></category>
            <category><![CDATA[developer]]></category>
            <category><![CDATA[release-notes]]></category>
            <category><![CDATA[ringcentral]]></category>
            <category><![CDATA[api]]></category>
            <dc:creator><![CDATA[John Wang]]></dc:creator>
            <pubDate>Thu, 24 Mar 2022 10:42:01 GMT</pubDate>
            <atom:updated>2022-03-24T10:42:01.097Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*ezXG_4iDfJ68lV-kznRAVg.png" /><figcaption>RingCentral Winter 2022 Release</figcaption></figure><p>We’re happy to announce the RingCentral Developers Winter ‘22 Release which includes new core APIs, SDK enhancements along with new and updated Developer Guides and App Gallery.</p><p>Please try out our new APIs and SDKs and let us know what you think!</p><p><strong>RingCentral MVP APIs &amp; SDKs</strong></p><ol><li><a href="https://developers.ringcentral.com/api-products/add-ins">Team Messaging Add-ins Framework</a> (Beta)</li><li>Team Messaging documentation rewrite</li><li>Team Messaging API rename</li><li>Voice WebPhone WebRTC Library</li><li>Line of Business Analytics API Update (Beta)</li><li>Audit Trail API Demo Apps (Beta)</li></ol><p><strong>RingCentral MVP Embeddable</strong></p><ol><li>Mute Auto Call Recording</li></ol><p><strong>Engage Voice APIs &amp; SDKs</strong></p><ol><li>Voice Streaming API</li><li>Workforce Management Integration Reports</li></ol><p><strong>Engage Digital APIs &amp; SDKs</strong></p><ol><li>New Developer Guides</li><li>Developer Guide enhancements</li></ol><p><strong>Developer Experience</strong></p><ol><li>New Support Form to Replace Email Support</li><li>Enhancements to the app creation process</li><li>New API changelog location</li><li>New distribution channel for Symphony</li></ol><p><strong>RingCentral Labs</strong></p><ol><li>Poll Add-in</li><li>Trello Add-in</li><li>GitHub Add-in</li><li>Bugsnag Add-in</li></ol><h3><strong>RingCentral MVP APIs &amp; SDKs</strong></h3><ol><li><a href="https://developers.ringcentral.com/api-products/add-ins"><strong>Team Messaging Add-ins Framework</strong></a><strong> (Beta): </strong>The Add-in Framework is now in open beta. Built on the <a href="https://adaptivecards.io/">open source Adaptive Card Framework</a>, RingCentral Add-ins provide developers with a new way to automate workflows and embed rich, interactive applications directly inside RingCentral team messaging. Get started with the <a href="https://developers.ringcentral.com/guide/team-messaging/add-ins">Developer Guide for any language</a>, <a href="https://github.com/ringcentral/ringcentral-chatbot-js">JavaScript Chatbot Framework</a>, or <a href="https://github.com/ringcentral/notification-app-js">JavaScript Notification App Framework</a> to begin posting Adaptive Cards to RingCentral team messaging.</li><li><strong>Team Messaging documentation rewrite:</strong> In conjunction and support of the release of the RingCentral Add-in Framework, the Team Messaging section has been completely rewritten with tons of new content. Check out our <a href="https://developers.ringcentral.com/guide/team-messaging">Developer Guide</a> to learn more about <a href="https://developers.ringcentral.com/guide/team-messaging/adaptive-cards">Adaptive Cards</a>, <a href="https://developers.ringcentral.com/guide/team-messaging/add-ins">building add-ins</a>, a <a href="https://developers.ringcentral.com/guide/team-messaging/bots/walkthrough">step-by-step guide to building a bot</a>, posting <a href="https://developers.ringcentral.com/guide/team-messaging/posting/tasks">tasks</a> and <a href="https://developers.ringcentral.com/guide/team-messaging/posting/notes">notes</a>, and more!</li><li><strong>Team Messaging API rename:</strong> Throughout the RingCentral ecosystem, the term “Glip” is being phased out. Changes to the names of permissions, endpoint URLs will be occurring and referenced in our API Reference and Developer Guide. For now, old URLs will continue to work and no change is necessary.</li><li><strong>Voice WebPhone WebRTC Library:</strong> Several enhancements were deployed to newer versions of the RingCentral WebPhone Library to enable call control features like Warm Transfer, Call Recording and Call Park. Developers who use this library are recommended to upgrade to the latest version V0.8.9 from our <a href="https://github.com/ringcentral/ringcentral-web-phone">GitHub repository</a>.</li><li><strong>Line of Business Analytics API Update (Beta): </strong>This API now supports two endpoints: the <a href="https://developers.ringcentral.com/api-reference/Line-Of-Business-Analytics/aggregatePerformanceReportCalls">Aggregate Call Performance Data API</a> and the <a href="https://developers.ringcentral.com/api-reference/Line-Of-Business-Analytics/performanceReportCallsTimeline">Timeline Call Performance Data API</a>.</li><li><strong>Audit Trail API Demo Apps (Beta): </strong>Demo apps for syncing data to Splunk and DynamoDB using JavaScript are available on GitHub at <a href="https://github.com/ringcentral/audit-trail-demo">github.com/ringcentral/audit-trail-demo</a>.</li></ol><h3><strong>RingCentral MVP Embeddable</strong></h3><ol><li><strong>Mute Auto Call Recording:</strong> There are times when you need to pause a recording when handling sensitive information that should not be recorded (such as credit card numbers). In these instances, Auto Call Recording may be turned on and you need to pause it momentarily. This feature to “mute” auto call recording is now available in the embeddable.</li></ol><h3><strong>Engage Voice APIs &amp; SDKs</strong></h3><ol><li><strong>Voice Streaming API</strong>: This set of APIs enables developers to build integrations that can actively listen to calls in real-time stereo (one for agent and one for the client). Developer Guides will show how you can use this real-time stereo stream to live transcribe a conversation.</li><li><strong>Workforce Management Integration Reports:</strong> A new guide to use integration reports purpose built for tracking calls and agent activity. These reports enhance the experience of integrating to our platform by also linking agent IDs to RingCentral MVP user IDs.</li></ol><h3>Engage Digital APIs &amp; SDKs</h3><ol><li><strong>New Developer Guides:</strong> Three new developer guides have been added to help developers <a href="https://developers.ringcentral.com/engage/digital/guide/digital/exports">export</a> interactions, <a href="https://developers.ringcentral.com/engage/digital/guide/sdks/ui-embed">embed</a> the Engage Digital UI into your own site of choosing, and even a new <a href="https://developers.ringcentral.com/engage/digital/guide/sdks/survey-sdk">Engage Digital Survey SDK</a> to easily integrate any third party survey supplier into Engage Digital.</li><li><strong>Developer Guide enhancements:</strong> Several enhancements have been made to the Engage Digital Developer Guides including a new SSO JWT guide, enhancements to the Structured Messages guide with Webview, WhatsApp, and Instagram, and an enhancement to the Mobile Messaging with a new Huawei push notification feature. The API Reference has also been updated with these APIs, including the new Survey Response API.</li></ol><h3><strong>Developer Experience</strong></h3><ol><li><strong>New Support Form to Replace Email Support:</strong> The process by which developers request specialized support from our dedicated developer support engineering team is getting an upgrade by requiring all developers to use our <a href="https://developers.ringcentral.com/support/create-case">new support request form</a> online. This will help developers provide us with the information we need right from the start. With this change however, we will soon be retiring the email address devsupport@ringcentral.com.</li><li><strong>Enhancements to the app creation process:</strong> Enhancements to bring greater clarity to the different types of apps developers can build through better labeling, and we redesigned our authentication preferences to better support authorization code and PKCE., and to give more control over the issuance of refresh tokens. We also added a new section called app features where developers can enable interactive messages and more.</li><li><strong>New API changelog location:</strong> To help developers find and make use of our changelog that documents changes we make to our API, we have <a href="https://developers.ringcentral.com/guide/basics/changelog">incorporated it into our Developer Guide</a>.</li><li><strong>New distribution channel for Symphony:</strong> RingCentral continues to grow its partner program with our new partners RingCentral for Symphony. This means your app can be promoted to and discovered by more customers around the world. To ensure your app is available to Symphony customers and our future partners as well, under your app’s security settings, make sure the option “Make available to all current and future RingCentral carrier and brand partners” is selected.</li></ol><h3>RingCentral Labs</h3><ol><li><strong>Poll Add-in:</strong> The new Poll Add-in is a simple polling bot that allows you to choose different types of polls like ranking from 1 to 5, 1 to 10, or even multiple choice options like who your favorite Avenger is. Try out the new <a href="https://www.ringcentral.com/apps/poll-bot-for-ringcentral">Poll Add-in</a> and let us know what you like and want to see added.</li><li><strong>Trello Add-in:</strong> This add in will let you know about changes in Trello to boards, cards, lists, and checklists. Now you can keep up to date with Trello changes while in RingCentral Team Messaging. Coming soon, the ability to join, comment, and set a due date for projects. Try it now from the RingCentral Desktop App Gallery or just click <a href="https://www.ringcentral.com/apps/trello-beta-for-ringcentral">here</a>.</li><li><strong>GitHub Add-in:</strong> This new add-in allows you to track changes to your repository, respond to issues, and even merge pull requests. You can even comment on issues, pull requests, and other comments. Try it now from the RingCentral Desktop App Gallery or just click <a href="https://www.ringcentral.com/apps/github-beta">here</a>. If you’d like to learn more about how it works, the code is available <a href="https://github.com/ringcentral/github-add-in">here</a>.</li><li><strong>Bugsnag Add-in:</strong> This new add-in notifies you of errors from Bugsnag and allows you to snooze, ignore, and even comment on these errors directly from RingCentral Team Messaging. Try it now from the RingCentral Desktop App Gallery or just click <a href="https://www.ringcentral.com/apps/bugsnag">here</a>. If you’d like to learn more about how it works, the code is available <a href="https://github.com/ringcentral/bugsnag-notification-app">here</a>.</li></ol><h3>Learn More</h3><p>We’d love to hear your feedback and use cases for these APIs. To learn even more about our APIs or if you have questions go to the following resources:</p><ul><li><a href="https://community.ringcentral.com/spaces/144/index.html">Developer Forums</a></li><li><a href="https://twitter.com/ringcentraldevs">Developer Twitter</a></li><li><a href="https://ringcentraldevs.influitive.com/">Developer Advocates Game Changers Program</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d555a98e15e3" width="1" height="1" alt=""><hr><p><a href="https://medium.com/ringcentral-developers/ringcentral-developers-winter-22-release-d555a98e15e3">RingCentral Developers Winter ’22 Release</a> was originally published in <a href="https://medium.com/ringcentral-developers">RingCentral Developers</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Step 1: Choose Your Identity]]></title>
            <link>https://medium.com/@Grokify/step-1-choose-your-identity-9b282c3e2eba?source=rss-49811220c6eb------2</link>
            <guid isPermaLink="false">https://medium.com/p/9b282c3e2eba</guid>
            <category><![CDATA[stackoverflow]]></category>
            <dc:creator><![CDATA[John Wang]]></dc:creator>
            <pubDate>Wed, 08 Dec 2021 09:29:27 GMT</pubDate>
            <atom:updated>2021-12-08T09:29:27.602Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*O-t5uZkEp2EOSbUhrX5CIg.jpeg" /></figure><p>Choosing your identity is important because you are posting on a public forum which is open to everyone, both at the time of your posts and much later. Additionally, it has been often reported that Stack Overflow may not be forgiving to new users, even to the point of being mentioned as the topic of a blog post by <a href="https://stackoverflow.blog/2018/04/26/stack-overflow-isnt-very-welcoming-its-time-for-that-to-change/">Jay Hanlon, Stack Overflow’s Executive VP of Culture and Experience</a>.</p><p>Luckily, Stack Overflow can be used effectively as either an anonymous user or a public user, and it is easy to switch between the two.</p><ul><li>Anonymous: If you want to remain anonymous, to start or even forever, that is not a problem as there are users with even over 100,000 reputation that remain anonymous.</li><li>Public: If you want to build up a public profile and reputation, you can start off public or anonymous and only switching to public after you are comfortable.</li></ul><p>If you want to gain confidence before going public with your profile, you can start anonymous and then add more profile information as you become more comfortable with the site.</p><p>Your user profile only has 1 fixed attribute, an integer user id. Your profile name, image and description can be changed at any time.</p><p>In summary:</p><ul><li>You can hide your identity to gain confidence</li><li>You can reveal yourself any time</li><li>Users are assigned permanent numeric ids, not usernames</li><li>Usernames, display names, profile images, and descriptions can be changed at any time</li><li>No one cares if you are anonymous</li></ul><h3>Contents</h3><ol><li><a href="https://medium.com/stack-overflow-the-hard-way/stack-overflow-the-hard-way-80d0ef117b6f">Introduction</a></li><li><a href="https://medium.com/stack-overflow-the-hard-way/preface-necessity-is-the-mother-of-invention-90b58fac3907">Preface: Necessity is the Mother of Invention</a></li><li>Background</li><li><strong>Setup 1: Choose Your Identity (you are here)</strong></li><li>Setup 2: Choose Your Approach(es)</li><li>Setup 3: Choose Your Tags</li><li>Answer Questions 1: Monitor Questions</li><li>Answer Questions 2: Post Answers</li><li>Answer Questions 3: Refine Answers</li><li>Ask Questions Approach</li><li>Interaction: General Niceness</li><li>Case Study: Simple Question</li><li>Case Study: Reference Question</li><li>Case Study: Standard Question</li><li>Case Study: Bounty Question</li><li>Case Study: Popular Question</li></ol><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=9b282c3e2eba" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[RingCentral Developers Fall ’21 Release]]></title>
            <link>https://medium.com/ringcentral-developers/ringcentral-developers-fall-21-release-notes-68b71e32dd6a?source=rss-49811220c6eb------2</link>
            <guid isPermaLink="false">https://medium.com/p/68b71e32dd6a</guid>
            <category><![CDATA[ringcentral]]></category>
            <category><![CDATA[announcements]]></category>
            <category><![CDATA[developer]]></category>
            <category><![CDATA[release-notes]]></category>
            <category><![CDATA[api]]></category>
            <dc:creator><![CDATA[John Wang]]></dc:creator>
            <pubDate>Thu, 02 Dec 2021 20:50:01 GMT</pubDate>
            <atom:updated>2022-03-24T03:22:42.862Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*I_01vFhufWwJT3nj_S2UMg.png" /><figcaption>RingCentral Fall 2021 Release</figcaption></figure><p>We’re happy to announce the RingCentral Developers Fall ’21 Release which includes new core APIs, SDK enhancements along with new and updated Developer Guides and App Gallery.</p><p>Please try out our new APIs and SDKs and let us know what you think!</p><p><strong>RingCentral MVP APIs &amp; SDKs</strong></p><ol><li>Emergency Location API</li><li>Call Performance Analytics API (beta)</li><li>RingCentral WebPhone Library (WebRTC SDK)</li><li>Team Messaging developer guide update</li><li>Call Performance Analytics API demo apps</li></ol><p><strong>RingCentral MVP Embeddable</strong></p><ol><li>Mute Auto Call Recording</li></ol><p><strong>Engage Voice APIs &amp; SDKs</strong></p><ol><li>Engage Voice Streaming API (coming soon)</li></ol><p><strong>Engage Digital APIs &amp; SDKs</strong></p><ol><li>Engage Digital Survey Response API</li><li>Developer Guide enhancements</li></ol><p><strong>Developer Experience</strong></p><ol><li>Easier App Creation</li><li>Richer App Gallery Profiles</li><li>Better Support Team interaction</li></ol><p><strong>RingCentral Labs</strong></p><ol><li>GitHub Add-in</li><li>Bugsnag Add-in</li><li>Trello Notification Add-in</li></ol><h3>RingCentral MVP APIs &amp; SDKs</h3><ol><li><a href="https://developers.ringcentral.com/guide/provisioning/location/emergency-locations"><strong>Emergency Location API</strong></a><strong>:</strong> A new set of APIs are now available for developers to set the emergency response location for accounts and extensions to comply with the RAY BAUM Act. The current updating of an emergency service address using the device endpoint will be replaced with this new API.</li><li><a href="https://developers.ringcentral.com/guide/analytics"><strong>Call Performance Analytics API (beta)</strong></a>: The Analytics API now has two endpoints one for getting “aggregate” call-related metrics and another one for getting “time” based metrics for various calls and call segments. More on that can be found <a href="https://developers.ringcentral.com/api-reference/analytics">here</a>. This API is still in private beta so if you would like access to it, please fill out the <a href="https://developers.ringcentral.com/guide/analytics">form on this page</a>.</li><li><strong>RingCentral WebPhone Library (WebRTC SDK):</strong> Several enhancements were deployed to newer versions of the RingCentral WebPhone Library to enable call control features like Warm Transfer, Call Recording and Call Park. Developers who use this library are recommended to upgrade to the latest version V0.8.9 from our <a href="https://github.com/ringcentral/ringcentral-web-phone">GitHub repository</a>.</li><li><strong>Team Messaging developer guide update:</strong> In conjunction and support of the release of the RingCentral Add-in Framework, the Team Messaging section has been completely rewritten with tons of new content. Check out our <a href="https://developers.ringcentral.com/guide/team-messaging">Developer Guide</a> to learn more about <a href="https://developers.ringcentral.com/guide/team-messaging/adaptive-cards">Adaptive Cards</a>, <a href="https://developers.ringcentral.com/guide/team-messaging/add-ins">building add-ins</a>, a <a href="https://developers.ringcentral.com/guide/team-messaging/bots/walkthrough">step-by-step guide to building a bot</a>, posting <a href="https://developers.ringcentral.com/guide/team-messaging/posting/tasks">tasks</a> and <a href="https://developers.ringcentral.com/guide/team-messaging/posting/notes">notes</a>, and more!</li><li><strong>Call Performance Analytics API demo apps:</strong> We now have three different demo applications that showcase how to use Call Performance Analytics. They are available as GitHub projects for languages including <a href="https://github.com/ringcentral/call-performance-analytics-demo-node">Node.JS</a>, <a href="https://github.com/ringcentral/call-performance-analytics-demo-java">Java</a> and <a href="https://github.com/ringcentral/call-performance-analytics-demo-csharp">C#</a>.</li></ol><h3>RingCentral MVP Embeddable</h3><ol><li><strong>Mute Auto Call Recording:</strong> There are times when you need to pause a recording when handling sensitive information that should not be recorded (such as credit card numbers). In these instances, Auto Call Recording may be turned on and you need to pause it momentarily. This feature to “mute” auto call recording is now available in the embeddable.</li></ol><h3>Engage Voice APIs &amp; SDKs</h3><ol><li><strong>Engage Voice Streaming API (coming soon): </strong>A new set of APIs will allow developers to build integrations that can actively listen to calls in real-time stereo (one for agent and one for the client).</li></ol><h3>Engage Digital APIs &amp; SDKs</h3><ol><li><a href="https://developers.ringcentral.com/engage/digital/api-reference/Survey-Responses/getSurveyResponse"><strong>Survey Response API</strong></a><strong>:</strong> This new API allows you to retrieve survey responses when a survey is sent out from a chat session.</li><li><strong>Developer Guide enhancements:</strong> Several enhancements have been made including a new SSO JWT guide, enhancements to the Structured Messages guide with Webview, WhatsApp, and Instagram, and an enhancement to the Mobile Messaging with a new Huawei push notification feature.</li></ol><h3>RingCentral Labs</h3><ol><li><strong>GitHub Add-in:</strong> This new add-in allows you to track changes to your repository, respond to issues, and even merge pull requests. You can even comment on issues, pull requests, and other comments. Try it now from the RingCentral Desktop App Gallery or just click <a href="https://www.ringcentral.com/apps/github-beta">here</a>. If you’d like to learn more about how it works, the code is available <a href="https://github.com/ringcentral/github-add-in">here</a>.</li><li><strong>Bugsnag Add-in:</strong> This new add-in notifies you of errors from Bugsnag and allows you to snooze, ignore, and even comment on these errors directly from RingCentral Team Messaging. Try it now from the RingCentral Desktop App Gallery or just click <a href="https://www.ringcentral.com/apps/bugsnag">here</a>. If you’d like to learn more about how it works, the code is available <a href="https://github.com/ringcentral/bugsnag-notification-app">here</a>.</li><li><strong>Trello Notification Add-in:</strong> This add-in will let you know about changes in Trello to boards, cards, lists, and checklists. Now you can keep up to date with Trello changes while in RingCentral Team Messaging. Coming soon, the ability to join, comment, and set a due date for projects. Try it now from the RingCentral Desktop App Gallery or just click <a href="https://www.ringcentral.com/apps/trello-beta-for-ringcentral">here</a>.</li></ol><h3>Learn More</h3><p>We’d love to hear your feedback and use cases for these APIs. To learn even more about our APIs or if you have questions go to the following resources:</p><ul><li><a href="https://community.ringcentral.com/spaces/144/index.html">Developer Forums</a></li><li><a href="https://twitter.com/ringcentraldevs">Developer Twitter</a></li><li><a href="https://ringcentraldevs.influitive.com/">Developer Advocates Game Changers Program</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=68b71e32dd6a" width="1" height="1" alt=""><hr><p><a href="https://medium.com/ringcentral-developers/ringcentral-developers-fall-21-release-notes-68b71e32dd6a">RingCentral Developers Fall ’21 Release</a> was originally published in <a href="https://medium.com/ringcentral-developers">RingCentral Developers</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Preface: Necessity is the Mother of Invention]]></title>
            <link>https://medium.com/stack-overflow-the-hard-way/preface-necessity-is-the-mother-of-invention-90b58fac3907?source=rss-49811220c6eb------2</link>
            <guid isPermaLink="false">https://medium.com/p/90b58fac3907</guid>
            <category><![CDATA[stackoverflow]]></category>
            <dc:creator><![CDATA[John Wang]]></dc:creator>
            <pubDate>Mon, 29 Nov 2021 10:04:32 GMT</pubDate>
            <atom:updated>2021-12-08T09:30:27.216Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4WUwQODo9ohWTtgY1MrcRA.png" /></figure><p>Like most developers, I had been a user, but not a participant, of Stack Overflow for years, however, that changed when I joined the RingCentral to lead the developer program. I wanted to have a scalable developer support process so I naturally looked at Stack Overflow. Luckily, we already had customers using Stack Overflow but, as of then, we had no official representative and no tag.</p><p>I decided it was important to get a tag and discussed this with our Stack Overflow account representative but was told there was no way to pay for a tag, and that it was only available via the community creation process (which required 1,500 points). Internal to our company, we had a lot of developers, but like most developers, none had enough reputation, so being driven to attain a tag, I decided to try to get enough reputation myself.</p><p>When I started, I didn’t have any idea of what to do and was doing this part-time, but in the end, I was able to achieve over 2,000 reputation in just 28 days of actual posting over 6 calendar months. Part the amount of calendar time is due to the fact I didn’t know what to expect or how to proceed which this book is designed to make clear for you.</p><p>I’m sharing my thoughts and strategy with everyone because I’m a big fan of Stack Overflow and want more people to contribute and get value out of the site. It’s my hope with this book, more people can come up to speed on Stack Overflow, become valuable members, and get genuine enjoyment out of the site.</p><p>This book is based on the presentation I gave at the 2018 Coder Cruise developer conference. As part of the research I applied more analytics to my theory than just my gut feel and instincts which I used when I was going through the process the first time myself. The techniques still held true as I actively participated on the site and gained another 1,000 points in preparation for the talk.</p><p>I hope you find this book useful and it helps you make the site more enjoyable for you.</p><h3>Table of Contents</h3><ol><li><a href="https://medium.com/stack-overflow-the-hard-way/stack-overflow-the-hard-way-80d0ef117b6f">Introduction</a></li><li><strong>Preface: Necessity is the Mother of Invention (you are here)</strong></li><li>Background</li><li><a href="https://medium.com/@Grokify/step-1-choose-your-identity-9b282c3e2eba">Setup 1: Choose Your Identity</a></li><li>Setup 2: Choose Your Approach(es)</li><li>Setup 3: Choose Your Tags</li><li>Answer Questions 1: Monitor Questions</li><li>Answer Questions 2: Post Answers</li><li>Answer Questions 3: Refine Answers</li><li>Ask Questions Approach</li><li>Interaction: General Niceness</li><li>Case Study: Simple Question</li><li>Case Study: Reference Question</li><li>Case Study: Standard Question</li><li>Case Study: Bounty Question</li><li>Case Study: Popular Question</li></ol><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=90b58fac3907" width="1" height="1" alt=""><hr><p><a href="https://medium.com/stack-overflow-the-hard-way/preface-necessity-is-the-mother-of-invention-90b58fac3907">Preface: Necessity is the Mother of Invention</a> was originally published in <a href="https://medium.com/stack-overflow-the-hard-way">Stack Overflow the Hard Way</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Stack Overflow the Hard Way]]></title>
            <link>https://medium.com/stack-overflow-the-hard-way/stack-overflow-the-hard-way-80d0ef117b6f?source=rss-49811220c6eb------2</link>
            <guid isPermaLink="false">https://medium.com/p/80d0ef117b6f</guid>
            <category><![CDATA[stackoverflow]]></category>
            <category><![CDATA[learning-the-hard-way]]></category>
            <dc:creator><![CDATA[John Wang]]></dc:creator>
            <pubDate>Mon, 29 Nov 2021 09:54:06 GMT</pubDate>
            <atom:updated>2021-12-08T09:29:54.624Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*O-t5uZkEp2EOSbUhrX5CIg.jpeg" /></figure><p>This is an online book on getting started with <a href="https://stackoverflow.com/">Stack Overflow</a>. It can be used by complete beginners or those looking to increase their participation and enjoyment of the site.</p><p>It is based on my experience with Stack Overflow which I presented at the Coder Cruise developer conference in 2018 as “Stack Overflow 0 to 2000 in 30 Days.” My goal when I started posting on Stack Overflow (with 0 reputation and activity) was to gain 2000 points so I could get the privileges of editing questions/answers and creating tags from a developer relations perspective for a developer program I was running, but the true value in the experience was becoming comfortable with using the site to help others and get helped.</p><p>This book is to help others get comfortable with Stack Overflow the same way, via active participation on the site.</p><blockquote>Note: This book is being posting on Medium in phases so please continue to visit until all chapters are online.</blockquote><p>Navigate this online book using this Table of Contents:</p><h3>Table of Contents</h3><ol><li><strong>Introduction (you are here)</strong></li><li><a href="https://medium.com/stack-overflow-the-hard-way/preface-necessity-is-the-mother-of-invention-90b58fac3907">Preface: Necessity is the Mother of Invention</a></li><li>Background</li><li><a href="https://medium.com/@Grokify/step-1-choose-your-identity-9b282c3e2eba">Setup 1: Choose Your Identity</a></li><li>Setup 2: Choose Your Approach(es)</li><li>Setup 3: Choose Your Tags</li><li>Answer Questions 1: Monitor Questions</li><li>Answer Questions 2: Post Answers</li><li>Answer Questions 3: Refine Answers</li><li>Ask Questions Approach</li><li>Interaction: General Niceness</li><li>Case Study: Simple Question</li><li>Case Study: Reference Question</li><li>Case Study: Standard Question</li><li>Case Study: Bounty Question</li><li>Case Study: Popular Question</li></ol><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=80d0ef117b6f" width="1" height="1" alt=""><hr><p><a href="https://medium.com/stack-overflow-the-hard-way/stack-overflow-the-hard-way-80d0ef117b6f">Stack Overflow the Hard Way</a> was originally published in <a href="https://medium.com/stack-overflow-the-hard-way">Stack Overflow the Hard Way</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[RingCentral Developers Summer ’21 Release Notes]]></title>
            <link>https://medium.com/ringcentral-developers/ringcentral-developers-summer-21-release-notes-50c66593d63d?source=rss-49811220c6eb------2</link>
            <guid isPermaLink="false">https://medium.com/p/50c66593d63d</guid>
            <category><![CDATA[ucaas]]></category>
            <category><![CDATA[release-notes]]></category>
            <category><![CDATA[api]]></category>
            <category><![CDATA[ccaas]]></category>
            <category><![CDATA[announcements]]></category>
            <dc:creator><![CDATA[John Wang]]></dc:creator>
            <pubDate>Wed, 25 Aug 2021 12:08:43 GMT</pubDate>
            <atom:updated>2022-02-10T08:32:17.622Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*7VkJIMdGfRxmR8RL-rSL6Q.png" /><figcaption>RingCentral Developers Summer 2021 Release Notes</figcaption></figure><p>We’re happy to announce the RingCentral Developers Spring ’21 Release which includes new core APIs, SDK enhancements along with new and updated Developer Guides and App Gallery.</p><p>Some exciting API introductions include supporting RC App Add-ins, the Analytics Call Performance API, Audit Trail API, High Volume SMS API enhancements, and Engage Voice Streaming API.</p><blockquote><strong><em>Breaking Change Notice:</em></strong><em> Starting September 1, 2021, downloading team messaging files, e.g., Compliance Export files, will require developers to </em><a href="https://support.ringcentral.com/article/authorization-changes-downloading-glip-files.html"><em>transmit a standard authorization header</em></a><em> when doing so. Failure to adapt to this change could break existing applications.</em></blockquote><p>Please try out our new APIs and SDKs to us know what you think!</p><p><strong>RingCentral MVP APIs &amp; SDKs</strong></p><ol><li>RingCentral Add-ins</li><li>Analytics Call Performance API</li><li>Audit Trail API</li><li>High Volume SMS Message Statuses</li><li>High Volume SMS List Batches API</li><li>E911 Location APIs for Ray Baum Act</li></ol><p><strong>RingCentral MVP Embeddable</strong></p><ol><li>RingTones</li><li>Pop-out</li></ol><p><strong>Engage Digital APIs &amp; SDKs</strong></p><ol><li>Source SDK Developer Guide</li><li>Web Messaging Developer Guide</li></ol><p><strong>Engage Voice APIs &amp; SDKs</strong></p><ol><li>Voice Streaming API</li></ol><p><strong>Engage Voice Embeddable</strong></p><ol><li>Engage Voice Mobile Framework</li></ol><p><strong>Developer Experience</strong></p><ol><li>Easier App Creation</li><li>Richer App Gallery Profiles</li><li>Better Support Team interaction</li></ol><p><strong>RingCentral Labs</strong></p><ol><li>HubSpot Chrome Extension (enhancement)</li></ol><h3>RingCentral MVP APIs &amp; SDKs</h3><ol><li><a href="https://developers.ringcentral.com/api-products/add-ins"><strong>RingCentral Add-ins</strong></a><strong> (Preview): </strong>Built on the open source Adaptive Card Framework, RingCentral Add-ins provides developers with a new way to automate workflows and embed rich, interactive applications directly inside RingCentral team messaging. RingCentral Add-ins is currently a closed beta. Fill out <a href="https://docs.google.com/forms/d/1FnZiiYR93iHr_G90W11-R__iOJ-ptYbkTwepgdadjPY/viewform?ts=60ff12fd&amp;edit_requested=true">this form</a> to request access for the closed beta. Want to get started building your own Add-in app? Start with this <a href="https://github.com/ringcentral/notification-app-js">Add-in JS Framework</a> to begin posting Adaptive Cards to RingCentral team messaging.</li><li><a href="https://developers.ringcentral.com/guide/analytics"><strong>Analytics Call Performance API</strong></a><strong> (Beta): </strong>The Call Performance API is our first API in our new Analytics API product line, providing developers access to granular call related data for analytics purposes. Two primary metrics summarized and accessible through this API are around aggregation of number of calls and amount of time spent that can be further broken down for detailed analysis. The Call Performance API is now available in closed beta. Fill out <a href="https://developers.ringcentral.com/guide/analytics">the form on this page</a> to request access for the closed beta.</li><li><strong>Audit Trail API (preview)</strong>: A new search API for configuration changes and authentication success/failures. This search API allows you to try out searching our audit logs between specified dates, filter by extension ID, site, or even action. To register for this preview, please click <a href="https://forms.gle/jgzFYeAFaqybEsWK7">here</a>.</li><li><a href="https://developers.ringcentral.com/guide/messaging/sms/high-volume/message-store#read-message-statuses"><strong>High Volume SMS Message Statuses</strong></a><strong>:</strong> Instead of reading messages from the message store and parsing message by message to detect message statuses, you can now easily read aggregated message statuses from the entire message store using the statuses API. You can specify the query parameters such as a batch id, time range, message direction or phone numbers to read the status of messages that satisfy the filtering conditions.</li><li><a href="https://developers.ringcentral.com/guide/messaging/sms/high-volume/message-store#list-batches"><strong>High Volume SMS List Batches API</strong></a><strong>:</strong> Now you can list all batches from the message store with essential information such as the batch id, the batch status, and the cost of a batch etc. You can specify the query parameters such as time range, the ‘from’ phone number, and the batch status to limit the data in the response.</li><li><strong>E911 Location APIs for Ray Baum Act (coming soon)</strong>: A new set of APIs will become available for developers to create location profiles and then choose a location from the list of location profiles for the user’s current location. Currently, users can only select the current location or manually enter a new location. In future releases, additional APIs will be added to detecting when to change the location.</li></ol><h3>RingCentral MVP Embeddable</h3><ol><li><strong>RingTones</strong>: Now you can set your own distinct RingTone in the Embeddable. Note that you can only set the RingTone for all calls and not specific contacts. RingTone settings are disabled by default. Click <a href="https://github.com/ringcentral/ringcentral-embeddable/blob/master/docs/disable-features.md#enable-ringtone-settings-feature">here</a> for instructions on enabling RingTones.</li><li><strong>Pop-out</strong>: Refreshing a page can drop a call with the embeddable so a pop-up keeps the call connected, even if you refresh the page where the embeddable was. Just click the button to pop-out the embeddable into its own window. A placeholder will be left on the page to pop the embeddable back into the page. See <a href="https://github.com/ringcentral/ringcentral-embeddable/blob/master/docs/popup-window.md">here</a> for more details.</li></ol><h3>Engage Digital APIs &amp; SDKs</h3><ol><li><strong>Source SDK Developer Guide</strong>: The Source SDK allows developers to define their own source for a channel in Engage Digital and integrate that source. For instance, your source could be a bot that is conversing with a customer. If the customer wants to speak to an agent, you can redirect them to the channel and an agent will see the history and be able to help them in a live chat session. Learn more about how to do this <a href="https://developers.ringcentral.com/engage/digital/guide/sdks/source-sdk">here</a>.</li><li><strong>Web Messaging Developer Guide</strong>: With very little code, a developer can embed a chat messaging client to their web page. This new developer guide will take developers through the steps to create this client and also how to customize the client based upon your needs. The chat messaging client can be a floating icon on the page, or expand to the entire page width, or even create a mobile chat messaging experience. Learn more about creating a chat messaging client <a href="https://developers.ringcentral.com/engage/digital/guide/interactions/web-messaging">here</a>.</li></ol><h3>Engage Voice APIs &amp; SDKs</h3><ol><li><strong>Voice Streaming API (coming soon)</strong>: A new set of APIs will allow developers to build integrations that can actively listen to calls in real-time stereo (one for agent and one for the client).</li></ol><h3>Engage Voice Embeddable</h3><ol><li><strong>Engage Voice Mobile Framework</strong>: Now you can create Engage Voice mobile device (iOS and Android) experiences for agents! This framework walks you through creating the appropriate server for managing events and actions and deploying your own virtual environment on your laptop/PC. See the guide <a href="https://developers.ringcentral.com/engage/voice/guide/sdks#mobile-framework">here</a>.</li></ol><h3>Developer Experience</h3><ol><li><strong>Easier App Creation: </strong>App creation has been redesigned with enhancements like: (a) making authentication options like PKCE and OAuth refresh tokens easier to configure, (b) better promotion of features like interactive messages (coming soon with the RingCentral Add-in framework) and (c) helping developers build apps that are available to our growing list of partners like Avaya, AT&amp;T, Verizon, and more.</li><li><strong>Richer App Gallery Profiles: </strong>We overhauled how developers compose their App Gallery profile to help them take full advantage of the new display options with our newly redesigned App Gallery.</li><li><strong>Better Support Team interaction: </strong>We released a <a href="https://developers.ringcentral.com/support">new support landing page</a> to help developers look for and find help more quickly and easily. We also made available a <a href="https://developers.ringcentral.com/support/create-case">new help ticket form</a> that helps our developer support team gather the information they need to begin helping you right away. This new help ticket form is part of a larger effort to improve our developer support experience. As part of this effort, we will begin the process of retiring the email address <a href="mailto:devsupport@ringcentral.com">devsupport@ringcentral.com</a> as a way to create help tickets later in 2021.</li></ol><h3>RingCentral Labs</h3><ol><li><strong>HubSpot Chrome Extension (enhancement)</strong>: The RingCentral Labs HubSpot Chrome extension is available once again with some changes to the experience. A new screen contact pop will expand to the entire page, allow you to close with a new button, and launch a new tab with the contact. You can actively take notes while on a call, even if you forward your calls to the RingCentral app. Call log listings have been refined and a new contact indexing will automatically create an index of all your contacts, even above 10,000 contact records. Learn more about how these features work through our GitHub repository <a href="https://github.com/ringcentral/hubspot-embeddable-ringcentral-phone">here</a>.</li></ol><h3>Learn More</h3><p>We’d love to hear your feedback and use cases for these APIs. To learn even more about our APIs or if you have questions go to the following resources:</p><ul><li><a href="https://community.ringcentral.com/spaces/144/index.html">Developer Forums</a></li><li><a href="https://twitter.com/ringcentraldevs">Developer Twitter</a></li><li><a href="https://ringcentraldevs.influitive.com/">Developer Advocates Game Changers Program</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=50c66593d63d" width="1" height="1" alt=""><hr><p><a href="https://medium.com/ringcentral-developers/ringcentral-developers-summer-21-release-notes-50c66593d63d">RingCentral Developers Summer ’21 Release Notes</a> was originally published in <a href="https://medium.com/ringcentral-developers">RingCentral Developers</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[RingCentral Developers Spring ’21 Release Notes]]></title>
            <link>https://medium.com/ringcentral-developers/ringcentral-developers-spring-21-release-notes-b6c5e24245d4?source=rss-49811220c6eb------2</link>
            <guid isPermaLink="false">https://medium.com/p/b6c5e24245d4</guid>
            <category><![CDATA[announcements]]></category>
            <category><![CDATA[api]]></category>
            <category><![CDATA[ccaas]]></category>
            <category><![CDATA[release-notes]]></category>
            <category><![CDATA[ucaas]]></category>
            <dc:creator><![CDATA[John Wang]]></dc:creator>
            <pubDate>Tue, 18 May 2021 11:00:23 GMT</pubDate>
            <atom:updated>2021-05-18T16:47:33.595Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*xd9dB1y-5bZk3OdCNiV2Qg.png" /><figcaption>RingCentral Spring ’21 Release</figcaption></figure><p>We’re happy to announce the RingCentral Developers Spring ’21 Release which includes new core APIs, SDK enhancements along with new and updated Developer Guides and App Gallery.</p><blockquote><strong><em>Breaking Change Notice: </em></strong><em>Team Messaging media asset URLs will be provided additional security and require updated authentication on July 1, 2021. See more in the </em><a href="https://medium.com/ringcentral-developers/important-changes-to-how-team-messaging-files-are-downloaded-bb13c97b3c89"><em>Team Messaging API Update Notice</em></a><em>.</em></blockquote><p>Please try out our new APIs and let us know what you think!</p><p><strong>Office APIs &amp; SDKs</strong></p><ol><li>A2P SMS Send API Partial Send</li><li>A2P Opt-in enhancement</li><li>Embeddable Multi-Tab support</li><li>Embeddable Warm Transfer</li><li>Embeddable Three-Way Calling</li><li>Embeddable Discovery and Dynamic Branding</li></ol><p><strong>Engage APIs &amp; SDKs</strong></p><ol><li>Engage Voice Persistent Auth Token</li><li>Engage Digital Chatbot Framework Structured Messages Support</li><li>Dialer Result Download developer guide</li><li>Agent script developer guide</li><li>IVR Script developer guide</li></ol><p><strong>App Gallery</strong></p><ol><li>Recommended and related apps</li><li>Alcatel-Lucent Rainbow Office</li></ol><h3>Office APIs &amp; SDKs</h3><ol><li><strong>A2P SMS Send API Partial Send (enhancement)</strong> — Batch SMS sends will now selectively fail individual messages instead of failing the entire batch. Per-message errors are provided in the API response’s rejected array. Read more in the <a href="https://developers.ringcentral.com/api-reference/High-Volume-SMS/createA2PSMS">API Reference</a>.</li><li><strong>A2P Opt-in (enhancement) —</strong> unstop opt-in keyword is supported in addition to start. Some carriers use unstop in their messaging, so this specific text is now supported. See more in our <a href="https://developers.ringcentral.com/guide/messaging/sms/high-volume/opt-out">A2P SMS developer guide</a>.</li><li><strong>Embeddable Multi-Tab support (new) —</strong> Users can now open and navigate to multiple browser tabs while remaining on a phone call. This is especially useful for CRM use cases where users may be navigating between customer account web pages.</li><li><strong>Embeddable Warm Transfer (new) — </strong>Enables conversing with the new consult party before transferring calls.</li><li><strong>Embeddable Three-Way Calling (update) — </strong>Three-way calling is now mature and enabled by default. There’s no longer a need to contact developer support to enable this feature.</li><li><strong>Embeddable Discovery and Dynamic Branding (new) —</strong> Better support for carrier partners by automatically navigating different environments and providing UI branding support based on user account.</li></ol><p>See <a href="https://ringcentral-api-changelog.readthedocs.io/en/latest/1_0_47/">the Changelog for details</a> on API changes.</p><h3>Engage APIs &amp; SDKs</h3><ol><li><strong>Engage Voice Persistent Auth Token (new) — </strong>Now you can create your own <a href="https://developers.ringcentral.com/engage/voice/guide/authentication/auth-engage">permanent token</a> for Engage. This permanent token will not expire unless explicitly revoked and is useful for calling endpoints where a workflow is not possible. Examples include IVR Scripting, or Web Services triggered by an event. See the guide <a href="https://developers.ringcentral.com/engage/voice/guide/authentication/auth-engage">here</a> for how to use and manage permanent tokens.</li><li><strong>Engage Digital Chatbot Framework Structured Messages Support (enhancement) — </strong>Add rich content and interactivity to chatbot interactions including <a href="https://developers.ringcentral.com/engage/digital/guide/interactions/structured-messages/select">select list (aka list picker)</a>, <a href="https://developers.ringcentral.com/engage/digital/guide/interactions/structured-messages/rich-link">rich links (image, title, sub-title)</a>, <a href="https://developers.ringcentral.com/engage/digital/guide/interactions/structured-messages/template">buttons</a>, <a href="https://developers.ringcentral.com/engage/digital/guide/interactions/structured-messages/carousel">carousels</a>, <a href="https://developers.ringcentral.com/engage/digital/guide/interactions/structured-messages/time-select">date and time pickers</a>, <a href="https://developers.ringcentral.com/engage/digital/guide/interactions/structured-messages/apple-pay">Apple Pay</a>, and <a href="https://developers.ringcentral.com/engage/digital/guide/interactions/structured-messages/apple-auth">Apple Authenticate</a>. See the <a href="https://github.com/ringcentral/engage-digital-chatbot-js">Engage Digital Chatbot Framework for more</a>.</li><li><strong>Dialer Result Download developer guide (new) — </strong>A common report used by customers and partners is the Dialer Result Download report. This report details each dialed call as a record for keeping track of agent interactions. See the dev guide <a href="https://developers.ringcentral.com/engage/voice/guide/analytics/reports/dialer-result-download-report">here</a>.</li><li><strong>Agent script developer guide (new) — </strong>Ever wanted to do more with Agent Scripting than just giving agents something to read back to a customer? This new dev guide shows you how to integrate a CRM into the Agent Console so when a customer is connected with an agent, the customer’s contact information is brought up automatically. Take a look at how by following this developer guide <a href="https://developers.ringcentral.com/engage/voice/guide/users/agents/agent-script">here</a>.</li><li><strong>IVR Script developer guide (new) — </strong>New <a href="https://developers.ringcentral.com/engage/voice/guide/routing/ivr">IVR guide</a> for developers to show you how to log in to other services like RingCentral Office. This is the start of a process that can lead to IVR deflect operations.</li></ol><h3>App Gallery</h3><ol><li><strong>Recommended and related apps (new) — </strong>With the growth of the RingCentral platform comes an ever-growing need to help customers discover apps to extend the value of their RingCentral experience. To help customers find the apps most relevant to them, we now promote related and recommended apps and collections <a href="https://www.ringcentral.com/apps/">throughout the App Gallery</a>.</li><li><strong>Alcatel-Lucent Rainbow Office (new) — </strong>One of the greatest values of building on the RingCentral platform is the ability to market and sell your applications into a rapidly growing customer base made possible by the new partners we are bringing on every quarter. Just last month, we added Rainbow Office by <strong>Alcatel-Lucent</strong> to our partner list and launched the <a href="https://www.ringcentral.com/apps/rainbow-office/">Rainbow Office app gallery</a>.</li></ol><h3>Learn More</h3><p>We’d love to hear your feedback and use cases for these APIs. To learn even more about our APIs or if you have questions go to the following resources:</p><ul><li><a href="https://forums.developers.ringcentral.com/">Developer Forums</a></li><li><a href="https://twitter.com/ringcentraldevs">Developer Twitter</a></li><li><a href="https://ringcentraldevs.influitive.com/">Developer Advocates</a></li><li><a href="http://gamechanging.dev/">Game Changers Program</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=b6c5e24245d4" width="1" height="1" alt=""><hr><p><a href="https://medium.com/ringcentral-developers/ringcentral-developers-spring-21-release-notes-b6c5e24245d4">RingCentral Developers Spring ’21 Release Notes</a> was originally published in <a href="https://medium.com/ringcentral-developers">RingCentral Developers</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[RingCentral Developers Winter ’21 Release Notes]]></title>
            <link>https://medium.com/ringcentral-developers/ringcentral-developers-winter-21-release-notes-6f51347f1e26?source=rss-49811220c6eb------2</link>
            <guid isPermaLink="false">https://medium.com/p/6f51347f1e26</guid>
            <category><![CDATA[release-notes]]></category>
            <category><![CDATA[api]]></category>
            <category><![CDATA[communications-api]]></category>
            <category><![CDATA[ccaas]]></category>
            <category><![CDATA[ucaas]]></category>
            <dc:creator><![CDATA[John Wang]]></dc:creator>
            <pubDate>Tue, 09 Mar 2021 12:58:38 GMT</pubDate>
            <atom:updated>2021-03-25T15:00:42.075Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*ODuSD3L9sJGOYlwYhwydtg.png" /></figure><p>We’re happy to announce the RingCentral Developers Winter ’21 Release which includes new core APIs, SDK enhancements along with new and updated Developer Guides and Developer Experience.</p><blockquote><strong>TLS Notice: </strong>We are decommissioning TLS 1.1 and 1.0 on our production API endpoints at <a href="https://platform.ringcentral.com">https://platform.ringcentral.com</a> and <a href="https://platform.ringcentral.biz">https://platform.ringcentral.biz</a> on April 30, 2021. These have already been decommissioned on the sandbox environment at <a href="https://platform.devtest.ringcentral.com">https://platform.devtest.ringcentral.com</a> which can be used for testing. See our <a href="https://support.ringcentral.com/article/ringcentral-disabling-tls-1-0-1-1-for-developer-apis.html">TLS 1.1 and 1.0 Decommissioning Notice</a> for more information.</blockquote><p>Please try out our new APIs and let us know what you think!</p><p><strong>Office APIs &amp; SDKs</strong></p><ol><li>High Volume SMS Message List API Enhancements</li><li>Update Multiple Contacts &amp; Extensions API</li><li>Proof Key for Code Exchange (PKCE) Auth Flow API and JavaScript SDK</li><li>Embeddable SDK SMS / MMS Enhancements</li><li>Embeddable SDK Park Phone Call</li><li>Address Book Developer Guide</li></ol><p><strong>Engage APIs &amp; SDKs</strong></p><ol><li>Engage Voice Permanent API Tokens</li><li>Engage Voice Lead Actions Developer Guide</li><li>Engage Voice Web Services Developer Guide</li><li>Engage Digital App SDK Developer Guide</li><li>Structured Messages Developer Guide</li></ol><p><strong>App Gallery</strong></p><ol><li>Redesigned App Gallery</li></ol><h3>Office APIs &amp; SDKs</h3><ol><li><strong>High Volume SMS Message List API Enhancements (new, beta) </strong>— The <a href="https://developers.ringcentral.com/api-reference/High-Volume-SMS/listA2PSMS">High Volume SMS Message List API</a> has been enhanced with additional query filter parameters including:phoneNumber, dateFrom, dateTo, direction, and view . Setting view to Detailed will include the text body in the API response.</li><li><strong>Update Multiple Contacts &amp; Extensions API (beta) — </strong><a href="https://developers.ringcentral.com/api-reference/External-Contacts/addressBookBulkUpload">This API</a> allows a user to upload multiple contacts and multiple extensions at once. This makes it very easy to create and share customers’ contact information with a group of user extensions with just a single API call.</li><li><strong>Proof Key for Code Exchange (PKCE) Auth Flow API and JavaScript SDK— </strong>In a client-side app such as Single Page Apps, the app will need to implement auth flow on the client side without a server. Therefore, the Authorization Code grant flow is not a suitable option for a client-side app, because we need to store the clientSecret securely which is not possible in a SPA or other client-only app. <a href="https://developers.ringcentral.com/api-reference/Authorization">Authorization Code with PKCE</a> grant flow is a new solution for a client-side app. It is a security enhancement for the authorization code flow. The application will only need the clientId.</li><li><strong>Embeddable SDK SMS / MMS Enhancements: </strong>Support for send and receive files via MMS is now included. Files including images and contact cards (vcf) can be sent and received via the Embeddable.</li><li><strong>Embeddable SDK Park Web Phone Call</strong>: A new feature to park a call so others can pick up the call using a parked number. Many retail stores use this ability to receive a call and park the call so that another department can pick up the call by entering the parked number.</li><li><strong>Address Book Developer Guide </strong>— Explore common ways to filter the Address Book to find users quickly. This is especially useful for operator and contact center use cases where staff needs to quickly filter the address book to identify people to either forward calls or bring in for consultations. Try some of these filters <a href="https://developers.ringcentral.com/guide/address-book">in the Address Book Developer Guide here</a>.</li></ol><h3>Engage APIs &amp; SDKs</h3><ol><li><strong>Engage Voice Permanent API Tokens </strong>— A new permanent token API allows you to create API tokens for Engage Voice that don’t immediately expire. These tokens can be used for situations where creating a full auth flow is not possible (example: executing a web service based upon an event like ending the call for a campaign). A full set of APIs to use these API tokens are described in the Developer Guides: <a href="https://developers.ringcentral.com/engage/voice/guide/authentication/auth-engage#generate-an-engage-access-token">Generate an Engage Access Token</a>, <a href="https://developers.ringcentral.com/engage/voice/guide/authentication/auth-engage#generate-a-permanent-api-token">Generate a Permanent API Token</a>.</li><li><strong>Engage Voice Lead Actions Developer Guide</strong> — <a href="https://developers.ringcentral.com/engage/voice/guide/dialing/leads/actions">Lead Actions</a> is a commonly used API for managing leads. You can move leads from one campaign to another, cancel leads, or even delete leads you no longer need.</li><li><strong>Engage Voice Web Services Developer Guide —</strong> <a href="https://developers.ringcentral.com/engage/voice/guide/notifications/web-service">Web Services</a> are the webhooks of Engage Voice. They specify an endpoint to invoke with a message body and headers and are customizable with key parameters in the request body for things like Agent information, ANI, DNIS, and even call recording links. Once created, these Web Services can be linked to different events like the Agent Termination Web Service Event (when an agent segment is ended either from disconnecting or transferring the call).</li><li><strong>Engage Digital App SDK Developer Guide</strong> — The <a href="https://developers.ringcentral.com/engage/digital/guide/app-sdk">App SDK developer guide</a> assists developers with customizing the Agent UI in Engage Digital.</li><li><strong>Structured Messages Developer Guide </strong>— The <a href="https://developers.ringcentral.com/engage/digital/guide/interactions/structured-messages">Structured Messages developer guide</a> shows how you send enhanced messages to customers. These guides walk you through the use of these features and how to create your own custom agent experience and rich messages.</li></ol><h3>App Gallery</h3><ol><li><strong>Redesigned App Gallery</strong> — A complete redesign of the RingCentral App Gallery was launched to help our customers discover and install more apps. If you are currently promoting an app in our App Gallery, take a look at your app’s profile and make updates to take advantage of our new design. If you have yet to publish an app, take a look at the App Gallery to see how it can help you reach more RingCentral customers and grow your business.</li></ol><p>View hundreds of promoted apps <a href="https://www.ringcentral.com/apps/">on our App Gallery</a>. <a href="https://developers.ringcentral.com/">Sign into our Developer Portal</a> to manage your Apps and App Gallery listings.</p><h3>Learn More</h3><p>We’d love to hear your feedback and use cases for these APIs. To learn even more about our APIs or if you have questions go to the following resources:</p><ul><li><a href="https://forums.developers.ringcentral.com/">Developer Forums</a></li><li><a href="https://twitter.com/ringcentraldevs">Developer Twitter</a></li><li><a href="https://ringcentraldevs.influitive.com/">Developer Advocates</a></li><li><a href="http://gamechanging.dev/">Game Changers Program</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=6f51347f1e26" width="1" height="1" alt=""><hr><p><a href="https://medium.com/ringcentral-developers/ringcentral-developers-winter-21-release-notes-6f51347f1e26">RingCentral Developers Winter ’21 Release Notes</a> was originally published in <a href="https://medium.com/ringcentral-developers">RingCentral Developers</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[RingCentral Developers Fall ’20 Release Notes]]></title>
            <link>https://medium.com/ringcentral-developers/ringcentral-developers-fall-20-release-notes-caef733dd41b?source=rss-49811220c6eb------2</link>
            <guid isPermaLink="false">https://medium.com/p/caef733dd41b</guid>
            <category><![CDATA[ccaas]]></category>
            <category><![CDATA[api]]></category>
            <category><![CDATA[release-notes]]></category>
            <category><![CDATA[ucaas]]></category>
            <category><![CDATA[communications-api]]></category>
            <dc:creator><![CDATA[John Wang]]></dc:creator>
            <pubDate>Tue, 01 Dec 2020 17:41:33 GMT</pubDate>
            <atom:updated>2020-12-01T17:41:33.617Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*05doJloawY_Xs9boLkJp-Q.png" /><figcaption>RingCentral Fall ’20 Release</figcaption></figure><p>We’re happy to announce the RingCentral Developers fall ’20 Release which includes new core APIs, SDK enhancements along with new and updated Developer Guides and Developer Experience.</p><p>Please try out our new APIs and let us know what you think!</p><ul><li><strong>APIs — </strong>Conference Call API, Warm Transfer API, Meeting Recordings API, Engage Agent Segment Metadata Report API</li><li><strong>Embeddable Web Widget — </strong>Call with RingCentral App, SMS Send Image Support, Click-to-SMS Navigation to Conversation Page, Telephony Session Event, Login Popup Window Event, Token Proxy Server Support</li><li><strong>Documentation —</strong> API Reference Index, Engage Digital App SDK Dev Guide, Engage Digital Structured Messages Dev Guide<br>Team Messaging Developer Dev Guide Update</li><li><strong>Developer Console — </strong>Primary Contacts for Applications, Sandbox Account Recycling</li><li><strong>App Gallery — </strong>Consolidated App Profile Management for Partner</li></ul><h3><strong>APIs</strong></h3><ul><li><a href="https://developers.ringcentral.com/guide/voice/conference"><strong>Conference Call API (Beta)</strong></a> — Create a ad hoc multi-party conference call with our Conference Call APIs. No need for a conference call number or pin. Simply take existing calls and add them to the host’s conference one by one. Up to 10 participants can join the conference.</li><li><a href="https://developers.ringcentral.com/api-reference/Call-Control/bridgeCallParty"><strong>Warm Transfer API (GA)</strong></a><strong> —</strong> allows a user to perform a warm transfer action on a received call by putting the existing call on hold, calling the new party and, after consent, joining the original caller and the new party.</li><li><strong>Meetings Recordings API</strong>— The <a href="https://developers.ringcentral.com/api-reference/Meeting-Recordings/listAccountMeetingRecordings">Account Meeting History</a> and <a href="https://developers.ringcentral.com/api-reference/Meeting-Recordings/listUserMeetingRecordings">User Meeting Hist</a>ory can now provide a list of past meetings, their video and/or audio recordings, as well as other optimization activities.</li><li><a href="https://developers.ringcentral.com/engage/voice/guide/analytics/reports/agent-segment-metadata-report"><strong>Engage Agent Call Segment Metadata Report API</strong></a> — Need more granular detail of agent activity for each call leg? This new report contains a record for each call leg and details the activity including ring time, hold time, and talk time.</li></ul><p>For more information see the <a href="https://developers.ringcentral.com/api-reference">Office API Reference</a> and <a href="https://developers.ringcentral.com/guide">Developer Guide</a>. <a href="https://developers.ringcentral.com/engage/voice/api-reference">Engage Voice API Reference</a> and <a href="https://developers.ringcentral.com/engage/voice/guide">Developer Guide</a>, and <a href="https://developers.ringcentral.com/engage/digital/api-reference">Engage Digital API Reference</a> and <a href="https://developers.ringcentral.com/engage/digital/guide">Developer Guide</a>.</p><h3>Embeddable Web Widget</h3><ul><li><strong>Call with RingCentral App—</strong>The Embeddable Widget is fully capable of making and receiving calls itself via WebRTC and RingOut, but now it can support making outbound calls with RC-App too!</li><li><strong>SMS Send Image Support</strong> — Users can now attach and upload imagess to send in SMS / MMS text messages. This complements th eearlier feature of receiving / viewing image files.</li><li><a href="https://github.com/ringcentral/ringcentral-embeddable/blob/master/docs/control-widget.md#go-to-conversation-page"><strong>Click-to-SMS Navigation to Conversation Page</strong></a><strong> —</strong> Drive custom click-to-text workflows by directly opening the conversation page with a specific user’s phone number.</li><li><a href="https://github.com/ringcentral/ringcentral-embeddable/blob/master/docs/widget-event.md#telephony-session-event"><strong>Telephony Session Event</strong></a><strong> —</strong> receive full telephony session notifications in your app including full state of caller and callee.</li><li><a href="https://github.com/ringcentral/ringcentral-embeddable/blob/master/docs/widget-event.md#login-popup-event"><strong>Login Popup Window Event</strong></a><strong> —</strong> Fine-tune the login experience by using this new event to launch your own OAuth login window and flow.</li><li><a href="https://github.com/ringcentral/ringcentral-embeddable/issues/349"><strong>Token Proxy Server Support</strong></a><strong>—</strong>Protect your access tokens and auth credentials by using the RingCentral Token Proxy Server, now fully suported iwth the Baron.</li></ul><p>Learn more about the Embeddable Widget on out <a href="https://developers.ringcentral.com/embeddable-voice.html">developer portal</a> and <a href="https://github.com/ringcentral/ringcentral-embeddable">GitHub</a>.</p><h3>Documentation</h3><ul><li><a href="https://developers.ringcentral.com/guide/basics/api-index"><strong>API Reference Index</strong></a><strong>: </strong>A new Developer Guide API index provides a list of all API URLs so they can be found quickly in a single location.</li><li><strong>Team Messaging Dev Guides:</strong> New developer guides have been published for Team Messaging. Core Concepts Dev Guides include: <a href="https://developers.ringcentral.com/guide/team-messaging/manual/chats/">Chats</a>, <a href="https://developers.ringcentral.com/guide/team-messaging/manual/teams/">Teams</a>, <a href="https://developers.ringcentral.com/guide/team-messaging/manual/conversations/">Conversations</a>. Guides for Posting include: <a href="https://developers.ringcentral.com/guide/team-messaging/manual/posting">Posting messages</a>, <a href="https://developers.ringcentral.com/guide/team-messaging/manual/posting-images">Posting images</a>, <a href="https://developers.ringcentral.com/guide/team-messaging/manual/attaching-files">Uploading and sharing files</a>, <a href="https://developers.ringcentral.com/guide/team-messaging/manual/posting-cards">Posting message cards</a>.</li><li><strong>Engage Digital App SDK Dev Guide:</strong> Customizing the Engage Digital experience for agents is possible with the <a href="https://developers.ringcentral.com/engage/digital/guide/app-sdk">Engage Digital App SDK</a>. Learn how to develop custom applications with simple JavaScript code and install those Apps in your own Engage Digital environment.</li><li><strong>Engage Digital Structured Messages Dev Guide: </strong>Custom messages can enhance your agent’s interaction with customers. With the <a href="https://developers.ringcentral.com/engage/digital/guide/interactions/structured-messages">Structured Message Developer Guide and Quick Start</a>, you can build your very own.</li></ul><p>For more information see the <a href="https://developers.ringcentral.com/guide">Office Developer Guide</a>. <a href="https://developers.ringcentral.com/engage/voice/guide">Engage Voice Developer Guide</a>, and <a href="https://developers.ringcentral.com/engage/digital/guide">Engage Digital Developer Guide</a>.</p><h3>Developer Console</h3><ul><li><strong>Primary Contacts for Applications: </strong>In order to better notify developers of information regarding their apps, we hvae implemented a primary contact to be notified for critical communications. In the past, we would only notify the app developer but now you can designate others for these notifications.</li><li><strong>Recycling sandbox accounts: </strong>Starting in December of 2020, we will be recycling sandbox accounts that haven’t been used in more than 60 days to conserve phone numbers and other resources. Here is what you need to know: (a) developer sandbox accounts used for testing will remain free. (b) if your sandbox account is deactivated, you can always activate a new sandbox account and phone number instantly and for free, (c) if you would like to keep your existing sandbox, all you need to do is conduct at least one API call every 60 days.</li></ul><p>To manage your apps, <a href="https://developers.ringcentral.com">sign in to our Developer Portal</a>.</p><h3>App Gallery</h3><ul><li><strong>Consolidated App Profile Management for Partners:</strong>RingCentral now has five strategic brand partners. adding Avaya Cloud Office and Atos Unify Office in 2020. To help developers more easily market their apps through these channels, we simplified app gallery management so you can edit one profile across multiples partners developers vs. having them to do each manually.</li></ul><p>View hundreds of promoted apps <a href="https://www.ringcentral.com/apps/">on our App Gallery</a>. <a href="https://developers.ringcentral.com/">Sign into our Developer Portal</a> to manage your Apps and App Gallery listings.</p><h3>Learn More</h3><p>We’d love to hear your feedback and use cases for these APIs. To learn even more about our APIs or if you have questions go to the following resources:</p><ul><li><a href="https://forums.developers.ringcentral.com/">Developer Forums</a></li><li><a href="https://twitter.com/ringcentraldevs">Developer Twitter</a></li><li><a href="https://ringcentraldevs.influitive.com/">Developer Advocates</a></li><li><a href="http://gamechanging.dev/">Game Changers Program</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=caef733dd41b" width="1" height="1" alt=""><hr><p><a href="https://medium.com/ringcentral-developers/ringcentral-developers-fall-20-release-notes-caef733dd41b">RingCentral Developers Fall ’20 Release Notes</a> was originally published in <a href="https://medium.com/ringcentral-developers">RingCentral Developers</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>