diff --git a/.gitignore b/.gitignore index 9d3993f..a97e8fa 100644 --- a/.gitignore +++ b/.gitignore @@ -10,11 +10,16 @@ __pycache__/ *.egg-info/ dist/ build/ +*.pkl +*.npy # Large binary files embeddings.npy faiss_index/ data/ +qdrant_storage/ +logs/ +checkpoints/ # Jupyter .ipynb_checkpoints/ diff --git a/results/test_queries_results.json b/results/test_queries_results.json new file mode 100644 index 0000000..aefe4e5 --- /dev/null +++ b/results/test_queries_results.json @@ -0,0 +1,5154 @@ +[ + { + "query_id": "a97f93d2-410a-431f-ae9a-1e23ed35d74c", + "query": "end customer organization name not appearing in ticket or conversation", + "retrievals": [ + { + "id": "ART-1981_KNOWLEDGE_NODE-30", + "title": "Support best practices | Computer for Support Teams | DevRev", + "text": "conversation of which you are not the owner, let the owner know to respond. It's beneficial to retain the same point of contact for the duration of the conversation unless the owner refers some another user.\\n* If the conversation has a customer org that's unidentified or is new, add yourself (the customer experience engineer) as the owner of the ticket. Try to find the appropriate owner for the customer org and update the customer record accordingly.\\n* Change the stage of the conversation to" + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-44", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "URL and not on the support portal of some other customer.\\n* Customer admin isn't able to see all the tickets of the organization.\\n\\n + This could happen if the customer isn't logged in on the correct URL. If the customer is logged in on the correct URL, then check if there are any tickets that are reported by the other customers in that organization or not. Check if the customer is added as a customer admin or not by logging in to your DevRev application.\\n* You are not able to add customer" + }, + { + "id": "ART-2002_KNOWLEDGE_NODE-25", + "title": "Contacts | Computer for Growth Teams | DevRev", + "text": "about the customer initiating the conversation. Similarly, tickets on DevRev can capture who the ticket was reported by (or reported for).\\n\\nConcepts\\n--------\\n\\nCustomer identity in DevRev includes the following important constructs:\\n\\n* **External User/contact**: Your end user or customer or users associated with organization Accounts or Workspaces.\\n* **Account/workspace**: Any logical grouping that an external user is part of. It could represent a customer account for your B2B product" + }, + { + "id": "ART-4271_KNOWLEDGE_NODE-29", + "title": "Convert Conversations to Tickets | Conversations | Support | DevRev", + "text": "end user.\\n\\n## Why you should convert a Conversation to a Ticket\\n\\nConsider converting a conversation to a ticket in these scenarios:\\n\\n * **Complex issues** : When a customer inquiry requires in-depth investigation that can't be resolved in a quick conversation.\\n * **Cross-team collaboration** : Issues requiring input from multiple departments or specialists.\\n * **Escalation needs** : When a conversation needs to be escalated to a higher support tier.\\n * **Feature requests** :" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-30", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "there.\\n\\n![]()\\n\\nSlack end-user experience\\n-------------------------\\n\\nWhen a conversation is converted to a ticket in Slack:\\n\\n* Ticket information appears within the same thread.\\n* All subsequent messages sync with the newly created ticket.\\n* The transition is seamless for the end user.\\n\\nConversation conversion scenarios\\n---------------------------------\\n\\nConsider converting a conversation to a ticket in these scenarios:\\n\\n* Complex issues requiring in-depth investigation\\n*" + }, + { + "id": "ART-2040_KNOWLEDGE_NODE-27", + "title": "Zendesk AirSync | AirSync | Snap-ins | DevRev", + "text": "| \\xe2\\x9c\\x85 | \\xe2\\x9c\\x85 |\\n| Category/Status of Ticket | State/Stage of Ticket | \\xe2\\x9c\\x85 | \\xe2\\x9c\\x85 |\\n| Attachments on Ticket | Attachments on Ticket | \\xe2\\x9c\\x85 | \\xe2\\x9c\\x85 |\\n| Tag on Ticket | Tag on Ticket | \\xe2\\x9c\\x85 | \\xe2\\x9d\\x8c |\\n| Organization | Account | \\xe2\\x9c\\x85 | \\xe2\\x9d\\x8c |\\n| Agent | DevUser | \\xe2\\x9c\\x85 | \\xe2\\x9d\\x8c |\\n| End User | Contact | \\xe2\\x9c\\x85 | \\xe2\\x9d\\x8c |\\n| Chat | Conversation | \\xe2\\x9d\\x8c | \\xe2\\x9d\\x8c |\\n| Conversation |" + }, + { + "id": "ART-2027_KNOWLEDGE_NODE-29", + "title": "Email | Integrate | Snap-ins | DevRev", + "text": "your communication requirements.\\n\\nThe visibility and interaction capabilities with a ticket in DevRev are determined by the user's role and how they were added to the email thread.\\n\\nEnd users\\n\\n* Original sender\\n\\n *Added to:* **Reported by** or **Email members** field.\\n\\n *Is able to:* View the ticket on the portal and reply via email.\\n* An end user in the same organization\\n\\n *Added to:* **To** or **CC** fields in the email thread; **Reported by** field, **Email members** field," + }, + { + "id": "ART-2026_KNOWLEDGE_NODE-24", + "title": "Spam Shield | Automate | Snap-ins | DevRev", + "text": "[Snap-ins](/docs/snapins)\\n[Automate](/docs/automate)\\n[Spam Shield](/docs/automations/spam-shield)\\n\\nSpam Shield\\n===========\\n\\nThe Spam Shield snap-in checks for spam from users. This snap-in marks or suggests conversations, tickets, and contacts as spam. It analyzes the first customer message and determines whether a ticket or conversation is spam. It uses advanced algorithms to identify patterns indicative of spam content, ensuring that customer support teams can focus their efforts on" + }, + { + "id": "ART-2027_KNOWLEDGE_NODE-30", + "title": "Email | Integrate | Snap-ins | DevRev", + "text": "or @mentioned in the DevRev app.\\n\\n *Is able to:* View the ticket on the portal and reply via email as an email member.\\n* A customer admin for the same workspace\\n\\n *Added to:* **Customer Admins** group.\\n\\n *Is able to:* View the ticket on the portal once their workspace is updated on the ticket.\\n* An end user outside original sender's organization\\n\\n *Added to:* **To** or **CC** fields in the email thread, or mentioned in the DevRev app (adds them to **CC**).\\n\\n *Is able to:* Reply" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-29", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "rules\\n\\nWorkflows enable seamless handovers from automated conversations to your support teams when necessary.\\n\\nPlug widget end-user experience\\n-------------------------------\\n\\nWhen a conversation is converted to a ticket in the Plug widget:\\n\\n* The ticket number and basic details appear in the same conversation pane.\\n* Users can click **Details** to view complete ticket information.\\n* If the **Tickets** tab is enabled in Plug, users can track their ticket status" + } + ] + }, + { + "query_id": "7dd7e2b4-9349-4535-8007-1d706e0fabff", + "query": "Android SDK session generated with Unknown user", + "retrievals": [ + { + "id": "ART-15513_KNOWLEDGE_NODE-1", + "title": "Features | DevRev | Docs", + "text": "[Exchange your AAT for a session token](/sdks/android/features#exchange-your-aat-for-a-session-token)\\n* [Identify the verified user](/sdks/android/features#identify-the-verified-user)\\n* [Updating the user](/sdks/android/features#updating-the-user)\\n* [Logout](/sdks/android/features#logout)\\n* [Identity model](/sdks/android/features#identity-model)\\n* [Properties](/sdks/android/features#properties)\\n* [User traits](/sdks/android/features#user-traits)\\n* [Organization" + }, + { + "id": "ART-4186_KNOWLEDGE_NODE-42", + "title": "Computer for User Insights | Session analytics | Computer for Your Customers | DevRev", + "text": "compatibility and performance across the most-used browsers by your users.\\n\\nSession Analytics: Mobile\\n-------------------------\\n\\n![]()\\n\\nA **mobile session** includes:\\n\\n* **Screen recording**, captured by the Plug SDK through periodic screenshots of the user interface.\\n* **Auto-captured events**, such as Tap, Rage Tap, Swipe, etc.\\n* **Custom events**, triggered through SDK integration.\\n* **Network calls**\\n\\n**Session lifecycle:**\\n\\n* A mobile session starts when a user opens the" + }, + { + "id": "ART-2664_KNOWLEDGE_NODE-27", + "title": "Session analytics | Computer for Your Customers | DevRev", + "text": "your\\n [website](https://developer.devrev.ai/sdks/web/installation) or\\n [mobile app](https://developer.devrev.ai/sdks/mobile).\\n2. For web applications, configure\\n [user identification](https://developer.devrev.ai/sdks/web/user-identity).\\n3. Enable session recording for your users, go to **Settings** > **PluG and Portal** >\\n **Session Replays** and enable recording for your desired platform.\\n\\n **Note**: Alternatively, you can enable session recording during Plug SDK\\n" + }, + { + "id": "ART-15513_KNOWLEDGE_NODE-0", + "title": "Features | DevRev | Docs", + "text": "b'Features | DevRev | Docs\\n\\n[![]()![]()](https://developer.devrev.ai/)\\n\\nPublic\\n\\nPublic\\n\\nSearch\\n\\n`/`\\n\\nOn this page\\n\\n* [Identification](/sdks/android/features#identification)\\n* [Identify an anonymous user](/sdks/android/features#identify-an-anonymous-user)\\n* [Identify an unverified user](/sdks/android/features#identify-an-unverified-user)\\n* [Identify a verified user](/sdks/android/features#identify-a-verified-user)\\n* [Generate an AAT](/sdks/android/features#generate-an-aat)\\n*" + }, + { + "id": "ART-15506_KNOWLEDGE_NODE-1", + "title": "Identify your users with Plug | DevRev | Docs", + "text": "troubleshooting](/sdks/web/user-identity#api-status-codes-and-troubleshooting)\\n* [How resolution works](/sdks/web/user-identity#how-resolution-works)\\n* [Best practices](/sdks/web/user-identity#best-practices)\\n* [Pass the session token](/sdks/web/user-identity#pass-the-session-token)\\n* [Identify users without session token](/sdks/web/user-identity#identify-users-without-session-token)\\n* [Changing the user identity](/sdks/web/user-identity#changing-the-user-identity)\\n\\n[SDKs](/sdks)[Plug" + }, + { + "id": "ART-4255_KNOWLEDGE_NODE-1", + "title": "DevRev SDK for Android — DevRev | Docs", + "text": "information](/public/sdks/android#update-user-information)\\n * [PLuG support chat](/public/sdks/android#plug-support-chat)\\n * [Analytics](/public/sdks/android#analytics)\\n * [Session analytics](/public/sdks/android#session-analytics)\\n * [Opt in or out](/public/sdks/android#opt-in-or-out)\\n * [Session recording](/public/sdks/android#session-recording)\\n * [Session properties](/public/sdks/android#session-properties)\\n * [Timers](/public/sdks/android#timers)\\n * [Screen" + }, + { + "id": "ART-2898_KNOWLEDGE_NODE-17", + "title": "Android integration — DevRev | Docs", + "text": "DevRev SDK offers session analytics features to help you understand how users interact with your app.\\n\\n### Opt in or out\\n\\nEnd users can opt in or out of the session analytics feature, enabling them to control whether their interactions are tracked for analytics.\\n\\n###### Kotlin\\n\\n###### Java\\n\\n[code]\\n\\n 1| DevRev.stopAllMonitoring() \\n ---|---\\n[/code] \\n \\nThis method terminates and deletes the current session recording and also disables future session recording by our SDK for" + }, + { + "id": "ART-2665_KNOWLEDGE_NODE-25", + "title": "Session recording options | Session analytics | Computer for Your Customers | DevRev", + "text": "specified, the default options are used.\\n\\nPlug SDK offers the ability to hide sensitive user information by masking it in session recordings. During session replays, masking replaces user-visible or typed content in specific elements with asterisks (\"\\\\*\"). This ensures that sensitive information is not displayed in the recordings, protecting user privacy.\\n\\nDuring Plug initialization, you have several options to manually configure which elements should be masked. Masking is applied based on" + }, + { + "id": "ART-15506_KNOWLEDGE_NODE-27", + "title": "Identify your users with Plug | DevRev | Docs", + "text": "|\\n| 1 | // Delete the existing Plug instance if it exists |\\n| 2 | if (window.plugSDK.isPlugInitialized) { |\\n| 3 | window.plugSDK.shutdown(); |\\n| 4 | } |\\n| 5 | |\\n| 6 | // Re-initialize Plug |\\n| 7 | window.plugSDK.init({ |\\n| 8 | app_id: appId, |\\n| 9 | |\\n| 10 | // With session token |\\n| 11 | session_token: sessionToken, |\\n| 12 | |\\n| 13 | // Or without session token |\\n| 14 | identity: {}, |\\n| 15 | }); |\\n```\\n\\nIf you\\xe2\\x80\\x99re using the Plug SDK for recording user sessions," + }, + { + "id": "ART-2898_KNOWLEDGE_NODE-1", + "title": "Android integration — DevRev | Docs", + "text": "identification](/public/sdks/mobile/android#unverified-identification)\\n * [Update user information](/public/sdks/mobile/android#update-user-information)\\n * [PLuG support chat](/public/sdks/mobile/android#plug-support-chat)\\n * [Analytics](/public/sdks/mobile/android#analytics)\\n * [Session analytics](/public/sdks/mobile/android#session-analytics)\\n * [Opt in or out](/public/sdks/mobile/android#opt-in-or-out)\\n * [Session recording](/public/sdks/mobile/android#session-recording)\\n *" + } + ] + }, + { + "query_id": "4bc92187-cdaa-4c20-b189-abd1672e5a71", + "query": "email reply received on wrong ticket", + "retrievals": [ + { + "id": "ART-1953_KNOWLEDGE_NODE-29", + "title": "Customer email notifications | Computer by DevRev | DevRev", + "text": "[support@yourdomain.com](mailto:support@yourdomain.com)\\n* **Subject**: \"You are missing messages from \"\\n\\nReply to the customer on a ticket\\n---------------------------------\\n\\n* **Trigger**: When a reply is made to a customer on a ticket.\\n* **Action**: The system sends out a notification to the customer with the reply message.\\n* **Sender**: {Company\\\\_Name} [support@yourdomain.com](mailto:support@yourdomain.com)\\n* **Subject**: \"[{Company\\\\_Name}] Update on TKT-XXX\"\\n\\nTicket" + }, + { + "id": "ART-2027_KNOWLEDGE_NODE-37", + "title": "Email | Integrate | Snap-ins | DevRev", + "text": "If Channel is not email, it is sent from the email address configured in the snap-in under **Notification sender email address**. - If no email snap-in is installed, the reply is sent from [notifications@devrev.ai](mailto:notifications@devrev.ai). | Yes |\\n| Replies to notification emails | Email reply | Response added to ticket thread | Yes |\\n\\n![]()\\n\\nEven when a reply comes via email, it\\xe2\\x80\\x99s always synced into the customer\\xe2\\x80\\x99s portal view.\\n\\nEmail experience from an" + }, + { + "id": "ART-2027_KNOWLEDGE_NODE-32", + "title": "Email | Integrate | Snap-ins | DevRev", + "text": "**Subscribers** field.\\n\\n *Is able to:* View the ticket on DevRev and receive in-app notifications.\\n* Without DevRev account\\n\\n *Added to:* **Email members** field as subscriber.\\n\\n *Is able to:* Reply to the ticket via email.\\n\\nEmail deliverability status\\n\\nThe sender of an email is able to view the status of an email. Additionally, the sender can view if their email has bounced, along with details about the bounce event.\\n\\nBelow are the various possible states of an email.\\n\\n* *In" + }, + { + "id": "ART-2027_KNOWLEDGE_NODE-31", + "title": "Email | Integrate | Snap-ins | DevRev", + "text": "to the ticket via email. They cannot view the ticket on the portal, as they are added to the **Email members** field but not to the **Reported by** field.\\n\\nEmployees\\n\\n* With DevRev account (added to email thread)\\n\\n *Added to:* **To**, **CC**, or **Email members** field.\\n\\n *Is able to:* View the ticket on DevRev, reply via email, and receive in-app notifications. If they make changes to ticket attributes, they remain subscribers.\\n* Manually added subscribers\\n\\n *Added to:*" + }, + { + "id": "ART-2027_KNOWLEDGE_NODE-43", + "title": "Email | Integrate | Snap-ins | DevRev", + "text": "recipients in the **To** or **Cc**\\n\\nThreading\\n---------\\n\\nEmail integration preserves threading by using the **References** and **In-Reply-To** email headers and by correlating the email **Subject** field and the ticket title. If either the ticket title or the email subject is changed at any point after ticket creation, follow up emails may cause a new ticket to be created.\\n\\n![]()\\n\\nOnce a ticket is created from an email, it is recommended to avoid changing the email subject or the" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-61", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "following scenarios can lead to the creation of follow up ticket:\\n\\n* Customers communicated on an archived/immutable ticket from any channel such as email.\\n* Customer communicated on a merged ticket and the primary ticket is also archived.\\n\\nAfter creation of a follow up ticket the customer messages will reflect only on the new followup ticket and the customer will continue to see response on the same thread in channels like email & slack. The user can continue responding on the new follow" + }, + { + "id": "ART-1953_KNOWLEDGE_NODE-24", + "title": "Customer email notifications | Computer by DevRev | DevRev", + "text": "conversation](#reply-to-the-customer-on-a-conversation)\\n* [Reply to the customer on a ticket](#reply-to-the-customer-on-a-ticket)\\n* [Ticket linked to a conversation](#ticket-linked-to-a-conversation)\\n* [Change of stage of a ticket/conversation](#change-of-stage-of-a-ticketconversation)\\n* [CSAT survey for conversation/ticket](#csat-survey-for-conversationticket)\\n* [Auto customer reply](#auto-customer-reply)\\n* [Auto reply on email](#auto-reply-on-email)\\n\\n1. [Documentation](/docs)\\n3." + }, + { + "id": "ART-1953_KNOWLEDGE_NODE-30", + "title": "Customer email notifications | Computer by DevRev | DevRev", + "text": "linked to a conversation\\n-------------------------------\\n\\n* **Trigger**: A ticket is linked to an existing conversation.\\n* **Action**: The system sends out a notification with the linked ticket number.\\n* **Sender**: {Company\\\\_Name} [support@yourdomain.com](mailto:support@yourdomain.com)\\n* **Subject**: \"\"\\n\\n![]()\\n\\nThis email is only sent to the organizations with [Convergence snap-in](https://docs.devrev.ai/automations/converge)\\n\\nChange of" + }, + { + "id": "ART-2027_KNOWLEDGE_NODE-36", + "title": "Email | Integrate | Snap-ins | DevRev", + "text": "Receives Replies From | Thread is visible in portal |\\n| --- | --- | --- | --- |\\n| Email to support | [support@yourcompany.com](mailto:support@yourcompany.com) | [support@yourcompany.com](mailto:support@yourcompany.com) | Yes |\\n| Ticket via Customer Portal or Plug widget (Channel on ticket = Plug or Portal) | Ticket form on Customer Portal or conversation converted to ticket from Plug widget | - If Channel is set as email in the config, replies are sent via the configured email address. -" + }, + { + "id": "ART-2027_KNOWLEDGE_NODE-30", + "title": "Email | Integrate | Snap-ins | DevRev", + "text": "or @mentioned in the DevRev app.\\n\\n *Is able to:* View the ticket on the portal and reply via email as an email member.\\n* A customer admin for the same workspace\\n\\n *Added to:* **Customer Admins** group.\\n\\n *Is able to:* View the ticket on the portal once their workspace is updated on the ticket.\\n* An end user outside original sender's organization\\n\\n *Added to:* **To** or **CC** fields in the email thread, or mentioned in the DevRev app (adds them to **CC**).\\n\\n *Is able to:* Reply" + } + ] + }, + { + "query_id": "4d9878e8-f746-4df5-8bf6-f9444989b385", + "query": "manage access and privileges in DevRev", + "retrievals": [ + { + "id": "ART-12394_KNOWLEDGE_NODE-29", + "title": "Workflow management | Workflows | Computer by DevRev | DevRev", + "text": "users have the ability to view them.\\n* There is a default group called **Agents and Automation Admins**. Members of this group have full access to manage workflows, including creating, updating, deploying, and deleting them. You can add people to this group to grant them these permissions.\\n* To create custom groups for workflow managers, go to [**Settings** > **User Management** > **Roles**](https://app.devrev.ai/devrev/settings/user-roles). Create a new role with the necessary workflow" + }, + { + "id": "ART-1958_KNOWLEDGE_NODE-24", + "title": "Access control | Computer by DevRev | DevRev", + "text": "policies](#mfz-policies)\\n* [Sharing](#sharing)\\n* [Vista privileges](#vista-privileges)\\n\\n1. [Documentation](/docs)\\n3. [Computer by DevRev](/docs/intro)\\n[Access control](/docs/product/access-control)\\n\\nAccess control\\n==============\\n\\nAccess control in DevRev is a system that authorizes an actor to perform actions on different targets within the application. In this context, an actor is any entity that interacts with the app, such as an organization member, a customer, a system user, or a" + }, + { + "id": "ART-1956_KNOWLEDGE_NODE-25", + "title": "Roles | Computer by DevRev | DevRev", + "text": "role\\n\\n1. In [**Settings > User Management > Roles**](https://app.devrev.ai/devrev/settings/user-roles), select **+ Create new**.\\n2. Enter the role name and description.\\n3. Select an object, such as **Ticket** or **Inbox**, to assign permissions.\\n4. To restrict permissions, select **+ Add condition** and create a custom\\n condition.\\n5. To apply privileges to all subtypes of the object, select **Apply to all\\n subtypes**.\\n6. To configure privileges for specific subtypes:\\n 1. In the" + }, + { + "id": "ART-1955_KNOWLEDGE_NODE-80", + "title": "Default privileges by group | Roles | Computer by DevRev | DevRev", + "text": "team, includes privileges to manage customer inquiries and escalations.\\n\\n**Privileges:**\\n\\n* *Group Reader:* Contains read privileges on all groups.\\n\\n Privileges: group object ['READ']\\n* *Ticket Interactor:* Contains privileges on tickets for default group 'Support'.\\n\\n Privileges: ticket object ['CREATE', 'READ', 'UPDATE', 'DELETE']\\n* *Conversation Admin:* Contains privileges on conversations.\\n\\n Privileges: conversation object ['READ', 'UPDATE', 'DELETE'," + }, + { + "id": "ART-1955_KNOWLEDGE_NODE-39", + "title": "Default privileges by group | Roles | Computer by DevRev | DevRev", + "text": "Privileges: dataset object ['CREATE']\\n* *Dataset Owner:* A role that allows the creator to view, edit and delete a dataset\\n\\n Privileges: dataset object ['READ', 'UPDATE', 'DELETE']\\n\\n\\xe2\\x80\\x9cAdmins\\xe2\\x80\\x9d group\\n--------------\\n\\nGroup for all organization admins, includes the necessary privileges to manage the platform configuration, integrations, and other administrative items. Only an admin can promote another user to admin.\\n\\n**Privileges:**\\n\\n* *Issue Interactor:* Contains" + }, + { + "id": "ART-1958_KNOWLEDGE_NODE-33", + "title": "Access control | Computer by DevRev | DevRev", + "text": "privileges by group](/docs/product/privs)[NextObject customization](/docs/product/object-customization)\\n\\n#### On this page\\n\\n* [Privilege determination](#privilege-determination)\\n* [Granting access permissions](#granting-access-permissions)\\n* [MFZ policies](#mfz-policies)\\n* [Sharing](#sharing)\\n* [Vista privileges](#vista-privileges)\\n\\n[Enterprise grade security to protect customer data\\n\\nLearn more about it.\\n\\n![]()](/blog/soc-compliance)\\n\\nComputer\\n\\n* [Meet" + }, + { + "id": "ART-1948_KNOWLEDGE_NODE-27", + "title": "Groups | Computer by DevRev | DevRev", + "text": "default.\\n\\nAdmins have the authority to configure access for different user groups by assigning or revoking roles. These roles determine the level of permissions and privileges granted to a group, allowing them to perform particular tasks or access specific features.\\n\\nOnly an admin can grant admin privileges to another user.\\n\\nCreating a new group\\n--------------------\\n\\nYou need to be an admin to create a group.\\n\\n1. Go to [**Settings > User Management >" + }, + { + "id": "ART-1958_KNOWLEDGE_NODE-25", + "title": "Access control | Computer by DevRev | DevRev", + "text": "service account.\\n\\nWhen an actor attempts to carry out an action, such as creating an issue, the access control system checks the actor\\'s role to determine if the actor has the necessary privileges to perform the desired action.\\n\\nPrivilege determination\\n-----------------------\\n\\nEach role consists of two essential parts: caveats and privileges. *Caveats* represent specific conditions that must be met for the role to be applicable. *Privileges* outline the actions or operations that the" + }, + { + "id": "ART-1956_KNOWLEDGE_NODE-29", + "title": "Roles | Computer by DevRev | DevRev", + "text": "specific subtypes:\\n 1. In the subtype section of the object, select **Add**.\\n 2. Select the subtype to update privileges.\\n 3. To further restrict privileges, add a custom condition as with object\\n roles.\\n7. Select **Save**.\\n\\n### Update a customer role\\n\\n1. In [**Settings > Customer Management > Roles**](https://app.devrev.ai/devrev/settings/customer-roles), select the role to update.\\n2. Select **Edit**.\\n3. Update the role details.\\n4. Select **Save**.\\n\\n### Assign a" + }, + { + "id": "ART-17233_KNOWLEDGE_NODE-3", + "title": "Permissions | DevRev | Docs", + "text": "types and their fields.\\nYou can read more about permissions in the [access control documentation](https://devrev.ai/docs/product/access-control).\\n\\nGroups\\n------\\n\\nTo make groups available in the DevRev platform, AirSync expects two objects:\\n\\n1. An object containing descriptions of groups available in the external system.\\n\\n* Maps to the `group` object in DevRev.\\n\\n1. An object containing a mapping between groups and users in the external system.\\n\\n* Maps to the `object_member` object" + } + ] + }, + { + "query_id": "483151ec-aff4-4569-b3df-651f578b61d8", + "query": "SSO setup SAML IDP metadata connection string Google Workspace", + "retrievals": [ + { + "id": "ART-16086_KNOWLEDGE_NODE-6", + "title": "Single Sign On Configuration 3P Node", + "text": "bases\\n\\n8. Conclusion\\n\\nThe SSO Setup Agent offers a fully guided, interactive setup for configuring SSO, with support for both SAML and OIDC. It includes validation, previews, and uses workflow-based skills to automate the process with minimal user intervention.'" + }, + { + "id": "ART-1966_KNOWLEDGE_NODE-29", + "title": "External identity provider setup | Computer by DevRev | DevRev", + "text": "are some common examples:\\n\\nAzure ADGoogle WorkspaceJump CloudOkta\\n\\n1. Log in to Azure Active Directory and select **Enterprise applications > + New application**.\\n2. Search for \"Azure AD SAML Toolkit\" in the **Browse Azure AD Gallery** and select it.\\n3. Enter DevRev as the name and click **Create**.\\n4. Select **Single sign-on > SAML**.\\n5. Edit the **Basic SAML Configuration** and enter the following parameters.\\n\\n * **Identifier** (Entity ID):" + }, + { + "id": "ART-1966_KNOWLEDGE_NODE-39", + "title": "External identity provider setup | Computer by DevRev | DevRev", + "text": "authentication methods to enforce SSO-only login. This is commonly done to ensure all users authenticate through your organization\\'s identity provider.\\n\\n**Common scenario**: If users were previously logging in with Google OAuth and you\\'ve now enabled SSO, you can disable Google authentication to force all users to use SSO.\\n\\nFirst, get the Google OAuth connection ID:\\n\\n```\\n```\\n1 curl --location --request GET \\'https://api.devrev.ai/dev-orgs.auth-connections.list\\' \\\\\\n\\n\\n\\n2 --header" + }, + { + "id": "ART-16086_KNOWLEDGE_NODE-0", + "title": "Single Sign On Configuration 3P Node", + "text": "b'1. Overview\\n\\nSingle Sign-On (SSO) is a critical part of onboarding enterprise customers to DevRev. To streamline and automate this process, the SSO Setup Agent has been introduced as a conversational skill within the Implementation Agent. Instead of walking users through manual steps, the agent collects key configuration details\\xe2\\x80\\x94such as the preferred protocol (SAML or OIDC) and relevant credentials\\xe2\\x80\\x94and uses DevRev\\xe2\\x80\\x99s public APIs to complete the setup" + }, + { + "id": "ART-1966_KNOWLEDGE_NODE-25", + "title": "External identity provider setup | Computer by DevRev | DevRev", + "text": "connection](#step-2-enable-the-authentication-connection)\\n* [Step 3: Test and verify the setup](#step-3-test-and-verify-the-setup)\\n* [Step 4: Manage authentication methods (Optional)](#step-4-manage-authentication-methods-optional)\\n* [IDP initiated SSO (Optional)](#idp-initiated-sso-optional)\\n* [Parameter reference](#parameter-reference)\\n* [Troubleshooting](#troubleshooting)\\n\\n1. [Documentation](/docs)\\n3. [Computer by DevRev](/docs/intro)\\n[External identity provider" + }, + { + "id": "ART-1966_KNOWLEDGE_NODE-26", + "title": "External identity provider setup | Computer by DevRev | DevRev", + "text": "setup](/docs/product/sso-saml)\\n\\nExternal identity provider setup\\n================================\\n\\nDevRev can be configured to use external identity providers for SSO.\\n\\n![]()\\n\\nIf you want DevRev to use an external identity provider, follow the instructions for your organization\\xe2\\x80\\x99s provider.\\n\\nBefore you begin\\n----------------\\n\\nTo register DevRev as a SAML 2.0 application, you need the slug for your dev org.\\n\\nTo get the dev\\\\_oid and slug, run the following" + }, + { + "id": "ART-16086_KNOWLEDGE_NODE-2", + "title": "Single Sign On Configuration 3P Node", + "text": "and back-and-forth coordination The absence of a guided experience adds unnecessary friction to an otherwise smooth onboarding process. The proposed agentic skill aims to eliminate these barriers with a step-by-step SSO setup flow embedded directly within DevRev.\\n\\n3.System Specifications\\n\\nSupports both SAML and OIDC connection types.\\n\\nInteractive, step-by-step setup via agent conversation.\\n\\nCollects essential inputs from the user based on the selected connection type:-For SAML: sign-in" + }, + { + "id": "ART-1966_KNOWLEDGE_NODE-42", + "title": "External identity provider setup | Computer by DevRev | DevRev", + "text": "process from your identity provider\\'s portal. The latter is not supported on DevRev.\\n\\nA workaround for supporting IDP-initiated SSO is to bookmark your DevRev workspace URL (that is https://app.devrev.ai/) in your IDP. With only SSO Auth connection enabled, the experience would be as seamless as SP-initiated SSO.\\n\\n### Parameter reference\\n\\n* : Your Personal Access Token with admin permissions\\n* : Your DevRev organization ID (from the initial API" + }, + { + "id": "ART-1966_KNOWLEDGE_NODE-35", + "title": "External identity provider setup | Computer by DevRev | DevRev", + "text": "false,\\n\\n\\n\\n6 \"type\": \"samlp\",\\n\\n\\n\\n7 \"sign_in_endpoint\": \"\",\\n\\n\\n\\n8 \"connection_name\": \"\",\\n\\n\\n\\n9 }\\n\\n\\n\\n10 }\\n```\\n\\nShow more\\n```\\n\\nImportant\\n\\n* The connection\\\\_name must follow the naming pattern described earlier.\\n* Save the id field from the response\\xe2\\x80\\x94you need it for the next step.\\n* The connection is created with enabled: false by default for security.\\n\\n### Step 2: Enable the authentication connection\\n\\nAfter" + }, + { + "id": "ART-1966_KNOWLEDGE_NODE-34", + "title": "External identity provider setup | Computer by DevRev | DevRev", + "text": "application/json\\' \\\\\\n\\n\\n\\n4 --data-raw \\'{\\n\\n\\n\\n5 \"type\": \"samlp\",\\n\\n\\n\\n6 \"sign_in_endpoint\": \"\",\\n\\n\\n\\n7 \"signing_cert\": \"\",\\n\\n\\n\\n8 \"connection_name\": \"\",\\n\\n\\n\\n9 \"display_name\": \"\"\\n\\n\\n\\n10 }\\'\\n```\\n\\nShow more\\n```\\n\\n**Expected successful response:**\\n\\n```\\n```\\n1 {\\n\\n\\n\\n2 \"auth_connection\": {\\n\\n\\n\\n3 \"id\": \"con_12345678\",\\n\\n\\n\\n4 \"display_name\": \"\",\\n\\n\\n\\n5 \"enabled\":" + } + ] + }, + { + "query_id": "0f148fcd-ec0b-43d6-b172-32b843a8dbd2", + "query": "restrict users from linking opportunities and meetings", + "retrievals": [ + { + "id": "ART-3008_KNOWLEDGE_NODE-2", + "title": "List Meetings (Beta) — DevRev | Docs", + "text": "meeting.\\n\\nlinks.targetstringOptional`format: \"id\"`\\n\\nFilters for target id in links associated with the meeting.\\n\\nlinks.target_object_typestringOptional`format: \"text\"`\\n\\nFilters for target object type in links associated with the meeting.\\n\\nmemberslist of stringsOptional\\n\\nFilter for meeting on specified Member Ids.\\n\\nmodeenumOptional\\n\\nThe iteration mode to use, otherwise if not set, then \\xe2\\x80\\x9cafter\\xe2\\x80\\x9d is used.\\n\\nAllowed values: afterbefore\\n\\norganizerlist of" + }, + { + "id": "ART-12471_KNOWLEDGE_NODE-5", + "title": "May 19, 2025 | DevRev | Docs", + "text": "by `created_by`, `name`, and `sync_metadata` fields to [`/groups.list`](/beta/api-reference/groups/list-post)\\n\\n### Links\\n\\n* Added `custom_link_type` property to link objects in [`/links.create`](/beta/api-reference/links/create) and related endpoints\\n\\n### Meetings\\n\\n* Added `sync_metadata` property to meeting objects in [`/meetings.create`](/beta/api-reference/meetings/create) and related endpoints\\n\\n### Opportunities\\n\\n* Added `contacts` property to opportunity objects in work-related" + }, + { + "id": "ART-13009_KNOWLEDGE_NODE-3", + "title": "List Meetings — DevRev | Docs", + "text": "meeting.\\n\\nlinks.targetstringOptional`format: \"id\"`\\n\\nFilters for target id in links associated with the meeting.\\n\\nlinks.target_object_typestringOptional`format: \"text\"`\\n\\nFilters for target object type in links associated with the meeting.\\n\\nmemberslist of stringsOptional\\n\\nFilter for meeting on specified Member Ids.\\n\\nmodeenumOptional\\n\\nThe iteration mode to use, otherwise if not set, then \\xe2\\x80\\x9cafter\\xe2\\x80\\x9d is used.\\n\\nAllowed values: afterbefore\\n\\norganizerlist of" + }, + { + "id": "ART-15422_KNOWLEDGE_NODE-5", + "title": "List Meetings | DevRev | Docs", + "text": "return.\\n\\nlinks.link\\\\_typestringOptional`format: \"text\"`\\n\\nFilters for link type in links associated with the meeting.\\n\\nlinks.targetstringOptional`format: \"id\"`\\n\\nFilters for target id in links associated with the meeting.\\n\\nlinks.target\\\\_object\\\\_typestringOptional`format: \"text\"`\\n\\nFilters for target object type in links associated with the meeting.\\n\\nmemberslist of stringsOptional\\n\\nFilter for meeting on specified Member Ids.\\n\\nmodeenumOptional\\n\\nThe iteration mode to use," + }, + { + "id": "ART-3197_KNOWLEDGE_NODE-11", + "title": "Changelog | DevRev | Docs", + "text": "by `created_by`, `name`, and `sync_metadata` fields to [`/groups.list`](/beta/api-reference/groups/list-post)\\n\\n### Links\\n\\n* Added `custom_link_type` property to link objects in [`/links.create`](/beta/api-reference/links/create) and related endpoints\\n\\n### Meetings\\n\\n* Added `sync_metadata` property to meeting objects in [`/meetings.create`](/beta/api-reference/meetings/create) and related endpoints\\n\\n### Opportunities\\n\\n* Added `contacts` property to opportunity objects in work-related" + }, + { + "id": "ART-13005_KNOWLEDGE_NODE-2", + "title": "Count Meetings — DevRev | Docs", + "text": "stringsOptional\\n\\nFilters for meetings created by the specified user(s).\\n\\nexternal_reflist of stringsOptional\\n\\nFilters for meetings with the provided external_ref(s).\\n\\nlinks.link_typestringOptional`format: \"text\"`\\n\\nFilters for link type in links associated with the meeting.\\n\\nlinks.targetstringOptional`format: \"id\"`\\n\\nFilters for target id in links associated with the meeting.\\n\\nlinks.target_object_typestringOptional`format: \"text\"`\\n\\nFilters for target object type in links" + }, + { + "id": "ART-3003_KNOWLEDGE_NODE-1", + "title": "Count Meetings (Beta) — DevRev | Docs", + "text": "user(s).\\n\\ncustom_fieldsobjectOptional\\n\\nFilters for meeting on custom fields.\\n\\nexternal_reflist of stringsOptional\\n\\nFilters for meetings with the provided external_ref(s).\\n\\nlinks.link_typestringOptional`format: \"text\"`\\n\\nFilters for link type in links associated with the meeting.\\n\\nlinks.targetstringOptional`format: \"id\"`\\n\\nFilters for target id in links associated with the meeting.\\n\\nlinks.target_object_typestringOptional`format: \"text\"`\\n\\nFilters for target object type in links" + }, + { + "id": "ART-15404_KNOWLEDGE_NODE-7", + "title": "Replace Links | DevRev | Docs", + "text": "Error\\n\\n401\\n\\nUnauthorized Error\\n\\n403\\n\\nForbidden Error\\n\\n429\\n\\nToo Many Requests Error\\n\\n500\\n\\nInternal Server Error\\n\\n503\\n\\nService Unavailable Error\\n\\nWas this page helpful?\\n\\nYesNo\\n\\n[Previous](/api-reference/links/list-post)[#### Count Meetings\\n\\nNext](/api-reference/meetings/count)[Built with](https://buildwithfern.com/?utm_campaign=buildWith&utm_medium=docs&utm_source=developer.devrev.ai)'" + }, + { + "id": "ART-3006_KNOWLEDGE_NODE-2", + "title": "List Meetings (POST) (Beta) — DevRev | Docs", + "text": "the provided external_ref(s).\\n\\nlimitintegerOptional\\n\\nThe maximum number of meetings to return.\\n\\nlinkslist of objectsOptional\\n\\nFilters for links associated with the meeting.\\n\\nShow 3 properties\\n\\nmemberslist of stringsOptional\\n\\nFilter for meeting on specified Member Ids.\\n\\nmodeenumOptional\\n\\nAllowed values: afterbefore\\n\\nThe iteration mode to use. If \\xe2\\x80\\x9cafter\\xe2\\x80\\x9d, then entries after the provided cursor will be returned, or if no cursor is provided, then from the" + }, + { + "id": "ART-15416_KNOWLEDGE_NODE-2", + "title": "Count Meetings | DevRev | Docs", + "text": "created by the specified user(s).\\n\\nexternal\\\\_reflist of stringsOptional\\n\\nFilters for meetings with the provided external\\\\_ref(s).\\n\\nlinks.link\\\\_typestringOptional`format: \"text\"`\\n\\nFilters for link type in links associated with the meeting.\\n\\nlinks.targetstringOptional`format: \"id\"`\\n\\nFilters for target id in links associated with the meeting.\\n\\nlinks.target\\\\_object\\\\_typestringOptional`format: \"text\"`\\n\\nFilters for target object type in links associated with the" + } + ] + }, + { + "query_id": "15acf954-22c2-4860-8fbb-e7e6dcc5c8c8", + "query": "connect WhatsApp Business with DevRev", + "retrievals": [ + { + "id": "ART-2029_KNOWLEDGE_NODE-27", + "title": "WhatsApp | Integrate | Snap-ins | DevRev", + "text": "work with 360dialog for WhatsApp Integration. If you have an existing WhatsApp for Business Account, follow the steps to [migrate to 360dialog](https://docs.360dialog.com/partner/account-setup/migrating-phone-numbers).\\n\\nInstalling the WhatsApp snap-in\\n-------------------------------\\n\\nTo use this snap-in, you\\'ll need to connect your WhatsApp with Business API with DevRev.\\n\\n1. Install [WhatsApp](/marketplace/whatsapp) from the DevRev marketplace.\\n2. Select the workspace to install the" + }, + { + "id": "ART-2029_KNOWLEDGE_NODE-24", + "title": "WhatsApp | Integrate | Snap-ins | DevRev", + "text": "[Limitations](#limitations)\\n* [Set up the snap-in](#set-up-the-snapin)\\n\\n1. [Documentation](/docs)\\n3. [Snap-ins](/docs/snapins)\\n[Integrate](/docs/integrate)\\n[WhatsApp](/docs/integrations/whatsapp)\\n\\nWhatsApp\\n========\\n\\nUsing DevRev, you can connect with your customers through WhatsApp. This new communication channel allows your customers to reach out with their questions and concerns directly on WhatsApp. The messages from WhatsApp seamlessly appear in your DevRev Inbox, making it easy" + }, + { + "id": "ART-2029_KNOWLEDGE_NODE-29", + "title": "WhatsApp | Integrate | Snap-ins | DevRev", + "text": "Install the WhatsApp snap-in from the marketplace as mentioned above.\\n2. **Create a connection:** In the **Connections** tab, add your existing connection or create a new connection.\\n * Give your connection a name, and ensure that you completed the required steps in the prerequisites.\\n * Click **Connect**.\\n * Open the dialog and follow the process to finish creating a connection.\\n\\n ![]()\\n3. **Configure business phone number:** In the **Configuration** tab, enter the business" + }, + { + "id": "ART-2029_KNOWLEDGE_NODE-25", + "title": "WhatsApp | Integrate | Snap-ins | DevRev", + "text": "for you to manage all your customer conversations in one place. By adding WhatsApp to DevRev, you can streamline your support and offer a smoother experience to your customers.\\n\\nFor detailed information about WhatsApp for Business, refer to [WhatsApp Business Platform - Documentation](https://developers.facebook.com/docs/whatsapp/overview)\\n\\nPrerequisites\\n-------------\\n\\n1. **Create a business account:** Ensure you have a [Business Account](https://business.facebook.com/overview) in Meta" + }, + { + "id": "ART-2029_KNOWLEDGE_NODE-30", + "title": "WhatsApp | Integrate | Snap-ins | DevRev", + "text": "phone number to sync WhatsApp messages sent to the business with DevRev Inbox.\\n4. **Register for WhatsApp webhook:** In the **Discussion** tab, enter **/whatsapp** to register to the WhatsApp webhook URL to receive WhatsApp messages in the DevRev Inbox.\\n5. **Use template messages:** As per WhatsApp policies, template messages are required to communicate with customers once 24 hours have passed since their last message. To ensure continuity in customer conversations, the following template" + }, + { + "id": "ART-2029_KNOWLEDGE_NODE-26", + "title": "WhatsApp | Integrate | Snap-ins | DevRev", + "text": "Business Manager. For detailed information, refer to [creating a Business Account](https://m.facebook.com/help/1710077379203657) in Meta Business Manager.\\n2. **Number compatibility:** Ensure the designated number isn\\'t linked to another WhatsApp account. If it is, either delete that account or [migrate your number](https://developers.facebook.com/docs/whatsapp/cloud-api/get-started/migrate-existing-whatsapp-number-to-a-business-account/) to a business account.\\n3. **Partner integration:** We" + }, + { + "id": "ART-2029_KNOWLEDGE_NODE-28", + "title": "WhatsApp | Integrate | Snap-ins | DevRev", + "text": "snap-in, confirm installation, and click **Deploy snap-in**.\\n\\nLimitations\\n-----------\\n\\n* Group Conversations are not supported by WhatsApp for Business API.\\n* If you do not respond to the customer\\xe2\\x80\\x99s message within 24 hours, you can only respond to the conversation using Meta-approved template messages.\\n\\nSet up the snap-in\\n------------------\\n\\nFollow these steps to ensure WhatsApp messages sent to your business are synced with the DevRev Inbox.\\n\\n1. **Install the snap-in:**" + }, + { + "id": "ART-2029_KNOWLEDGE_NODE-23", + "title": "WhatsApp | Integrate | Snap-ins | DevRev", + "text": "2025](/docs/changelog/_2025-06-01)\\n + [May 2025](/docs/changelog/_2025-05-01)\\n + [March and April 2025](/docs/changelog/_2025-04-01)\\n + [February 2025](/docs/changelog/_2025-02-01)\\n* [Developer \\xe2\\x86\\x97\\xef\\xb8\\x8f](https://developer.devrev.ai/)\\n* [DevRevU \\xe2\\x86\\x97\\xef\\xb8\\x8f](/docs/DevRevU)\\n\\n + [Product demos](/docs/DevRevU/demos)\\n\\nOn this page\\n\\n* [Prerequisites](#prerequisites)\\n* [Installing the WhatsApp snap-in](#installing-the-whatsapp-snapin)\\n*" + }, + { + "id": "ART-2029_KNOWLEDGE_NODE-0", + "title": "WhatsApp | Integrate | Snap-ins | DevRev", + "text": "b'WhatsApp | Integrate | Snap-ins | DevRev\\n\\n* Computer\\n* Resources\\n* [Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nComputer\\n\\nResources\\n\\n[Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nSearch\\n\\n`CTRL`\\xc2\\xa0+\\xc2\\xa0`K`\\n\\n* [Introduction](/docs)\\n* [Computer by DevRev](/docs/intro)\\n\\n + [Core concepts](/docs/product/core)\\n + [Apps](/docs/product/apps)\\n +" + }, + { + "id": "ART-2002_KNOWLEDGE_NODE-35", + "title": "Contacts | Computer for Growth Teams | DevRev", + "text": "integrations like [Slack](/marketplace/slack), [Email for conversations](https://marketplace.devrev.ai/marketplace/devrev-plug-with-email), [WhatsApp](/marketplace/whatsapp) are additional channels available with DevRev's omnichannel support offering.\\nIntegrating these channels automatically brings customer identity to DevRev.\\n\\n[PreviousOpportunities](/docs/product/opportunity)[NextAccount and contact import](/docs/product/account-contact-import)\\n\\n#### On this page\\n\\n*" + } + ] + }, + { + "query_id": "9a4adb6b-b6f7-430a-a599-07aea5d4c365", + "query": "API for Incident Ticket creation", + "retrievals": [ + { + "id": "ART-1300_KNOWLEDGE_NODE-166", + "title": "Create — DevRev | Docs", + "text": "Create.\\n\\nPOST https:// api.devrev.ai / incidents.create\\nCreates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\ntitle string Required\\nTitle of the incident.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts list of strings Optional\\nParts to which the incident is applicable to.\\nartifacts list of strings Optional\\nArtifacts attached to the incident.\\nbody string Optional\\nBody of the incident.\\ncustom_fields map from strings to" + }, + { + "id": "ART-1801_KNOWLEDGE_NODE-168", + "title": "Get — DevRev | Docs", + "text": "Create.\\n\\nPOST https:// api.devrev.ai / incidents.create\\nCreates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\ntitle string Required\\nTitle of the incident.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts list of strings Optional\\nParts to which the incident is applicable to.\\nartifacts list of strings Optional\\nArtifacts attached to the incident.\\nbody string Optional\\nBody of the incident.\\ncustom_fields map from strings to" + }, + { + "id": "ART-1805_KNOWLEDGE_NODE-167", + "title": "List Post — DevRev | Docs", + "text": "Create.\\n\\nPOST https:// api.devrev.ai / incidents.create\\nCreates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\ntitle string Required\\nTitle of the incident.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts list of strings Optional\\nParts to which the incident is applicable to.\\nartifacts list of strings Optional\\nArtifacts attached to the incident.\\nbody string Optional\\nBody of the incident.\\ncustom_fields map from strings to" + }, + { + "id": "ART-1307_KNOWLEDGE_NODE-167", + "title": "List Post — DevRev | Docs", + "text": "Create.\\n\\nPOST https:// api.devrev.ai / incidents.create\\nCreates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\ntitle string Required\\nTitle of the incident.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts list of strings Optional\\nParts to which the incident is applicable to.\\nartifacts list of strings Optional\\nArtifacts attached to the incident.\\nbody string Optional\\nBody of the incident.\\ncustom_fields map from strings to" + }, + { + "id": "ART-1781_KNOWLEDGE_NODE-164", + "title": "List — DevRev | Docs", + "text": "Create.\\n\\nPOST https:// api.devrev.ai / incidents.create\\nCreates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\ntitle string Required\\nTitle of the incident.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts list of strings Optional\\nParts to which the incident is applicable to.\\nartifacts list of strings Optional\\nArtifacts attached to the incident.\\nbody string Optional\\nBody of the incident.\\ncustom_fields map from strings to" + }, + { + "id": "ART-1789_KNOWLEDGE_NODE-166", + "title": "List — DevRev | Docs", + "text": "Create.\\n\\nPOST https:// api.devrev.ai / incidents.create\\nCreates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\ntitle string Required\\nTitle of the incident.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts list of strings Optional\\nParts to which the incident is applicable to.\\nartifacts list of strings Optional\\nArtifacts attached to the incident.\\nbody string Optional\\nBody of the incident.\\ncustom_fields map from strings to" + }, + { + "id": "ART-1803_KNOWLEDGE_NODE-167", + "title": "List — DevRev | Docs", + "text": "Create.\\n\\nPOST https:// api.devrev.ai / incidents.create\\nCreates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\ntitle string Required\\nTitle of the incident.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts list of strings Optional\\nParts to which the incident is applicable to.\\nartifacts list of strings Optional\\nArtifacts attached to the incident.\\nbody string Optional\\nBody of the incident.\\ncustom_fields map from strings to" + }, + { + "id": "ART-1788_KNOWLEDGE_NODE-166", + "title": "Get Post — DevRev | Docs", + "text": "Create.\\n\\nPOST https:// api.devrev.ai / incidents.create\\nCreates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\ntitle string Required\\nTitle of the incident.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts list of strings Optional\\nParts to which the incident is applicable to.\\nartifacts list of strings Optional\\nArtifacts attached to the incident.\\nbody string Optional\\nBody of the incident.\\ncustom_fields map from strings to" + }, + { + "id": "ART-1791_KNOWLEDGE_NODE-165", + "title": "Self Delete — DevRev | Docs", + "text": "Create.\\n\\nPOST https:// api.devrev.ai / incidents.create\\nCreates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\ntitle string Required\\nTitle of the incident.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts list of strings Optional\\nParts to which the incident is applicable to.\\nartifacts list of strings Optional\\nArtifacts attached to the incident.\\nbody string Optional\\nBody of the incident.\\ncustom_fields map from strings to" + }, + { + "id": "ART-4127_KNOWLEDGE_NODE-1", + "title": "Create Incident | DevRev | Docs", + "text": "\" \\\\ |\\n| > | -H \"Content-Type: application/json\" \\\\ |\\n| > | -d \\'{ |\\n| > | \"title\": \"string\" |\\n| > | }\\' |\\n```\\n\\n[Try it](/beta/api-reference/incidents/create?explorer=true)\\n\\n201Created\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | { |\\n| 2 | \"incident\": { |\\n| 3 | \"id\": \"string\", |\\n| 4 | \"title\": \"string\", |\\n| 5 | \"acknowledged_date\": \"2023-01-01T12:00:00.000Z\", |\\n| 6 | \"actual_close_date\": \"2023-01-01T12:00:00.000Z\", |\\n| 7 | \"applies_to_parts\": [ |\\n| 8 | { |\\n| 9 | \"display_id\":" + } + ] + }, + { + "query_id": "5f5bfe6b-5d49-4bd2-936a-73bebb960fae", + "query": "mark fields as readable from backend", + "retrievals": [ + { + "id": "ART-17219_KNOWLEDGE_NODE-28", + "title": "Metadata extraction | DevRev | Docs", + "text": "to a ticket.\\nAssigning a `reference_type` helps AirSync correctly handle such fields in case the end-user\\ndecides to filter some of the parent records out.\\n\\n[8](/airsync/metadata-extraction#define-field-attributes)\\n\\n### Define field attributes\\n\\nExternal system fields that shouldn\\xe2\\x80\\x99t be mapped in reverse should be marked as `is_read_only`.\\nDepending on their purpose, you can also mark fields as `is_indexed`, `is_identifier`, `is_filterable`,\\n`is_write_only`, etc. By default," + }, + { + "id": "ART-12453_KNOWLEDGE_NODE-23", + "title": "Features — DevRev | Docs", + "text": "provides an auto-masking feature that masks data before sending to the server. Input views such as text fields, text views, and web views are automatically masked.\\n\\nWhile the auto-masking feature may be sufficient for most situations, you can manually mark additional views as sensitive using the following method:\\n\\n[code]\\n\\n 1| DevRev.markSensitiveViews(_:) \\n ---|---\\n[/code] \\n \\nIf any previously masked views need to be unmasked, you can use the following method:\\n\\n[code]\\n\\n" + }, + { + "id": "ART-15510_KNOWLEDGE_NODE-17", + "title": "Features | DevRev | Docs", + "text": "server. Input views such as password text fields are automatically masked.\\n\\nWhile the auto-masking feature is sufficient for most situations, you can manually mark or unmark additional views as sensitive.\\n\\nTo mark elements as sensitive inside a web view (`WebView`), apply the `devrev-mask` CSS class. To unmark them, use `devrev-unmask`.\\n\\n* Mark an element as masked:\\n\\n ```\\n | | |\\n | --- | --- |\\n | 1 | |\\n ```\\n* Mark an element as" + }, + { + "id": "ART-12456_KNOWLEDGE_NODE-18", + "title": "Features — DevRev | Docs", + "text": "protect sensitive data, the DevRev SDK provides an auto-masking feature that masks data before sending to the server. Input views such as text fields, text views, and web views are automatically masked.\\n\\nWhile the auto-masking feature may be sufficient for most situations, you can manually mark additional views as sensitive using the following method:\\n\\n[code]\\n\\n 1| DevRev.markSensitiveViews(tags: any[]) \\n ---|---\\n[/code] \\n \\nIf any previously masked views need to be unmasked," + }, + { + "id": "ART-996_KNOWLEDGE_NODE-15", + "title": "An Example Object Model Style Guide (our actual style guide)", + "text": "field1\\n ...\\n gateway:\\n api_visibility: public\\n is_filterable: true\\n summary: true # NOTE: all fields marked as `summary: true`\\n...\\n - name: field2\\n ...\\n gateway:\\n api_visibility: public\\n is_filterable: true\\n summary: true # NOTE: all fields marked as `summary: true`\\n...\\n - name: field3\\n ...\\n gateway:\\n api_visibility:" + }, + { + "id": "ART-15513_KNOWLEDGE_NODE-36", + "title": "Features | DevRev | Docs", + "text": "Input views such as text fields, text views, and web views are automatically masked.\\n\\nWhile the auto-masking feature may be sufficient for most situations, you can manually mark/unmark additional views as sensitive.\\n\\nThe SDK provides two approaches to manually mask or unmask your views, using a set of predefined tags or using the API methods.\\n\\n#### Mask using predefined tags\\n\\n##### \\n\\nUse the tag method only when you don\\xe2\\x80\\x99t have any other tag already applied to your UI" + }, + { + "id": "ART-15507_KNOWLEDGE_NODE-30", + "title": "Features | DevRev | Docs", + "text": "masked.\\n\\nWhile the auto-masking feature is sufficient for most situations, you can manually mark additional views as sensitive using the following method:\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | DevRev.markSensitiveViews(tags: any[]) |\\n```\\n\\nIf any previously masked views need to be unmasked, you can use the following method:\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | DevRev.unmarkSensitiveViews(tags: any[]) |\\n```\\n\\nFor example:\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | import * as DevRev from" + }, + { + "id": "ART-15515_KNOWLEDGE_NODE-36", + "title": "Features | DevRev | Docs", + "text": "auto-masking feature may be sufficient for most situations, you can manually mark additional views as sensitive using the following method:\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | DevRev.markSensitiveViews(_:) |\\n```\\n\\nIf any previously masked views need to be unmasked, you can use the following method:\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | DevRev.unmarkSensitiveViews(_:) |\\n```\\n\\n### Custom masking provider\\n\\nFor advanced use cases, you can provide a custom masking provider to specify exactly" + }, + { + "id": "ART-1645_KNOWLEDGE_NODE-37", + "title": "Object customization (Beta) — DevRev | Docs", + "text": "`is_filterable` to be true.\\n\\n * `is_groupable`: Whether the field is groupable. Requires `is_filterable` to be true.\\n\\n * `order`: The order in which the field appears in the side panel.\\n\\n * `is_read_only`: Whether the field is read-only in the UI. Once the object is created, this field cannot be updated in the UI.\\n\\n * `group_name`: The group title under which field(s) appear in the side panel. In the example below, the fields are grouped under groups titled **Group 1** and **Group" + }, + { + "id": "ART-17219_KNOWLEDGE_NODE-23", + "title": "Metadata extraction | DevRev | Docs", + "text": "fields\\xe2\\x80\\x99 set of possible values can often be customizable.\\nA good practice is to retrieve the set of possible values for all enum fields from the external\\nsystem\\xe2\\x80\\x99s APIs in each sync run. You can mark specific enum values as deprecated using the `is_deprecated` property.\\n\\n**`ID` (primary key) of the record, `created_date`, and `modified_date` must not be declared.**\\n\\nExample:\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | { |\\n| 2 | \"schema_version\": \"v0.2.0\", |\\n| 3 |" + } + ] + }, + { + "query_id": "30eafcd8-2a68-4e61-85f7-63af6da417a8", + "query": "enable or configure Turing AI agent", + "retrievals": [ + { + "id": "ART-1987_KNOWLEDGE_NODE-26", + "title": "Turing AI agent | Computer for Support Teams | DevRev", + "text": "[articles](./articles) for more information.\\n\\nOnce you have added your knowledge base, Turing can be switched on in two modes: suggestion or auto-response. You can configure Turing in **Settings > Turing Answers** and turn on the **Turing Answers** toggle.\\n\\nSuggest-only mode\\n-----------------\\n\\nComputer only suggests an answer to the user query. A support agent can accept or make edits to the answer, then send it to the user.\\n\\nContent-powered mode\\n--------------------\\n\\nComputer" + }, + { + "id": "ART-1987_KNOWLEDGE_NODE-28", + "title": "Turing AI agent | Computer for Support Teams | DevRev", + "text": "Computer either creates a ticket or routes the conversation using the relevant routing rule.\\n\\n![]()\\n\\nGoal-oriented mode (Beta)\\n-------------------------\\n\\nThe goal-oriented agent allows users to create complete workflows triggered by their actions.\\n\\nGoal-oriented mode is currently in beta. Contact our support team for more information.\\n\\n[PreviousCollections](/docs/product/collection)[NextBest practices for documentation that supports AI](/docs/product/writing-bp)\\n\\n#### On this" + }, + { + "id": "ART-1987_KNOWLEDGE_NODE-0", + "title": "Turing AI agent | Computer for Support Teams | DevRev", + "text": "b\"Turing AI agent | Computer for Support Teams | DevRev\\n\\n* Computer\\n* Resources\\n* [Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nComputer\\n\\nResources\\n\\n[Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nSearch\\n\\n`CMD`\\xc2\\xa0+\\xc2\\xa0`K`\\n\\n* [Introduction](/docs)\\n* [Computer by DevRev](/docs/intro)\\n\\n + [Core concepts](/docs/product/core)\\n + [Apps](/docs/product/apps)\\n +" + }, + { + "id": "ART-1984_KNOWLEDGE_NODE-6", + "title": "Best practices for documentation that supports AI | Turing AI agent | Computer for Support Teams | DevRev", + "text": "[Articles](/docs/product/articles)\\n - [Collections](/docs/product/collection)\\n + [Turing AI agent](/docs/product/conversational-bot)\\n\\n - [Best practices for documentation that supports AI](/docs/product/writing-bp)\\n + [Commands](/docs/product/commands)\\n + [Service-level agreement](/docs/product/sla)\\n + [Operational-level agreement](/docs/product/ola)\\n + [Support snap-ins](/docs/product/snapins-support)\\n* [Computer for Builders](/docs/product/build)\\n\\n +" + }, + { + "id": "ART-1985_KNOWLEDGE_NODE-6", + "title": "Articles | Knowledge Base | Computer for Support Teams | DevRev", + "text": "+ [Turing AI agent](/docs/product/conversational-bot)\\n\\n - [Best practices for documentation that supports AI](/docs/product/writing-bp)\\n + [Commands](/docs/product/commands)\\n + [Service-level agreement](/docs/product/sla)\\n + [Operational-level agreement](/docs/product/ola)\\n + [Support snap-ins](/docs/product/snapins-support)\\n* [Computer for Builders](/docs/product/build)\\n\\n + [Issues](/docs/product/issues)\\n + [Now, Next, Later](/docs/product/nnl)\\n + [Sprint" + }, + { + "id": "ART-4171_KNOWLEDGE_NODE-3", + "title": "Make customer support real-time and personalized", + "text": "insights\\n--------------------------------\\n\\n### Resolve tickets more efficiently with AI-powered assistance\\n\\n[Book a Demo](/request-a-demo)[Discover Turing AI](/agent-os)\\n\\nTuring AI identifies recurring patterns in support queries to suggest recommended next steps, similar tickets, and related articles so your agents are empowered to tackle every query\\n\\n![]()\\n\\nDevRev has centralized our workflows. Our team love it because it allows us to support our customers" + }, + { + "id": "ART-1987_KNOWLEDGE_NODE-24", + "title": "Turing AI agent | Computer for Support Teams | DevRev", + "text": "(Beta)](#goaloriented-mode-beta)\\n\\n1. [Documentation](/docs)\\n3. [Computer for Support Teams](/docs/product/support)\\n[Turing AI agent](/docs/product/conversational-bot)\\n\\nComputer for Your Customers and Turing\\n======================================\\n\\nUsing Turing, Computer can be used to deflect user queries in conversation or to suggest articles from your knowledge base for resolving tickets. It will try to answer customer queries based on the articles and QA pairs provided in the" + }, + { + "id": "ART-1984_KNOWLEDGE_NODE-0", + "title": "Best practices for documentation that supports AI | Turing AI agent | Computer for Support Teams | DevRev", + "text": "b'Best practices for documentation that supports AI | Turing AI agent | Computer for Support Teams | DevRev\\n\\n* Computer\\n* Resources\\n* [Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nComputer\\n\\nResources\\n\\n[Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nSearch\\n\\n`CTRL`\\xc2\\xa0+\\xc2\\xa0`K`\\n\\n* [Introduction](/docs)\\n* [Computer by DevRev](/docs/intro)\\n\\n + [Core" + }, + { + "id": "ART-1982_KNOWLEDGE_NODE-6", + "title": "Collections | Knowledge Base | Computer for Support Teams | DevRev", + "text": "+ [Turing AI agent](/docs/product/conversational-bot)\\n\\n - [Best practices for documentation that supports AI](/docs/product/writing-bp)\\n + [Commands](/docs/product/commands)\\n + [Service-level agreement](/docs/product/sla)\\n + [Operational-level agreement](/docs/product/ola)\\n + [Support snap-ins](/docs/product/snapins-support)\\n* [Computer for Builders](/docs/product/build)\\n\\n + [Issues](/docs/product/issues)\\n + [Now, Next, Later](/docs/product/nnl)\\n + [Sprint" + }, + { + "id": "ART-2666_KNOWLEDGE_NODE-6", + "title": "October 5: Left navigation | Changelog | DevRev", + "text": "[Collections](/docs/product/collection)\\n\\n * [Turing AI agent](/docs/product/conversational-bot)\\n\\n * [Best practices for documentation that supports AI](/docs/product/writing-bp)\\n\\n * [Commands](/docs/product/commands)\\n * [Service-level agreement](/docs/product/sla)\\n * [Operational-level agreement](/docs/product/ola)\\n * [Support snap-ins](/docs/product/snapins-support)\\n\\n * [Build](/docs/product/build)\\n\\n * [Issues](/docs/product/issues)\\n * [Now, Next," + } + ] + }, + { + "query_id": "d5c89771-38ee-4ef6-8171-99b10fdd1ae3", + "query": "how to make MIS report with available data on DevRev", + "retrievals": [ + { + "id": "ART-1952_KNOWLEDGE_NODE-27", + "title": "Vista Reports | Vistas | Computer by DevRev | DevRev", + "text": "bring in data from other sources as well.\\n\\nDiscover\\n--------\\n\\nTo get started, click the \\xe2\\x9a\\xa1 button on a vista. The following options are available:\\n\\n* Create New Report\\n* View Past Reports: Created by me or shared with me\\n\\nYou can also search for reports and find more on the **Explore** page.\\n\\n![]()\\n\\n### Create\\n\\nYou can create your own reports by adding a name, description, and creating widgets. Here, you'll also be able to preview your report and make any necessary" + }, + { + "id": "ART-1952_KNOWLEDGE_NODE-35", + "title": "Vista Reports | Vistas | Computer by DevRev | DevRev", + "text": "well.\\n\\n### Save\\n\\nAdd measures, dimensions, and filters. Experiment with arranging them, preview your changes, and remember to **Save** your widget. This ensures the widget appears on the dashboard.\\n\\n### Custom fields\\n\\nYou can also create reports based on custom fields by creating them via Object Customization. You\\xe2\\x80\\x99ll be able to utilize these custom fields in report generation, as they can be used in measures, dimensions, and filters.\\n\\n### Cross-entity" + }, + { + "id": "ART-15716_KNOWLEDGE_NODE-32", + "title": "Support queries related playbook", + "text": "issues, or custom objects) is supported via the DevRev API.\\n\\nYou can use the API to create, update, or reorder stages in your workflow.\\n\\nThe endpoint and payload depend on the object type (ticket, issue, custom object, etc.).\\n\\nIf you share which object\\xe2\\x80\\x99s stages you want to customize, I can provide a sample API call or payload.Analytics and Reporting\\n\\n1. Creating Reports in DevRev\\n\\nYou can create reports in DevRev by building dashboards with widgets:\\n\\nGo to the Vista you" + }, + { + "id": "ART-4134_KNOWLEDGE_NODE-2", + "title": "Ingest Metrics Devrev | DevRev | Docs", + "text": "| {} |\\n```\\n\\nIngest endpoint for DevRev metrics data from clients.\\n\\n### Headers\\n\\nAuthorizationstringRequired\\n\\nBearer authentication of the form `Bearer `, where token is your auth token.\\n\\n### Request\\n\\nThis endpoint expects an object.\\n\\nmetricslist of objectsRequired\\n\\nMetrics data received from Dev orgs.\\n\\nShow 5 properties\\n\\n### Response\\n\\nSuccess.\\n\\n### Errors\\n\\n400\\n\\nBad Request Error\\n\\n401\\n\\nUnauthorized Error\\n\\n403\\n\\nForbidden Error\\n\\n429\\n\\nToo Many" + }, + { + "id": "ART-1952_KNOWLEDGE_NODE-28", + "title": "Vista Reports | Vistas | Computer by DevRev | DevRev", + "text": "adjustments before finalizing it.\\n\\nWidget builder\\n--------------\\n\\nWith the widget builder, you can create custom widgets for your vista reports. You can define the widget's data source, construct measures, dimensions, and pick a suitable visualization. The widget builder offers a range of tools and options to help you create the ideal widget for your report.\\n\\nWidgets represent the building blocks of DevRev Dashboards. They are the leaf-level data visualizations which are composed" + }, + { + "id": "ART-15613_KNOWLEDGE_NODE-0", + "title": "Compliance and Security - Website FAQs", + "text": "b\"1. Are you SOC 2 compliant?Answer: Yes. The latest report can be downloaded from [security.devrev.ai](http://security.devrev.ai).DevRev\\xe2\\x80\\x99s latest report is publicly accessible as evidence of its compliance with key security controls.\\n\\n2. Is DevRev HIPAA compliant?Answer: No. DevRev is not currently HIPAA compliant.\\n\\n3. Is DevRev MeitY compliant?Answer: No. DevRev has not obtained MeitY (Ministry of Electronics and Information Technology) certification.\\n\\nWhere can I find" + }, + { + "id": "ART-4215_KNOWLEDGE_NODE-35", + "title": "Notion AirSync | AirSync | Snap-ins | DevRev", + "text": "Notion with corresponding items in DevRev. New\\nitems created in Notion after the last sync are also imported.\\n\\n### \\xf0\\x9f\\x93\\x8a View Report\\n\\nAccess a report of the initial import and any subsequent syncs.\\n\\n### \\xf0\\x9f\\x97\\x91\\xef\\xb8\\x8f Delete Import\\n\\nRemove all imported data from DevRev.\\n\\n### \\xe2\\x9a\\x99\\xef\\xb8\\x8f Edit Connection\\n\\nUpdate the connection used for syncing or importing.\\n\\n---\\n\\n### Sync to DevRev\\n\\nTo perform a one-time sync:\\n\\n1. Go to **Settings** >" + }, + { + "id": "ART-1991_KNOWLEDGE_NODE-25", + "title": "Support snap-ins | Computer for Support Teams | DevRev", + "text": "helps you bring data from external sources to DevRev and keep them in sync.\\n\\nWhile numerous snap-ins are available and more are in development, you can create your own using [DevRev APIs](https://developer.devrev.ai/).\\n\\nSupport\\n-------\\n\\n| Automate | Integrate | AirSync |\\n| --- | --- | --- |\\n| [Auto parts to conversation](/docs/automations/auto-parts) | [Calendly](/docs/integrations/calendly) | [Salesforce](/docs/integrations/salesforce) |\\n| [Auto-reply](/docs/automations/auto-reply) |" + }, + { + "id": "ART-1945_KNOWLEDGE_NODE-29", + "title": "Computer by DevRev | DevRev", + "text": "such as Slack and Jira. Automations perform tasks within DevRev based on events, like responding to customer conversations and linking tickets and issues. [AirSync](./import) helps you bring data from external sources to DevRev and keep them in sync.\\n\\nWhile numerous snap-ins are available and more are in development, you can create your own using [DevRev APIs](https://developer.devrev.ai/about/for-developers).\\n\\n[PreviousIntroduction](/docs)[NextCore concepts](/docs/product/core)\\n\\n#### On" + }, + { + "id": "ART-886_KNOWLEDGE_NODE-6", + "title": "Nudges | The Book of DevRev", + "text": "metrics to come.\\n\\nTo view nudge analytics, click on a nudge and navigate to the Analytics tab:\\n\\n\\nTL;DR\\n\\n\\n DevRev Nudges provides a native way to notify, nudge and engage with users\\n Available anywhere where PLuG is deployed\\n Has potential to also be driven on additional event types'" + } + ] + }, + { + "query_id": "ed5940c0-01b1-45bc-8489-dccca3575588", + "query": "populate Timeline Comment Created trigger for a ticket object", + "retrievals": [ + { + "id": "ART-1277_KNOWLEDGE_NODE-6", + "title": "Snap-in triggered by a DevRev event | DevRev | Docs", + "text": "objects of type\\n **Issue** or **Ticket** are created in DevRev.\\n2. **Text command**: This manual trigger is achieved by utilizing a slash\\n command in the **Discussions** tab of the objects that support this feature.\\n\\n#### Action\\n\\nTo implement the desired action of adding a comment to the object timeline, it\\nis essential to identify the appropriate [API]\\nfor this task. In this scenario, the `/timeline-entries.create` API is the\\ndesignated choice for executing the action of adding a" + }, + { + "id": "ART-1485_KNOWLEDGE_NODE-10", + "title": "Snap-in triggered by a DevRev event — DevRev | Docs", + "text": "invoke the snap-in, two distinct triggers are implemented:\\n\\n 1. **Creation of work item** : This trigger is activated when new objects of type **Issue** or **Ticket** are created in DevRev.\\n\\n 2. **Text command** : This manual trigger is achieved by utilizing a slash command in the **Discussions** tab of the objects that support this feature.\\n\\n#### Action\\n\\nTo implement the desired action of adding a comment to the object timeline, it is essential to identify the appropriate [API] for" + }, + { + "id": "ART-1471_KNOWLEDGE_NODE-1", + "title": "Restricted messages on a timeline — DevRev | Docs", + "text": "timeline of an object by using the `timeline-entries-create` API. These messages are only visible to the specific users you give access to.\\n\\nThe [timeline entries](/public/api-reference/timeline-entries/create) API is used to create discussions (comments) on the timeline of an object such as a ticket or issue. These messages can be sent by users or by a bot. You can use this to send any information about a customer like their last logged in date and time, the last page they visited, or an" + }, + { + "id": "ART-1229_KNOWLEDGE_NODE-1", + "title": "Get Timeline Entry | DevRev | Docs", + "text": "\"Authorization: Bearer \" \\\\ |\\n| > | --data-urlencode id=don:core:dvrv-us-1:devo/example:ticket/123:comment/comment-id |\\n```\\n\\n[Try it](/api-reference/timeline-entries/get?explorer=true)\\n\\n200Retrieved\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | { |\\n| 2 | \"timeline_entry\": { |\\n| 3 | \"created_by\": { |\\n| 4 | \"display_id\": \"string\", |\\n| 5 | \"id\": \"string\", |\\n| 6 | \"display_name\": \"string\", |\\n| 7 | \"display_picture\": { |\\n| 8 | \"display_id\": \"string\", |\\n| 9 | \"id\": \"string\", |\\n| 10 |" + }, + { + "id": "ART-1230_KNOWLEDGE_NODE-1", + "title": "Get Timeline Entry (POST) | DevRev | Docs", + "text": "https://api.devrev.ai/timeline-entries.get \\\\ |\\n| > | -H \"Authorization: Bearer \" \\\\ |\\n| > | -H \"Content-Type: application/json\" \\\\ |\\n| > | -d \\'{ |\\n| > | \"id\": \"don:core:dvrv-us-1:devo/example:ticket/123:comment/comment-id\" |\\n| > | }\\' |\\n```\\n\\n[Try it](/api-reference/timeline-entries/get-post?explorer=true)\\n\\n200Successful\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | { |\\n| 2 | \"timeline_entry\": { |\\n| 3 | \"created_by\": { |\\n| 4 | \"display_id\": \"string\", |\\n| 5 | \"id\": \"string\", |\\n| 6" + }, + { + "id": "ART-1827_KNOWLEDGE_NODE-421", + "title": "Update — DevRev | Docs", + "text": "object\\'s timeline.\\nRequest.\\n\\nThis endpoint expects an object.\\nTimeline Comment Show 14 properties\\nResponse.\\n\\nThis endpoint returns an object.\\ntimeline_entry object\\nShow 2 variants\\nPOST / timeline-entries.create\\ncURL\\n$ curl -X POST https://api.devrev.ai/timeline-entries.create \\\\ > -H \" Authorization: Bearer \" \\\\ > -H \" Content-Type: application/json \" \\\\ > -d \\' { > \"type\": \"timeline_comment\", > \"object\": \"string\" > } \\'\\n200 Successful 1 { 2 \" timeline_entry \" : { 3 \" type" + }, + { + "id": "ART-1485_KNOWLEDGE_NODE-19", + "title": "Snap-in triggered by a DevRev event — DevRev | Docs", + "text": "comment on a DevRev work item created. \\n 5| - name: function_2 \\n 6| description: \\n 7| Function to create a timeline entry comment on a DevRev work item on which \\n 8| comment is added.\\n[/code] \\n \\n[6](/public/snapin-development/tutorials/triggered-event#automations)\\n\\n### Automations\\n\\nWith the building blocks in place, the final piece of the puzzle involves defining automations. These automations encapsulate a trigger and a corresponding function that" + }, + { + "id": "ART-1473_KNOWLEDGE_NODE-25", + "title": "Snap-in triggered by an external source — DevRev | Docs", + "text": "append the commit message to the body of the comment \\n 18| let bodyComment = \"\"; \\n 19| for (const commit of commits) { \\n 20| bodyComment += commit.message + \"\\\\n\"; \\n 21| } \\n 22| \\n 23| // Prepare the body for creating a timeline comment \\n 24| const body = { \\n 25| body: bodyComment, \\n 26| object: partID, \\n 27| type: \"timeline_comment\", \\n 28| }; \\n 29| \\n 30| // Create a timeline comment using the DevRev" + }, + { + "id": "ART-1265_KNOWLEDGE_NODE-9", + "title": "Restricted messages on a timeline | DevRev | Docs", + "text": "timeline of an issue/ticket using the `timeline-entries.create` API with different visibilities. You can now use this to create comments on timeline using automation or manually based on your use case.\\n\\nWas this page helpful?\\n\\nYesNo\\n\\n[Previous](/guides/webhooks)[#### Object customization\\n\\nNext](/guides/object-customization)[Built with](https://buildwithfern.com/?utm_campaign=buildWith&utm_medium=docs&utm_source=developer.devrev.ai)\\n\\n![]()'" + }, + { + "id": "ART-1425_KNOWLEDGE_NODE-2", + "title": "Get Timeline Entry — DevRev | Docs", + "text": "id=don:core:dvrv-us-1:devo/example:ticket/123:comment/comment-id\\n[/code] \\n \\nTry it\\n\\n200getExample\\n\\n[code]\\n\\n 1| { \\n ---|--- \\n 2| \"timeline_entry\": { \\n 3| \"created_by\": { \\n 4| \"display_id\": \"foo\", \\n 5| \"id\": \"foo\", \\n 6| \"display_name\": \"foo\", \\n 7| \"display_picture\": { \\n 8| \"display_id\": \"foo\", \\n 9| \"id\": \"foo\", \\n 10| \"file\": { \\n 11| \"type\": \"foo\", \\n 12|" + } + ] + }, + { + "query_id": "3abb74c9-639f-4252-955c-3cfaa8bf6795", + "query": "DevRev Bot groups created from airdrops", + "retrievals": [ + { + "id": "ART-1566_KNOWLEDGE_NODE-233", + "title": "Transition (Beta) — DevRev | Docs", + "text": "https://api.devrev.ai / groups.list\\n\\nLists the available groups.\\n\\nRequest.\\n\\nThis endpoint expects an object.\\ncursor string Optional\\n\\nThe cursor to resume iteration from. If not provided, then iteration starts from the beginning.\\n\\ngroup_type list of \"dynamic\" or \"static\" Optional\\nAllowed values: dynamic static\\n\\nFilters the groups based on the group type.\\n\\ningestion_source list of \"airdrop\" or \"scim\" Optional\\nAllowed values: airdrop scim\\n\\nFilter groups by ingestion" + }, + { + "id": "ART-8442_KNOWLEDGE_NODE-27", + "title": "January 2025 | Changelog | DevRev", + "text": "**Integrations** > **Airdrops**\\n\\n * URL: https://app.devrev.ai/(org-name)/settings/airdrops\\n\\nWe have implemented automatic redirects, so any bookmarked links or references to the previous URL will automatically redirect to the new location. All existing functionality for managing data imports, syncs, and migrations remains unchanged.\\n\\n * Added support for creating **Chat** objects in Airdrop. These objects facilitate capturing communication in group and direct messaging" + }, + { + "id": "ART-4078_KNOWLEDGE_NODE-7", + "title": "Create Group — DevRev | Docs", + "text": "[Marketplace](https://marketplace.devrev.ai/)\\n\\nPlatform\\n\\n * [Airdrop](https://devrev.ai/airdrop)\\n * [Analytics](https://devrev.ai/analytics)\\n * [Workflow Engine](https://devrev.ai/workflow-engine)\\n * [Turing AI](https://devrev.ai/turing-ai)\\n\\nResources\\n\\n * [Pricing](https://devrev.ai/pricing/support)\\n * [Blog](https://devrev.ai/blog)\\n * [Events](https://devrev.ai/events)\\n * [News](https://devrev.ai/blog?category=news)\\n * [Case Studies](https://devrev.ai/case-study)\\n *" + }, + { + "id": "ART-1783_KNOWLEDGE_NODE-151", + "title": "Locate — DevRev | Docs", + "text": "values: airdrop scim\\nis_default boolean Optional\\nWhether to fetch default or custom groups.\\nlimit integer Optional\\nThe maximum number of groups to return. The default is \\'50\\'.\\nmember_type \"dev_user\" or \"rev_user\" Optional\\nFilters the groups on basis of member type.\\nAllowed values: dev_user rev_user\\nmode \"after\" or \"before\" Optional\\nThe iteration mode to use, otherwise if not set, then \"after\" is used.\\nAllowed values: after before\\nsort_by string Optional\\nComma-separated fields to" + }, + { + "id": "ART-1304_KNOWLEDGE_NODE-156", + "title": "Get — DevRev | Docs", + "text": "values: airdrop scim\\nis_default boolean Optional\\nWhether to fetch default or custom groups.\\nlimit integer Optional\\nThe maximum number of groups to return. The default is \\'50\\'.\\nmember_type \"dev_user\" or \"rev_user\" Optional\\nFilters the groups on basis of member type.\\nAllowed values: dev_user rev_user\\nmode \"after\" or \"before\" Optional\\nThe iteration mode to use, otherwise if not set, then \"after\" is used.\\nAllowed values: after before\\nsort_by string Optional\\nComma-separated fields to" + }, + { + "id": "ART-1779_KNOWLEDGE_NODE-153", + "title": "Get — DevRev | Docs", + "text": "values: airdrop scim\\nis_default boolean Optional\\nWhether to fetch default or custom groups.\\nlimit integer Optional\\nThe maximum number of groups to return. The default is \\'50\\'.\\nmember_type \"dev_user\" or \"rev_user\" Optional\\nFilters the groups on basis of member type.\\nAllowed values: dev_user rev_user\\nmode \"after\" or \"before\" Optional\\nThe iteration mode to use, otherwise if not set, then \"after\" is used.\\nAllowed values: after before\\nsort_by string Optional\\nComma-separated fields to" + }, + { + "id": "ART-1790_KNOWLEDGE_NODE-152", + "title": "List Post — DevRev | Docs", + "text": "values: airdrop scim\\nis_default boolean Optional\\nWhether to fetch default or custom groups.\\nlimit integer Optional\\nThe maximum number of groups to return. The default is \\'50\\'.\\nmember_type \"dev_user\" or \"rev_user\" Optional\\nFilters the groups on basis of member type.\\nAllowed values: dev_user rev_user\\nmode \"after\" or \"before\" Optional\\nThe iteration mode to use, otherwise if not set, then \"after\" is used.\\nAllowed values: after before\\nsort_by string Optional\\nComma-separated fields to" + }, + { + "id": "ART-1784_KNOWLEDGE_NODE-151", + "title": "Locate Post — DevRev | Docs", + "text": "values: airdrop scim\\nis_default boolean Optional\\nWhether to fetch default or custom groups.\\nlimit integer Optional\\nThe maximum number of groups to return. The default is \\'50\\'.\\nmember_type \"dev_user\" or \"rev_user\" Optional\\nFilters the groups on basis of member type.\\nAllowed values: dev_user rev_user\\nmode \"after\" or \"before\" Optional\\nThe iteration mode to use, otherwise if not set, then \"after\" is used.\\nAllowed values: after before\\nsort_by string Optional\\nComma-separated fields to" + }, + { + "id": "ART-15400_KNOWLEDGE_NODE-4", + "title": "List Groups | DevRev | Docs", + "text": "stringsOptional\\n\\nFilters the groups on the basis of creator.\\n\\ncursorstringOptional`format: \"text\"`\\n\\nThe cursor to resume iteration from. If not provided, then iteration\\nstarts from the beginning.\\n\\ngroup\\\\_typelist of enumsOptional\\n\\nFilters the groups based on the group type.\\n\\nAllowed values:dynamicstatic\\n\\ningestion\\\\_sourcelist of enumsOptional\\n\\nFilter groups by ingestion source(s).\\n\\nAllowed values:airdropscim\\n\\nis\\\\_defaultbooleanOptional\\n\\nWhether to fetch default or" + }, + { + "id": "ART-1802_KNOWLEDGE_NODE-157", + "title": "Get Post — DevRev | Docs", + "text": "values: airdrop scim\\nis_default boolean Optional\\nWhether to fetch default or custom groups.\\nlimit integer Optional\\nThe maximum number of groups to return. The default is \\'50\\'.\\nmember_type \"dev_user\" or \"rev_user\" Optional\\nFilters the groups on basis of member type.\\nAllowed values: dev_user rev_user\\nmode \"after\" or \"before\" Optional\\nThe iteration mode to use, otherwise if not set, then \"after\" is used.\\nAllowed values: after before\\nsort_by string Optional\\nComma-separated fields to" + } + ] + }, + { + "query_id": "a15290e1-d40b-4422-b5ea-170576843e89", + "query": "SLA for Next Response stop when stage is moved back to Awaiting Customer", + "retrievals": [ + { + "id": "ART-1986_KNOWLEDGE_NODE-34", + "title": "Service-level agreement | Computer for Support Teams | DevRev", + "text": "target defined in the policy.\\n* *Breached*: The time spent by the SLA metric is greater than or equal to the breach target defined in the policy.\\n* *Paused*: The metric is currently paused based on some conditions. For example, when a ticket moves to awaiting customer response.\\n* *Completed*: The conversation or ticket has reached the completion condition.\\n\\nBased on business hours defined for an organization, *Active/Close to breach/Breached* metrics can change schedules. Metrics move out" + }, + { + "id": "ART-1986_KNOWLEDGE_NODE-41", + "title": "Service-level agreement | Computer for Support Teams | DevRev", + "text": "resolution is due in one day, the vista displays five minutes. In the case where the first response isn't provided within five minutes, the timer displays negative values (such as -10m), which indicates that it's been 10 minutes since the first response was due. Conversations or tickets can also be grouped by SLA stages.\\n\\nIn the **Detailed View**, all metrics applied to the ticket or conversation can be viewed along with their current stage.\\n\\nFiltering tickets by Next SLA" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-43", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "*awaiting customer response* until the customer responds.\\n\\n In certain scenarios, the customer experience engineer may be able to resolve the customer's concern. If that's the case, they would ask the customer if their resolution has resolved their concern and the stage would move to the *awaiting customer response*. Once the concern is resolved and the customer acknowledges the resolution, the stage may move to *resolved*. If the concern isn't resolved, the stage may change back to *work in" + }, + { + "id": "ART-1974_KNOWLEDGE_NODE-28", + "title": "Conversations | Computer for Support Teams | DevRev", + "text": "transitions from *new* to *waiting on user*. When a customer responds back to support, the stage transitions to *needs response*.\\n\\n Towards the end of the conversation when the resolution is expected to be valid, the customer experience engineer asks the customer to acknowledge their concerns have been resolved. When the customer experience engineer asks this question the stage transitions to *waiting on user*, and if they validate it moves to *needs response* for the customer experience" + }, + { + "id": "ART-1986_KNOWLEDGE_NODE-39", + "title": "Service-level agreement | Computer for Support Teams | DevRev", + "text": "marked as spam | | |\\n| Next response time | | A new message on the conversation with the customer after the customer experience engineer replied | * The agent replied to the conversation * The conversation is moved to Waiting on User/Resolved * The conversation is marked as spam | | |\\n| Full resolution time | | Conversation created | * The conversation has moved to the Resolved/Archived * The conversation is marked as spam | The conversation is moved to Waiting on User | The" + }, + { + "id": "ART-1974_KNOWLEDGE_NODE-32", + "title": "Conversations | Computer for Support Teams | DevRev", + "text": "have been completed the stage transitions to *needs response* to bring to the customer experience engineer's attention. Upon review they may put the conversation back on *hold* to re-escalate the item. If the dependencies seem to be resolved the customer experience engineer responds to the customer and the stage transitions to *waiting on user*.\\n\\n**Closed**\\n\\n* *Resolved* (R)\\n\\n The final target stage for conversations. It means that the customer's concerns which led to the conversation" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-46", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "resolved the customer's concern the stage can move to *resolved*.\\n* Awaiting development (AD)\\n\\n The issues on which the user's concern relies for resolution are planned but not active, when development on the issue begins the stage transitions to *In development*.\\n* In development (ID)\\n\\n The issues on which the user's concern relies for resolution are actively being worked on. Once the development process begins, the stage may go from *in development* to *awaiting customer response* to" + }, + { + "id": "ART-17231_KNOWLEDGE_NODE-155", + "title": "Supported DevRev object types | DevRev | Docs", + "text": "|\\n\\n**severity**\\n\\n| Value | Name | Description |\\n| --- | --- | --- |\\n| `blocker` | Blocker | - |\\n| `high` | High | - |\\n| `low` | Low | - |\\n| `medium` | Medium | - |\\n\\n**stage**\\n\\n| Value | Name | Description |\\n| --- | --- | --- |\\n| `awaiting_customer_response` | Awaiting Customer Response | - |\\n| `awaiting_development` | Awaiting Development | - |\\n| `awaiting_product_assist` | Awaiting Product Assist | - |\\n| `canceled` | Canceled | - |\\n| `in_development` | In Development | -" + }, + { + "id": "ART-1981_KNOWLEDGE_NODE-27", + "title": "Support best practices | Computer for Support Teams | DevRev", + "text": "Periodically group the **Inbox** by stage and make sure there conversations only in *hold* or *awaiting customer response* stages.\\n* Let the customer know when a ticket linked to a conversation is closed and request their verification.\\n* Once all tickets of a conversation are resolved and the customer is satisfied, resolve the conversation.\\n* Move new tickets to the *awaiting product assist* stage.\\n\\nRespond to conversations\\n------------------------\\n\\n* Respond as fast as possible to any" + }, + { + "id": "ART-1986_KNOWLEDGE_NODE-38", + "title": "Service-level agreement | Computer for Support Teams | DevRev", + "text": "ticket is moved to the Closed state | The ticket was moved to Awaiting Customer Response state | The ticket moves to any state except Closed |\\n\\n**Conversations**\\n\\n| Metric | Default conditions | Start event | End event | Pause event | Resume event |\\n| --- | --- | --- | --- | --- | --- |\\n| First response time | The first message sent by a customer | Conversation created | * The agent replied to the conversation * The conversation is moved to Waiting on User/Resolved * The conversation is" + } + ] + }, + { + "query_id": "3cb75fc1-7ba2-447f-be4a-5bc6c5a58198", + "query": "workflow send message on Slack operation execution failed Something went wrong", + "retrievals": [ + { + "id": "ART-2035_KNOWLEDGE_NODE-51", + "title": "Slack | Integrate | Snap-ins | DevRev", + "text": "Slack.\\n\\nFor example:\\n\\n* /devrev view TKT-#\\n* /devrev view ISS-#\\n\\nThese commands open the specific object mentioned in the command.\\n\\nCreating custom workflows\\n-------------------------\\n\\nThe users can configure their own workflows around Slack using DevRev's workflow engine.\\n\\n| Workflow Action | Description | Inputs | Outputs |\\n| --- | --- | --- | --- |\\n| Send message on Slack | - Use this workflow node to send a message to any Slack channel as long as the DevRev app has access to" + }, + { + "id": "ART-10697_KNOWLEDGE_NODE-28", + "title": "February 2025 | Changelog | DevRev", + "text": "'Send Slack Message' workflow node to include a DevRev object.\\n* Dependent field support in slack\\n\\n![]()\\xc2\\xa0For more information about *Channels*, refer to the following articles: \\xe2\\x80\\xa3 [WhatsApp | Integrate | Snap-ins](/docs/integrations/whatsapp) \\xe2\\x80\\xa3 [Slack | Integrate | Snap-ins](/docs/integrations/slack) \\xe2\\x80\\xa3 [SLA status change Slack notifier | Automate | Snap-ins](/docs/automations/sla-change-notifier)\\n\\n![]()\\n\\n### Slack App\\n\\nMulti-region Slack support" + }, + { + "id": "ART-16803_KNOWLEDGE_NODE-15", + "title": "Workflow nodes | Workflows | Computer by DevRev | DevRev", + "text": "[Custom field migration](/docs/automations/custom-field-migration)\\n - [Slack scraper](/docs/automations/slack-scraper)\\n - [Slack Broadcaster](/docs/automations/slack-broadcaster)\\n - [Reported by enricher](/docs/automations/ticket-reported-by)\\n - [Ticket approval workflow](/docs/automations/ticket-approval-workflow)\\n - [Ticket linked issues comment sync](/docs/automations/ticket-linked-issues-comment-sync)\\n - [Slack message agent](/docs/automations/slack-message-agent)\\n" + }, + { + "id": "ART-12391_KNOWLEDGE_NODE-15", + "title": "Conversational workflows | Workflows | Computer by DevRev | DevRev", + "text": "[Operational SLA Metrics](/docs/automations/operational-sla-metrics)\\n - [Custom field migration](/docs/automations/custom-field-migration)\\n - [Slack scraper](/docs/automations/slack-scraper)\\n - [Slack Broadcaster](/docs/automations/slack-broadcaster)\\n - [Reported by enricher](/docs/automations/ticket-reported-by)\\n - [Ticket approval workflow](/docs/automations/ticket-approval-workflow)\\n - [Ticket linked issues comment" + }, + { + "id": "ART-2035_KNOWLEDGE_NODE-54", + "title": "Slack | Integrate | Snap-ins | DevRev", + "text": "given DevRev user - Can be used to later send direct messages to the user on the Slack using Send message to Slack node. | - Slack connection - DevRev user id | - Slack user id |\\n| Start Thread Sync | - Set up 2 way message synchronization between a Slack thread and a DevRev object discussion. | - Slack connection - DevRev Object ID - Slack channel ID - Slack thread ID (message ID of parent message, returned by send message to Slack workflow node) | N/A |\\n| Start Channel Sync | -" + }, + { + "id": "ART-12394_KNOWLEDGE_NODE-15", + "title": "Workflow management | Workflows | Computer by DevRev | DevRev", + "text": "[Operational SLA Metrics](/docs/automations/operational-sla-metrics)\\n - [Custom field migration](/docs/automations/custom-field-migration)\\n - [Slack scraper](/docs/automations/slack-scraper)\\n - [Slack Broadcaster](/docs/automations/slack-broadcaster)\\n - [Reported by enricher](/docs/automations/ticket-reported-by)\\n - [Ticket approval workflow](/docs/automations/ticket-approval-workflow)\\n - [Ticket linked issues comment" + }, + { + "id": "ART-12390_KNOWLEDGE_NODE-15", + "title": "Workflow action library | Workflows | Computer by DevRev | DevRev", + "text": "[Operational SLA Metrics](/docs/automations/operational-sla-metrics)\\n - [Custom field migration](/docs/automations/custom-field-migration)\\n - [Slack scraper](/docs/automations/slack-scraper)\\n - [Slack Broadcaster](/docs/automations/slack-broadcaster)\\n - [Reported by enricher](/docs/automations/ticket-reported-by)\\n - [Ticket approval workflow](/docs/automations/ticket-approval-workflow)\\n - [Ticket linked issues comment" + }, + { + "id": "ART-10697_KNOWLEDGE_NODE-27", + "title": "February 2025 | Changelog | DevRev", + "text": "bidirectional synchronization between DevRev objects and Slack channels.\\n* A workflow node has been added to create a Slack channel and automatically invite specified users.\\n* A random wait time (1-20 seconds) has been added before creating a conversation to prevent duplicate conversations on WhatsApp when messages are sent rapidly.\\n* Customer identification in Slack has been enhanced by resolving users via their Slack ID when their email is hidden.\\n* An optional field has been added to the" + }, + { + "id": "ART-4199_KNOWLEDGE_NODE-3", + "title": "Slack message agent | Automate | Snap-ins | DevRev", + "text": "- [Workflow nodes](/docs/product/workflow-nodes)\\n - [Troubleshooting](/docs/product/troubleshooting-workflows)\\n + [Templates](/docs/product/template)\\n + [Accessing DevRev](/docs/product/ui)\\n + [External identity provider setup](/docs/product/sso-saml)\\n + [Remote MCP server](/docs/product/remote-mcp)\\n* [Computer for Support Teams](/docs/product/support)\\n\\n + [Inbox](/docs/product/inbox)\\n + [Support analytics](/docs/product/support-analytics)\\n\\n - [Conversation" + }, + { + "id": "ART-4199_KNOWLEDGE_NODE-15", + "title": "Slack message agent | Automate | Snap-ins | DevRev", + "text": "[Custom field migration](/docs/automations/custom-field-migration)\\n - [Slack scraper](/docs/automations/slack-scraper)\\n - [Slack Broadcaster](/docs/automations/slack-broadcaster)\\n - [Reported by enricher](/docs/automations/ticket-reported-by)\\n - [Ticket approval workflow](/docs/automations/ticket-approval-workflow)\\n - [Ticket linked issues comment sync](/docs/automations/ticket-linked-issues-comment-sync)\\n - [Slack message agent](/docs/automations/slack-message-agent)\\n" + } + ] + }, + { + "query_id": "04caf277-77d6-4bab-9409-739686bb6a63", + "query": "change and customize chat design", + "retrievals": [ + { + "id": "ART-3109_KNOWLEDGE_NODE-29", + "title": "Plug widget customization | Computer for Your Customers | DevRev", + "text": "go to **Settings > Support > Plug Chat > Layout** through the settings icon on the top-left corner.\\n2. Select **Add a Card** and enter a title, description, image, and redirect URL.\\n3. Click **Save and Publish** in the top-right corner. The new card is visible in your Plug widget.\\n\\nWant to add more personalization to your Plug widget? Create your own. Visit [SDK Methods and Customization](https://developer.devrev.ai/sdks/web/customize) to create your own Plug from the ground" + }, + { + "id": "ART-3109_KNOWLEDGE_NODE-25", + "title": "Plug widget customization | Computer for Your Customers | DevRev", + "text": "Plug widget to reflect your unique identity truly.\\n\\nTo configure the appearance of your Plug widget, open your DevRev app and navigate to **Settings > Support > Plug Chat > Configuration, Styling, and Layout**.\\n\\n### Configuration\\n\\n* Hide Plug widget: Hide the Plug Widget on specific URLs by clicking **+ Rule** and adding the URLs you want to configure.\\n\\n### Styling\\n\\n* Launcher logo: The image that's visible as your widget icon. A 20-pixel square image is recommended.\\n* Alignment: The" + }, + { + "id": "ART-2059_KNOWLEDGE_NODE-5", + "title": "Install PLuG chat on your website", + "text": "Jul 06 to Jul 19, 2023 Jun 20 to Jul 05, 2023 Jun 05 to Jun 19, 2023 May 22 to Jun 05, 2023 Apr 22 to May 22, 2023\\n\\nDeveloper DevRevU\\n\\nOn this page\\nIntegration code Unique app ID Setup for HTML Setup for React\\nInstall PLuG chat on your website.\\n\\nThere are two primary methods to customize PLuG chat. The easiest way is to do so through the app by navigating to Settings > Support > PLuG Settings > Configuration, Styling and Layout Tabs.. For detailed descriptions of the parameters, refer" + }, + { + "id": "ART-2059_KNOWLEDGE_NODE-6", + "title": "Install PLuG chat on your website", + "text": "to the Customize documentation.\\n\\nAlternatively, for the most comprehensive customizations, refer to our SDK functions here.\\n\\nIntegration code.\\n\\nTo get the PLuG chat widget to appear on your website and web app, copy and paste the snippet below on every page where you want the widget to appear for website visitors.\\n\\nUnique app ID.\\n\\nMake sure to replace the app ID with your app ID which identifies your PLuG chat widget. You can access your app ID from your DevRev account by following" + }, + { + "id": "ART-3191_KNOWLEDGE_NODE-7", + "title": "Changelog | DevRev | Docs", + "text": "[`/stage-diagrams.update`](/public/api-reference/customization/stage-diagrams-update)\\n\\n---\\n\\n[June 2, 2025](/changelog/2025/6/2)\\n\\n[June 2, 2025](/changelog/2025/6/2)\\n\\nPromoted Endpoints\\n------------------\\n\\n### Accounts\\n\\n* [`/accounts.merge`](/public/api-reference/accounts/merge)\\n\\n### Chats\\n\\n* [`/chats.create`](/public/api-reference/chats/create)\\n* [`/chats.get`](/public/api-reference/chats/get-post)\\n\\n### Code Changes\\n\\n*" + }, + { + "id": "ART-15306_KNOWLEDGE_NODE-1", + "title": "Update Chat | DevRev | Docs", + "text": "> | -d \\'{}\\' |\\n```\\n\\n[Try it](/api-reference/chats/update?explorer=true)\\n\\n200Successful\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | { |\\n| 2 | \"chat\": { |\\n| 3 | \"type\": \"string\" |\\n| 4 | } |\\n| 5 | } |\\n```\\n\\nUpdates a chat\\'s information.\\n\\n### Headers\\n\\nAuthorizationstringRequired\\n\\nBearer authentication of the form `Bearer `, where token is your auth token.\\n\\n### Request\\n\\nThis endpoint expects an object.\\n\\ndmobjectRequired\\n\\nShow 7" + }, + { + "id": "ART-15306_KNOWLEDGE_NODE-3", + "title": "Update Chat | DevRev | Docs", + "text": "Change\\n\\nNext](/api-reference/code-changes/create)[Built with](https://buildwithfern.com/?utm_campaign=buildWith&utm_medium=docs&utm_source=developer.devrev.ai)'" + }, + { + "id": "ART-15306_KNOWLEDGE_NODE-0", + "title": "Update Chat | DevRev | Docs", + "text": "b'Update Chat | DevRev | Docs\\n\\n[![]()![]()](https://developer.devrev.ai/)\\n\\nPublic\\n\\nPublic\\n\\nSearch\\n\\n`/`\\n\\n[API Reference](/api-reference/getting-started)[chats](/api-reference/chats/create)\\n\\nUpdate Chat\\n===========\\n\\nCopy page\\n\\nPOST\\n\\nhttps://api.devrev.ai/chats.update\\n\\nPOST\\n\\n/chats.update\\n\\n```\\n| | |\\n| --- | --- |\\n| $ | curl -X POST https://api.devrev.ai/chats.update \\\\ |\\n| > | -H \"Authorization: Bearer \" \\\\ |\\n| > | -H \"Content-Type: application/json\" \\\\ |\\n|" + }, + { + "id": "ART-15301_KNOWLEDGE_NODE-0", + "title": "Create Chat | DevRev | Docs", + "text": "b'Create Chat | DevRev | Docs\\n\\n[![]()![]()](https://developer.devrev.ai/)\\n\\nPublic\\n\\nPublic\\n\\nSearch\\n\\n`/`\\n\\n[API Reference](/api-reference/getting-started)[chats](/api-reference/chats/create)\\n\\nCreate Chat\\n===========\\n\\nCopy page\\n\\nPOST\\n\\nhttps://api.devrev.ai/chats.create\\n\\nPOST\\n\\n/chats.create\\n\\n```\\n| | |\\n| --- | --- |\\n| $ | curl -X POST https://api.devrev.ai/chats.create \\\\ |\\n| > | -H \"Authorization: Bearer \" \\\\ |\\n| > | -H \"Content-Type: application/json\" \\\\ |\\n|" + }, + { + "id": "ART-12974_KNOWLEDGE_NODE-0", + "title": "Update Chat — DevRev | Docs", + "text": "b'[](/public/api-reference/chats/update)\\n\\nPublic\\n\\n[API Reference](/public/api-reference/getting-started)[Chats](/public/api-reference/chats/create)\\n\\n# Update Chat\\n\\nPOST\\n\\nhttps://api.devrev.ai/chats.update\\n\\nTry it\\n\\nUpdates a chat\\xe2\\x80\\x99s information.\\n\\n### Request\\n\\nThis endpoint expects an object.\\n\\ndm\\n\\nShow 8 properties\\n\\nOR\\n\\nnone\\n\\nShow 6 properties\\n\\n### Response\\n\\nSuccess.\\n\\nchatobject\\n\\nShow property\\n\\n### Errors\\n\\n400\\n\\nBad Request" + } + ] + }, + { + "query_id": "a929fcbe-9627-402e-9aa1-8535a766a594", + "query": "Vista export as CSV error invalid_field sort_groups_by", + "retrievals": [ + { + "id": "ART-1302_KNOWLEDGE_NODE-161", + "title": "Export — DevRev | Docs", + "text": "will always be returned in the specified sort-by order.\\nsort_by list of strings Optional\\nComma-separated fields to sort the groups by.\\nResponse.\\n\\nThis endpoint returns an object.\\ngroups list of objects\\nThe list of groups.\\nShow 11 properties\\nnext_cursor string Optional\\nThe cursor used to iterate subsequent results in accordance to the sort order. If not set, then no later elements exist.\\nprev_cursor string Optional\\nThe cursor used to iterate preceding results in accordance to the" + }, + { + "id": "ART-15481_KNOWLEDGE_NODE-5", + "title": "List Vistas Groups | DevRev | Docs", + "text": "stringsOptional\\n\\nComma-separated fields to sort the objects by.\\n\\nstatelist of enumsOptional\\n\\nDenotes the state of the vista group item.\\n\\nAllowed values:activecompletedplanned\\n\\ntypelist of enumsOptional\\n\\nFilters for vista group items of the specific type.\\n\\nAllowed values:curateddynamic\\n\\n### Response\\n\\nThe response to listing the vistas group items.\\n\\nnext\\\\_cursorstring or null`format: \"text\"`\\n\\nThe cursor used to iterate subsequent results in accordance to the\\nsort order. If" + }, + { + "id": "ART-1652_KNOWLEDGE_NODE-153", + "title": "Export — DevRev | Docs", + "text": "iteration mode to use. If \"after\", then entries after the provided cursor will be returned, or if no cursor is provided, then from the beginning. If \"before\", then entries before the provided cursor will be returned, or if no cursor is provided, then from the end. Entries will always be returned in the specified sort-by order.\\nsort_by list of strings Optional\\nComma-separated fields to sort the groups by.\\nResponse.\\n\\nThis endpoint returns an object.\\ngroups list of objects\\nThe list of" + }, + { + "id": "ART-1949_KNOWLEDGE_NODE-27", + "title": "Vistas | Computer by DevRev | DevRev", + "text": "bar.\\n\\n![]()\\n\\nTo export vistas to CSV or JSON, click **Actions** and select the format in which you want to export the vista. This allows you to export this data with the filters applied (segmented by owners or some filters). Cross-functional teams can collaborate on this data or import it into other platforms.\\n\\nDelete a vista\\n--------------\\n\\n1. Select the vista you want to delete from **My list** and click the edit button next to the name of your vista.\\n2. Click **Remove access**.\\n3." + }, + { + "id": "ART-13189_KNOWLEDGE_NODE-29", + "title": "March and April 2025 | Changelog | DevRev", + "text": "and presentation needs.\\n + Share via Email: Dashboards can be directly shared via email, streamlining the process of distributing key metrics and insights to stakeholders.\\n\\n **What's improved:**\\n\\n + Enhanced Export Functionality: Improved the export functionality to ensure high-quality outputs in all supported formats.\\n* **Automatic Dynamic Drill-throughs for Vista Reports**\\n\\n Introducing a new way to explore data in Vista reports. With the latest update, users can now access" + }, + { + "id": "ART-15465_KNOWLEDGE_NODE-6", + "title": "List Vistas Groups (POST) | DevRev | Docs", + "text": "values:afterbefore\\n\\nmodified\\\\_dateobjectOptional\\n\\nProvides ways to specify date ranges on objects.\\n\\nShow 2 variants\\n\\nparent\\\\_idlist of stringsOptional\\n\\nParent ID of the vista group item.\\n\\nsort\\\\_bylist of stringsOptional\\n\\nComma-separated fields to sort the objects by.\\n\\nstart\\\\_dateobjectOptional\\n\\nProvides ways to specify date ranges on objects.\\n\\nShow 2 variants\\n\\nstatelist of enumsOptional\\n\\nDenotes the state of the vista group item.\\n\\nAllowed" + }, + { + "id": "ART-15483_KNOWLEDGE_NODE-8", + "title": "List Vistas | DevRev | Docs", + "text": "values\\n\\nshared\\\\_with.memberstringOptional`format: \"id\"`\\n\\nID of the group/member with whom the item is shared.\\n\\nshared\\\\_with.rolestringOptional`format: \"id\"`\\n\\nRole ID of the group/member with whom the item is shared.\\n\\nskip\\\\_itemsbooleanOptional\\n\\nDenotes whether to skip items of vista\\\\_group\\\\_item in response.\\n\\nsort\\\\_bylist of stringsOptional\\n\\nFields to sort the vistas by and the direction to sort them.\\n\\nstatelist of enumsOptional\\n\\nDenotes the state of the vista group" + }, + { + "id": "ART-2575_KNOWLEDGE_NODE-25", + "title": "Account and contact import | Computer for Growth Teams | DevRev", + "text": "contact import\\n==========================\\n\\nYou can upload and manage accounts and contacts by importing data from CSV files.\\n\\n![]()\\n\\nImport data\\n-----------\\n\\n1. Go to the top-right corner of the **Accounts and Contacts** vista and click the \\xe2\\x9a\\xa1 button.\\n2. Click **Download sample CSV**. The sample CSV file includes all the necessary headers and sample values supported by DevRev.\\n3. Open the downloaded sample CSV file. Fill in the required headers and values as specified in" + }, + { + "id": "ART-15481_KNOWLEDGE_NODE-6", + "title": "List Vistas Groups | DevRev | Docs", + "text": "not set, then no later elements exist.\\n\\nprev\\\\_cursorstring or null`format: \"text\"`\\n\\nThe cursor used to iterate preceding results in accordance to the\\nsort order. If not set, then no prior elements exist.\\n\\nvista\\\\_grouplist of objects or null\\n\\nList of vista group items.\\n\\nShow 3 variants\\n\\n### Errors\\n\\n400\\n\\nBad Request Error\\n\\n401\\n\\nUnauthorized Error\\n\\n403\\n\\nForbidden Error\\n\\n429\\n\\nToo Many Requests Error\\n\\n500\\n\\nInternal Server Error\\n\\n503\\n\\nService Unavailable" + }, + { + "id": "ART-1804_KNOWLEDGE_NODE-161", + "title": "Self — DevRev | Docs", + "text": "before the provided cursor will be returned, or if no cursor is provided, then from the end. Entries will always be returned in the specified sort-by order.\\nsort_by list of strings Optional\\nComma-separated fields to sort the groups by.\\nResponse.\\n\\nThis endpoint returns an object.\\ngroups list of objects\\nThe list of groups.\\nShow 11 properties\\nnext_cursor string Optional\\nThe cursor used to iterate subsequent results in accordance to the sort order. If not set, then no later elements" + } + ] + }, + { + "query_id": "9e47d6d0-487f-42aa-a3cc-0409522c3daf", + "query": "accounts.export API filter by created date after", + "retrievals": [ + { + "id": "ART-1302_KNOWLEDGE_NODE-11", + "title": "Export — DevRev | Docs", + "text": "accounts.export\\n$ curl -G https://api.devrev.ai/accounts.export \\\\ > -H \" Authorization: Bearer \" \\\\ > --data-urlencode created_date.after=2023-01-01T12:00:00Z \\\\ > --data-urlencode created_date.before=2023-01-01T12:00:00Z \\\\ > --data-urlencode modified_date.after=2023-01-01T12:00:00Z \\\\ > --data-urlencode modified_date.before=2023-01-01T12:00:00Z\\n200 Retrieved 1 { 2 \" accounts \" : [ 3 { 4 \" created_date \" : \" 2023-01-01T12:00:00Z \" , 5 \" display_id \" : \" display_id \" , 6 \" id \" : \"" + }, + { + "id": "ART-1302_KNOWLEDGE_NODE-8", + "title": "Export — DevRev | Docs", + "text": "\" : \" value \" 3 }\\nAPI Reference accounts Export.\\n\\nGET https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nQuery parameters.\\n\\ncreated_by string Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date.after datetime Optional\\nFilters for objects created after the provided timestamp (inclusive).\\ncreated_date.before datetime Optional\\nFilters for objects created before the provided timestamp (inclusive).\\ncustom_fields map from strings to any" + }, + { + "id": "ART-1303_KNOWLEDGE_NODE-6", + "title": "Export Post — DevRev | Docs", + "text": "exported accounts.\\nShow 18 properties\\nGET / accounts.export\\n$ curl -G https://api.devrev.ai/accounts.export \\\\ > -H \" Authorization: Bearer \" \\\\ > --data-urlencode created_date.after=2023-01-01T12:00:00Z \\\\ > --data-urlencode created_date.before=2023-01-01T12:00:00Z \\\\ > --data-urlencode modified_date.after=2023-01-01T12:00:00Z \\\\ > --data-urlencode modified_date.before=2023-01-01T12:00:00Z\\n200 Retrieved 1 { 2 \" accounts \" : [ 3 { 4 \" created_date \" : \" 2023-01-01T12:00:00Z \" , 5 \"" + }, + { + "id": "ART-1639_KNOWLEDGE_NODE-3", + "title": "Export Post — DevRev | Docs", + "text": "delete.\\nResponse.\\n\\nThis endpoint returns a map from strings to any.\\nAPI Reference accounts Export.\\n\\nGET https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nQuery parameters.\\n\\ncreated_by string Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date.after datetime Optional\\nFilters for objects created after the provided timestamp (inclusive).\\ncreated_date.before datetime Optional\\nFilters for objects created before the provided timestamp" + }, + { + "id": "ART-1303_KNOWLEDGE_NODE-3", + "title": "Export Post — DevRev | Docs", + "text": "delete.\\nResponse.\\n\\nThis endpoint returns a map from strings to any.\\nAPI Reference accounts Export.\\n\\nGET https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nQuery parameters.\\n\\ncreated_by string Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date.after datetime Optional\\nFilters for objects created after the provided timestamp (inclusive).\\ncreated_date.before datetime Optional\\nFilters for objects created before the provided timestamp" + }, + { + "id": "ART-1652_KNOWLEDGE_NODE-3", + "title": "Export — DevRev | Docs", + "text": "delete.\\nResponse.\\n\\nThis endpoint returns a map from strings to any.\\nAPI Reference accounts Export.\\n\\nGET https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nQuery parameters.\\n\\ncreated_by string Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date.after datetime Optional\\nFilters for objects created after the provided timestamp (inclusive).\\ncreated_date.before datetime Optional\\nFilters for objects created before the provided timestamp" + }, + { + "id": "ART-1301_KNOWLEDGE_NODE-8", + "title": "Delete — DevRev | Docs", + "text": "\" : \" value \" 3 }\\nAPI Reference accounts Export.\\n\\nGET https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nQuery parameters.\\n\\ncreated_by string Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date.after datetime Optional\\nFilters for objects created after the provided timestamp (inclusive).\\ncreated_date.before datetime Optional\\nFilters for objects created before the provided timestamp (inclusive).\\ncustom_fields map from strings to any" + }, + { + "id": "ART-1509_KNOWLEDGE_NODE-3", + "title": "Prepare — DevRev | Docs", + "text": "delete.\\nResponse.\\n\\nThis endpoint returns a map from strings to any.\\nAPI Reference accounts Export.\\n\\nGET https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nQuery parameters.\\n\\ncreated_by string Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date.after datetime Optional\\nFilters for objects created after the provided timestamp (inclusive).\\ncreated_date.before datetime Optional\\nFilters for objects created before the provided timestamp" + }, + { + "id": "ART-1784_KNOWLEDGE_NODE-3", + "title": "Locate Post — DevRev | Docs", + "text": "delete.\\nResponse.\\n\\nThis endpoint returns a map from strings to any.\\nAPI Reference accounts Export.\\n\\nGET https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nQuery parameters.\\n\\ncreated_by string Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date.after datetime Optional\\nFilters for objects created after the provided timestamp (inclusive).\\ncreated_date.before datetime Optional\\nFilters for objects created before the provided timestamp" + }, + { + "id": "ART-1830_KNOWLEDGE_NODE-3", + "title": "Get Post — DevRev | Docs", + "text": "delete.\\nResponse.\\n\\nThis endpoint returns a map from strings to any.\\nAPI Reference accounts Export.\\n\\nGET https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nQuery parameters.\\n\\ncreated_by string Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date.after datetime Optional\\nFilters for objects created after the provided timestamp (inclusive).\\ncreated_date.before datetime Optional\\nFilters for objects created before the provided timestamp" + } + ] + }, + { + "query_id": "5a83d35e-d1ba-4feb-b778-53b294f3bb0e", + "query": "Sales One App not visible after login", + "retrievals": [ + { + "id": "ART-17569_KNOWLEDGE_NODE-1", + "title": "Issues with Salesforce OAuth connection", + "text": "message in the UI if they try to access an uninstalled app: \\xe2\\x80\\x9cWe can\\xe2\\x80\\x99t authorize you because of an OAuth error. For more information, contact your Salesforce administrator.\\xe2\\x80\\x9d and the OAUTH_APPROVAL_ERROR_GENERIC message.\"\\n\\nDue to this, customers may experience issues when trying to create a new Salesforce connection and install the DevRev app on their Salesforce instance.\\n\\nRead more about this on the shared article above. Follow the next steps to enable the" + }, + { + "id": "ART-17569_KNOWLEDGE_NODE-0", + "title": "Issues with Salesforce OAuth connection", + "text": "b'\"Starting in early September 2025, Salesforce will restrict the use of uninstalled connected apps. This usage restriction will block end users from using uninstalled connected apps. This change is part of Salesforce\\'s commitment to making our products and services secure-by-default.\"\\n\\n[Prepare for Connected App Usage Restrictions Change](https://help.salesforce.com/s/articleView?id=005132365&type=1)\\n\\n\"If API Access control isn\\xe2\\x80\\x99t enabled, end users see the following error" + }, + { + "id": "ART-12604_KNOWLEDGE_NODE-0", + "title": "DevRev Careers | Sales Development Representative", + "text": "b\"DevRev Careers | Sales Development Representative \\n\\n* Product\\n* Platform\\n* Marketplace\\n* Company\\n* Resources\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nProduct\\n\\nPlatform\\n\\nMarketplace\\n\\nCompany\\n\\nResources\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\ncareers\\n\\nSales Development Representative\\n================================\\n\\nBengaluru, Karnataka," + }, + { + "id": "ART-984_KNOWLEDGE_NODE-25", + "title": "Why you Should be Looking at Support Differently", + "text": "for sales visibility (or at least notifications).\\n\\nThe key is that some level of integration is necessary between systems to provide visibility without requiring people to\\nlook in different places unless you have a platform that handles these in a converged manner.\\n\\nWhy change\\n\\nThis will help facilitate the following:\\n\\n\\n Interactions are coordinated and consistent\\n Hand-offs are handled correctly\\n Customers won\\xe2\\x80\\x99t get tossed around or told different things by different" + }, + { + "id": "ART-12606_KNOWLEDGE_NODE-0", + "title": "DevRev Careers | Revenue: Sales Development Representative", + "text": "b\"DevRev Careers | Revenue: Sales Development Representative\\n\\n* Product\\n* Platform\\n* Marketplace\\n* Company\\n* Resources\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nProduct\\n\\nPlatform\\n\\nMarketplace\\n\\nCompany\\n\\nResources\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\ncareers\\n\\nRevenue: Sales Development Representative\\n=========================================\\n\\nBuenos Aires," + }, + { + "id": "ART-1031_KNOWLEDGE_NODE-3", + "title": "AR Digital Wealth cuts support TAT by 60% with faster issue solving", + "text": "Net Worth Individuals (HNIs) to access and manage their investments anytime, anywhere. This approach is particularly appealing to tech-savvy customers. However, the app encountered several issues, especially in crucial areas like the onboarding process, which challenged the company's growth.\\n\\nKuntal Modi, the Product Manager at AR Digital Wealth, pointed out that diagnosing problems in the app's onboarding process, particularly around the login and splash screens, was challenging. The lack of" + }, + { + "id": "ART-2047_KNOWLEDGE_NODE-29", + "title": "Salesforce AirSync | AirSync | Snap-ins | DevRev", + "text": "editions include **Enterprise**, **Unlimited**, **Developer**, and **Performance**. Additionally, the **Professional** edition is supported if API access has been purchased as an add-on.\\n\\n![]()\\n\\nTo ensure a successful import, it\\'s important to verify that the Salesforce user has \"View All Data\" permissions, not to be confused with the \"View All\" permissions for individual objects.\\n\\n1. Go to **Settings** > **Integrations** > **AirSyncs** and select **AirSync** (or **Start AirSync** if" + }, + { + "id": "ART-2898_KNOWLEDGE_NODE-9", + "title": "Android integration — DevRev | Docs", + "text": "in your app after the user logs in. If you have the user information available at app launch, call the function after the `DevRev.configure(context, appID)` method.\\n\\n#####\\n\\nThe `Identity` structure allows for custom fields in the user, organization, and account traits. These fields must be configured through the DevRev app before they can be utilized. For more information, refer to [Object customization](https://devrev.ai/docs/product/object-customization).\\n\\n### Anonymous" + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-43", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "with that email or not.\\n + This could also be because your customer hasn't logged in.\\n* Customer isn't able to view the tickets they have created.\\n\\n + Check if there are any reported tickets by that customer. You can do so by logging into your DevRev app and then going into the tickets section. Here you can filter based on **reported by** and see if any tickets have been reported by the customer who isn't able to view the tickets.\\n + Check if the customer has logged in on the correct" + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-42", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "linkage**: Users can also be linked to an existing account to ensure they are granted the appropriate user permissions upon login.\\n\\nTroubleshooting\\n---------------\\n\\n* The customer isn't able to log in to the customer portal.\\n\\n + This could be because the email address from which you are trying to log in isn't registered as a customer on the DevRev application. You can check if the email address is registered or not by logging into your DevRev account and searching if a customer exists" + } + ] + }, + { + "query_id": "a03f6885-a997-4546-bd74-be98466da2d9", + "query": "linking tickets and issues for analytics", + "retrievals": [ + { + "id": "ART-4184_KNOWLEDGE_NODE-25", + "title": "Ticket linked issues comment sync | Automate | Snap-ins | DevRev", + "text": "Issues Comment Sync** snap-in automatically synchronizes comments between linked tickets and issues in DevRev. When a comment is added to a ticket, it is automatically replicated to all linked issues, maintaining context and ensuring all stakeholders have access to the same information.\\n\\nKey features\\n------------\\n\\n* **Comment synchronization**: Comments from tickets are automatically replicated to linked issues with preserved context.\\n* **Context preservation**: Each synchronized comment" + }, + { + "id": "ART-1975_KNOWLEDGE_NODE-28", + "title": "Ticket insights | Support analytics | Computer for Support Teams | DevRev", + "text": "conversations against standalone tickets.\\n* **Tickets linked to issues**\\n\\n The percentage of tickets linked to product issues.\\n* **Active tickets by owner**\\n\\n The number of Open or In Progress tickets grouped by owner.\\n* **Tickets created vs. closed**\\n\\n The trend of tickets created against those closed.\\n\\nCustomer satisfaction (CSAT)\\n----------------------------\\n\\n* **CSAT score distribution**\\n\\n A distribution of customer satisfaction scores on tickets.\\n\\nTime spent per" + }, + { + "id": "ART-4184_KNOWLEDGE_NODE-4", + "title": "Ticket linked issues comment sync | Automate | Snap-ins | DevRev", + "text": "analytics](/docs/product/support-analytics)\\n\\n - [Conversation insights](/docs/dashboards/conversation-insights)\\n - [Conversation-SLA Analytics](/docs/dashboards/conversation-sla-analytics)\\n - [Conversation-Team Performance](/docs/dashboards/conversation-team-performance)\\n - [Ticket insights](/docs/dashboards/ticket-insights)\\n - [Ticket-SLA Analytics](/docs/dashboards/ticket-sla-analytics)\\n - [Ticket-Team Performance](/docs/dashboards/ticket-team-performance)\\n +" + }, + { + "id": "ART-1975_KNOWLEDGE_NODE-27", + "title": "Ticket insights | Support analytics | Computer for Support Teams | DevRev", + "text": "customer satisfaction score for tickets.\\n* **Escalated tickets**\\n\\n The number of tickets that are escalated.\\n\\nCustomer & product impact\\n-------------------------\\n\\n* **Active tickets by customer**\\n\\n The number of Open or In Progress tickets grouped by customer.\\n* **Active tickets by part**\\n\\n The number of Open or In Progress tickets grouped by part.\\n\\nTicket distribution\\n-------------------\\n\\n* **Tickets linked to conversations**\\n\\n The percentage of tickets linked from" + }, + { + "id": "ART-1977_KNOWLEDGE_NODE-4", + "title": "Ticket-Team Performance | Support analytics | Computer for Support Teams | DevRev", + "text": "analytics](/docs/product/support-analytics)\\n\\n - [Conversation insights](/docs/dashboards/conversation-insights)\\n - [Conversation-SLA Analytics](/docs/dashboards/conversation-sla-analytics)\\n - [Conversation-Team Performance](/docs/dashboards/conversation-team-performance)\\n - [Ticket insights](/docs/dashboards/ticket-insights)\\n - [Ticket-SLA Analytics](/docs/dashboards/ticket-sla-analytics)\\n - [Ticket-Team Performance](/docs/dashboards/ticket-team-performance)\\n +" + }, + { + "id": "ART-1242_KNOWLEDGE_NODE-0", + "title": "Tickets and issues | DevRev | Docs", + "text": "b'Tickets and issues | DevRev | Docs\\n\\n[![]()![]()](https://developer.devrev.ai/)\\n\\nPublic\\n\\nPublic\\n\\nSearch\\n\\n`/`\\n\\n[API Reference](/api-reference/getting-started)[works](/api-reference/works/tickets-and-issues)\\n\\nTickets and issues\\n==================\\n\\nCopy page\\n\\n`works` endpoint\\n\\n\\xe2\\x84\\xb9\\xef\\xb8\\x8f A work item is a record of some work that has to be done for a customer (ticket) or for another builder or maintainer of a part (issue).\\n\\n\\xf0\\x9f\\x93\\x8c For more information" + }, + { + "id": "ART-1972_KNOWLEDGE_NODE-4", + "title": "Ticket-SLA Analytics | Support analytics | Computer for Support Teams | DevRev", + "text": "analytics](/docs/product/support-analytics)\\n\\n - [Conversation insights](/docs/dashboards/conversation-insights)\\n - [Conversation-SLA Analytics](/docs/dashboards/conversation-sla-analytics)\\n - [Conversation-Team Performance](/docs/dashboards/conversation-team-performance)\\n - [Ticket insights](/docs/dashboards/ticket-insights)\\n - [Ticket-SLA Analytics](/docs/dashboards/ticket-sla-analytics)\\n - [Ticket-Team Performance](/docs/dashboards/ticket-team-performance)\\n +" + }, + { + "id": "ART-1447_KNOWLEDGE_NODE-1", + "title": "Tickets and issues — DevRev | Docs", + "text": "[Tickets](https://docs.devrev.ai/product/tickets) and [Issues](https://docs.devrev.ai/product/issues).\\n\\nWas this page helpful?YesNo\\n\\n[Create WorkUp Next](/public/api-reference/works/create)\\n\\n[Built with](https://buildwithfern.com/?utm_campaign=buildWith&utm_medium=docs&utm_source=developer.devrev.ai)\\n\\n[Enterprise grade security to protect customer dataLearn more about it.](https://devrev.ai/blog/soc-compliance)\\n\\nProduct\\n\\n * [Build](https://devrev.ai/build)\\n *" + }, + { + "id": "ART-1242_KNOWLEDGE_NODE-1", + "title": "Tickets and issues | DevRev | Docs", + "text": "about work items, refer to [Tickets](https://docs.devrev.ai/product/tickets) and [Issues](https://docs.devrev.ai/product/issues).\\n\\nWas this page helpful?\\n\\nYesNo\\n\\n[Previous](/api-reference/webhooks/update)[#### Create Work\\n\\nNext](/api-reference/works/create)[Built with](https://buildwithfern.com/?utm_campaign=buildWith&utm_medium=docs&utm_source=developer.devrev.ai)'" + }, + { + "id": "ART-1972_KNOWLEDGE_NODE-15", + "title": "Ticket-SLA Analytics | Support analytics | Computer for Support Teams | DevRev", + "text": "[Operational SLA Metrics](/docs/automations/operational-sla-metrics)\\n - [Custom field migration](/docs/automations/custom-field-migration)\\n - [Slack scraper](/docs/automations/slack-scraper)\\n - [Slack Broadcaster](/docs/automations/slack-broadcaster)\\n - [Reported by enricher](/docs/automations/ticket-reported-by)\\n - [Ticket approval workflow](/docs/automations/ticket-approval-workflow)\\n - [Ticket linked issues comment" + } + ] + }, + { + "query_id": "898a4513-a682-43d5-acb5-9413bbd28ab5", + "query": "Data residency compliance for international customers", + "retrievals": [ + { + "id": "ART-12476_KNOWLEDGE_NODE-1", + "title": "The Future of Sessions - Powered By DevRev", + "text": "designed to meet GDPR and SOC 2 compliance requirements, with controls in place to support your data privacy needs.\\n\\nAdvanced enterprise login: Seamless SAML compliance for all enterprise logins regardless of your SSO provider.\\n\\nRegional data residency options: We offer data residency options in Europe, Australia, US East (Virginia), and India, with logical data isolation and access control features.\\n\\nSelf-serve user management: Easily add or remove users from your workspace and manage" + }, + { + "id": "ART-4174_KNOWLEDGE_NODE-9", + "title": "Data Processing Agreement | DevRev", + "text": "behalf, as well as explanations on how such parties safeguard your data.\\n* **Standard Contractual clauses and other country specific clauses:** Our DPA also includes the EU Commission's Standard Contractual clausesand other country specific clauses for transferring and processing data outside of the EEA, UK and USA.\\n\\n### How does DevRev handle International Data transfers?\\n\\nAt DevRev, we understand the importance of securely managing international data transfers in compliance with global" + }, + { + "id": "ART-15620_KNOWLEDGE_NODE-15", + "title": "Intercom - Competitive - for the PLuG on website", + "text": "Mature partner ecosystem and app marketplace development\\n\\nIntercom Weakness : Limited data residency options (US, EU, AU only) restricting BFSI adoption\\n\\nDevRev Opportunity : Address geographic compliance requirements Intercom cannot serve Scalability Comparison\\n\\nIntercom Challenge : Users report scaling difficulties requiring costly upgrades and custom development\\n\\nDevRev Advantage : Unlimited scale and customizability providing enterprise flexibility\\n\\nMarket Perception : Intercom\\'s" + }, + { + "id": "ART-15620_KNOWLEDGE_NODE-19", + "title": "Intercom - Competitive - for the PLuG on website", + "text": "Customers Facing Scale Issues : Organizations outgrowing Intercom\\'s capabilities and experiencing costly upgrade requirements\\n\\nEnterprise Prospects : Companies needing data residency options beyond US/EU/AU limitations\\n\\nAI-Forward Organizations : Teams seeking sophisticated AI capabilities beyond basic chatbot functionality\\n\\nCost-Conscious SMBs : Smaller companies frustrated with Intercom\\'s expensive per-resolution pricing\\n\\nTechnical Product Companies : Organizations needing deep" + }, + { + "id": "ART-4174_KNOWLEDGE_NODE-1", + "title": "Data Processing Agreement | DevRev", + "text": "(DPA)?](#want-to-obtain-the-text-of-the-devrev-data-processing-agreement-dpa?)\\n* [Why do you need to sign a Data Processing Agreement with us?](#why-do-you-need-to-sign-a-data-processing-agreement-with-us?)\\n* [What\\xe2\\x80\\x99s in the DevRev Data Processing Agreement?](#whats-in-the-devrev-data-processing-agreement?)\\n* [How does DevRev handle International Data transfers?](#how-does-devrev-handle-international-data-transfers?)\\n* [EU Standard Contractual Clauses" + }, + { + "id": "ART-4174_KNOWLEDGE_NODE-8", + "title": "Data Processing Agreement | DevRev", + "text": "we implement to keep your data secure, such as encryption, access controls, and regular security audits.\\n* **Data Subject Rights:** Information on how we support you in responding to requests from individuals to exercise their rights under data protection laws.\\n* **Data Transfer:** Terms regarding international data transfers, ensuring compliance with GDPR and other regulatory frameworks.\\n* **Subprocessors:** A list of any third parties we partner we engage in order to process data on your" + }, + { + "id": "ART-4183_KNOWLEDGE_NODE-1", + "title": "Security Subprocessors - GDPR Compliance | DevRev", + "text": "More](https://cdn.sanity.io/files/umrbtih2/development/8c3ab1aef7fee37a816c3116a89b08b5db2ba541.pdf)\\n\\nDeveloping and maintaining an incident response plan that includes subprocessors\\xe2\\x80\\x99 roles in managing data breaches.\\n\\n![]()\\n\\nChoose another country or region to see content specific to your location.\\n\\n\\xf0\\x9f\\x8c\\x8e English\\xf0\\x9f\\x87\\xaf\\xf0\\x9f\\x87\\xb5 Japanese\\n\\n[Enterprise grade security to protect customer data\\n\\nLearn more about" + }, + { + "id": "ART-888_KNOWLEDGE_NODE-43", + "title": "Privacy Policy", + "text": "our global operations, we transfer information globally and allow access to that information from countries in which the DevRev owned or operated companies and have operations for the purposes described in this policy. These countries may not have equivalent privacy and data protection laws to the laws of many of the countries where our customers and users are based. When we share information about you within and among DevRev corporate affiliates, we make use of standard contractual data" + }, + { + "id": "ART-4174_KNOWLEDGE_NODE-11", + "title": "Data Processing Agreement | DevRev", + "text": "(EEA) is adequately protected, even when transferred to countries that may not offer an equivalent level of data protection.\\n\\n### UK-Specific Clauses\\n\\nFollowing Brexit, we also apply tailored safeguards for personal data transferred from the United Kingdom. We leverage the UK\\xe2\\x80\\x99s International Data Transfer Addendum to the EU SCCs, which ensures compliance with UK-specific data transfer requirements and aligns with the standards established by the UK\\xe2\\x80\\x99s Information" + }, + { + "id": "ART-4174_KNOWLEDGE_NODE-10", + "title": "Data Processing Agreement | DevRev", + "text": "data privacy laws. To support this commitment, we use industry-standard frameworks and legal instruments to facilitate the lawful and secure transfer of personal data across borders.\\n\\n### EU Standard Contractual Clauses (SCCs)\\n\\nFor data transfers involving EU-based users, DevRev relies on the EU Standard Contractual Clauses (SCCs). These clauses, approved by the European Commission, provide contractual safeguards to ensure that personal data transferred outside the European Economic Area" + } + ] + }, + { + "query_id": "9f3be4d0-e1ae-46c5-be4f-b02edea516fb", + "query": "declarative pathing within the bot", + "retrievals": [ + { + "id": "ART-17649_KNOWLEDGE_NODE-11", + "title": "Leading APAC fintech transforms support with multi-instance AI solution", + "text": "through ongoing optimization\\n* Advanced routing ensures issues reach the right teams promptly\\n* Comprehensive dashboards provide visibility into support operations\\n* Deterministic bot flows improve self-service resolution rates\\n* End-to-end testing ensures reliable customer experiences\\n\\n### Related Articles\\n\\n[![]()\\n\\n5 min readLuxCreo boosts operational efficiency and agility with DevRev](/case-study/luxcreo)[![]()\\n\\n5 min readAditya Birla Capital optimizes user experience with" + }, + { + "id": "ART-17649_KNOWLEDGE_NODE-3", + "title": "Leading APAC fintech transforms support with multi-instance AI solution", + "text": "both agents and customers\\n* Complex requirements spanned agent, customer, and manager experiences\\n* Need for sophisticated routing, views, dashboards, and deterministic bot flows\\n\\nThe solution: switching to DevRev\\n---------------------------------\\n\\nThe company chose DevRev for its Computer capabilities and customization features:\\n\\n* Implementation of multiple dev organizations within DevRev\\n* Complete replacement of their previous Intercom-based support system\\n* Implementation of" + }, + { + "id": "ART-13178_KNOWLEDGE_NODE-12", + "title": "Understanding Agentic AI: Capabilities and Implications for the Future", + "text": "prompts | Predetermined logic paths only \\nImplementation examples | Self-directing customer journey managers, workflow orchestrators | Marketing copy generators, design assistants | Scheduled report generators, form processors \\nSystem connections | Operates across enterprise architecture | Generally functions as specialized tools | Isolated within specific applications \\nStrategic advantage | Full transformation of knowledge work processes | Enhanced productivity for content creation |" + }, + { + "id": "ART-1287_KNOWLEDGE_NODE-6", + "title": "Functions | DevRev | Docs", + "text": "execution include:\\n\\n* Ensuring order of message processing for chatbots or messaging integrations.\\n* Preventing duplicate or out-of-order actions when multiple events are triggered.\\n\\nTo enable this:\\n\\n1. Enable synchronization in manifest\\n\\n * In your function\\xe2\\x80\\x99s manifest, add the field:\\n\\n ```\\n | | |\\n | --- | --- |\\n | 1 | functions: |\\n | 2 | - name: function_name |\\n | 3 | description: Let me execute |\\n | 4 | supports_synchronization: true" + }, + { + "id": "ART-2133_KNOWLEDGE_NODE-54", + "title": "The Essential Methodology: Less but Better", + "text": "we\\xe2\\x80\\x99ve mentioned before, this improves \\xef\\xac\\x82ow and deep work durations during the day in the life of a knowledge worker.\\n\\nThe Essential Methodology also argues for reducing human work by getting intelligent bots to look up legacy systems, execute work\\xef\\xac\\x82ows, and notify people. Goal orientation in AI bots entails routing natural language intent to bot skills, which in turn have deterministic work\\xef\\xac\\x82ows attached to them.\\n\\nPage 14 of 16\\n\\nThe Essential" + }, + { + "id": "ART-4171_KNOWLEDGE_NODE-4", + "title": "Make customer support real-time and personalized", + "text": "better.\\xe2\\x80\\x9d\\n-------------------------------------------------------------------------------------------------------------\\n\\n### Shikhar Agarwal\\n\\n### CTO, Spotnana\\n\\n[Read customer story](/case-study)\\n\\n#### Respond faster with a GPT bot\\n\\n#### Reduce agent workloads with AI-powered deflection\\n\\n[Book a Demo](/request-a-demo)[Discover PLuG](/plug-user-engagement)\\n\\n![]()\\n\\nNo more rigid chatbots with defined workflows. Make AI responses human-like with a RAG-powered chatbot" + }, + { + "id": "ART-15620_KNOWLEDGE_NODE-3", + "title": "Intercom - Competitive - for the PLuG on website", + "text": "Capabilities\\n\\nPosition : Limited agent co-pilot functionalities\\n\\nArchitecture : Fin AI Agent is essentially a glorified chatbot with minimal customization\\n\\nLimitation : Very limited AI depth and action capabilities beyond basic queries\\n\\nCompetitive Disadvantage : DevRev delivers highly-capable AI agents with extensive customization, orchestration, and thorough evaluation capabilities Tech Partner Ecosystem and Native Integrations\\n\\nPosition : Capable integration framework\\n\\nStrength :" + }, + { + "id": "ART-12391_KNOWLEDGE_NODE-6", + "title": "Conversational workflows | Workflows | Computer by DevRev | DevRev", + "text": "+ [Turing AI agent](/docs/product/conversational-bot)\\n\\n - [Best practices for documentation that supports AI](/docs/product/writing-bp)\\n + [Commands](/docs/product/commands)\\n + [Service-level agreement](/docs/product/sla)\\n + [Operational-level agreement](/docs/product/ola)\\n + [Support snap-ins](/docs/product/snapins-support)\\n* [Computer for Builders](/docs/product/build)\\n\\n + [Issues](/docs/product/issues)\\n + [Now, Next, Later](/docs/product/nnl)\\n + [Sprint" + }, + { + "id": "ART-1275_KNOWLEDGE_NODE-7", + "title": "Using a snap-in to perform a DevRev action | DevRev | Docs", + "text": "account\\xe2\\x80\\x99s display name to better reflect the\\nsnap-in\\xe2\\x80\\x99s behavior.\\n\\nmanifest.yaml\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | version: \"2\" |\\n| 2 | |\\n| 3 | name: \"Timely Ticketer\" |\\n| 4 | description: \"Snap-in to create ticket every 10 minutes\" |\\n| 5 | |\\n| 6 | service_account: |\\n| 7 | display_name: Automatic Ticket Creator Bot |\\n```\\n\\nNext, update the `event_sources` section to use the `timer-events` event source.\\nThe `timer-events` source type takes a `config` of" + }, + { + "id": "ART-15716_KNOWLEDGE_NODE-14", + "title": "Support queries related playbook", + "text": "AI Bot \\xe2\\x80\\x93 Turing\\n\\nYes! DevRev offers an AI-powered assistant called Turing , which can answer questions, suggest articles, summarize conversations, and more. You can read more about it in the documentation: [https://docs.devrev.ai/product/conversational-bot](https://docs.devrev.ai/product/conversational-bot)\\n\\n4.\\xe2\\x80\\x82Difference Between Runnables and Features\\n\\nA feature is a unit of configuration or capability in the product, often representing a user-facing function or" + } + ] + }, + { + "query_id": "5e3a4b4a-89bf-4499-bf29-80f9d0420721", + "query": "resolution time grouped by Priority and Customer segment", + "retrievals": [ + { + "id": "ART-15716_KNOWLEDGE_NODE-36", + "title": "Support queries related playbook", + "text": "the Dashboards section.\\n\\nAdd a widget for \\xe2\\x80\\x9cTicket Resolution Time\\xe2\\x80\\x9d or \\xe2\\x80\\x9cAverage Time to Resolution.\\xe2\\x80\\x9d\\n\\nConfigure the widget to display data by agent, team, or time period.\\n\\nUse filters to focus on specific ticket types, priorities, or customer segments.\\n\\nFor more granular analysis, use a table or chart widget with custom SQL or filters.\\n\\nThis will help you monitor and improve your team\\xe2\\x80\\x99s responsiveness.5. Configuring branding of the" + }, + { + "id": "ART-1039_KNOWLEDGE_NODE-8", + "title": "100ms delivers differentiated customer support through a unified channel", + "text": "developers supporting other developers and they immediately resonated with DevRev\\xe2\\x80\\x99s mission. Now, the company has visibility into every customer interaction. Conversations are grouped so critical problems get resolved faster, and nothing slips through the cracks.\\n\\n![]()\\n\\nWith Computer\\xe2\\x80\\x99s agentic AI capabilities, prioritization has become sharper and proactive. Instead of manually parsing through Slack threads, the support team can rely on AI to flag urgency, cluster" + }, + { + "id": "ART-1870_KNOWLEDGE_NODE-13", + "title": "Unifying teams: How ActionIQ transformed support with integration", + "text": "stakeholders see issue status in real time\\n* Teams consistently meet resolution time targets\\n* Customers receive faster resolutions and clearer communication\\n* Support operations grow smoothly with the business\\n\\nWe're a DevRev client, and it has been a game-changer for us.\\n\\n![]()\\n\\nTasso ArgyrosFounder & CEO, ActionIQ\\n\\nThe results\\n\\nSummary\\n\\nRapid resolution time\\n\\nBetter alignment between engineering and support teams cut median incident resolution times by 67% and reduced" + }, + { + "id": "ART-1970_KNOWLEDGE_NODE-26", + "title": "Conversation-Team Performance | Support analytics | Computer for Support Teams | DevRev", + "text": "Conversations with SLA breaches with breach type for ticket owners.\\n* **SLA breaches w.r.t. Customer Tier**\\n\\n Number of Conversations with SLA breaches per owner.\\n* **Average Resolution Time**\\n\\n Indicates the average time taken to resolve requests for each conversation owner.\\n\\n[PreviousConversation-SLA Analytics](/docs/dashboards/conversation-sla-analytics)[NextTicket insights](/docs/dashboards/ticket-insights)\\n\\n[Enterprise grade security to protect customer data\\n\\nLearn more about" + }, + { + "id": "ART-1870_KNOWLEDGE_NODE-14", + "title": "Unifying teams: How ActionIQ transformed support with integration", + "text": "customer ticket resolution times by 50%.\\n\\nFaster follow-up responses\\n\\nWith DevRev, ActionIQ has achieved a 60% reduction in turnaround time for responses to customer tickets.\\n\\nIncreased agent productivity\\n\\nImproved organization of work items, combined with workflow automation through Snap-Ins, drove a 68% increase in the number of incidents closed within Level 1 Support (per agent, per month) and an overall 18% increase in the number of incidents closed (per agent, per month).\\n\\n###" + }, + { + "id": "ART-1035_KNOWLEDGE_NODE-0", + "title": "Goodmeetings uses PLuG to reduce ticket resolution time", + "text": "b'Goodmeetings uses PLuG to reduce ticket resolution time\\n\\n* Computer\\n* Resources\\n* [Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nComputer\\n\\nResources\\n\\n[Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\n- [Case Studies](/case-study)\\n\\n- Goodmeetings\\n\\nGoodmeetings uses DevRev to reduce ticket resolution time\\n=========================================================\\n\\n3 min" + }, + { + "id": "ART-2695_KNOWLEDGE_NODE-27", + "title": "Operational-level agreement | Computer for Support Teams | DevRev", + "text": "**Metrics**. Install the [OLA metrics for issues](https://marketplace.devrev.ai/ola-metric-on-issues) snap-in as prompted to access the **Issue Resolution Time** metric, see [Defining OLA Metrics](#defining-ola-metrics) for details.\\n3. Click **Continue**.\\n\\nYou can set breach and warning targets for **Issue Resolution Time** by selecting between calendar or business hours for calculation. Multiple policies can be created within an OLA, and they are applied based on priority if an issue meets" + }, + { + "id": "ART-1899_KNOWLEDGE_NODE-1", + "title": "Tough Trucks for Kids Story", + "text": "resolution time by 64%, improved first response time by over 83%, and increased their customer satisfaction score by 30%. They also saw a 20% increase in conversion rates.\\n\\nWith DevRev, Tough Trucks for Kids can now provide top-notch, scalable customer support. They're set up to maintain high customer delight as they continue to grow.\\n\\nCase Study: Link\"" + }, + { + "id": "ART-1981_KNOWLEDGE_NODE-27", + "title": "Support best practices | Computer for Support Teams | DevRev", + "text": "Periodically group the **Inbox** by stage and make sure there conversations only in *hold* or *awaiting customer response* stages.\\n* Let the customer know when a ticket linked to a conversation is closed and request their verification.\\n* Once all tickets of a conversation are resolved and the customer is satisfied, resolve the conversation.\\n* Move new tickets to the *awaiting product assist* stage.\\n\\nRespond to conversations\\n------------------------\\n\\n* Respond as fast as possible to any" + }, + { + "id": "ART-1003_KNOWLEDGE_NODE-19", + "title": "Understanding a Support Lead's Pain Points and KPIs", + "text": "t.created_at) = EXTRACT(@period FROM CURRENT_DATE);\\n-- NOTE: Replace @period with 'DAY', 'WEEK', 'MONTH', or 'QUARTER'.\\n\\n\\nAverage Resolution Time (ART)\\n\\n\\n Definition\\n \\n The average time it takes to resolve a customer issue from the moment it\\xe2\\x80\\x99s reported.\\n \\n \\n Calculation\\n \\n (Sum of resolution times for all resolved tickets) / (Total number of resolved tickets)\\n \\n \\n\\n\\nSELECT AVG(TIMESTAMPDIFF(MINUTE, t.created_at, t.resolved_at)) AS" + } + ] + }, + { + "query_id": "9f26f4e6-a8e5-4813-ba95-36771c04c066", + "query": "add attributes in MSAT snap-in", + "retrievals": [ + { + "id": "ART-1276_KNOWLEDGE_NODE-6", + "title": "Using a snap-in to perform an external action | DevRev | Docs", + "text": "manifest\\n\\nTo outline the structure of the snap-in, the initial step is to define key attributes in the snap-in\\xe2\\x80\\x99s manifest. Begin by specifying the name, description, and account display name for the snap-in.\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | version: \"2\" |\\n| 2 | name: \"GitHub issue creator\" |\\n| 3 | description: \"Replicate DevRev issues in GitHub.\" |\\n| 4 | |\\n| 5 | service_account: |\\n| 6 | display_name: GitHub Issue Creator" + }, + { + "id": "ART-1472_KNOWLEDGE_NODE-10", + "title": "Using a snap-in to perform an external action — DevRev | Docs", + "text": "outline the structure of the snap-in, the initial step is to define key attributes in the snap-in\\xe2\\x80\\x99s manifest. Begin by specifying the name, description, and account display name for the snap-in.\\n\\n[code]\\n\\n 1| version: \"2\" \\n ---|--- \\n 2| name: \"GitHub issue creator\" \\n 3| description: \"Replicate DevRev issues in GitHub.\" \\n 4| \\n 5| service_account: \\n 6| display_name: GitHub Issue Creator\\n[/code] \\n" + }, + { + "id": "ART-1278_KNOWLEDGE_NODE-6", + "title": "Snap-in triggered by an external source | DevRev | Docs", + "text": "discussion tab of the specified Product\\nsection. The configuration for this action can be customized through the input\\nparameters of the snap-in.\\n\\n[2](/snapin-development/tutorials/triggered-external-source#creating-the-snap-in)\\n\\n### Creating the snap-in\\n\\n#### Updating the manifest\\n\\nTo outline the structure of the snap-in, the initial step is to define key\\nattributes in the snap-in\\xe2\\x80\\x99s manifest. Begin by specifying the name, description,\\nand account display name for the" + }, + { + "id": "ART-1277_KNOWLEDGE_NODE-7", + "title": "Snap-in triggered by a DevRev event | DevRev | Docs", + "text": "text comment from the\\nsnap-in. To accomplish this task, the DevRev SDK is employed.\\n\\n[2](/snapin-development/tutorials/triggered-event#creating-the-snap-in)\\n\\n### Creating the snap-in\\n\\n#### Updating the manifest\\n\\nThe next step involves updating the manifest to define key attributes of\\nthe snap-in. This includes deciding on the name and providing a descriptive\\noverview that is visible to users, offering context about the snap-in\\xe2\\x80\\x99s\\npurpose.\\n\\n```\\n| | |\\n| --- | --- |\\n|" + }, + { + "id": "ART-1473_KNOWLEDGE_NODE-9", + "title": "Snap-in triggered by an external source — DevRev | Docs", + "text": "displaying them on the discussion tab of the specified Product section. The configuration for this action can be customized through the input parameters of the snap-in.\\n\\n[2](/public/snapin-development/tutorials/triggered-external-source#creating-the-snap-in)\\n\\n### Creating the snap-in\\n\\n#### Updating the manifest\\n\\nTo outline the structure of the snap-in, the initial step is to define key attributes in the snap-in\\xe2\\x80\\x99s manifest. Begin by specifying the name, description, and" + }, + { + "id": "ART-1485_KNOWLEDGE_NODE-11", + "title": "Snap-in triggered by a DevRev event — DevRev | Docs", + "text": "this task. In this scenario, the `/timeline-entries.create` API is the designated choice for executing the action of adding a text comment from the snap-in. To accomplish this task, the DevRev SDK is employed.\\n\\n[2](/public/snapin-development/tutorials/triggered-event#creating-the-snap-in)\\n\\n### Creating the snap-in\\n\\n#### Updating the manifest\\n\\nThe next step involves updating the manifest to define key attributes of the snap-in. This includes deciding on the name and providing a" + }, + { + "id": "ART-1847_KNOWLEDGE_NODE-9", + "title": "Customizing snap-in configuration — DevRev | Docs", + "text": "JSON:\\n\\n[code]\\n\\n 1| { \\n ---|--- \\n 2| \"snap_kit_body\": { \\n 3| \"body\": { \\n 4| \"snaps\": [ \\n 5| { \\n 6| \"elements\": [ \\n 7| { \\n 8| \"action_id\": \"user_snap_kit_action\", \\n 9| \"action_type\": \"remote\", \\n 10| \"elements\": [ \\n 11| { \\n 12| \"element\": { \\n 13| \"action_id\": \"select\", \\n 14|" + }, + { + "id": "ART-1473_KNOWLEDGE_NODE-11", + "title": "Snap-in triggered by an external source — DevRev | Docs", + "text": "flexibility and adaptability of the snap-in, configurable inputs need to be incorporated. In this instance, organization-level inputs are introduced to specify the product part for which comments should be added. This configuration allows users to customize the behavior of the snap-in by providing a meaningful description of the product part where comments are intended to be added.\\n\\n[code]\\n\\n 1| inputs: \\n ---|--- \\n 2| organization: \\n 3| - name: part_id \\n 4|" + }, + { + "id": "ART-1846_KNOWLEDGE_NODE-13", + "title": "Customizing snap-in configuration | DevRev | Docs", + "text": "defined in the snap-in configuration.\\n\\nExample payload:\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | { |\\n| 2 | \"id\": \"snap_in_id\", |\\n| 3 | \"inputs_values\": { |\\n| 4 | \"part_picker\": \"don:core:dvrv-us-1:devo/XXXX/product:XXXX\", |\\n| 5 | \"enum_list_picker\": [\"value-1\", \"value-2\"] |\\n| 6 | } |\\n| 7 | } |\\n```\\n\\nIn the example above, the `part_picker` and `enum_list_picker` are the input names defined in the snap-in configuration, and their corresponding values are provided in the `inputs_values`" + }, + { + "id": "ART-1847_KNOWLEDGE_NODE-18", + "title": "Customizing snap-in configuration — DevRev | Docs", + "text": "application/json\\n\\nResponse body:\\n\\n[code]\\n\\n 1| { \\n ---|--- \\n 2| \"data\": {}, \\n 3| \"success\": false \\n 4| }\\n[/code] \\n \\n## Example usage\\n\\nHere\\xe2\\x80\\x99s an example of how to update the input values:\\n\\n[code]\\n\\n 1| async updateSnapInInputs(snapInId: string, inputsValues: Record): Promise { \\n ---|--- \\n 2| const payload: SnapInsUpdateRequest = { \\n 3| id: snapInId, \\n 4| inputsValues, \\n 5| };" + } + ] + }, + { + "query_id": "8f8fd54f-97c5-47fb-85bc-eb0eec284788", + "query": "Slack bot not working after multiple test tickets", + "retrievals": [ + { + "id": "ART-4199_KNOWLEDGE_NODE-28", + "title": "Slack message agent | Automate | Snap-ins | DevRev", + "text": "**Trigger URL** that is displayed.\\n6. Paste the Trigger URL under **Enable Events** in the custom Slack bot.\\n\\n[PreviousTicket linked issues comment sync](/docs/automations/ticket-linked-issues-comment-sync)[NextIntegrate](/docs/integrate)\\n\\n#### On this page\\n\\n* [Install](#install)\\n* [Configure the custom Slack bot](#configure-the-custom-slack-bot)\\n* [Configure DevRev](#configure-devrev)\\n\\n[Enterprise grade security to protect customer data\\n\\nLearn more about" + }, + { + "id": "ART-4199_KNOWLEDGE_NODE-27", + "title": "Slack message agent | Automate | Snap-ins | DevRev", + "text": "message.channels.\\n7. Add this custom app and the **DevRev Slack Bot** into the Slack channel from which you want to create the DevRev object.\\n\\nConfigure DevRev\\n----------------\\n\\n1. Add the Slack Signing Secret and Slack Bot Token copied from the custom Slack bot app.\\n2. Add the channel IDs for either incidents, tickets or issues.\\n3. Click the respective buttons to enable the sync between threads.\\n4. Select the part ID to associate a particular part.\\n5. Click **Save** and copy the" + }, + { + "id": "ART-2035_KNOWLEDGE_NODE-42", + "title": "Slack | Integrate | Snap-ins | DevRev", + "text": "ticket notifications\\n\\n* Enable through the **Notify on new ticket creation** snap-in configuration.\\n* Provide a Slack channel ID in the **Channel ID to send ticket notifications** configuration.\\n* Snap-in will send notifications to the target channel whenever a new ticket is created, regardless of the source channel or platform.\\n* Notification message threads are **not** synced between platforms.\\n\\n### Notifications for ticket state update\\n\\n* Enable through **Notify on ticket state" + }, + { + "id": "ART-2035_KNOWLEDGE_NODE-41", + "title": "Slack | Integrate | Snap-ins | DevRev", + "text": "Slack threads, all the messages from both Slack threads reach only the primary ticket in DevRev, while messages from DevRev only sync to the primary ticket\\xe2\\x80\\x99s Slack thread.\\n* If only one ticket has a syncing Slack thread, that thread syncs with the primary ticket.\\n* No messages from the duplicate ticket sync to Slack.\\n* If a ticket is immutable but receives a new customer message in its Slack thread, a follow-up ticket is automatically created for future discussions.\\n\\n### New" + }, + { + "id": "ART-12395_KNOWLEDGE_NODE-5", + "title": "Slack Broadcaster | Automate | Snap-ins | DevRev", + "text": "ticket conversion](/docs/product/conversation-ticket)\\n + [Tickets](/docs/product/tickets)\\n + [Routing](/docs/product/routing)\\n + [Support best practices](/docs/product/support-bp)\\n + [Customer portal](/docs/product/support-portal)\\n + [Questions & answers](/docs/product/qa)\\n + [Knowledge Base](/docs/product/knowledge-base)\\n\\n - [Articles](/docs/product/articles)\\n - [Collections](/docs/product/collection)\\n + [Turing AI agent](/docs/product/conversational-bot)\\n\\n - [Best" + }, + { + "id": "ART-2035_KNOWLEDGE_NODE-38", + "title": "Slack | Integrate | Snap-ins | DevRev", + "text": "recommended if you already have a conversation in progress. Configure the snap-in to send or not send a ticket summary card to the Slack thread using the **Notify on conversation to ticket conversion** setting. Regardless, the Slack thread will sync with the new ticket instead of the ongoing conversation.\\n\\n![]()\\n\\nSlack does not support slash commands in threads.\\n\\nChoosing one of the first two options will open a pop-up modal with the new ticket form. Complete the required fields; some" + }, + { + "id": "ART-2035_KNOWLEDGE_NODE-37", + "title": "Slack | Integrate | Snap-ins | DevRev", + "text": "synchronized between DevRev and Slack.\\n\\nWork management using Slack\\n---------------------------\\n\\n### DevRev Tickets and Slack\\n\\nThe Slack snap-in allows users to create tickets directly from Slack. There are multiple ways to initiate ticket creation from any channel:\\n\\n* **Use the command:** Run /devrev create-ticket.\\n* **Message action:** Select **Create a new ticket** from the message actions.\\n* **Convert a Conversation:** Transform an ongoing conversation into a ticket. This is" + }, + { + "id": "ART-2035_KNOWLEDGE_NODE-43", + "title": "Slack | Integrate | Snap-ins | DevRev", + "text": "update** snap-in configuration.\\n* Applies only to tickets syncing with Slack threads.\\n* If enabled, the Slack snap-in will send notifications to the syncing thread whenever the ticket state changes.\\n\\n### Ticket digest\\n\\nTo see all open and in-progress tickets in Slack, use the /devrev ticket-digest command. This opens a modal with a paginated list of all open and in-progress tickets.\\n\\nDevRev Issues and Slack\\n-----------------------\\n\\nThe Slack snap-in allows issues to be created" + }, + { + "id": "ART-4021_KNOWLEDGE_NODE-5", + "title": "Slack scraper | Automate | Snap-ins | DevRev", + "text": "ticket conversion](/docs/product/conversation-ticket)\\n + [Tickets](/docs/product/tickets)\\n + [Routing](/docs/product/routing)\\n + [Support best practices](/docs/product/support-bp)\\n + [Customer portal](/docs/product/support-portal)\\n + [Questions & answers](/docs/product/qa)\\n + [Knowledge Base](/docs/product/knowledge-base)\\n\\n - [Articles](/docs/product/articles)\\n - [Collections](/docs/product/collection)\\n + [Turing AI agent](/docs/product/conversational-bot)\\n\\n - [Best" + }, + { + "id": "ART-4271_KNOWLEDGE_NODE-28", + "title": "Convert Conversations to Tickets | Conversations | Support | DevRev", + "text": "PLuG widget:\\n\\n * The ticket number and basic details appear in the same conversation pane.\\n * Users can click **Details** to view complete ticket information.\\n * If the **Tickets** tab is enabled in PLuG, users can track their ticket status there.\\n\\n### Slack experience\\n\\nWhen a conversation is converted to a ticket in Slack:\\n\\n * Ticket information is sent within the same thread.\\n * All subsequent messages sync with the newly created ticket.\\n * The transition is seamless for the" + } + ] + }, + { + "query_id": "17d61e6f-209e-43f7-bac4-61f02c5a63f1", + "query": "customizar severity de los tickets", + "retrievals": [ + { + "id": "ART-1979_KNOWLEDGE_NODE-29", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "**Severity**: The importance of the ticket. Severity can be set to low, medium, blocker, or high.\\n* **Stage**: The current state of the issue. The stage attribute is used to track the progress of the issue through its lifecycle. For more information on stages, see [stages](#stages).\\n* **Part**: The part of the company or product that the issue is related to. For more information on parts, see [parts](./parts).\\n* **Created by**: The user who created the ticket.\\n* **Created date**: The date" + }, + { + "id": "ART-1645_KNOWLEDGE_NODE-39", + "title": "Object customization (Beta) — DevRev | Docs", + "text": "_Priority_ to _Urgency Level_.\\n 2. Update the allowed values from _P0_ , _P1_ , _P2_ , and _P3_ to _Low_ , _Medium_ , _High_ , and _Blocker_.\\n\\nSince the modification is applicable to all issues, you can create a tenant schema fragment with the following payload:\\n\\n[code]\\n\\n $| curl --location \\'https://api.devrev.ai/internal/schemas.custom.set\\' \\\\ \\n ---|--- \\n >| --header \\'Content-Type: application/json\\' \\\\ \\n >| --header \\'Authorization: Bearer \\' \\\\ \\n >|" + }, + { + "id": "ART-1564_KNOWLEDGE_NODE-506", + "title": "List (Beta) — DevRev | Docs", + "text": "organizations.\\n\\nticket.severity enum Optional\\n\\nFilters for tickets with any of the provided severities.\\n\\nAllowed values: blocker high low medium\\nticket.sla_summary.stage enum Optional\\n\\nFilters for records with any of the provided SLA stages.\\n\\nAllowed values: breached completed paused running warning\\nticket.source_channel string Optional\\n\\nFilters for tickets with any of the provided source channels.\\n\\nticket.subtype string Optional\\n\\nFilters for tickets with any of the provided" + }, + { + "id": "ART-1551_KNOWLEDGE_NODE-506", + "title": "Update (Beta) — DevRev | Docs", + "text": "organizations.\\n\\nticket.severity enum Optional\\n\\nFilters for tickets with any of the provided severities.\\n\\nAllowed values: blocker high low medium\\nticket.sla_summary.stage enum Optional\\n\\nFilters for records with any of the provided SLA stages.\\n\\nAllowed values: breached completed paused running warning\\nticket.source_channel string Optional\\n\\nFilters for tickets with any of the provided source channels.\\n\\nticket.subtype string Optional\\n\\nFilters for tickets with any of the provided" + }, + { + "id": "ART-1543_KNOWLEDGE_NODE-505", + "title": "Metric Definitions List Post (Beta) — DevRev | Docs", + "text": "organizations.\\n\\nticket.severity enum Optional\\n\\nFilters for tickets with any of the provided severities.\\n\\nAllowed values: blocker high low medium\\nticket.sla_summary.stage enum Optional\\n\\nFilters for records with any of the provided SLA stages.\\n\\nAllowed values: breached completed paused running warning\\nticket.source_channel string Optional\\n\\nFilters for tickets with any of the provided source channels.\\n\\nticket.subtype string Optional\\n\\nFilters for tickets with any of the provided" + }, + { + "id": "ART-1986_KNOWLEDGE_NODE-46", + "title": "Service-level agreement | Computer for Support Teams | DevRev", + "text": "\\xc2\\xa0 - Action: Check the policies you have created for the SLA listed under **SLA Name**. For example, if you have created two policies, one with the condition Severity = Blocker and another with Severity = High, a ticket with medium severity will still have the SLA name but will not have any running metrics because it does not meet the severity conditions.\\n\\n### Next steps\\n\\nIf the issue persists, review your SLA assignment rules and policies or contact support for further" + }, + { + "id": "ART-1591_KNOWLEDGE_NODE-450", + "title": "Create — DevRev | Docs", + "text": "twilio_sms\\nticket.group string Optional\\nFilters for tickets belonging to specific groups.\\nticket.is_spam boolean Optional\\nFilters for tickets that are spam.\\nticket.needs_response boolean Optional\\nFilters for tickets that need response.\\nticket.rev_org string Optional\\nFilters for tickets that are associated with any of the provided Rev organizations.\\nticket.severity enum Optional\\nFilters for tickets with any of the provided severities.\\nAllowed values: blocker high low" + }, + { + "id": "ART-1789_KNOWLEDGE_NODE-448", + "title": "List — DevRev | Docs", + "text": "twilio_sms\\nticket.group string Optional\\nFilters for tickets belonging to specific groups.\\nticket.is_spam boolean Optional\\nFilters for tickets that are spam.\\nticket.needs_response boolean Optional\\nFilters for tickets that need response.\\nticket.rev_org string Optional\\nFilters for tickets that are associated with any of the provided Rev organizations.\\nticket.severity enum Optional\\nFilters for tickets with any of the provided severities.\\nAllowed values: blocker high low" + }, + { + "id": "ART-1781_KNOWLEDGE_NODE-446", + "title": "List — DevRev | Docs", + "text": "twilio_sms\\nticket.group string Optional\\nFilters for tickets belonging to specific groups.\\nticket.is_spam boolean Optional\\nFilters for tickets that are spam.\\nticket.needs_response boolean Optional\\nFilters for tickets that need response.\\nticket.rev_org string Optional\\nFilters for tickets that are associated with any of the provided Rev organizations.\\nticket.severity enum Optional\\nFilters for tickets with any of the provided severities.\\nAllowed values: blocker high low" + }, + { + "id": "ART-1590_KNOWLEDGE_NODE-449", + "title": "List — DevRev | Docs", + "text": "twilio_sms\\nticket.group string Optional\\nFilters for tickets belonging to specific groups.\\nticket.is_spam boolean Optional\\nFilters for tickets that are spam.\\nticket.needs_response boolean Optional\\nFilters for tickets that need response.\\nticket.rev_org string Optional\\nFilters for tickets that are associated with any of the provided Rev organizations.\\nticket.severity enum Optional\\nFilters for tickets with any of the provided severities.\\nAllowed values: blocker high low" + } + ] + }, + { + "query_id": "2b37472e-12b1-409b-b999-3e3c953bc4bf", + "query": "support engineer typing indicator in ticket conversation", + "retrievals": [ + { + "id": "ART-1947_KNOWLEDGE_NODE-32", + "title": "Apps | Computer by DevRev | DevRev", + "text": "same conversation. This means you do not need to ask your external users to write in separately about each topic they\\'d like to discuss, while the workspace can still track each item separately.\\n\\nIn the DevRev app, a support engineer can create a ticket based on a conversation they had with someone using the Plug widget. This ticket and conversation are linked.\\n\\nA ticket should describe what the external user is experiencing in a language that\\'s familiar to them. Developer-specific" + }, + { + "id": "ART-984_KNOWLEDGE_NODE-10", + "title": "Why you Should be Looking at Support Differently", + "text": "indicator to the customer that the vendor obviously has some problems internally. Do you think the customer will be happy? Do you think the customer will trust what the sales rep says in the future? Simply put, no.\\n\\nNow, let\\xe2\\x80\\x99s handle this a little differently and look at the result\\xe2\\x80\\xa6\\n\\nIn this scenario, let\\xe2\\x80\\x99s say the customer files the same ticket and asks their sales rep for an update. The support engineer working on the ticket and the sales rep communicate" + }, + { + "id": "ART-15716_KNOWLEDGE_NODE-7", + "title": "Support queries related playbook", + "text": "Tickets from Chat ConversationsYes, you can create a ticket from a conversation without leaving the chat. Some fields may be prefilled from the conversation.\\n\\nDetails:\\xc2\\xa0[Conv \\xe2\\x86\\x92 Ticket Creation](https://devrev.ai/docs/product/conversation-ticket)\\n\\n5. Viewing Ticket Activity to Avoid Duplicate Responses\\n\\nCurrently, there\\xe2\\x80\\x99s no direct feature to see who is viewing a ticket in real time. But, we can see if someone is typing on a ticket.\\n\\n6. Generating AI Summaries" + }, + { + "id": "ART-1968_KNOWLEDGE_NODE-5", + "title": "Conversation insights | Support analytics | Computer for Support Teams | DevRev", + "text": "[Conversations](/docs/product/conversation)\\n\\n - [Conversation to ticket conversion](/docs/product/conversation-ticket)\\n + [Tickets](/docs/product/tickets)\\n + [Routing](/docs/product/routing)\\n + [Support best practices](/docs/product/support-bp)\\n + [Customer portal](/docs/product/support-portal)\\n + [Questions & answers](/docs/product/qa)\\n + [Knowledge Base](/docs/product/knowledge-base)\\n\\n - [Articles](/docs/product/articles)\\n - [Collections](/docs/product/collection)\\n" + }, + { + "id": "ART-1974_KNOWLEDGE_NODE-31", + "title": "Conversations | Computer for Support Teams | DevRev", + "text": "transitions to *hold* since the customer experience engineer is blocked by a dependent item.\\n\\n Conversations which need a response from the customer experience engineer shows a **Reply** button in the inbox.\\n* *Hold* (H)\\n\\n The resolution is waiting on some dependent item. Dependencies may include review from someone other than the customer experience engineer (for example, SME, manager, PM, developer) or the completion of other work items (tickets or issues).\\n\\n When the dependencies" + }, + { + "id": "ART-1975_KNOWLEDGE_NODE-5", + "title": "Ticket insights | Support analytics | Computer for Support Teams | DevRev", + "text": "[Conversations](/docs/product/conversation)\\n\\n - [Conversation to ticket conversion](/docs/product/conversation-ticket)\\n + [Tickets](/docs/product/tickets)\\n + [Routing](/docs/product/routing)\\n + [Support best practices](/docs/product/support-bp)\\n + [Customer portal](/docs/product/support-portal)\\n + [Questions & answers](/docs/product/qa)\\n + [Knowledge Base](/docs/product/knowledge-base)\\n\\n - [Articles](/docs/product/articles)\\n - [Collections](/docs/product/collection)\\n" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-5", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "[Conversations](/docs/product/conversation)\\n\\n - [Conversation to ticket conversion](/docs/product/conversation-ticket)\\n + [Tickets](/docs/product/tickets)\\n + [Routing](/docs/product/routing)\\n + [Support best practices](/docs/product/support-bp)\\n + [Customer portal](/docs/product/support-portal)\\n + [Questions & answers](/docs/product/qa)\\n + [Knowledge Base](/docs/product/knowledge-base)\\n\\n - [Articles](/docs/product/articles)\\n - [Collections](/docs/product/collection)\\n" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-29", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "rules\\n\\nWorkflows enable seamless handovers from automated conversations to your support teams when necessary.\\n\\nPlug widget end-user experience\\n-------------------------------\\n\\nWhen a conversation is converted to a ticket in the Plug widget:\\n\\n* The ticket number and basic details appear in the same conversation pane.\\n* Users can click **Details** to view complete ticket information.\\n* If the **Tickets** tab is enabled in Plug, users can track their ticket status" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-36", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "Status](/status)\\n\\n\\xc2\\xa9 2025 DevRev Inc.\\n\\n![]()\\n\\n![]()\"" + }, + { + "id": "ART-1973_KNOWLEDGE_NODE-5", + "title": "Conversation-SLA Analytics | Support analytics | Computer for Support Teams | DevRev", + "text": "[Conversations](/docs/product/conversation)\\n\\n - [Conversation to ticket conversion](/docs/product/conversation-ticket)\\n + [Tickets](/docs/product/tickets)\\n + [Routing](/docs/product/routing)\\n + [Support best practices](/docs/product/support-bp)\\n + [Customer portal](/docs/product/support-portal)\\n + [Questions & answers](/docs/product/qa)\\n + [Knowledge Base](/docs/product/knowledge-base)\\n\\n - [Articles](/docs/product/articles)\\n - [Collections](/docs/product/collection)\\n" + } + ] + }, + { + "query_id": "a6f5b2b9-52ec-495d-8dfd-118e5d6a425b", + "query": "update the name that a broadcast on an incident comes from when pushed to a ticket", + "retrievals": [ + { + "id": "ART-2913_KNOWLEDGE_NODE-30", + "title": "PagerDuty | Integrate | Snap-ins | DevRev", + "text": "incident notes.\\n* **Update PagerDuty Incident Name**: Toggle whether PagerDuty incident titles\\n should be updated with the respective DevRev incident's ID.\\n\\n The format is: **[INC-XXX] - Original Incident Title**.\\n* **Default PagerDuty Service Runnable Part** (optional): Specify the default\\n runnable part to be used when no impacted part is selected on incident\\n creation.\\n\\n Select a runnable part that is mapped to a PagerDuty service.\\n* **Default PagerDuty Escalation Policy ID**" + }, + { + "id": "ART-1788_KNOWLEDGE_NODE-193", + "title": "Get Post — DevRev | Docs", + "text": "Update.\\n\\nPOST https:// api.devrev.ai / incidents.update\\nUpdates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\nid string Required\\nThe ID of the incident to be updated.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts object Optional\\nShow property\\nartifacts object Optional\\nShow property\\nbody string Optional\\nBody of the incident.\\ncustom_fields map from strings to any Optional\\nApplication-defined custom" + }, + { + "id": "ART-4133_KNOWLEDGE_NODE-15", + "title": "Update Incident | DevRev | Docs", + "text": "\"string\" |\\n| 258 | } |\\n| 259 | ], |\\n| 260 | \"target_close_date\": \"2023-01-01T12:00:00.000Z\" |\\n| 261 | } |\\n| 262 | } |\\n```\\n\\nUpdates an incident.\\n\\n### Headers\\n\\nAuthorizationstringRequired\\n\\nBearer authentication of the form `Bearer `, where token is your auth token.\\n\\n### Request\\n\\nThis endpoint expects an object.\\n\\nidstringRequired`format: \"id\"`\\n\\nThe ID of the incident to be updated.\\n\\nacknowledged\\\\_datestringOptional`format: \"date-time\"`\\n\\nTimestamp when the incident" + }, + { + "id": "ART-1483_KNOWLEDGE_NODE-8", + "title": "Using a snap-in to perform a DevRev action — DevRev | Docs", + "text": "the snap-in should create a work-item of type ticket when triggered. To do that, use the [DevRev TypeScript SDK](https://www.npmjs.com/package/@devrev/typescript-sdk) to make API calls for creating the ticket.\\n\\n[2](/public/snapin-development/tutorials/timer-ticket-creator#creating-the-snap-in)\\n\\n### Creating the snap-in\\n\\n#### Updating the manifest\\n\\nUpdate the manifest file to reflect the objective. Update the name, the description, and the service account\\xe2\\x80\\x99s display name to" + }, + { + "id": "ART-1792_KNOWLEDGE_NODE-194", + "title": "Update — DevRev | Docs", + "text": "in accordance to the sort order. If not set, then no prior elements exist.\\nAPI Reference operate Incidents Update.\\n\\nPOST https:// api.devrev.ai / incidents.update\\nUpdates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\nid string Required\\nThe ID of the incident to be updated.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts object Optional\\nShow property\\nartifacts object Optional\\nShow property\\nbody string Optional\\nBody of" + }, + { + "id": "ART-1308_KNOWLEDGE_NODE-193", + "title": "Update — DevRev | Docs", + "text": "in accordance to the sort order. If not set, then no prior elements exist.\\nAPI Reference operate Incidents Update.\\n\\nPOST https:// api.devrev.ai / incidents.update\\nUpdates an incident.\\nRequest.\\n\\nThis endpoint expects an object.\\nid string Required\\nThe ID of the incident to be updated.\\nacknowledged_date datetime Optional\\nTimestamp when the incident was acknowledged.\\napplies_to_parts object Optional\\nShow property\\nartifacts object Optional\\nShow property\\nbody string Optional\\nBody of" + }, + { + "id": "ART-1551_KNOWLEDGE_NODE-273", + "title": "Update (Beta) — DevRev | Docs", + "text": "expects an object.\\nid string Required\\n\\nThe ID of the incident to be updated.\\n\\nacknowledged_date datetime Optional\\n\\nTimestamp when the incident was acknowledged.\\n\\napplies_to_parts object Optional\\nShow property\\nartifacts object Optional\\nShow property\\nbody string Optional\\n\\nBody of the incident.\\n\\ncustom_fields map from strings to any Optional\\n\\nApplication-defined custom fields.\\n\\ncustom_schema_spec object Optional\\n\\nRequested custom schemas described abstractly. Every provided" + }, + { + "id": "ART-4133_KNOWLEDGE_NODE-1", + "title": "Update Incident | DevRev | Docs", + "text": "\" \\\\ |\\n| > | -H \"Content-Type: application/json\" \\\\ |\\n| > | -d \\'{ |\\n| > | \"id\": \"string\" |\\n| > | }\\' |\\n```\\n\\n[Try it](/beta/api-reference/incidents/update?explorer=true)\\n\\n200Successful\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | { |\\n| 2 | \"incident\": { |\\n| 3 | \"id\": \"string\", |\\n| 4 | \"title\": \"string\", |\\n| 5 | \"acknowledged_date\": \"2023-01-01T12:00:00.000Z\", |\\n| 6 | \"actual_close_date\": \"2023-01-01T12:00:00.000Z\", |\\n| 7 | \"applies_to_parts\": [ |\\n| 8 | { |\\n| 9 | \"display_id\":" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-26", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "associated with a part (product or service) and can come from both internal and external users. Tickets are also used to communicate progress to the user or other impacted party.\\n\\nThere may be cases where mass communications (broadcast) are necessary in the event of lots of impacted or related parties (such as service status updates). In this scenario, the ticket would be used to broadcast and handle communications among multiple parties, including across multiple workspaces. Broadcast can" + }, + { + "id": "ART-4133_KNOWLEDGE_NODE-0", + "title": "Update Incident | DevRev | Docs", + "text": "b'Update Incident | DevRev | Docs\\n\\n[![]()![]()](https://developer.devrev.ai/)\\n\\nBeta\\n\\nBeta\\n\\nBeta\\n\\nSearch\\n\\n`/`\\n\\n[API Reference](/beta/api-reference/accounts/create)[incidents](/beta/api-reference/incidents/create)\\n\\nUpdate Incident\\n===============\\n\\nBeta\\n\\nCopy page\\n\\nPOST\\n\\nhttps://api.devrev.ai/incidents.update\\n\\nPOST\\n\\n/incidents.update\\n\\ncURL\\n\\n```\\n| | |\\n| --- | --- |\\n| $ | curl -X POST https://api.devrev.ai/incidents.update \\\\ |\\n| > | -H \"Authorization: Bearer" + } + ] + }, + { + "query_id": "125f9761-a931-43b8-aa5a-1d865a512efc", + "query": "search functionality on tickets and issues deprecated", + "retrievals": [ + { + "id": "ART-1242_KNOWLEDGE_NODE-0", + "title": "Tickets and issues | DevRev | Docs", + "text": "b'Tickets and issues | DevRev | Docs\\n\\n[![]()![]()](https://developer.devrev.ai/)\\n\\nPublic\\n\\nPublic\\n\\nSearch\\n\\n`/`\\n\\n[API Reference](/api-reference/getting-started)[works](/api-reference/works/tickets-and-issues)\\n\\nTickets and issues\\n==================\\n\\nCopy page\\n\\n`works` endpoint\\n\\n\\xe2\\x84\\xb9\\xef\\xb8\\x8f A work item is a record of some work that has to be done for a customer (ticket) or for another builder or maintainer of a part (issue).\\n\\n\\xf0\\x9f\\x93\\x8c For more information" + }, + { + "id": "ART-1959_KNOWLEDGE_NODE-34", + "title": "Search | Computer by DevRev | DevRev", + "text": "subtype: :\\n```\\n```\\n\\n**Examples**\\n\\nSearch for tickets related to access issues with tenant field escalated:\\n\\n```\\n```\\n1 tnt__escalated:true access issues\\n```\\n```\\n\\nSearch for bugs related to access issues with subtype field customer\\\\_impact:\\n\\n```\\n```\\n1 subtype:Bug ctype__customer_impact:true access issues\\n```\\n```\\n\\nSearch across multiple subtypes for tickets related to access issues:\\n\\n```\\n```\\n1 subtype:Bug,Events access" + }, + { + "id": "ART-15716_KNOWLEDGE_NODE-8", + "title": "Support queries related playbook", + "text": "for TicketsWe have a summarize option (it would resemble sparkle symbol) in the top right corner of the ticket view, which uses the ticket content to summarize the ticket\\n\\n7. Difference between Issues and Tickets\\n\\nTickets\\xc2\\xa0are for customer support\\xe2\\x80\\x94tracking requests, problems, or questions from customers or prospects.\\n\\nIssues\\xc2\\xa0are internal work items for developers\\xe2\\x80\\x94used to improve the product, fix bugs, or implement features. Issues can be linked to" + }, + { + "id": "ART-1242_KNOWLEDGE_NODE-1", + "title": "Tickets and issues | DevRev | Docs", + "text": "about work items, refer to [Tickets](https://docs.devrev.ai/product/tickets) and [Issues](https://docs.devrev.ai/product/issues).\\n\\nWas this page helpful?\\n\\nYesNo\\n\\n[Previous](/api-reference/webhooks/update)[#### Create Work\\n\\nNext](/api-reference/works/create)[Built with](https://buildwithfern.com/?utm_campaign=buildWith&utm_medium=docs&utm_source=developer.devrev.ai)'" + }, + { + "id": "ART-1447_KNOWLEDGE_NODE-1", + "title": "Tickets and issues — DevRev | Docs", + "text": "[Tickets](https://docs.devrev.ai/product/tickets) and [Issues](https://docs.devrev.ai/product/issues).\\n\\nWas this page helpful?YesNo\\n\\n[Create WorkUp Next](/public/api-reference/works/create)\\n\\n[Built with](https://buildwithfern.com/?utm_campaign=buildWith&utm_medium=docs&utm_source=developer.devrev.ai)\\n\\n[Enterprise grade security to protect customer dataLearn more about it.](https://devrev.ai/blog/soc-compliance)\\n\\nProduct\\n\\n * [Build](https://devrev.ai/build)\\n *" + }, + { + "id": "ART-1002_KNOWLEDGE_NODE-1", + "title": "Tickets, Issues: When to Use Each", + "text": "\\xe2\\x86\\x92 Issues\\n Items to track customer requests/problems \\xe2\\x86\\x92 Tickets\\n\\n\\nGiven the converged nature of the DevRev platform, we have both Tickets, and Issues, so when do you use what? The answer is \\xe2\\x80\\x9cit depends\\xe2\\x80\\x9d on what your role is on the part you\\xe2\\x80\\x99re creating the work item on. In general, issues should be restricted to those individuals that either own or contribute to a part. Tickets should be used for all customer/consumer (internal or" + }, + { + "id": "ART-1447_KNOWLEDGE_NODE-2", + "title": "Tickets and issues — DevRev | Docs", + "text": "[Support](https://devrev.ai/support)\\n * [Search](https://devrev.ai/search)\\n * [PLuG - User Engagement](https://devrev.ai/plug-user-engagement)\\n * [PLuG - User Observability](https://devrev.ai/plug-observability)\\n * [Marketplace](https://marketplace.devrev.ai/)\\n\\nPlatform\\n\\n * [Airdrop](https://devrev.ai/airdrop)\\n * [Analytics](https://devrev.ai/analytics)\\n * [Workflow Engine](https://devrev.ai/workflow-engine)\\n * [Turing AI](https://devrev.ai/turing-ai)\\n\\nResources\\n\\n *" + }, + { + "id": "ART-17515_KNOWLEDGE_NODE-26", + "title": "AI use cases in DevRev | Computer by DevRev | DevRev", + "text": "and feature requests on tickets.\\n* Computer on Plug: Enhances the following functionalities:\\n\\n + Conversation: It deflects customer queries using your knowledge base, providing accurate and relevant responses.\\n + Search: It summarizes your search results, making information retrieval more efficient and user-friendly.\\n* Computer assist: Recommends relevant articles and similar work items.\\n* Slack tickets: Automatically generates titles and descriptions for tickets created from Slack" + }, + { + "id": "ART-1783_KNOWLEDGE_NODE-458", + "title": "Locate — DevRev | Docs", + "text": "Optional\\nFilters for issues synced from this specific origin system.\\ntags string Optional\\nFilters for work with any of the provided tags.\\nticket.channels enum Optional\\nFilters for tickets with any of the provided channels.\\nAllowed values: email plug slack twilio twilio_sms\\nticket.group string Optional\\nFilters for tickets belonging to specific groups.\\nticket.is_spam boolean Optional\\nFilters for tickets that are spam.\\nticket.needs_response boolean Optional\\nFilters for tickets that" + }, + { + "id": "ART-1779_KNOWLEDGE_NODE-460", + "title": "Get — DevRev | Docs", + "text": "Optional\\nFilters for issues synced from this specific origin system.\\ntags string Optional\\nFilters for work with any of the provided tags.\\nticket.channels enum Optional\\nFilters for tickets with any of the provided channels.\\nAllowed values: email plug slack twilio twilio_sms\\nticket.group string Optional\\nFilters for tickets belonging to specific groups.\\nticket.is_spam boolean Optional\\nFilters for tickets that are spam.\\nticket.needs_response boolean Optional\\nFilters for tickets that" + } + ] + }, + { + "query_id": "3c9dd52b-a637-4fa2-8bd7-a42ec07c7655", + "query": "how to use snap-ins in DevRev", + "retrievals": [ + { + "id": "ART-1275_KNOWLEDGE_NODE-0", + "title": "Using a snap-in to perform a DevRev action | DevRev | Docs", + "text": "b'Using a snap-in to perform a DevRev action | DevRev | Docs\\n\\n[![]()![]()](https://developer.devrev.ai/)\\n\\nPublic\\n\\nPublic\\n\\nSearch\\n\\n`/`\\n\\nOn this page\\n\\n* [Introduction](/snapin-development/tutorials/timer-ticket-creator#introduction)\\n* [Background context](/snapin-development/tutorials/timer-ticket-creator#background-context)\\n* [Resources](/snapin-development/tutorials/timer-ticket-creator#resources)\\n\\n[Snap-in" + }, + { + "id": "ART-3960_KNOWLEDGE_NODE-28", + "title": "Auto-link DevRev GitHub accounts | Automate | Snap-ins | DevRev", + "text": "Download the latest version of the snap-in from the DevRev marketplace.\\n2. Upload the CSV file containing user details.\\n3. Run the snap-in to process the file and link accounts.\\n4. Verify the linked accounts in DevRev.\\n\\n### How to use the snap-in\\n\\n1. Use slash commands in the **Events** section.\\n2. In the **Discussion** tab, type the slash commands.\\n3. Run the snap-in using the /link\\\\_github\\\\_accounts\\\\_to\\\\_devrev command in the snap-in discussion thread.\\n4. The columns login and" + }, + { + "id": "ART-1277_KNOWLEDGE_NODE-3", + "title": "Snap-in triggered by a DevRev event | DevRev | Docs", + "text": "specifically focused on work creation.\\n2. **Command-based activation**: Explore how the snap-in can be triggered by a\\n dedicated command within the DevRev environment.\\n3. **Payload exploration**: Delve into the payload structure, gaining insights\\n into how to efficiently extract essential fields from within the functions.\\n4. **Action execution**: Become proficient in executing a specified action - adding\\n a customizable comment to the object timeline.\\n\\nTo learn more, refer to the" + }, + { + "id": "ART-1274_KNOWLEDGE_NODE-1", + "title": "Getting started | DevRev | Docs", + "text": "snap-in.\\n\\nSnap-ins are collections of objects that extend DevRev\\xe2\\x80\\x99s core platform value. These objects include automation, event sources, keyrings, custom types, and vistas. Snap-ins are packaged and installed separately from the DevRev core platform. To create your own snap-in, create a [dev org](https://app.devrev.ai/) where you will be installing your snap-in.\\n\\n[1](/snapin-development/tutorials/getting-started#before-you-begin)\\n\\n### Before you begin\\n\\n* Install [DevRev" + }, + { + "id": "ART-1470_KNOWLEDGE_NODE-4", + "title": "Getting started — DevRev | Docs", + "text": "development](/public/snapin-development/concepts)[Tutorials](/public/snapin-development/tutorials/overview)\\n\\n#\\n\\nGetting started\\n\\nIn this tutorial, you\\xe2\\x80\\x99ll learn to create and deploy a snap-in. Additionally, you\\xe2\\x80\\x99ll learn to create a snap-in version, installing from a version, deploying, deleting and upgrading the snap-in.\\n\\nSnap-ins are collections of objects that extend DevRev\\xe2\\x80\\x99s core platform value. These objects include automation, event sources," + }, + { + "id": "ART-1275_KNOWLEDGE_NODE-5", + "title": "Using a snap-in to perform a DevRev action | DevRev | Docs", + "text": "devrev snap_in_version init |\\n```\\n\\n#### Trigger\\n\\nThe trigger condition for the snap-in is dictated by the\\n[Event Sources](/snapin-development/references/event-sources)\\nsection in the manifest. The [`timer-events`](/snapin-development/references/event-sources#timer-based-event-sources)\\nevent source is suitable for the use-case, since it allows trigger of snap-ins\\nusing [CRON expression](https://crontab.guru/).\\n\\n#### Action\\n\\nThe hello-world snap-in prints a log message whenever the" + }, + { + "id": "ART-1998_KNOWLEDGE_NODE-24", + "title": "Build snap-ins | Computer for Builders | DevRev", + "text": "Builders snap-ins\\n==============================\\n\\nAdd-on modules for DevRev, called snap-ins, are available on the [Marketplace](/marketplace).\\n\\nSnap-ins are of the following types:\\n\\n* **Integrations** let you connect DevRev with existing systems such as Slack and Jira.\\n* **Automations** perform tasks within DevRev based on events, like responding to customer conversations and linking tickets and issues.\\n* **AirSync** helps you bring data from external sources to DevRev and keep them" + }, + { + "id": "ART-1481_KNOWLEDGE_NODE-0", + "title": "Overview — DevRev | Docs", + "text": "b'[](/public/snapin-development/tutorials/overview)\\n\\nPublic\\n\\n[Snap-in development](/public/snapin-development/concepts)[Tutorials](/public/snapin-development/tutorials/overview)\\n\\n#\\n\\nOverview\\n\\nThe following tutorials provide a step-by-step guide to creating snap-ins:\\n\\n 1. [Getting started](/public/snapin-development/tutorials/getting-started)\\n 2. [Using a snap-in to perform a DevRev action](/public/snapin-development/tutorials/timer-ticket-creator)\\n 3. [Snap-in triggered by a" + }, + { + "id": "ART-1475_KNOWLEDGE_NODE-18", + "title": "DevRev CLI reference — DevRev | Docs", + "text": "Activate the snap-in\\n\\nTo activate a snap-in, run the following command:\\n\\n[code]\\n\\n $| devrev snap_in activate [id] \\n ---|---\\n[/code] \\n \\n`[id]` is optional. If not provided, it uses the ID stored in the local profile.\\n\\n###### Deactivate the snap-in\\n\\nTo deactivate a snap-in, run the following command:\\n\\n[code]\\n\\n $| devrev snap_in deactivate [id] [--force] \\n ---|---\\n[/code] \\n \\n`[id]` is optional. If not provided, it uses the ID stored in the local" + }, + { + "id": "ART-1277_KNOWLEDGE_NODE-4", + "title": "Snap-in triggered by a DevRev event | DevRev | Docs", + "text": "[Using a snap-in to perform a DevRev action](/snapin-development/tutorials/timer-ticket-creator) tutorial.\\n\\n[1](/snapin-development/tutorials/triggered-event#installation-guide)\\n\\n### Installation guide\\n\\n* Install [DevRev CLI](/snapin-development/references/cli-install)\\n* Install [jq](https://stedolan.github.io/jq)\\n* Install [DevRev SDK](https://www.npmjs.com/package/@devrev/typescript-sdk?activeTab=readme)\\n\\n##### \\n\\nIf you did not follow the [getting" + } + ] + }, + { + "query_id": "51b684c7-7de7-4c12-aecb-043d082158a5", + "query": "generate support tickets from slack messages with questions", + "retrievals": [ + { + "id": "ART-6174_KNOWLEDGE_NODE-25", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "Teams](/docs/product/support)\\n[Conversations](/docs/product/conversation)\\n[Conversation to ticket conversion](/docs/product/conversation-ticket)\\n\\nConversation to ticket conversion\\n=================================\\n\\nYou can convert conversations from Plug and Slack directly into tickets. Previously, conversations were only linked to tickets. This update streamlines workflows and enhances the customer experience.\\n\\nFor conversations originating from Plug or Slack, the **Link to Ticket**" + }, + { + "id": "ART-4271_KNOWLEDGE_NODE-28", + "title": "Convert Conversations to Tickets | Conversations | Support | DevRev", + "text": "PLuG widget:\\n\\n * The ticket number and basic details appear in the same conversation pane.\\n * Users can click **Details** to view complete ticket information.\\n * If the **Tickets** tab is enabled in PLuG, users can track their ticket status there.\\n\\n### Slack experience\\n\\nWhen a conversation is converted to a ticket in Slack:\\n\\n * Ticket information is sent within the same thread.\\n * All subsequent messages sync with the newly created ticket.\\n * The transition is seamless for the" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-30", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "there.\\n\\n![]()\\n\\nSlack end-user experience\\n-------------------------\\n\\nWhen a conversation is converted to a ticket in Slack:\\n\\n* Ticket information appears within the same thread.\\n* All subsequent messages sync with the newly created ticket.\\n* The transition is seamless for the end user.\\n\\nConversation conversion scenarios\\n---------------------------------\\n\\nConsider converting a conversation to a ticket in these scenarios:\\n\\n* Complex issues requiring in-depth investigation\\n*" + }, + { + "id": "ART-4271_KNOWLEDGE_NODE-24", + "title": "Convert Conversations to Tickets | Conversations | Support | DevRev", + "text": "[Support](/docs/product/support?)\\n 4. [Conversations](/docs/product/conversation?)\\n 5. [Convert Conversations to Tickets](/docs/product/Conversation-Tickets?)\\n\\n# Convert Conversations to Tickets\\n\\nYou can now convert conversations from PLuG and Slack directly into tickets. Previously, conversations were only linked to tickets. This update streamlines workflows and enhances the customer experience.\\n\\nFor conversations originating from PLuG or Slack, the **Link to Ticket** functionality" + }, + { + "id": "ART-2035_KNOWLEDGE_NODE-46", + "title": "Slack | Integrate | Snap-ins | DevRev", + "text": "**Auto-create incidents from Slack channels**, which automatically creates an incident for every direct message posted in specified Slack channels.\\n\\nThe first two options will open a pop-up modal with a new incident form, with some fields pre-populated based on the context.\\n\\n### Sync options\\n\\nIncidents support syncing messages both within a dedicated Slack thread and across an entire Slack channel, including all associated threads. The sync target is determined by the **Sync for new" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-24", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "[Product demos](/docs/DevRevU/demos)\\n\\nOn this page\\n\\n* [Conversation conversion process](#conversation-conversion-process)\\n* [Convert conversations to tickets](#convert-conversations-to-tickets)\\n* [Plug widget end-user experience](#plug-widget-enduser-experience)\\n* [Slack end-user experience](#slack-enduser-experience)\\n* [Conversation conversion scenarios](#conversation-conversion-scenarios)\\n* [Support workflows](#support-workflows)\\n\\n1. [Documentation](/docs)\\n3. [Computer for Support" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-15", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "[Custom field migration](/docs/automations/custom-field-migration)\\n - [Slack scraper](/docs/automations/slack-scraper)\\n - [Slack Broadcaster](/docs/automations/slack-broadcaster)\\n - [Reported by enricher](/docs/automations/ticket-reported-by)\\n - [Ticket approval workflow](/docs/automations/ticket-approval-workflow)\\n - [Ticket linked issues comment sync](/docs/automations/ticket-linked-issues-comment-sync)\\n - [Slack message agent](/docs/automations/slack-message-agent)\\n" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-26", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "functionality is replaced with a new **Convert to Ticket** feature. Currently, the conversion feature is available only for Plug and Slack conversations. Other channels still use the traditional **Link Ticket** functionality.\\n\\nConversion cannot be undone. Once a conversation is converted to a ticket, this action is permanent and the conversation remains archived.\\n\\nConversation conversion process\\n-------------------------------\\n\\nWhen you convert a conversation to a ticket, the following" + }, + { + "id": "ART-2035_KNOWLEDGE_NODE-44", + "title": "Slack | Integrate | Snap-ins | DevRev", + "text": "directly from Slack:\\n\\n* Using the /devrev create-issue command.\\n* Using the **Create a new issue** message action.\\n\\nBoth the options open a new pop-up modal with a new issue form. Some of the fields are pre-populated based on the messages in the thread.\\n\\n* The **Share with everyone** functionality operates identically to ticket creation. Only shared issues are synchronized between the platforms.\\n* The messages are always synced in the **Internal Discussions** panel with Slack thread.\\n*" + }, + { + "id": "ART-1974_KNOWLEDGE_NODE-15", + "title": "Conversations | Computer for Support Teams | DevRev", + "text": "[Custom field migration](/docs/automations/custom-field-migration)\\n - [Slack scraper](/docs/automations/slack-scraper)\\n - [Slack Broadcaster](/docs/automations/slack-broadcaster)\\n - [Reported by enricher](/docs/automations/ticket-reported-by)\\n - [Ticket approval workflow](/docs/automations/ticket-approval-workflow)\\n - [Ticket linked issues comment sync](/docs/automations/ticket-linked-issues-comment-sync)\\n - [Slack message agent](/docs/automations/slack-message-agent)\\n" + } + ] + }, + { + "query_id": "2e98cdf9-4951-4185-a63a-295def43b837", + "query": "cron configuration for timer trigger schedule in DevRev", + "retrievals": [ + { + "id": "ART-1275_KNOWLEDGE_NODE-8", + "title": "Using a snap-in to perform a DevRev action | DevRev | Docs", + "text": "type `cron` or\\n`interval_seconds` as mentioned in the\\n[documentation](/snapin-development/references/event-sources#timer-based-event-sources).\\nThe `cron` config is used here.\\n\\nmanifest.yaml\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | event_sources: |\\n| 2 | organization: |\\n| 3 | - name: timer-event-source |\\n| 4 | description: Event source that sends events every 10 minutes. |\\n| 5 | display_name: Timer Event Source |\\n| 6 | type: timer-events |\\n| 7 | config: |\\n| 8 | # CRON expression for" + }, + { + "id": "ART-1483_KNOWLEDGE_NODE-10", + "title": "Using a snap-in to perform a DevRev action — DevRev | Docs", + "text": "`interval_seconds` as mentioned in the [documentation](/public/snapin-development/references/event-sources#timer-based-event-sources). The `cron` config is used here.\\n\\nmanifest.yaml\\n\\n[code]\\n\\n 1| event_sources: \\n ---|--- \\n 2| organization: \\n 3| - name: timer-event-source \\n 4| description: Event source that sends events every 10 minutes. \\n 5| display_name: Timer Event Source \\n 6| type: timer-events \\n 7|" + }, + { + "id": "ART-1478_KNOWLEDGE_NODE-42", + "title": "Event sources — DevRev | Docs", + "text": "source configuration.\\n\\n[code]\\n\\n 1| event_sources: \\n ---|--- \\n 2| organization: \\n 3| - name: daily-timer-source \\n 4| description: Timer event source based on Cron expression \\n 5| display_name: Timer source \\n 6| type: timer-events \\n 7| config: \\n 8| cron: \"0 0 * * *\" \\n 9| metadata: \\n 10| event_key: daily_events \\n 11| \\n 12| - name: hourly-events \\n 13|" + }, + { + "id": "ART-1483_KNOWLEDGE_NODE-11", + "title": "Using a snap-in to perform a DevRev action — DevRev | Docs", + "text": "config: \\n 8| # CRON expression for triggering every 10 minutes. \\n 9| cron: \"*/10 * * * *\" \\n 10| metadata: \\n 11| event_key: ten_minute_event\\n[/code] \\n \\nFinally, update the `function` name to better reflect the behavior and `automation`name to use the event type corresponding to the `timer-events` event source.\\n\\nmanifest.yaml\\n\\n[code]\\n\\n 1| functions: \\n ---|--- \\n 2| - name: ticket_creator \\n 3|" + }, + { + "id": "ART-1284_KNOWLEDGE_NODE-37", + "title": "Event sources | DevRev | Docs", + "text": "configuration.\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | event_sources: |\\n| 2 | organization: |\\n| 3 | - name: daily-timer-source |\\n| 4 | description: Timer event source based on Cron expression |\\n| 5 | display_name: Timer source |\\n| 6 | type: timer-events |\\n| 7 | config: |\\n| 8 | cron: \"0 0 * * *\" |\\n| 9 | metadata: |\\n| 10 | event_key: daily_events |\\n| 11 | |\\n| 12 | - name: hourly-events |\\n| 13 | description: Timer event source based on interval seconds |\\n| 14 | display_name: Timer" + }, + { + "id": "ART-1275_KNOWLEDGE_NODE-9", + "title": "Using a snap-in to perform a DevRev action | DevRev | Docs", + "text": "triggering every 10 minutes. |\\n| 9 | cron: \"*/10 * * * *\" |\\n| 10 | metadata: |\\n| 11 | event_key: ten_minute_event |\\n```\\n\\nFinally, update the `function` name to better reflect the behavior and\\n`automation`name to use the event type corresponding to the `timer-events` event\\nsource.\\n\\nmanifest.yaml\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | functions: |\\n| 2 | - name: ticket_creator |\\n| 3 | description: Function to create a new ticket when triggered. |\\n| 4 | |\\n| 5 | automations: |\\n| 6 | -" + }, + { + "id": "ART-1478_KNOWLEDGE_NODE-43", + "title": "Event sources — DevRev | Docs", + "text": "description: Timer event source based on interval seconds \\n 14| display_name: Timer source \\n 15| type: timer-events \\n 16| config: \\n 17| interval_seconds: 3600 \\n 18| metadata: \\n 19| event_key: hourly_events\\n[/code] \\n \\nThe automation event type for timer events is `timer.tick`. To initiate an automation based on timer events, use the following syntax in manifest.yaml:\\n\\n[code]\\n\\n 1| automations: \\n ---|--- \\n" + }, + { + "id": "ART-1284_KNOWLEDGE_NODE-38", + "title": "Event sources | DevRev | Docs", + "text": "source |\\n| 15 | type: timer-events |\\n| 16 | config: |\\n| 17 | interval_seconds: 3600 |\\n| 18 | metadata: |\\n| 19 | event_key: hourly_events |\\n```\\n\\nThe automation event type for timer events is `timer.tick`. To initiate an automation based on timer events, use the following syntax in manifest.yaml:\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | automations: |\\n| 2 | - name: |\\n| 3 | source: |\\n| 4 | event_types: |\\n| 5 | - timer.tick |\\n| 6 | function:" + }, + { + "id": "ART-1483_KNOWLEDGE_NODE-7", + "title": "Using a snap-in to perform a DevRev action — DevRev | Docs", + "text": "\\n#### Trigger\\n\\nThe trigger condition for the snap-in is dictated by the [Event Sources](/public/snapin-development/references/event-sources) section in the manifest. The [`timer-events`](/public/snapin-development/references/event-sources#timer-based-event-sources) event source is suitable for the use-case, since it allows trigger of snap-ins using [CRON expression](https://crontab.guru/).\\n\\n#### Action\\n\\nThe hello-world snap-in prints a log message whenever the snap-in is triggered. Here," + }, + { + "id": "ART-1275_KNOWLEDGE_NODE-5", + "title": "Using a snap-in to perform a DevRev action | DevRev | Docs", + "text": "devrev snap_in_version init |\\n```\\n\\n#### Trigger\\n\\nThe trigger condition for the snap-in is dictated by the\\n[Event Sources](/snapin-development/references/event-sources)\\nsection in the manifest. The [`timer-events`](/snapin-development/references/event-sources#timer-based-event-sources)\\nevent source is suitable for the use-case, since it allows trigger of snap-ins\\nusing [CRON expression](https://crontab.guru/).\\n\\n#### Action\\n\\nThe hello-world snap-in prints a log message whenever the" + } + ] + }, + { + "query_id": "015c89d4-6aa6-41f4-b9a4-6da7550e85eb", + "query": "view all tickets raised to DevRev support team", + "retrievals": [ + { + "id": "ART-1978_KNOWLEDGE_NODE-29", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "Ticket tracking allows customers to monitor the progress of their requests and view updates in real-time.\\n* Customer admins can access all tickets created by their team members, facilitating collaboration and knowledge sharing.\\n\\n### Conversations and messaging\\n\\n* Customers can engage in threaded conversations with support representatives, providing additional information or seeking clarification regarding their tickets.\\n* Support teams can respond to customer inquiries, ensuring effective" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-27", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "also be used to engage customers for feedback/ideas (such as new feature ideas). Scoping is important for broadcast tickets as there needs to be a differentiation between broadcast (all revs) vs. multicast (particular revs).\\n\\nViews of tickets can be found under **Support** in the DevRev app.\\n\\n![]()\\n\\nYou can export views to CSV or JSON by selecting **Actions** in the upper-right corner and choosing the format.\\n\\nAttributes\\n----------\\n\\nTickets have attributes that can be used to filter" + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-33", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "tickets but also all the tickets raised by the other users from their organization. You can add multiple customer admins from the same customer organization.\\n\\nOnly verified users can login into the portal.\\n\\nTo create a verified user:\\n\\n1. Go to **Accounts** in the DevRev app and create an account.\\n2. Create a contact under **Contacts** and link it to the account.\\n\\n### Set up customer admins\\n\\nTo set up customer admins, follow these steps:\\n\\n1. Log in on your DevRev app with your" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-28", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "and group tickets in various views.\\nYou can find all the stock attributes listed in **Settings** > **Object customization** > **Ticket** > **Stock fields**.\\nThese are the stock attributes that come with DevRev:\\n\\n* **Owner**: The person responsible for the ticket. Tickets are assigned to an engineer, PM, designer, or any other team member through the **Owner** attribute.\\n* **Group**: The group to which the ticket belongs. For more information on groups, see [groups](./groups).\\n*" + }, + { + "id": "ART-2046_KNOWLEDGE_NODE-29", + "title": "DevRev for Jira app | Jira Software AirSync | AirSync | Snap-ins | DevRev", + "text": "Ticket** button to create a ticket in DevRev by filling necessary attributes. You can turn this feature off in the app configuration if you want.\\n* To view comments on the tickets linked to the discussions that support teams had with customers or internally on DevRev, head over to the DevRev activity tab which is present in the same line as the **Comments** tab of Jira.\\n* To send comments from the Jira issue to the DevRev ticket, select the ticket from the dropdown, type in the comment, and" + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-32", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "on the following URL: support.devrev.ai/.\\n* Your customers can log in on the portal by entering their registered email address and OTP sent to that email address.\\n\\n![]()\\n\\n### Customer roles and permissions\\n\\nThe customer portal has two levels of customer roles and permissions:\\n\\n* **Verified customers**: Customers who can log in on the portal and see the tickets that they have created.\\n* **Customer admins**: Customers who can log in on the portal and see not just their own" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-37", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "filters and **Group** conditions across various vistas in DevRev to track specific work, capacity, and more.\\n\\nYou can add custom attributes to tickets to track additional information. For more information on custom attributes, see [object customization](./object-customization).\\n\\nIssues are attached to tickets in order to track efforts with product priorities.\\n\\nCreate a ticket\\n---------------\\n\\n1. Go to **Support** > **Tickets** from the sidebar on the left.\\n2. Click **New Ticket** on" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-0", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "b\"Tickets | Computer for Support Teams | DevRev\\n\\n* Computer\\n* Resources\\n* [Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nComputer\\n\\nResources\\n\\n[Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nSearch\\n\\n`CTRL`\\xc2\\xa0+\\xc2\\xa0`K`\\n\\n* [Introduction](/docs)\\n* [Computer by DevRev](/docs/intro)\\n\\n + [Core concepts](/docs/product/core)\\n + [Apps](/docs/product/apps)\\n +" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-50", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "customization](./object-customization).\\n\\nViewing attachments on tickets\\n------------------------------\\n\\nYou can view all attachments sent via the ticket's description, internal discussion, or a customer message by going to the **Attachments** section on the ticket for easy access.\\n\\n![]()\\n\\nTuring suggests\\n---------------\\n\\nTuring suggests enables Computer to aid customer experience engineers in resolving current tickets more efficiently. Each time a ticket is viewed, Computer" + }, + { + "id": "ART-16615_KNOWLEDGE_NODE-25", + "title": "Board view | Vistas | Computer by DevRev | DevRev", + "text": "work items through different stages of completion. It's particularly valuable for process-oriented workflows, such as moving tickets through support stages, tracking issues from development to deployment, or managing sales opportunities through pipeline stages.\\n\\nHow to use it\\n-------------\\n\\n### Set up your board\\n\\n1. **Access the view**: Go to any work item list, such as Issues or Tickets, and select **Board View** from the view type selector\\n2. **Configure columns**: Click the" + } + ] + }, + { + "query_id": "5e261249-25ac-4221-a487-20a1dfaecdee", + "query": "add banner message in portal not showing", + "retrievals": [ + { + "id": "ART-1978_KNOWLEDGE_NODE-38", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "conversations on the portal.\\n3. Under **Styling**, upload a banner image which should be in the ratio of 6:1. You can also set light/dark mode for appearance and select your accent color.\\n4. If you want to enable customers to create tickets from the portal, under **Tabs** turn on **Enable ticket creation**. Assign default owner and part.\\n5. If you want to enable public ticket creation wherein unauthenticated users can create tickets, contact DevRev support.\\n6. Turn on the **Enable banner**" + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-37", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "portal\\n-----------------------------\\n\\nYou can customize the look of your support portal to match your branding goals.\\n\\n1. Go to **Settings** > **Plug & Portal** > **Portal Settings**.\\n2. Under **Configuration**, enter your site name and upload your company logo.\\n * (Optional) Enable the footer and add your social media and text links in their respective fields.\\n * (Optional) Enable **Search** to get answers in search results.\\n * (Optional) Enable Plug widget to facilitate" + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-39", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "toggle and craft your own title and description.\\n7. Enable **Public portal** to allow unauthenticated users to view/search public articles.\\n8. Click **Save & publish** to make the changes visible on your portal.\\n\\nIf you want to customize the font color and favicon, contact DevRev support. For favicon customization, an icon in .ico format is needed.\\n\\nCustomize portal URL\\n--------------------\\n\\nBy default, your customer portal is hosted at support.devrev.ai/. The" + }, + { + "id": "ART-10697_KNOWLEDGE_NODE-31", + "title": "February 2025 | Changelog | DevRev", + "text": "boosting engagement and reducing repetitive inquiries. To enable Plug, go to **Settings > Portal Settings**, activate Plug widget, and **Save** and **Publish**.\\n\\n![]()\\xc2\\xa0For more information about *Support App*, refer to the following articles: \\xe2\\x80\\xa3 [Support snap-ins | Support](/docs/product/snapins-support) \\xe2\\x80\\xa3 [Support best practices | Support](/docs/product/support-bp) \\xe2\\x80\\xa3 [Support](/docs/product/support) \\xe2\\x80\\xa3" + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-45", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "admin.\\n\\n + If you do not see the option of adding a customer as a customer admin then this could be because you might not have admin access to your instance of the DevRev application. Reach out to your admin to help you with this.\\n\\n[PreviousSupport best practices](/docs/product/support-bp)[NextQuestions & answers](/docs/product/qa)\\n\\n#### On this page\\n\\n* [Benefits of using the customer portal](#benefits-of-using-the-customer-portal)\\n* [Features](#features)\\n* [Ticket creation," + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-47", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "articles](#integrating-your-knowledge-base-articles)\\n* [Customize the customer portal](#customize-the-customer-portal)\\n* [Customize portal URL](#customize-portal-url)\\n* [Just-in-time access to the customer portal](#justintime-access-to-the-customer-portal)\\n* [Troubleshooting](#troubleshooting)\\n\\n[Enterprise grade security to protect customer data\\n\\nLearn more about it.\\n\\n![]()](/blog/soc-compliance)\\n\\nComputer\\n\\n* [Meet Computer](/meet-computer)\\n* [How Computer" + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-50", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "Service](/legal/terms-of-service)\\n\\n[System Status](/status)\\n\\n\\xc2\\xa9 2025 DevRev Inc.\\n\\n![]()\"" + }, + { + "id": "ART-2063_KNOWLEDGE_NODE-28", + "title": "Nudges | Computer for Your Customers | DevRev", + "text": "**Plug Nudges**.\\n2. Click **+ Nudge**.\\n3. In the **Create new nudge** window, select **Banner** and click **Create**.\\n4. In the **Nudge Title** field, enter the nudge name.\\n5. In the **Content** field, enter the nudge title.\\n6. To enable the nudge close button, turn on the **Show a close button** toggle.\\n7. Select the banner color by clicking the color icon.\\n8. Use the **Action** drop-down menu to select the type of engagement you want your users to have when they click the nudge. The" + }, + { + "id": "ART-2027_KNOWLEDGE_NODE-36", + "title": "Email | Integrate | Snap-ins | DevRev", + "text": "Receives Replies From | Thread is visible in portal |\\n| --- | --- | --- | --- |\\n| Email to support | [support@yourcompany.com](mailto:support@yourcompany.com) | [support@yourcompany.com](mailto:support@yourcompany.com) | Yes |\\n| Ticket via Customer Portal or Plug widget (Channel on ticket = Plug or Portal) | Ticket form on Customer Portal or conversation converted to ticket from Plug widget | - If Channel is set as email in the config, replies are sent via the configured email address. -" + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-25", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "articles](#integrating-your-knowledge-base-articles)\\n* [Customize the customer portal](#customize-the-customer-portal)\\n* [Customize portal URL](#customize-portal-url)\\n* [Just-in-time access to the customer portal](#justintime-access-to-the-customer-portal)\\n* [Troubleshooting](#troubleshooting)\\n\\n1. [Documentation](/docs)\\n3. [Computer for Support Teams](/docs/product/support)\\n[Customer portal](/docs/product/support-portal)\\n\\nCustomer portal\\n===============\\n\\nThe customer portal is an" + } + ] + }, + { + "query_id": "87a0c450-5958-433a-a7be-6909813e797b", + "query": "sync contacts and accounts from DevRev to Salesforce", + "retrievals": [ + { + "id": "ART-16740_KNOWLEDGE_NODE-1", + "title": "Handling Conflicts in Two-Way Sync Between DevRev and External Systems", + "text": "expected sync is from DevRev \\xe2\\x86\\x92 Salesforce, the Owner field in Salesforce will be overwritten with the Owner value from DevRev.'" + }, + { + "id": "ART-2047_KNOWLEDGE_NODE-37", + "title": "Salesforce AirSync | AirSync | Snap-ins | DevRev", + "text": "**Settings** > **Integrations** > **AirSyncs**.\\n2. Locate the previously imported project.\\n3. Select **\\xe2\\x8b\\xae** > **Sync DevRev to Salesforce Service**.\\n\\n![]()\\n\\nThis may override fields in Salesforce of previously imported items, even if they were modified in Salesforce.\\n\\n#### Mark a DevRev ticket for syncing\\n\\nUsing the [Sync to Salesforce](#sync-to-salesforce) feature, it\\'s possible to sync DevRev tickets to Salesforce. In order to sync a DevRev ticket to a specific Salesforce" + }, + { + "id": "ART-2047_KNOWLEDGE_NODE-35", + "title": "Salesforce AirSync | AirSync | Snap-ins | DevRev", + "text": "longer available.\\n\\n### Sync to DevRev\\n\\nAfter a successful import from a Salesforce account, you can choose to sync the imported data with DevRev. This feature airdrops any new items and any changes made to previously imported items from Salesforce.\\n\\nTo perform a one-time sync to DevRev, follow these steps:\\n\\n1. Go to **Settings** > **Integrations** > **AirSyncs**.\\n2. Locate the previously imported project.\\n3. Select **\\xe2\\x8b\\xae** > **Sync Salesforce Service to" + }, + { + "id": "ART-2047_KNOWLEDGE_NODE-33", + "title": "Salesforce AirSync | AirSync | Snap-ins | DevRev", + "text": "Salesforce](#sync-to-salesforce):\\n + This option synchronizes any changes made in DevRev to previously synced Salesforce [supported items](#supported-objects) back to Salesforce. It also creates any [items marked in DevRev](#mark-a-devrev-ticket-for-syncing) for creation in Salesforce. This is a one-time operation.\\n* [Periodic Sync](#periodic-sync):\\n + By enabling this option, you can automatically sync new changes from Salesforce to DevRev on a periodic basis. The default frequency is" + }, + { + "id": "ART-2047_KNOWLEDGE_NODE-36", + "title": "Salesforce AirSync | AirSync | Snap-ins | DevRev", + "text": "DevRev**.\\n\\n![]()\\n\\nThis may override fields in previously imported items, even if they were modified in DevRev.\\n\\n### Sync to Salesforce\\n\\nAfter a successful import from a Salesforce account, you can sync changes made in DevRev to the previously imported cases back to Salesforce. Additionally, any new [DevRev tickets marked for sync](#mark-a-devrev-ticket-for-syncing) is created as new Salesforce items.\\n\\nTo perform a one-time sync to Salesforce, follow these steps:\\n\\n1. Go to" + }, + { + "id": "ART-2047_KNOWLEDGE_NODE-32", + "title": "Salesforce AirSync | AirSync | Snap-ins | DevRev", + "text": "automatically.\\n\\nPost import options\\n-------------------\\n\\nAfter a successful import, you have the following options available for the imported account:\\n\\n* [Sync to DevRev](#sync-to-devrev):\\n + This option allows you to synchronize any modifications made in Salesforce with the corresponding items previously imported into DevRev. It also creates new items in DevRev for any new items created in Salesforce after the last sync or import. This is a one-time operation.\\n* [Sync to" + }, + { + "id": "ART-2047_KNOWLEDGE_NODE-30", + "title": "Salesforce AirSync | AirSync | Snap-ins | DevRev", + "text": "it\\'s your first).\\n2. Create a new connection to your Salesforce account, or use an existing connection if you already have one.\\n3. Once the connection is established, select the Salesforce account you want to import and specify the DevRev part that should be used for any imported cases without a product. This initiates a bulk import of the selected account.\\n4. DevRev makes an effort to automatically map the fields from Salesforce to corresponding fields in DevRev. However, you may be" + }, + { + "id": "ART-2047_KNOWLEDGE_NODE-39", + "title": "Salesforce AirSync | AirSync | Snap-ins | DevRev", + "text": "created in the specified Salesforce account the next time the Sync from [DevRev to Salesforce](#sync-to-salesforce) runs. This can be triggered manually or automatically through a Periodic Sync. Future syncs keeps this item updated on both sides after it has been created in Salesforce.\\n\\n### Historical AirSyncs\\n\\nTo view currently running and previous AirSyncs from various sources, do the following:\\n\\n1. Go to **Settings** > **Integrations** > **AirSyncs**.\\n2. Select the import you want to" + }, + { + "id": "ART-13117_KNOWLEDGE_NODE-6", + "title": "Airdrop duplicates merging", + "text": "DevRev, and the duplicate accounts from Zendesk should be merged into those from Salesforce. After the Zendesk import has finished, you should be able to see import tags from both systems, i.e., Salesforce import and Zendesk import on the accounts that were from both systems and were merged.\"" + }, + { + "id": "ART-2047_KNOWLEDGE_NODE-24", + "title": "Salesforce AirSync | AirSync | Snap-ins | DevRev", + "text": "options](#post-import-options)\\n* [Sync to DevRev](#sync-to-devrev)\\n* [Sync to Salesforce](#sync-to-salesforce)\\n* [Mark a DevRev ticket for syncing](#mark-a-devrev-ticket-for-syncing)\\n* [AirSync Salesforce scope and limitations](#airsync-salesforce-scope-and-limitations)\\n* [Comments](#comments)\\n* [Updates](#updates)\\n* [Knowledge articles](#knowledge-articles)\\n\\n1. [Documentation](/docs)\\n3. [Snap-ins](/docs/snapins)\\n[AirSync](/docs/import)\\n[Salesforce" + } + ] + }, + { + "query_id": "c6798ed1-757f-4810-8b8b-3cf7e78a732c", + "query": "best way to export accounts in bulk", + "retrievals": [ + { + "id": "ART-1462_KNOWLEDGE_NODE-0", + "title": "Export Accounts (POST) — DevRev | Docs", + "text": "b'[](/public/api-reference/accounts/export-post)\\n\\nPublic\\n\\n[API Reference](/public/api-reference/getting-started)[Accounts](/public/api-reference/accounts/accounts)\\n\\n# Export Accounts (POST)\\n\\nPOST\\n\\nhttps://api.devrev.ai/accounts.export\\n\\nTry it\\n\\nExports a collection of accounts.\\n\\n### Request\\n\\nThis endpoint expects an object.\\n\\ncreated_bylist of stringsOptional\\n\\nFilters for accounts created by the specified user(s).\\n\\ncreated_dateobjectOptional\\n\\nShow 2" + }, + { + "id": "ART-1652_KNOWLEDGE_NODE-6", + "title": "Export — DevRev | Docs", + "text": "exported accounts.\\nShow 18 properties\\nAPI Reference accounts Export Post.\\n\\nPOST https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nRequest.\\n\\nThis endpoint expects an object.\\ncreated_by list of strings Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date object Optional\\nShow 2 properties\\ncustom_fields map from strings to any Optional\\nFilters for custom fields.\\ndisplay_name list of strings Optional\\nArray of display names of accounts" + }, + { + "id": "ART-1784_KNOWLEDGE_NODE-6", + "title": "Locate Post — DevRev | Docs", + "text": "exported accounts.\\nShow 18 properties\\nAPI Reference accounts Export Post.\\n\\nPOST https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nRequest.\\n\\nThis endpoint expects an object.\\ncreated_by list of strings Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date object Optional\\nShow 2 properties\\ncustom_fields map from strings to any Optional\\nFilters for custom fields.\\ndisplay_name list of strings Optional\\nArray of display names of accounts" + }, + { + "id": "ART-1302_KNOWLEDGE_NODE-8", + "title": "Export — DevRev | Docs", + "text": "\" : \" value \" 3 }\\nAPI Reference accounts Export.\\n\\nGET https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nQuery parameters.\\n\\ncreated_by string Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date.after datetime Optional\\nFilters for objects created after the provided timestamp (inclusive).\\ncreated_date.before datetime Optional\\nFilters for objects created before the provided timestamp (inclusive).\\ncustom_fields map from strings to any" + }, + { + "id": "ART-1804_KNOWLEDGE_NODE-6", + "title": "Self — DevRev | Docs", + "text": "exported accounts.\\nShow 18 properties\\nAPI Reference accounts Export Post.\\n\\nPOST https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nRequest.\\n\\nThis endpoint expects an object.\\ncreated_by list of strings Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date object Optional\\nShow 2 properties\\ncustom_fields map from strings to any Optional\\nFilters for custom fields.\\ndisplay_name list of strings Optional\\nArray of display names of accounts" + }, + { + "id": "ART-1825_KNOWLEDGE_NODE-6", + "title": "List — DevRev | Docs", + "text": "exported accounts.\\nShow 18 properties\\nAPI Reference accounts Export Post.\\n\\nPOST https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nRequest.\\n\\nThis endpoint expects an object.\\ncreated_by list of strings Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date object Optional\\nShow 2 properties\\ncustom_fields map from strings to any Optional\\nFilters for custom fields.\\ndisplay_name list of strings Optional\\nArray of display names of accounts" + }, + { + "id": "ART-1783_KNOWLEDGE_NODE-6", + "title": "Locate — DevRev | Docs", + "text": "exported accounts.\\nShow 18 properties\\nAPI Reference accounts Export Post.\\n\\nPOST https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nRequest.\\n\\nThis endpoint expects an object.\\ncreated_by list of strings Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date object Optional\\nShow 2 properties\\ncustom_fields map from strings to any Optional\\nFilters for custom fields.\\ndisplay_name list of strings Optional\\nArray of display names of accounts" + }, + { + "id": "ART-1641_KNOWLEDGE_NODE-6", + "title": "Get Post — DevRev | Docs", + "text": "exported accounts.\\nShow 18 properties\\nAPI Reference accounts Export Post.\\n\\nPOST https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nRequest.\\n\\nThis endpoint expects an object.\\ncreated_by list of strings Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date object Optional\\nShow 2 properties\\ncustom_fields map from strings to any Optional\\nFilters for custom fields.\\ndisplay_name list of strings Optional\\nArray of display names of accounts" + }, + { + "id": "ART-1305_KNOWLEDGE_NODE-6", + "title": "Get Post — DevRev | Docs", + "text": "exported accounts.\\nShow 18 properties\\nAPI Reference accounts Export Post.\\n\\nPOST https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nRequest.\\n\\nThis endpoint expects an object.\\ncreated_by list of strings Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date object Optional\\nShow 2 properties\\ncustom_fields map from strings to any Optional\\nFilters for custom fields.\\ndisplay_name list of strings Optional\\nArray of display names of accounts" + }, + { + "id": "ART-1836_KNOWLEDGE_NODE-6", + "title": "Get Post — DevRev | Docs", + "text": "exported accounts.\\nShow 18 properties\\nAPI Reference accounts Export Post.\\n\\nPOST https:// api.devrev.ai / accounts.export\\nExports a collection of accounts.\\nRequest.\\n\\nThis endpoint expects an object.\\ncreated_by list of strings Optional\\nFilters for accounts created by the specified user(s).\\ncreated_date object Optional\\nShow 2 properties\\ncustom_fields map from strings to any Optional\\nFilters for custom fields.\\ndisplay_name list of strings Optional\\nArray of display names of accounts" + } + ] + }, + { + "query_id": "1b7f0c03-5c55-403e-baf4-242b8d91bbe7", + "query": "copy schema subtype deal registration leaf type of account", + "retrievals": [ + { + "id": "ART-1614_KNOWLEDGE_NODE-1", + "title": "List Schemas Subtypes (POST) | DevRev | Docs", + "text": "https://api.devrev.ai/schemas.subtypes.list \\\\ |\\n| > | -H \"Authorization: Bearer \" \\\\ |\\n| > | -H \"Content-Type: application/json\" \\\\ |\\n| > | -d \\'{}\\' |\\n```\\n\\n[Try it](/beta/api-reference/customization/subtypes-list-post?explorer=true)\\n\\n200Successful\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | { |\\n| 2 | \"subtypes\": [ |\\n| 3 | { |\\n| 4 | \"fragment_id\": \"string\", |\\n| 5 | \"leaf_type\": \"string\", |\\n| 6 | \"value\": \"string\", |\\n| 7 | \"display_name\": \"string\" |\\n| 8 | } |\\n| 9 | ] |\\n| 10 |" + }, + { + "id": "ART-4116_KNOWLEDGE_NODE-0", + "title": "Prepare-Update Schemas Subtypes (Beta) — DevRev | Docs", + "text": "b'[](/beta/api-reference/customization/schemas-subtype-prepare-update-get)\\n\\nBeta\\n\\n[API Reference](/beta/api-reference/accounts/create)[Customization](/beta/api-reference/customization/custom-objects-count)\\n\\n# Prepare-Update Schemas Subtypes\\n\\nPOST\\n\\nhttps://api.devrev.ai/schemas.subtypes.prepare-update\\n\\nTry it\\n\\nGets the new fragment IDs and fields resulting from changing a subtype.\\n\\n### Request\\n\\nThis endpoint expects an object.\\n\\nleaf_typestringRequired`format: \"text\"`\\n\\nLeaf" + }, + { + "id": "ART-4116_KNOWLEDGE_NODE-1", + "title": "Prepare-Update Schemas Subtypes (Beta) — DevRev | Docs", + "text": "type of the object.\\n\\nis_custom_leaf_typebooleanOptional\\n\\nWhether the leaf type corresponds to a custom object.\\n\\nnew_subtypestringOptional`format: \"text\"`\\n\\nName of the new subtype for the object.\\n\\nobjectstringOptional`format: \"id\"`\\n\\nID of the object of which subtype is to be changed. Used to fetch the object\\xe2\\x80\\x99s custom schema fragments and custom fields\\n\\n### Response\\n\\nSuccess.\\n\\nadded_fieldslist of objectsOptional\\n\\nList of fields that have a default value and need to" + }, + { + "id": "ART-4116_KNOWLEDGE_NODE-3", + "title": "Prepare-Update Schemas Subtypes (Beta) — DevRev | Docs", + "text": "Error\\n\\n403\\n\\nForbidden Error\\n\\n404\\n\\nNot Found Error\\n\\n429\\n\\nToo Many Requests Error\\n\\n500\\n\\nInternal Server Error\\n\\n503\\n\\nService Unavailable Error\\n\\nPOST\\n\\n/schemas.subtypes.prepare-update\\n\\n[code]\\n\\n $| curl -X POST https://api.devrev.ai/schemas.subtypes.prepare-update \\\\ \\n ---|--- \\n >| -H \"Authorization: Bearer \" \\\\ \\n >| -H \"Content-Type: application/json\" \\\\ \\n >| -d \\'{ \\n >| \"leaf_type\": \"foo\" \\n >| }\\'\\n[/code] \\n" + }, + { + "id": "ART-1602_KNOWLEDGE_NODE-2", + "title": "Get Schemas Aggregated (Beta) — DevRev | Docs", + "text": "DONs which are to be aggregated.\\n\\ncustom_schema_spec.appslist of stringsOptional\\n\\nList of apps.\\n\\ncustom_schema_spec.subtypestringOptional`format: \"text\"`\\n\\nName of the subtype.\\n\\nis_custom_leaf_typebooleanOptional\\n\\nWhether the leaf type corresponds to a custom object.\\n\\nleaf_typestringOptional`format: \"text\"`\\n\\nThe leaf type. Used for inferring the default stage diagram and tenant fragment ID.\\n\\nstock_schema_fragment_idstringOptional`format: \"id\"`\\n\\nThe stock schema fragment which" + }, + { + "id": "ART-1784_KNOWLEDGE_NODE-225", + "title": "Locate Post — DevRev | Docs", + "text": "Optional\\nLeaf type for which subtypes are required.\\nleaf_types string Optional\\nList of leaf types for which subtypes are required.\\nResponse.\\n\\nThis endpoint returns an object.\\nsubtypes list of objects\\nList of subtypes.\\nShow 4 properties\\nAPI Reference customization Subtypes List Post.\\n\\nPOST https:// api.devrev.ai / schemas.subtypes.list\\nLists subtypes.\\nRequest.\\n\\nThis endpoint expects an object.\\nleaf_type string Optional\\nLeaf type for which subtypes are required.\\nleaf_types list" + }, + { + "id": "ART-1783_KNOWLEDGE_NODE-225", + "title": "Locate — DevRev | Docs", + "text": "Optional\\nLeaf type for which subtypes are required.\\nleaf_types string Optional\\nList of leaf types for which subtypes are required.\\nResponse.\\n\\nThis endpoint returns an object.\\nsubtypes list of objects\\nList of subtypes.\\nShow 4 properties\\nAPI Reference customization Subtypes List Post.\\n\\nPOST https:// api.devrev.ai / schemas.subtypes.list\\nLists subtypes.\\nRequest.\\n\\nThis endpoint expects an object.\\nleaf_type string Optional\\nLeaf type for which subtypes are required.\\nleaf_types list" + }, + { + "id": "ART-1632_KNOWLEDGE_NODE-2", + "title": "List Schemas Subtypes | DevRev | Docs", + "text": "`, where token is your auth token.\\n\\n### Query parameters\\n\\nleaf\\\\_typestringOptional`format: \"text\"`Deprecated\\n\\nLeaf type for which subtypes are required.\\n\\nleaf\\\\_typeslist of stringsOptional\\n\\nList of leaf types for which subtypes are required.\\n\\n### Response\\n\\nSuccess.\\n\\nsubtypeslist of objects\\n\\nList of subtypes.\\n\\nShow 4 properties\\n\\n### Errors\\n\\n400\\n\\nBad Request Error\\n\\n401\\n\\nUnauthorized Error\\n\\n403\\n\\nForbidden Error\\n\\n429\\n\\nToo Many Requests" + }, + { + "id": "ART-1804_KNOWLEDGE_NODE-231", + "title": "Self — DevRev | Docs", + "text": "Optional\\nLeaf type for which subtypes are required.\\nleaf_types string Optional\\nList of leaf types for which subtypes are required.\\nResponse.\\n\\nThis endpoint returns an object.\\nsubtypes list of objects\\nList of subtypes.\\nShow 4 properties\\nAPI Reference customization Subtypes List Post.\\n\\nPOST https:// api.devrev.ai / schemas.subtypes.list\\nLists subtypes.\\nRequest.\\n\\nThis endpoint expects an object.\\nleaf_type string Optional\\nLeaf type for which subtypes are required.\\nleaf_types list" + }, + { + "id": "ART-15342_KNOWLEDGE_NODE-3", + "title": "Prepare-Update Schemas Subtypes | DevRev | Docs", + "text": "token.\\n\\n### Request\\n\\nThis endpoint expects an object.\\n\\nleaf\\\\_typestringRequired`format: \"text\"`\\n\\nLeaf type of the object.\\n\\nis\\\\_custom\\\\_leaf\\\\_typebooleanOptional\\n\\nWhether the leaf type corresponds to a custom object.\\n\\nnew\\\\_subtypestringOptional`format: \"text\"`\\n\\nName of the new subtype for the object.\\n\\nobjectstringOptional`format: \"id\"`\\n\\nID of the object of which subtype is to be changed. Used to fetch\\nthe object\\'s custom schema fragments and custom fields\\n\\n###" + } + ] + }, + { + "query_id": "41213d8b-9a95-4d61-acbf-5c4df3f80b30", + "query": "Automatic case classification by product, severity, and category", + "retrievals": [ + { + "id": "ART-4181_KNOWLEDGE_NODE-6", + "title": "Support like a lightning fast pit-crew", + "text": "time and resolution time, or tailor metrics to your requirements\\n\\n![]()\\n\\nTrigger SLAs at the right moment, every time\\n\\nMap conditions to parts of your product, tags, severity levels, or any other relevant criteria on our simple UI\\n\\n![]()\\n\\nTrigger SLAs at the right moment, every time\\n\\nMap conditions to parts of your product, tags, severity levels, or any other relevant criteria on our simple UI\\n\\n![]()\\n\\nSLAs in sync with your business\\n\\nAccount for calendar and business hours," + }, + { + "id": "ART-2886_KNOWLEDGE_NODE-3", + "title": "Case Study Library | DevRev", + "text": "readFAME transforms information access with AI-powered enterprise search](/case-study/fame)[![]()\\n\\n5 min readHow Bolt connected customer, product, and engineering for smooth checkout](/case-study/bolt)[![]()\\n\\n5 min readSkedulo reduced effort from 30% to 5% and unlocked automation at scale](/case-study/skedulo)[![]()\\n\\n3 min readVelocity Global transforms worldwide operations with DevRev](/case-study/velocity-global)[![]()\\n\\n4 min readDeepdub scales global AI support with" + }, + { + "id": "ART-2777_KNOWLEDGE_NODE-4", + "title": "Velocity Global transforms worldwide operations with DevRev", + "text": "customers.\\n\\nSystem limitations with the previous vendor prevented us from implementing the cutting-edge automation solutions we dreamed of: allowing data and work to flow seamlessly for our operational support team and our customers. Having an AI-based classification system like we have in DevRev that routes tickets to the correct parts and features, that has been such a game changer for us.\\n\\n![]()\\n\\nVishnu RavikumarVP Strategy & Planning, Velocity Global\\n\\nThe" + }, + { + "id": "ART-2046_KNOWLEDGE_NODE-31", + "title": "DevRev for Jira app | Jira Software AirSync | AirSync | Snap-ins | DevRev", + "text": "DevRev tickets to link to the issue from Jira itself. You can disable this feature in the app configuration.\\n* Select a ticket from the dropdown to refer to useful details like a customer who raised the ticket, product part, severity, and stage of the ticket with a link to which directly opens in DevRev.\\n* Go to the DevRev activity tab and select the ticket from the dropdown whose comments you need to read. There is a comment visibility filter to look at specific types of comments (for" + }, + { + "id": "ART-2886_KNOWLEDGE_NODE-5", + "title": "Case Study Library | DevRev", + "text": "satisfaction](/case-study/tough-trucks)[![]()\\n\\n4 min readDescope streamlines support at scale with automation, AI, and unified collaboration](/case-study/descope)[![]()\\n\\n3 min readAtomicwork enables cross-functional customer support with DevRev](/case-study/atomicwork)[![]()\\n\\n5 min readLuxCreo boosts efficiency and agility with DevRev\\xe2\\x80\\x99s intelligent automation](/case-study/luxcreo)[![]()\\n\\n3 min readGoodmeetings uses DevRev to reduce ticket resolution" + }, + { + "id": "ART-2886_KNOWLEDGE_NODE-8", + "title": "Case Study Library | DevRev", + "text": "intelligence](/case-study/bajaj-finserv)[![]()\\n\\n3 min readShipsy elevates logistics support with AI-powered automation and cross team collaboration](/case-study/shipsy)[![]()\\n\\n4 min readAR Digital Wealth cuts support TAT by 60% with faster issue solving](/case-study/anand-rathi-case-study)[![]()\\n\\n4 min readHow Orum built a collaborative, AI-ready support engine](/case-study/orum)[![]()\\n\\n4 min readFOSSA\\xe2\\x80\\x99s unified support strategy for elevated customer" + }, + { + "id": "ART-1645_KNOWLEDGE_NODE-41", + "title": "Object customization (Beta) — DevRev | Docs", + "text": "\"label\": \"High\", \\n >| \"ordinal\": 2 \\n >| }, \\n >| { \\n >| \"id\": 3, \\n >| \"label\": \"Medium\", \\n >| \"ordinal\": 3 \\n >| }, \\n >| { \\n >| \"id\": 4, \\n >| \"label\": \"Low\", \\n >| \"ordinal\": 4 \\n >| } \\n >| ], \\n >| \"ui\": { \\n >| \"display_name\": \"Urgency Level\", \\n >| } \\n >| } \\n >| ]" + }, + { + "id": "ART-3038_KNOWLEDGE_NODE-0", + "title": "Bolt unifies support and product to deliver seamless commerce", + "text": "b\"Bolt unifies support and product to deliver seamless commerce\\n\\n* Computer\\n* Resources\\n* [Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\nComputer\\n\\nResources\\n\\n[Our Customers](/case-study)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](/request-a-demo)\\n\\n- [Case Studies](/case-study)\\n\\n- Bolt\\n\\nHow Bolt connected customer, product, and engineering for smooth" + }, + { + "id": "ART-4171_KNOWLEDGE_NODE-2", + "title": "Make customer support real-time and personalized", + "text": "view\\n\\nDevRev\\xe2\\x80\\x99s unified inbox automatically categorizes incoming tickets to make prioritization easier. Monitor ticket stages and ongoing conversations at a glance so you never miss an SLA.\\n--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\\n\\n[Book a Demo](/request-a-demo)[Discover Support](/support)\\n\\n![]()\\n\\nElevate support with AI" + }, + { + "id": "ART-4131_KNOWLEDGE_NODE-20", + "title": "List Incidents (POST) | DevRev | Docs", + "text": "reporters.\\n\\nseveritylist of longsOptional\\n\\nFilters for incidents containing any of the provided severities.\\n\\nsort\\\\_bylist of stringsOptional\\n\\nThe list of fields to sort the items by and how to sort them.\\n\\nstagelist of stringsOptional\\n\\nFilters for incidents in any of the provided stages.\\n\\nstaged\\\\_infoobjectOptional\\n\\nShow 1 properties\\n\\nsubtypelist of stringsOptional\\n\\nFilters for incidents with any of the provided subtypes.\\n\\nsync\\\\_metadataobjectOptional\\n\\nShow 4" + } + ] + }, + { + "query_id": "0f16d2d9-ca4c-4091-bc94-1be50e2f7a90", + "query": "enable Generative AI for Knowledge Base creation", + "retrievals": [ + { + "id": "ART-4170_KNOWLEDGE_NODE-9", + "title": "DevRev | Blog", + "text": "Baldwa](/blog/explore-article-creation-and-analytics-dashboard)[![]()\\n\\n7 min read10 step guide to preparing your knowledge base for Gen AI search\\n\\nRhea Jain](/blog/guide-to-preparing-your-knowledge-base-for-ai-search)\\n\\n[![]()](/the-essential-methodology-whitepaper)\\n\\n[Dheeraj Pandey12 min read\\n\\n### Essential Methodology\\n\\n### Whitepaper for free\\n\\n\\xe2\\x9e\\xa4 The latest thinking on AI agents and platform](/the-essential-methodology-whitepaper)\\n\\n[Download" + }, + { + "id": "ART-1984_KNOWLEDGE_NODE-25", + "title": "Best practices for documentation that supports AI | Turing AI agent | Computer for Support Teams | DevRev", + "text": "supports AI\\n=================================================\\n\\nComputer works best when articles and QnAs in the knowledge base adhere to certain guidelines. The old computing adage of \\xe2\\x80\\x9cgarbage in, garbage out\\xe2\\x80\\x9d applies to AI as much as to earlier technologies. Most of these guidelines are typical for professional/technical writing, especially content that has requirements for accessibility and localization.\\n\\nTo enable searching through the knowledge base, Computer" + }, + { + "id": "ART-4177_KNOWLEDGE_NODE-3", + "title": "DevRev University - DevRev for Startups", + "text": "Checklist and avail $1000/person in credits.](https://app.devrev.ai/devrev/settings/setup/platform)\\n\\nGetting Started with DevRev\\n---------------------------\\n\\nAccess bite-sized video tutorials to kickstart your journey and make the most of DevRev\\xe2\\x80\\x99s AI-first capabilities.\\n\\n[![]()\\n\\nBuilding a Knowledge Base in DevRev\\n\\nLearn to set up Knowledge Base to empower your customers with self-service solutions](https://youtu.be/Z-M-uLS7XqI?feature=shared)[![]()\\n\\nActivating AI in" + }, + { + "id": "ART-15153_KNOWLEDGE_NODE-7", + "title": "Deepdub scales global AI support with DevRev’s conversational platform and intelligent knowledge automation", + "text": "Q&As from completed support conversations, with over 2,000 AI-generated entries improving the knowledge base. When similar questions arise, customers receive immediate answers without needing human intervention.\\n\\n### Scalable solution for growth\\n\\nThe platform effectively supports:\\n\\n* 24/7 global support coverage\\n* Tens of thousands of platform users through PLuG live chat\\n\\n### Minimized business impact\\n\\nBy connecting all their support information through DevRev, Deepdub provides" + }, + { + "id": "ART-13178_KNOWLEDGE_NODE-9", + "title": "Understanding Agentic AI: Capabilities and Implications for the Future", + "text": "articles, designs graphics, and generates code. It focuses on content creation based on prompts. According to [IBM research](https://www.ibm.com/think/topics/generative-ai-use-cases), 65% of enterprises now use generative AI for creation tasks like these.\\n\\nAgentic AI operates differently. It doesn\\xe2\\x80\\x99t just create \\xe2\\x80\\x93 it decides and acts. When your customer reports an issue, generative AI might draft a response to customer service inquiries, while agentic AI will investigate" + }, + { + "id": "ART-1985_KNOWLEDGE_NODE-37", + "title": "Articles | Knowledge Base | Computer for Support Teams | DevRev", + "text": "Storage limits for articles\\n\\n* There is no limit to the number of articles that can be created in the DevRev knowledge base.\\n* Each article is stored as an artifact, with a maximum size of 250 MB per artifact.\\n\\n### Enable customer access for your knowledge base\\n\\nTo make your help center, including your knowledge base, accessible to the public, go to **[Settings > Plug & Portal > Portal Settings](https://app.devrev.ai/?setting=portal-settings%2Fconfiguration)** and enable **Help Center**" + }, + { + "id": "ART-1983_KNOWLEDGE_NODE-30", + "title": "Questions & answers | Computer for Support Teams | DevRev", + "text": "creation, go to **Settings** > **Turing** > **Q&As** > **Preferences** on the top right and enable **Auto generate Q&As** and click **Save**.\\n\\n![]()\\n\\nYou need to be an admin to set preferences.\\n\\n![]()\\n\\nWhen Computer creates a new Q&A, the conversation's owner receives a notification. It's their chance to ensure accuracy before deciding whether to *Publish* them if needed or *Archive* if not.\\n\\nOnce approved and published, these Q&As enter Computer's knowledge base, ready to tackle" + }, + { + "id": "ART-15792_KNOWLEDGE_NODE-9", + "title": "DevRev Products and Agents", + "text": "information sharing and reporting by converging support, product and user data in one shared view.\\n\\nAutomated knowledge base management: AI agents remember successful resolutions and instantly apply them to future issues, reducing customer wait time.\\n\\nSource: [DevRev Support](https://devrev.ai/support)BuildWhat is DevRev Build?\\n\\nDevRev Build is a full-featured product development platform built for modern businesses and trusted by leading organizations\\n\\nKey Features:\\n\\nAuto-generate" + }, + { + "id": "ART-1982_KNOWLEDGE_NODE-6", + "title": "Collections | Knowledge Base | Computer for Support Teams | DevRev", + "text": "+ [Turing AI agent](/docs/product/conversational-bot)\\n\\n - [Best practices for documentation that supports AI](/docs/product/writing-bp)\\n + [Commands](/docs/product/commands)\\n + [Service-level agreement](/docs/product/sla)\\n + [Operational-level agreement](/docs/product/ola)\\n + [Support snap-ins](/docs/product/snapins-support)\\n* [Computer for Builders](/docs/product/build)\\n\\n + [Issues](/docs/product/issues)\\n + [Now, Next, Later](/docs/product/nnl)\\n + [Sprint" + }, + { + "id": "ART-1980_KNOWLEDGE_NODE-25", + "title": "Knowledge Base | Computer for Support Teams | DevRev", + "text": "knowledge base helps customers independently solve issues and assists employees in determining solutions to customer queries they\\xe2\\x80\\x99re resolving.\\n\\nThe articles can be created from scratch in DevRev, or they can be hosted on your own domain. Additionally, you can scrape articles from a previous database and import them into DevRev with the assistance of our support engineers.\\n\\nThere are multiple benefits to a knowledge base that can be accessed directly and through AI:\\n\\n*" + } + ] + }, + { + "query_id": "6eb4477e-391c-4600-ac4a-d1809f32a801", + "query": "Resource Center downloads tutorials API documentation", + "retrievals": [ + { + "id": "ART-1353_KNOWLEDGE_NODE-2", + "title": "For Developers | DevRev | Docs", + "text": "[tutorial](/api-reference/getting-started) shows you how to access the APIs.\\n\\n\\xf0\\x9f\\xa7\\xac Methods\\n---------\\n\\nSpecifications covering the supported APIs are based on OpenAPI Specification 3.0. You can download the specs to use an OpenAPI 3.0-compliant tool to perform a variety of actions, including rendering them in UI and generating SDKs. Two [versions](/about/versioning) of the DevRev API are available: [public](/public) and [beta](/beta) (early access). Use the drop-down menu in the" + }, + { + "id": "ART-17213_KNOWLEDGE_NODE-3", + "title": "Getting started | DevRev | Docs", + "text": "system\\n---------------\\n\\nBefore starting the development of a snap-in for integration with an external system API,\\nconsider gathering the following information:\\n\\n* **API documentation**: Obtain the official API documentation of the external system.\\n This is the primary source of information about how to connect and interact with the system.\\n* **Authentication and authorization**: Understand the authentication and authorization\\n methods required. This may include API keys, OAuth" + }, + { + "id": "ART-1312_KNOWLEDGE_NODE-0", + "title": "For Developers – DevRev | Docs", + "text": "b'\\xf0\\x9f\\x91\\x89 Getting started\\nIf you are new to DevRev, we would recommend learning about our core concepts before getting started.\\nOnce you have a DevRev account, you can access the APIs with a personal access token (PAT) that you create in the DevRev app.\\nA brief tutorial shows you how to access the APIs.\\n\\xf0\\x9f\\xa7\\xac Methods\\nSpecifications covering the supported APIs are based on OpenAPI Specification 3.0. You can download the specs to use an OpenAPI 3.0-compliant tool to" + }, + { + "id": "ART-1273_KNOWLEDGE_NODE-0", + "title": "Overview | DevRev | Docs", + "text": "b'Overview | DevRev | Docs\\n\\n[![]()![]()](https://developer.devrev.ai/)\\n\\nPublic\\n\\nPublic\\n\\nSearch\\n\\n`/`\\n\\n[Snap-in development](/snapin-development/concepts)[Tutorials](/snapin-development/tutorials/overview)\\n\\nOverview\\n========\\n\\nCopy page\\n\\nThe following tutorials provide a step-by-step guide to creating snap-ins:\\n\\n1. [Getting started](/snapin-development/tutorials/getting-started)\\n2. [Using a snap-in to perform a DevRev" + }, + { + "id": "ART-12449_KNOWLEDGE_NODE-48", + "title": "Features — DevRev | Docs", + "text": "AI](https://devrev.ai/turing-ai)\\n\\nResources\\n\\n * [Pricing](https://devrev.ai/pricing/support)\\n * [Blog](https://devrev.ai/blog)\\n * [Events](https://devrev.ai/events)\\n * [News](https://devrev.ai/blog?category=news)\\n * [Case Studies](https://devrev.ai/case-study)\\n * [Documentation](https://docs.devrev.ai/)\\n * [API Reference](https://docs.devrev.ai/api/)\\n * [The Book of DevRev](https://thebook.devrev.ai/)\\n * [Partner Program](https://devrev.ai/partners)\\n * [Startup" + }, + { + "id": "ART-1366_KNOWLEDGE_NODE-2", + "title": "For Developers — DevRev | Docs", + "text": "Developers\\n\\n## \\xf0\\x9f\\x91\\x89 Getting started\\n\\nIf you are new to DevRev, we would recommend learning about our [core concepts](https://docs.devrev.ai/intro) before getting started.\\n\\nOnce you have a DevRev account, you can access the APIs with a [personal access token](/public/about/authentication) (PAT) that you create in the DevRev app.\\n\\nA brief [tutorial](/public/api-reference/getting-started) shows you how to access the APIs.\\n\\n## \\xf0\\x9f\\xa7\\xac Methods\\n\\nSpecifications" + }, + { + "id": "ART-12456_KNOWLEDGE_NODE-30", + "title": "Features — DevRev | Docs", + "text": "Engine](https://devrev.ai/workflow-engine)\\n * [Turing AI](https://devrev.ai/turing-ai)\\n\\nResources\\n\\n * [Pricing](https://devrev.ai/pricing/support)\\n * [Blog](https://devrev.ai/blog)\\n * [Events](https://devrev.ai/events)\\n * [News](https://devrev.ai/blog?category=news)\\n * [Case Studies](https://devrev.ai/case-study)\\n * [Documentation](https://docs.devrev.ai/)\\n * [API Reference](https://docs.devrev.ai/api/)\\n * [The Book of DevRev](https://thebook.devrev.ai/)\\n * [Partner" + }, + { + "id": "ART-1494_KNOWLEDGE_NODE-17", + "title": "Hooks — DevRev | Docs", + "text": "Engine](https://devrev.ai/workflow-engine)\\n * [Turing AI](https://devrev.ai/turing-ai)\\n\\nResources\\n\\n * [Pricing](https://devrev.ai/pricing/support)\\n * [Blog](https://devrev.ai/blog)\\n * [Events](https://devrev.ai/events)\\n * [News](https://devrev.ai/blog?category=news)\\n * [Case Studies](https://devrev.ai/case-study)\\n * [Documentation](https://docs.devrev.ai/)\\n * [API Reference](https://docs.devrev.ai/api/)\\n * [The Book of DevRev](https://thebook.devrev.ai/)\\n * [Partner" + }, + { + "id": "ART-2893_KNOWLEDGE_NODE-8", + "title": "Install the Web SDK — DevRev | Docs", + "text": "Engine](https://devrev.ai/workflow-engine)\\n * [Turing AI](https://devrev.ai/turing-ai)\\n\\nResources\\n\\n * [Pricing](https://devrev.ai/pricing/support)\\n * [Blog](https://devrev.ai/blog)\\n * [Events](https://devrev.ai/events)\\n * [News](https://devrev.ai/blog?category=news)\\n * [Case Studies](https://devrev.ai/case-study)\\n * [Documentation](https://docs.devrev.ai/)\\n * [API Reference](https://docs.devrev.ai/api/)\\n * [The Book of DevRev](https://thebook.devrev.ai/)\\n * [Partner" + }, + { + "id": "ART-4066_KNOWLEDGE_NODE-13", + "title": "Get Article — DevRev | Docs", + "text": "Engine](https://devrev.ai/workflow-engine)\\n * [Turing AI](https://devrev.ai/turing-ai)\\n\\nResources\\n\\n * [Pricing](https://devrev.ai/pricing/support)\\n * [Blog](https://devrev.ai/blog)\\n * [Events](https://devrev.ai/events)\\n * [News](https://devrev.ai/blog?category=news)\\n * [Case Studies](https://devrev.ai/case-study)\\n * [Documentation](https://docs.devrev.ai/)\\n * [API Reference](https://docs.devrev.ai/api/)\\n * [The Book of DevRev](https://thebook.devrev.ai/)\\n * [Partner" + } + ] + }, + { + "query_id": "bcc62ad8-6557-471a-b10c-65bcd71fd14c", + "query": "automations to fill repeated fields", + "retrievals": [ + { + "id": "ART-2007_KNOWLEDGE_NODE-24", + "title": "Automate opportunities | Automate | Snap-ins | DevRev", + "text": "[Snap-ins](/docs/snapins)\\n[Automate](/docs/automate)\\n[Automate opportunities](/docs/automations/opportunity)\\n\\nAutomate opportunities\\n======================\\n\\nAutomate opportunities snap-in helps you automate the following features on opportunities to eliminate updating the fields manually and to enhance data consistency:\\n\\n* Auto-fills the forecast categories on the opportunities based on status updates. Enable this feature to keep the **Forecast Category** field on opportunities updated" + }, + { + "id": "ART-2003_KNOWLEDGE_NODE-24", + "title": "Automate | Snap-ins | DevRev", + "text": "deduplication](/docs/automations/account-deduplication)[### Airtable](/docs/automations/airtable)[### Auto-link DevRev GitHub accounts](/docs/automations/auto-link-github-devrev)[### Automatic customer reply](/docs/automations/auto-reply)[### Auto parts to conversation](/docs/automations/auto-parts)[### Automated part update](/docs/automations/automated-part-update)[### Automate opportunities](/docs/automations/opportunity)[### Bulk delete data](/docs/automations/bulk-delete)[### Bulk work item" + }, + { + "id": "ART-2858_KNOWLEDGE_NODE-9", + "title": "Custom field migration | Automate | Snap-ins | DevRev", + "text": "deduplication](/docs/automations/account-deduplication)\\n - [Airtable](/docs/automations/airtable)\\n - [Auto-link DevRev GitHub accounts](/docs/automations/auto-link-github-devrev)\\n - [Automatic customer reply](/docs/automations/auto-reply)\\n - [Auto parts to conversation](/docs/automations/auto-parts)\\n - [Automated part update](/docs/automations/automated-part-update)\\n - [Automate opportunities](/docs/automations/opportunity)\\n - [Bulk delete" + }, + { + "id": "ART-2007_KNOWLEDGE_NODE-26", + "title": "Automate opportunities | Automate | Snap-ins | DevRev", + "text": "marketplace, find **Automate opportunities** and click **Install**.\\n\\nConfiguration\\n-------------\\n\\n1. To configure the snap-in, type /AutomateOpportunityConfig in the **Discussions** tab of the snap-in.\\n\\n![]()\\n\\n1. Fill the required fields and click **Submit**.\\n\\n[PreviousAutomated part update](/docs/automations/automated-part-update)[NextBulk delete data](/docs/automations/bulk-delete)\\n\\n#### On this page\\n\\n* [Installation](#installation)\\n*" + }, + { + "id": "ART-2003_KNOWLEDGE_NODE-9", + "title": "Automate | Snap-ins | DevRev", + "text": "deduplication](/docs/automations/account-deduplication)\\n - [Airtable](/docs/automations/airtable)\\n - [Auto-link DevRev GitHub accounts](/docs/automations/auto-link-github-devrev)\\n - [Automatic customer reply](/docs/automations/auto-reply)\\n - [Auto parts to conversation](/docs/automations/auto-parts)\\n - [Automated part update](/docs/automations/automated-part-update)\\n - [Automate opportunities](/docs/automations/opportunity)\\n - [Bulk delete" + }, + { + "id": "ART-2063_KNOWLEDGE_NODE-9", + "title": "Nudges | Computer for Your Customers | DevRev", + "text": "deduplication](/docs/automations/account-deduplication)\\n - [Airtable](/docs/automations/airtable)\\n - [Auto-link DevRev GitHub accounts](/docs/automations/auto-link-github-devrev)\\n - [Automatic customer reply](/docs/automations/auto-reply)\\n - [Auto parts to conversation](/docs/automations/auto-parts)\\n - [Automated part update](/docs/automations/automated-part-update)\\n - [Automate opportunities](/docs/automations/opportunity)\\n - [Bulk delete" + }, + { + "id": "ART-2007_KNOWLEDGE_NODE-9", + "title": "Automate opportunities | Automate | Snap-ins | DevRev", + "text": "deduplication](/docs/automations/account-deduplication)\\n - [Airtable](/docs/automations/airtable)\\n - [Auto-link DevRev GitHub accounts](/docs/automations/auto-link-github-devrev)\\n - [Automatic customer reply](/docs/automations/auto-reply)\\n - [Auto parts to conversation](/docs/automations/auto-parts)\\n - [Automated part update](/docs/automations/automated-part-update)\\n - [Automate opportunities](/docs/automations/opportunity)\\n - [Bulk delete" + }, + { + "id": "ART-2016_KNOWLEDGE_NODE-9", + "title": "StageFlow automator | Automate | Snap-ins | DevRev", + "text": "deduplication](/docs/automations/account-deduplication)\\n - [Airtable](/docs/automations/airtable)\\n - [Auto-link DevRev GitHub accounts](/docs/automations/auto-link-github-devrev)\\n - [Automatic customer reply](/docs/automations/auto-reply)\\n - [Auto parts to conversation](/docs/automations/auto-parts)\\n - [Automated part update](/docs/automations/automated-part-update)\\n - [Automate opportunities](/docs/automations/opportunity)\\n - [Bulk delete" + }, + { + "id": "ART-6175_KNOWLEDGE_NODE-9", + "title": "Airtable | Automate | Snap-ins | DevRev", + "text": "deduplication](/docs/automations/account-deduplication)\\n - [Airtable](/docs/automations/airtable)\\n - [Auto-link DevRev GitHub accounts](/docs/automations/auto-link-github-devrev)\\n - [Automatic customer reply](/docs/automations/auto-reply)\\n - [Auto parts to conversation](/docs/automations/auto-parts)\\n - [Automated part update](/docs/automations/automated-part-update)\\n - [Automate opportunities](/docs/automations/opportunity)\\n - [Bulk delete" + }, + { + "id": "ART-2028_KNOWLEDGE_NODE-9", + "title": "Work duration | Automate | Snap-ins | DevRev", + "text": "deduplication](/docs/automations/account-deduplication)\\n - [Airtable](/docs/automations/airtable)\\n - [Auto-link DevRev GitHub accounts](/docs/automations/auto-link-github-devrev)\\n - [Automatic customer reply](/docs/automations/auto-reply)\\n - [Auto parts to conversation](/docs/automations/auto-parts)\\n - [Automated part update](/docs/automations/automated-part-update)\\n - [Automate opportunities](/docs/automations/opportunity)\\n - [Bulk delete" + } + ] + }, + { + "query_id": "3a035e90-682d-4287-a6c9-4365d0755daf", + "query": "action to reopen ticket in workflow", + "retrievals": [ + { + "id": "ART-1961_KNOWLEDGE_NODE-35", + "title": "Workflows | Computer by DevRev | DevRev", + "text": "or one from a previous node.\\n8. Click **Deploy**.\\n9. If you need to modify the workflow after is has been deployed, click **Pause**, edit the workflow, then click **Deploy** to reactivate it.\\n\\nWorkflow example: Ticket auto-response\\n--------------------------------------\\n\\n```\\nControl\\n\\n\\n\\nIf true\\n\\n\\n\\nAction\\n\\n\\n\\nAction\\n\\n\\n\\nIf false\\n\\n\\n\\nAdd comment\\n\\n\\n\\nObject:\\xc2\\xa0Ticket\\xc2\\xa0Created\\xc2\\xa0>\\xc2\\xa0Output\\xc2\\xa0>\\xc2\\xa0ID \\nVisibility: External \\nBody:" + }, + { + "id": "ART-1976_KNOWLEDGE_NODE-25", + "title": "Routing | Computer for Support Teams | DevRev", + "text": "and effective resolution. Users can design workflows tailored to various scenarios; the example below illustrates a basic routing use case.\\n\\n| NODE | ACTIVITY |\\n| --- | --- |\\n| Trigger | Ticket created |\\n| Action | Pick user by group |\\n| Action | Update ticket |\\n| | ID: Ticket created > Output > ID |\\n| | Group > Output > ID |\\n| | Owned by > Set: Pick user > Output > User |\\n\\nOrgs can set up pull-based routing by updating the group instead of the user ID in the workflow illustrated" + }, + { + "id": "ART-12390_KNOWLEDGE_NODE-39", + "title": "Workflow action library | Workflows | Computer by DevRev | DevRev", + "text": "to update * subtype: (Optional) Ticket subtype * apps: (Optional) Related apps * app\\\\_custom\\\\_fields: (Optional) Custom fields * stage: (Optional) New stage | Updated ticket object |\\n\\nObject links\\n------------\\n\\n| Operation | Description | Input Parameters | Output |\\n| --- | --- | --- | --- |\\n| LinkConversationWithTicket | Creates a link between a conversation and a ticket. | * source: Conversation ID * link\\\\_type: Type of link (usually \"is\\\\_related\\\\_to\") * target: Ticket ID | Empty" + }, + { + "id": "ART-12390_KNOWLEDGE_NODE-29", + "title": "Workflow action library | Workflows | Computer by DevRev | DevRev", + "text": "Ticket | Creates a new ticket in DevRev. | * Ticket details like title, body, applies\\\\_to\\\\_part, etc. * subtype: (Optional) Ticket subtype * apps: (Optional) Related apps * app\\\\_custom\\\\_fields: (Optional) Custom fields | Created ticket object |\\n| Convert Conversation To Ticket | Converts a conversation to a ticket. | * conversation\\\\_id: ID of the conversation to convert | ticket\\\\_id: ID of the created ticket |\\n\\nObject retrieval\\n----------------\\n\\n| Operation | Description | Input" + }, + { + "id": "ART-2012_KNOWLEDGE_NODE-28", + "title": "Follow-up ticket | Automate | Snap-ins | DevRev", + "text": "say \\xe2\\x80\\x9cI would like to add a terminal stage on my tickets\\xe2\\x80\\x9d and we will get it done.\\n\\n * If no terminal stage is set, tickets will reopen on new comments from customers if **Reopen Closed Tickets on customer message** is enabled in the [convergence snap-in](./converge). The tickets move to the _In Progress_ state by default.\\n\\n * If you connected your support email address with DevRev, it is recommended that you enable the **Allow automations to send email** in your" + }, + { + "id": "ART-2009_KNOWLEDGE_NODE-27", + "title": "Convergence | Automate | Snap-ins | DevRev", + "text": "ticket is closed or reopened.\\n* Post in the linked conversation when a ticket is linked.\\n* Post in child issue timeline when parent issue is closed.\\n* Post in parent issue timeline when child issue is closed.\\n* Post to issue's timeline when linked ticket's severity is changed.\\n* Post in ticket's timeline when an issue linked to it is closed.\\n* Post in enhancement's timeline when any linked issue is *In Development*.\\n* Update ticket's stage when linked issue's state changes.\\n* Update" + }, + { + "id": "ART-12390_KNOWLEDGE_NODE-5", + "title": "Workflow action library | Workflows | Computer by DevRev | DevRev", + "text": "[Conversations](/docs/product/conversation)\\n\\n - [Conversation to ticket conversion](/docs/product/conversation-ticket)\\n + [Tickets](/docs/product/tickets)\\n + [Routing](/docs/product/routing)\\n + [Support best practices](/docs/product/support-bp)\\n + [Customer portal](/docs/product/support-portal)\\n + [Questions & answers](/docs/product/qa)\\n + [Knowledge Base](/docs/product/knowledge-base)\\n\\n - [Articles](/docs/product/articles)\\n - [Collections](/docs/product/collection)\\n" + }, + { + "id": "ART-12390_KNOWLEDGE_NODE-38", + "title": "Workflow action library | Workflows | Computer by DevRev | DevRev", + "text": "(Optional) Opportunity subtype * apps: (Optional) Related apps * app\\\\_custom\\\\_fields: (Optional) Custom fields * stage: (Optional) New stage | Updated opportunity object |\\n| UpdateQuestionAnswer | Updates a question and answer pair. | * id: ID of the Q&A to update * question: (Optional) Updated question * answer: (Optional) Updated answer * Other Q&A properties | Updated question\\\\_answer object |\\n| UpdateTicket | Updates ticket details. | * id: ID of the ticket to update * Ticket details" + }, + { + "id": "ART-12390_KNOWLEDGE_NODE-40", + "title": "Workflow action library | Workflows | Computer by DevRev | DevRev", + "text": "response on success |\\n| LinkIncidentWithIssue | Creates a link between an incident and an issue. | * source: Incident ID * link\\\\_type: Type of link (usually \"is\\\\_dependent\\\\_on\") * target: Issue ID | Empty response on success |\\n| LinkIssueWithIssue | Creates a link between two issues. | * source: Source issue ID * link\\\\_type: Type of link * target: Target issue ID | Empty response on success |\\n| LinkTicketWithIssue | Creates a link between a ticket and an issue. | * source: Ticket ID *" + }, + { + "id": "ART-1483_KNOWLEDGE_NODE-21", + "title": "Using a snap-in to perform a DevRev action — DevRev | Docs", + "text": "devrevSDK.worksCreate({ \\n 17| title: ticketName, \\n 18| body: ticketBody, \\n 19| // The ticket is created in the PROD-1 part. Rename this to match your part. \\n 20| applies_to_part: \"PROD-1\", \\n 21| // The ticket is owned by the DEVU-1 user. Rename this to match the required user. \\n 22| owned_by: [\"DEVU-1\"], \\n 23| type: publicSDK.WorkType.Ticket, \\n 24| }); \\n 25| \\n 26| console.log(response); \\n" + } + ] + }, + { + "query_id": "200e0274-aa07-4b9a-9610-a3ac1a55899d", + "query": "assign issue owner to someone else using workflow", + "retrievals": [ + { + "id": "ART-1976_KNOWLEDGE_NODE-25", + "title": "Routing | Computer for Support Teams | DevRev", + "text": "and effective resolution. Users can design workflows tailored to various scenarios; the example below illustrates a basic routing use case.\\n\\n| NODE | ACTIVITY |\\n| --- | --- |\\n| Trigger | Ticket created |\\n| Action | Pick user by group |\\n| Action | Update ticket |\\n| | ID: Ticket created > Output > ID |\\n| | Group > Output > ID |\\n| | Owned by > Set: Pick user > Output > User |\\n\\nOrgs can set up pull-based routing by updating the group instead of the user ID in the workflow illustrated" + }, + { + "id": "ART-1951_KNOWLEDGE_NODE-27", + "title": "Tasks | Computer by DevRev | DevRev", + "text": "work record can be assigned to others.\\n\\n![]()\\n\\nUse child issues and dependency issues for more heavy work assignments to others that are related to your work. Use tasks only for lightweight things like reviewing your work.\\n\\nYou cannot see the linked work item (issue, ticket, or opportunity) for a task and can navigate to it directly from there.\\n\\n[PreviousBoard view](/docs/product/board-view)[NextUpdates](/docs/product/updates)\\n\\n[Enterprise grade security to protect customer" + }, + { + "id": "ART-1988_KNOWLEDGE_NODE-27", + "title": "Computer for Builders | DevRev", + "text": "provide significant flexibility in terms of size, hierarchy, and nature of work.\\n\\nIssues may contain smaller [tasks](./tasks) for the owner to track their own work. If work is needed from someone other than the issue owner, you can create child issues and assign them to a different owner.\\n\\n[Enhancements](./enhancements) may be used to track higher-level groups of user stories or to bundle related work together.\\n\\n\\xf0\\x9f\\x93\\x85 Planning: NNL &" + }, + { + "id": "ART-1994_KNOWLEDGE_NODE-33", + "title": "Sprint mode | Computer for Builders | DevRev", + "text": "sprint board and click **+Issue**.\\n Create a new issue, assign it to the part, sprint and add the owner.\\n\\n ![]()\\n\\n Sprints are not coordinated with stages.\\n3. Select issues that you would like to assign to **Sprint 1** or **Sprint 2** then click **Move** in the toolbar at the top of the screen and select the sprint.\\n\\n ![]()\\n4. Go to **Sprint 1** or **Sprint 2** to see that issues are displayed.\\n\\n ![]()\\n\\n The sprint is also displayed in (and can be changed from) the" + }, + { + "id": "ART-12390_KNOWLEDGE_NODE-36", + "title": "Workflow action library | Workflows | Computer by DevRev | DevRev", + "text": "enhancement object |\\n| UpdateIncident | Updates incident details. | * id: ID of the incident to update * Incident details to update * subtype: (Optional) Incident subtype * apps: (Optional) Related apps * app\\\\_custom\\\\_fields: (Optional) Custom fields * stage: (Optional) New stage | Updated incident object |\\n| UpdateIssue | Updates issue details. | * id: ID of the issue to update * Issue details to update * subtype: (Optional) Issue subtype * apps: (Optional) Related apps *" + }, + { + "id": "ART-16615_KNOWLEDGE_NODE-28", + "title": "Board view | Vistas | Computer by DevRev | DevRev", + "text": "reassign Owner while keeping the same Stage.\\n * Drag diagonally to change both Stage and Owner simultaneously. For example, moving a card from *In Progress/John* to *Review/Sarah*.\\n3. **Edit inline**: Click directly on editable fields within cards to make quick updates.\\n4. **Bulk edit**: Select multiple cards using hover or Shift + click and apply bulk actions in one go.\\n\\n![]()\\n\\n### Customize your view\\n\\n1. **Create new items**: Click the **+** icon in any column or swimlane" + }, + { + "id": "ART-2737_KNOWLEDGE_NODE-25", + "title": "Smart issue creator | Automate | Snap-ins | DevRev", + "text": "snap-in](https://marketplace.devrev.ai/smart-issue-creator) on the DevRev marketplace.\\n\\nInstallation\\n------------\\n\\n1. In DevRev, go to **Settings** > **Snap-ins** and click **Explore Marketplace** in the top-right corner.\\n2. In the DevRev marketplace, find **Smart issue creator** and click **Install**.\\n3. In DevRev, **Snap-ins** > **Smart issue creator** > **Configure**.\\n4. Select the default owner, part, and tags. The default owner is assigned if no owner is selected from the snapkit." + }, + { + "id": "ART-2053_KNOWLEDGE_NODE-29", + "title": "Jira Software AirSync | AirSync | Snap-ins | DevRev", + "text": "on Issue | Tag on Issue/Ticket | \\xe2\\x9c\\x85 | \\xe2\\x9c\\x85 |\\n| Link between Issues | Link between Issues/Tickets/Enhancements | \\xe2\\x9c\\x85 | \\xe2\\x9c\\x85 |\\n| Attachment on Issue | Attachment on Issue/Ticket/Enhancements | \\xe2\\x9c\\x85 | \\xe2\\x9c\\x85 |\\n| Status Category/States of Issue | State/Stage of Issue/Ticket/Enhancements | \\xe2\\x9c\\x85 | \\xe2\\x9c\\x85 |\\n| Workflow of Issue | Stage Transition Diagram of Issue/Ticket/Enhancements | \\xe2\\x9c\\x85 | \\xe2\\x9d\\x8c |\\n| User | DevUser |" + }, + { + "id": "ART-12394_KNOWLEDGE_NODE-29", + "title": "Workflow management | Workflows | Computer by DevRev | DevRev", + "text": "users have the ability to view them.\\n* There is a default group called **Agents and Automation Admins**. Members of this group have full access to manage workflows, including creating, updating, deploying, and deleting them. You can add people to this group to grant them these permissions.\\n* To create custom groups for workflow managers, go to [**Settings** > **User Management** > **Roles**](https://app.devrev.ai/devrev/settings/user-roles). Create a new role with the necessary workflow" + }, + { + "id": "ART-12390_KNOWLEDGE_NODE-40", + "title": "Workflow action library | Workflows | Computer by DevRev | DevRev", + "text": "response on success |\\n| LinkIncidentWithIssue | Creates a link between an incident and an issue. | * source: Incident ID * link\\\\_type: Type of link (usually \"is\\\\_dependent\\\\_on\") * target: Issue ID | Empty response on success |\\n| LinkIssueWithIssue | Creates a link between two issues. | * source: Source issue ID * link\\\\_type: Type of link * target: Target issue ID | Empty response on success |\\n| LinkTicketWithIssue | Creates a link between a ticket and an issue. | * source: Ticket ID *" + } + ] + }, + { + "query_id": "2c22e8f5-d293-4b2d-9aa4-2cf0c01e2cc2", + "query": "add multiple email addresses to one contact through Grow interface", + "retrievals": [ + { + "id": "ART-2002_KNOWLEDGE_NODE-27", + "title": "Contacts | Computer for Growth Teams | DevRev", + "text": "Plug, email, and WhatsApp) can be matched to the right customer record.\\n\\n![]()\\n\\nYou can create a contact using DevRev's rev-users.create API. Follow the [Create accounts and contacts in DevRev](https://developer.devrev.ai/beta/guides/create-accounts-and-contacts-in-dev-rev) tutorial.\\n\\n### Bulk import customer records\\n\\nTo bulk import customer records, see [Account and contact import](/docs/product/account-contact-import).\\n\\nYou can also use [AirSync](https://docs.devrev.ai/import) to" + }, + { + "id": "ART-2027_KNOWLEDGE_NODE-8", + "title": "Email | Integrate | Snap-ins | DevRev", + "text": "tracking](/docs/plug/cross-domain-session)\\n + [Nudges](/docs/plug/nudges)\\n* [Computer for Growth Teams](/docs/product/grow)\\n\\n + [Accounts](/docs/product/account)\\n + [Opportunities](/docs/product/opportunity)\\n + [Contacts](/docs/product/customers)\\n + [Account and contact import](/docs/product/account-contact-import)\\n + [Grow snap-ins](/docs/product/snapins-grow)\\n* [Snap-ins](/docs/snapins)\\n\\n + [Automate](/docs/automate)\\n\\n - [Account" + }, + { + "id": "ART-3207_KNOWLEDGE_NODE-8", + "title": "Email snap-in configuration | Email | Integrate | Snap-ins | DevRev", + "text": "options](/docs/plug/session-recording)\\n - [Cross-domain session tracking](/docs/plug/cross-domain-session)\\n + [Nudges](/docs/plug/nudges)\\n* [Computer for Growth Teams](/docs/product/grow)\\n\\n + [Accounts](/docs/product/account)\\n + [Opportunities](/docs/product/opportunity)\\n + [Contacts](/docs/product/customers)\\n + [Account and contact import](/docs/product/account-contact-import)\\n + [Grow snap-ins](/docs/product/snapins-grow)\\n* [Snap-ins](/docs/snapins)\\n\\n +" + }, + { + "id": "ART-2666_KNOWLEDGE_NODE-8", + "title": "October 5: Left navigation | Changelog | DevRev", + "text": "import](/docs/product/account-contact-import)\\n * [Grow snap-ins](/docs/product/snapins-grow)\\n\\n * [Snap-ins](/docs/snapins)\\n\\n * [Automate](/docs/automate)\\n\\n * [Account deduplication](/docs/automations/account-deduplication)\\n * [Airtable](/docs/automations/airtable)\\n * [Auto-link DevRev GitHub accounts](/docs/automations/auto-link-github-devrev)\\n * [Automatic customer reply](/docs/automations/auto-reply)\\n * [Auto parts to" + }, + { + "id": "ART-2002_KNOWLEDGE_NODE-26", + "title": "Contacts | Computer for Growth Teams | DevRev", + "text": "(for example Stripe as a customer of Slack) or a workspace in your software product (such as a Slack workspace).\\n\\nCreate a new customer contact\\n-----------------------------\\n\\n1. Go to **Contacts** > **+ Contact**.\\n2. Fill in the following fields as **Add Display Name, Description, Domains, Tags, Tiers**.\\n3. Click **Create**.\\n\\nWhile creating new customer records, be sure to specify the [**External Reference**](#external-reference) so customer information coming from other channels (like" + }, + { + "id": "ART-1953_KNOWLEDGE_NODE-8", + "title": "Customer email notifications | Computer by DevRev | DevRev", + "text": "tracking](/docs/plug/cross-domain-session)\\n + [Nudges](/docs/plug/nudges)\\n* [Computer for Growth Teams](/docs/product/grow)\\n\\n + [Accounts](/docs/product/account)\\n + [Opportunities](/docs/product/opportunity)\\n + [Contacts](/docs/product/customers)\\n + [Account and contact import](/docs/product/account-contact-import)\\n + [Grow snap-ins](/docs/product/snapins-grow)\\n* [Snap-ins](/docs/snapins)\\n\\n + [Automate](/docs/automate)\\n\\n - [Account" + }, + { + "id": "ART-2575_KNOWLEDGE_NODE-28", + "title": "Account and contact import | Computer for Growth Teams | DevRev", + "text": "a database identifier or an email address.)\\n* account\\\\_external\\\\_reference (the external reference of the contact\\'s parent account)\\n\\n### Array fields\\n\\nFor fields that accept multiple values, such as **owners** and **industry**, values should be separated by commas (,). For example, Agriculture and Forestry should be written as Agriculture,Forestry.\\n\\n![]()\\n\\nIf a value contains a comma, enclose it in backticks. For example, enter \"Rail, Bus & Taxi\" as `Rail, Bus & Taxi`.\\n\\n###" + }, + { + "id": "ART-2912_KNOWLEDGE_NODE-8", + "title": "Ticket email notifier | Automate | Snap-ins | DevRev", + "text": "tracking](/docs/plug/cross-domain-session)\\n + [Nudges](/docs/plug/nudges)\\n* [Computer for Growth Teams](/docs/product/grow)\\n\\n + [Accounts](/docs/product/account)\\n + [Opportunities](/docs/product/opportunity)\\n + [Contacts](/docs/product/customers)\\n + [Account and contact import](/docs/product/account-contact-import)\\n + [Grow snap-ins](/docs/product/snapins-grow)\\n* [Snap-ins](/docs/snapins)\\n\\n + [Automate](/docs/automate)\\n\\n - [Account" + }, + { + "id": "ART-2029_KNOWLEDGE_NODE-8", + "title": "WhatsApp | Integrate | Snap-ins | DevRev", + "text": "tracking](/docs/plug/cross-domain-session)\\n + [Nudges](/docs/plug/nudges)\\n* [Computer for Growth Teams](/docs/product/grow)\\n\\n + [Accounts](/docs/product/account)\\n + [Opportunities](/docs/product/opportunity)\\n + [Contacts](/docs/product/customers)\\n + [Account and contact import](/docs/product/account-contact-import)\\n + [Grow snap-ins](/docs/product/snapins-grow)\\n* [Snap-ins](/docs/snapins)\\n\\n + [Automate](/docs/automate)\\n\\n - [Account" + }, + { + "id": "ART-16082_KNOWLEDGE_NODE-8", + "title": "Gmail AirSync | AirSync | Snap-ins | DevRev", + "text": "tracking](/docs/plug/cross-domain-session)\\n + [Nudges](/docs/plug/nudges)\\n* [Computer for Growth Teams](/docs/product/grow)\\n\\n + [Accounts](/docs/product/account)\\n + [Opportunities](/docs/product/opportunity)\\n + [Contacts](/docs/product/customers)\\n + [Account and contact import](/docs/product/account-contact-import)\\n + [Grow snap-ins](/docs/product/snapins-grow)\\n* [Snap-ins](/docs/snapins)\\n\\n + [Automate](/docs/automate)\\n\\n - [Account" + } + ] + }, + { + "query_id": "45a08470-c6f0-412a-9985-bbfd3f725b3c", + "query": "list agents API for account", + "retrievals": [ + { + "id": "ART-4206_KNOWLEDGE_NODE-1", + "title": "Agents async API | DevRev | Docs", + "text": "message](/beta/guides/agents-async-api#final-message)\\n* [Error message](/beta/guides/agents-async-api#error-message)\\n* [Implementation patterns](/beta/guides/agents-async-api#implementation-patterns)\\n* [Custom applications](/beta/guides/agents-async-api#custom-applications)\\n* [Talk to agent node in workflows](/beta/guides/agents-async-api#talk-to-agent-node-in-workflows)\\n* [Troubleshooting](/beta/guides/agents-async-api#troubleshooting)\\n\\n[Guides](/beta/guides/account-creation)\\n\\nAgents" + }, + { + "id": "ART-4206_KNOWLEDGE_NODE-0", + "title": "Agents async API | DevRev | Docs", + "text": "b'Agents async API | DevRev | Docs\\n\\n[![]()![]()](https://developer.devrev.ai/)\\n\\nBeta\\n\\nBeta\\n\\nBeta\\n\\nSearch\\n\\n`/`\\n\\nOn this page\\n\\n* [Set up webhook](/beta/guides/agents-async-api#set-up-webhook)\\n* [Make async API calls](/beta/guides/agents-async-api#make-async-api-calls)\\n* [Handle webhook events](/beta/guides/agents-async-api#handle-webhook-events)\\n* [Progress messages](/beta/guides/agents-async-api#progress-messages)\\n* [Final" + }, + { + "id": "ART-4206_KNOWLEDGE_NODE-17", + "title": "Agents async API | DevRev | Docs", + "text": "|\\n| 3 | // Show loading indicator |\\n| 4 | displayLoadingIndicator(); |\\n| 5 | |\\n| 6 | // Make async API call |\\n| 7 | fetch(\"https://api.devrev.ai/internal/ai-agents.events.execute-async\", { |\\n| 8 | method: \"POST\", |\\n| 9 | headers: { |\\n| 10 | \"Content-Type\": \"application/json\", |\\n| 11 | Authorization: Bearer \"YOUR_API_KEY\", |\\n| 12 | }, |\\n| 13 | body: JSON.stringify({ |\\n| 14 | agent: \"your_agent_id\", |\\n| 15 | event: { |\\n| 16 | input_message: { |\\n| 17 | message: message, |\\n| 18 |" + }, + { + "id": "ART-2933_KNOWLEDGE_NODE-22", + "title": "Account creation | DevRev | Docs", + "text": "created in **Accounts** and selecting the **Contacts** tab to view all the contacts created for the selected account.\\n\\n![]()\\n\\nWas this page helpful?\\n\\nYesNo\\n\\n[Previous](/beta/changelog/2024/12/2)[#### Agents async API\\n\\nNext](/beta/guides/agents-async-api)[Built with](https://buildwithfern.com/?utm_campaign=buildWith&utm_medium=docs&utm_source=developer.devrev.ai)\\n\\n![]()'" + }, + { + "id": "ART-4206_KNOWLEDGE_NODE-16", + "title": "Agents async API | DevRev | Docs", + "text": "endpoint in your application that can receive POST requests.\\n2. Register this endpoint with DevRev using the webhooks.create API.\\n3. Make async API calls with your agent ID and webhook ID.\\n4. Process incoming webhook events to:\\n * Track progress (optional).\\n * Display the final agent response to the user.\\n * Handle any errors.\\n\\nExample flow for a chat application:\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | // 1. When user sends a message |\\n| 2 | function handleUserMessage(message) {" + }, + { + "id": "ART-4206_KNOWLEDGE_NODE-6", + "title": "Agents async API | DevRev | Docs", + "text": "OK |\\n| 2 | { |\\n| 3 | \"challenge\": \"DlrVaK7zRyZWwbJhj5dZHDlrVaK7Jhj5dZZjH\" |\\n| 4 | } |\\n```\\n\\nYou should follow the documentation provided for webhooks [here](https://developer.devrev.ai/public/guides/webhooks)\\n\\nMake async API calls\\n--------------------\\n\\n**Key parameters:**\\n\\n* `agent`: Your agent\\xe2\\x80\\x99s ID.\\n* `event.input_message.message`: The query for your agent.\\n* `session_object`: A unique identifier for the conversation session (maintains agent memory).\\n*" + }, + { + "id": "ART-1465_KNOWLEDGE_NODE-17", + "title": "List Accounts (POST) — DevRev | Docs", + "text": "Agents?](https://devrev.ai/what-are-ai-agents)\\n * [What is Agentic AI?](https://devrev.ai/what-is-agentic-ai)\\n * [What is Enterprise Search?](https://devrev.ai/what-is-enterprise-search)\\n * [What is Conversational AI?](https://devrev.ai/what-is-conversational-ai)\\n\\n[](https://devrev.ai)\\n\\n[](https://www.linkedin.com/company/devrev)[](https://medium.com/devrev)[](https://twitter.com/devrev)\\n\\n[System Status](https://devrev.ai/status)\\n\\n\\xc2\\xa9 2025 DevRev Inc.\\n\\n'" + }, + { + "id": "ART-4206_KNOWLEDGE_NODE-23", + "title": "Agents async API | DevRev | Docs", + "text": "events to see which skills were invoked\\n* Check if any skills returned error outputs\\n* Verify your agent\\xe2\\x80\\x99s configuration in the DevRev agent builder\\n\\nWas this page helpful?\\n\\nYesNo\\n\\n[Previous](/beta/guides/account-creation)[#### Links\\n\\nNext](/beta/guides/links)[Built with](https://buildwithfern.com/?utm_campaign=buildWith&utm_medium=docs&utm_source=developer.devrev.ai)'" + }, + { + "id": "ART-4206_KNOWLEDGE_NODE-2", + "title": "Agents async API | DevRev | Docs", + "text": "async API\\n================\\n\\nCopy page\\n\\nThis cookbook provides a step-by-step guide to use the asynchronous API for DevRev agents. It assumes you\\xe2\\x80\\x99ve already created an agent using the DevRev agent builder platform.\\n\\nThe DevRev async API enables you to execute agents without any execution timeout concerns. The execution occurs as an asynchronous workflow that sends events to you via webhooks. This approach ensures:\\n\\n* Agent complexity does not bring timeout concerns with" + }, + { + "id": "ART-4206_KNOWLEDGE_NODE-7", + "title": "Agents async API | DevRev | Docs", + "text": "`webhook_target.webhook`: The webhook ID created earlier.\\n\\n**To execute an agent asynchronously:**\\n\\nBashJavaScript\\n\\n```\\n| | |\\n| --- | --- |\\n| $ | curl --location \\'https://api.devrev.ai/internal/ai-agents.events.execute-async\\' \\\\ |\\n| > | --header \\'Content-Type: application/json\\' \\\\ |\\n| > | --header \\'Accept: application/json\\' \\\\ |\\n| > | --header \\'Authorization: Bearer \\' \\\\ |\\n| > | --data \\'{ |\\n| > | \"agent\": \"don:core:dvrv-us-1:devo/0:ai_agent/1\", |\\n| > |" + } + ] + }, + { + "query_id": "f70a832e-15aa-4d51-bd81-81f1d51a3990", + "query": "SLA timer not running for newly created tickets with L1 SLA tag and Test SLA Pilot", + "retrievals": [ + { + "id": "ART-1986_KNOWLEDGE_NODE-44", + "title": "Service-level agreement | Computer for Support Teams | DevRev", + "text": "**Custom**: Filters all tickets that will breach by the selected date.\\n\\n![]()\\n\\nTroubleshooting: No SLA running on the ticket\\n---------------------------------------------\\n\\n### Issue\\n\\nYou have created and published an SLA, but no SLA is running on the ticket.\\n\\n### Solution\\n\\n1. Check the **SLA Name** attribute:\\n\\n\\xc2\\xa0\\xc2\\xa0 - Verify that the **SLA Name** attribute on the ticket is not empty.\\n\\n\\xc2\\xa0\\xc2\\xa0 - If the **SLA Name** is empty, it means the customer account" + }, + { + "id": "ART-1986_KNOWLEDGE_NODE-28", + "title": "Service-level agreement | Computer for Support Teams | DevRev", + "text": "*Conversation Policy*.\\n3. In the **New ticket policy** pane, under **Conditions**, select the ticket attributes values of **Tag**, **Part**, and **Severity**.\\n4. Under **Metrics**, enable or disable **First response**, **Next response**, and **Resolution time**.\\n5. Click **Publish**.\\n\\n![]()\\n\\nSLA metrics are only applied to tickets or conversations that meet the policy's conditions.\\n\\nPublishing an SLA\\n-----------------\\n\\nSLAs can be published once all policies are created. Published" + }, + { + "id": "ART-1986_KNOWLEDGE_NODE-48", + "title": "Service-level agreement | Computer for Support Teams | DevRev", + "text": "[Adding assignment rules](#adding-assignment-rules)\\n* [SLA metric calculation](#sla-metric-calculation)\\n* [Viewing SLAs](#viewing-slas)\\n* [Filtering tickets by Next SLA Target](#filtering-tickets-by-next-sla-target)\\n* [Troubleshooting: No SLA running on the ticket](#troubleshooting-no-sla-running-on-the-ticket)\\n* [Issue](#issue)\\n* [Solution](#solution)\\n* [Next steps](#next-steps)\\n* [Expected result](#expected-result)\\n\\n[Enterprise grade security to protect customer data\\n\\nLearn more" + }, + { + "id": "ART-1986_KNOWLEDGE_NODE-46", + "title": "Service-level agreement | Computer for Support Teams | DevRev", + "text": "\\xc2\\xa0 - Action: Check the policies you have created for the SLA listed under **SLA Name**. For example, if you have created two policies, one with the condition Severity = Blocker and another with Severity = High, a ticket with medium severity will still have the SLA name but will not have any running metrics because it does not meet the severity conditions.\\n\\n### Next steps\\n\\nIf the issue persists, review your SLA assignment rules and policies or contact support for further" + }, + { + "id": "ART-1986_KNOWLEDGE_NODE-41", + "title": "Service-level agreement | Computer for Support Teams | DevRev", + "text": "resolution is due in one day, the vista displays five minutes. In the case where the first response isn't provided within five minutes, the timer displays negative values (such as -10m), which indicates that it's been 10 minutes since the first response was due. Conversations or tickets can also be grouped by SLA stages.\\n\\nIn the **Detailed View**, all metrics applied to the ticket or conversation can be viewed along with their current stage.\\n\\nFiltering tickets by Next SLA" + }, + { + "id": "ART-1986_KNOWLEDGE_NODE-35", + "title": "Service-level agreement | Computer for Support Teams | DevRev", + "text": "of schedule when they remain at the same stage, but time spent out of schedule isn't included in the calculation.\\n\\n![]()\\n\\nIf the customer account is updated after the ticket is created, all SLA metrics will be recalculated based on the updated customer account information. Any previous SLA breaches or achievements will be discarded, and new calculations will be applied according to the updated SLA.\\n\\nThe following table describes how each metric works for tickets and" + }, + { + "id": "ART-1560_KNOWLEDGE_NODE-307", + "title": "Assign (Beta) — DevRev | Docs", + "text": "Create.\\n\\nPOST https://api.devrev.ai / slas.create\\n\\nCreates an SLA in draft status.\\n\\nRequest.\\n\\nThis endpoint expects an object.\\nname string Required\\n\\nHuman-readable name.\\n\\naccount_selector object Optional\\nShow 10 properties\\napplies_to list of enums Optional\\nAllowed values: conversation issue ticket\\n\\nThe object types this SLA can apply to.\\n\\ndescription string Optional\\n\\nDescription of the purpose and capabilities of the SLA.\\n\\nevaluation_period enum Optional\\nAllowed values:" + }, + { + "id": "ART-1566_KNOWLEDGE_NODE-304", + "title": "Transition (Beta) — DevRev | Docs", + "text": "https://api.devrev.ai / slas.create\\n\\nCreates an SLA in draft status.\\n\\nRequest.\\n\\nThis endpoint expects an object.\\nname string Required\\n\\nHuman-readable name.\\n\\naccount_selector object Optional\\nShow 10 properties\\napplies_to list of enums Optional\\nAllowed values: conversation issue ticket\\n\\nThe object types this SLA can apply to.\\n\\ndescription string Optional\\n\\nDescription of the purpose and capabilities of the SLA.\\n\\nevaluation_period enum Optional\\nAllowed values: monthly" + }, + { + "id": "ART-1551_KNOWLEDGE_NODE-304", + "title": "Update (Beta) — DevRev | Docs", + "text": "https://api.devrev.ai / slas.create\\n\\nCreates an SLA in draft status.\\n\\nRequest.\\n\\nThis endpoint expects an object.\\nname string Required\\n\\nHuman-readable name.\\n\\naccount_selector object Optional\\nShow 10 properties\\napplies_to list of enums Optional\\nAllowed values: conversation issue ticket\\n\\nThe object types this SLA can apply to.\\n\\ndescription string Optional\\n\\nDescription of the purpose and capabilities of the SLA.\\n\\nevaluation_period enum Optional\\nAllowed values: monthly" + }, + { + "id": "ART-1562_KNOWLEDGE_NODE-304", + "title": "Get (Beta) — DevRev | Docs", + "text": "https://api.devrev.ai / slas.create\\n\\nCreates an SLA in draft status.\\n\\nRequest.\\n\\nThis endpoint expects an object.\\nname string Required\\n\\nHuman-readable name.\\n\\naccount_selector object Optional\\nShow 10 properties\\napplies_to list of enums Optional\\nAllowed values: conversation issue ticket\\n\\nThe object types this SLA can apply to.\\n\\ndescription string Optional\\n\\nDescription of the purpose and capabilities of the SLA.\\n\\nevaluation_period enum Optional\\nAllowed values: monthly" + } + ] + }, + { + "query_id": "dc2b710b-25ce-4b9d-b85c-f556e8fd4a56", + "query": "how to find secondary ticket", + "retrievals": [ + { + "id": "ART-1979_KNOWLEDGE_NODE-54", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "already raised in the primary ticket. Duplicate tickets often arise from customers submitting multiple requests through different channels (email, portal, Slack). All duplicate tickets become *immutable* after merging.\\n\\n**Primary ticket**\\n\\nA primary ticket is the main record that consolidates all relevant information from duplicate tickets. It serves as the primary source of communication for all merged duplicate tickets, ensuring that all customer interactions, updates, and resolutions are" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-64", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "internal tickets.\\n\\nTo create an internal ticket, click the **Create Ticket** button. At the bottom of the ticket creation panel, click the dropdown menu on **Create external ticket** and select **Create internal ticket**.\\n\\nYou can convert an internal ticket to an external ticket by clicking **Convert to External** within the **Customer Messages** tab. Once a ticket is converted to external, it cannot be reverted back to internal.\\n\\n[PreviousConversation to ticket" + }, + { + "id": "ART-15376_KNOWLEDGE_NODE-2", + "title": "Merge Dev Users | DevRev | Docs", + "text": "tickets, parts\\netc. owned by the secondary Dev user will be transferred to the primary\\nDev user.\\n\\n### Headers\\n\\nAuthorizationstringRequired\\n\\nBearer authentication of the form `Bearer `, where token is your auth token.\\n\\n### Request\\n\\nThis endpoint expects an object.\\n\\nprimary\\\\_userstringRequired`format: \"id\"`\\n\\nThe unique ID of the primary user.\\n\\nsecondary\\\\_userstringRequired`format: \"id\"`\\n\\nThe unique ID of the secondary user.\\n\\n### Response\\n\\nResponse object for" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-57", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "only when users configure the post merge stage in the ticket preference settings page.\\n\\n### Merge tickets\\n\\n1. Open the primary ticket and select the merge option from the side panel.\\n\\n ![]()\\n\\n The ticket from which you initiate the merge becomes the primary ticket.\\n2. In the modal window that appears, review the suggested duplicate tickets based on the pre-filled primary ticket title.\\n3. Select the appropriate duplicate tickets and confirm the merge action.\\n\\n There is no limit" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-28", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "and group tickets in various views.\\nYou can find all the stock attributes listed in **Settings** > **Object customization** > **Ticket** > **Stock fields**.\\nThese are the stock attributes that come with DevRev:\\n\\n* **Owner**: The person responsible for the ticket. Tickets are assigned to an engineer, PM, designer, or any other team member through the **Owner** attribute.\\n* **Group**: The group to which the ticket belongs. For more information on groups, see [groups](./groups).\\n*" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-56", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "reporters or no reporters.\\n* Active status: Only unclosed tickets can be selected as primary or duplicate tickets.\\n* Channel flexibility: Tickets from any channel can be merged if they share the same reporters.\\n\\n### Merge settings\\n\\nYou can configure the following options in the ticket preferences page:\\n\\n* Communication messages for duplicate and primary ticket owners\\n* Stage of duplicate tickets after merge\\n* Accounts to exclude from automated messages\\n\\n![]()\\n\\nMerge can be enabled" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-49", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "tickets. Resolved means that the customer's concerns which led to the ticket have been addressed.\\n\\nSubtypes\\n--------\\n\\nYou can create subtypes for tickets to categorize them based on the type of issue. For example, you can create subtypes for bugs, feature requests, or questions.\\nA subtype inherits all the attributes of its parent ticket type. You can add custom attributes to a subtype.\\nTo know how to create subtypes and add custom attributes to them, see [object" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-59", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "duplicate tickets transfer to the primary ticket.\\n* The older messages and attachments on the duplicate ticket remains within the duplicate ticket post merge.\\n* Any new customer message on duplicate tickets post merge sync to the primary ticket.\\n* Duplicate tickets remain accessible through the **Linked Objects** section of the primary ticket.\\n* CSAT triggers only for the primary ticket resolution.\\n* Merge actions cannot be reversed, and merged tickets cannot be merged again.\\n\\nFollow up" + }, + { + "id": "ART-1244_KNOWLEDGE_NODE-22", + "title": "Export Works | DevRev | Docs", + "text": "tickets belonging to specific groups.\\n\\nticket.is\\\\_frozenbooleanOptional\\n\\nFilters for frozen tickets.\\n\\nticket.is\\\\_spambooleanOptional\\n\\nFilters for tickets that are spam.\\n\\nticket.needs\\\\_responsebooleanOptional\\n\\nFilters for tickets that need response.\\n\\nticket.rev\\\\_orglist of stringsOptional\\n\\nFilters for tickets that are associated with any of the provided Rev\\norganizations.\\n\\nticket.severitylist of enumsOptional\\n\\nFilters for tickets with any of the provided" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-27", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "also be used to engage customers for feedback/ideas (such as new feature ideas). Scoping is important for broadcast tickets as there needs to be a differentiation between broadcast (all revs) vs. multicast (particular revs).\\n\\nViews of tickets can be found under **Support** in the DevRev app.\\n\\n![]()\\n\\nYou can export views to CSV or JSON by selecting **Actions** in the upper-right corner and choosing the format.\\n\\nAttributes\\n----------\\n\\nTickets have attributes that can be used to filter" + } + ] + }, + { + "query_id": "05e8a3ee-fe67-4ece-b8c8-5088330b0864", + "query": "converting conversations to tickets issue customer channel acme", + "retrievals": [ + { + "id": "ART-4271_KNOWLEDGE_NODE-26", + "title": "Convert Conversations to Tickets | Conversations | Support | DevRev", + "text": "conversation metadata including: \\n * Source channel\\n * Customer account information\\n * External members added as **reported by** on the ticket\\n * An AI-generated ticket title and description based on customer messages.\\n\\n### How to convert Conversations to Tickets\\n\\n**Manual Conversion**\\n\\nTo manually convert a conversation to a ticket:\\n\\n 1. Open the conversation record pane view.\\n 2. Click **Convert to Ticket** to initiate the conversion.\\n\\n**Automated Conversion" + }, + { + "id": "ART-4271_KNOWLEDGE_NODE-29", + "title": "Convert Conversations to Tickets | Conversations | Support | DevRev", + "text": "end user.\\n\\n## Why you should convert a Conversation to a Ticket\\n\\nConsider converting a conversation to a ticket in these scenarios:\\n\\n * **Complex issues** : When a customer inquiry requires in-depth investigation that can't be resolved in a quick conversation.\\n * **Cross-team collaboration** : Issues requiring input from multiple departments or specialists.\\n * **Escalation needs** : When a conversation needs to be escalated to a higher support tier.\\n * **Feature requests** :" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-28", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "tickets\\n--------------------------------\\n\\n**Manual conversion**\\n\\nGo to the conversation record pane and select **Convert to Ticket** to create a new ticket from the conversation.\\n\\n![]()\\n\\n**Automated conversion via workflows**\\n\\nSet up automated [workflows](./workflow-engine) to convert conversations to tickets based on specific triggers:\\n\\n* When a conversation meets defined criteria\\n* When the AI agent identifies an issue requiring escalation\\n* According to custom business" + }, + { + "id": "ART-4271_KNOWLEDGE_NODE-27", + "title": "Convert Conversations to Tickets | Conversations | Support | DevRev", + "text": "via Workflows**\\n\\nSet up automated workflows to convert conversations to tickets based on specific triggers:\\n\\n * When a conversation is updated with certain criteria\\n * When your AI agent identifies an issue requiring escalation\\n * According to your custom business rules\\n\\nWorkflows enable seamless handovers from automated conversations to your support teams when necessary.\\n\\n## End user experience\\n\\n### PLuG widget experience\\n\\nWhen a conversation is converted to a ticket in the" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-26", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "functionality is replaced with a new **Convert to Ticket** feature. Currently, the conversion feature is available only for Plug and Slack conversations. Other channels still use the traditional **Link Ticket** functionality.\\n\\nConversion cannot be undone. Once a conversation is converted to a ticket, this action is permanent and the conversation remains archived.\\n\\nConversation conversion process\\n-------------------------------\\n\\nWhen you convert a conversation to a ticket, the following" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-25", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "Teams](/docs/product/support)\\n[Conversations](/docs/product/conversation)\\n[Conversation to ticket conversion](/docs/product/conversation-ticket)\\n\\nConversation to ticket conversion\\n=================================\\n\\nYou can convert conversations from Plug and Slack directly into tickets. Previously, conversations were only linked to tickets. This update streamlines workflows and enhances the customer experience.\\n\\nFor conversations originating from Plug or Slack, the **Link to Ticket**" + }, + { + "id": "ART-4271_KNOWLEDGE_NODE-24", + "title": "Convert Conversations to Tickets | Conversations | Support | DevRev", + "text": "[Support](/docs/product/support?)\\n 4. [Conversations](/docs/product/conversation?)\\n 5. [Convert Conversations to Tickets](/docs/product/Conversation-Tickets?)\\n\\n# Convert Conversations to Tickets\\n\\nYou can now convert conversations from PLuG and Slack directly into tickets. Previously, conversations were only linked to tickets. This update streamlines workflows and enhances the customer experience.\\n\\nFor conversations originating from PLuG or Slack, the **Link to Ticket** functionality" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-24", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "[Product demos](/docs/DevRevU/demos)\\n\\nOn this page\\n\\n* [Conversation conversion process](#conversation-conversion-process)\\n* [Convert conversations to tickets](#convert-conversations-to-tickets)\\n* [Plug widget end-user experience](#plug-widget-enduser-experience)\\n* [Slack end-user experience](#slack-enduser-experience)\\n* [Conversation conversion scenarios](#conversation-conversion-scenarios)\\n* [Support workflows](#support-workflows)\\n\\n1. [Documentation](/docs)\\n3. [Computer for Support" + }, + { + "id": "ART-6174_KNOWLEDGE_NODE-32", + "title": "Conversation to ticket conversion | Conversations | Computer for Support Teams | DevRev", + "text": "handling**: Conversation and ticket SLAs operate independently. When converting:\\n\\n + The new ticket starts with its own response and resolution SLA timers\\n + All active SLA metrics on the original conversation are marked as completed\\n\\n[PreviousConversations](/docs/product/conversation)[NextTickets](/docs/product/tickets)\\n\\n#### On this page\\n\\n* [Conversation conversion process](#conversation-conversion-process)\\n* [Convert conversations to tickets](#convert-conversations-to-tickets)\\n*" + }, + { + "id": "ART-4271_KNOWLEDGE_NODE-31", + "title": "Convert Conversations to Tickets | Conversations | Support | DevRev", + "text": "AI-handled conversation reaches its capability limits and needs human expertise.\\n * **Extended troubleshooting** : Issues requiring multiple steps or follow-ups over time.\\n\\n## Key information\\n\\n * **Channel support** : Currently, the conversion feature is only available for PLuG and Slack conversations. Other channels still use the traditional **Link Ticket** functionality.\\n\\n * **CSAT surveys** : CSAT surveys are not sent when a conversation is converted to a ticket. Surveys are only" + } + ] + }, + { + "query_id": "0e3d4f90-8b81-449e-85cb-cda6c356cf11", + "query": "add subtype in conversation in DevRev", + "retrievals": [ + { + "id": "ART-2683_KNOWLEDGE_NODE-21", + "title": "Custom objects (Beta) — DevRev | Docs", + "text": "// other fields \\n >| ], \\n >| }\\'\\n[/code] \\n \\n### Add subtypes to custom objects\\n\\nAdding subtypes to custom objects allows you to categorize and manage your custom objects more effectively. The process is the same as adding subtypes to other standard DevRev objects like issues and tickets.\\n\\nLet\\xe2\\x80\\x99s say you have run different types of campaigns like social media and email marketing. You can create a subtype for each of these variants. If you want to create a" + }, + { + "id": "ART-1957_KNOWLEDGE_NODE-24", + "title": "Object customization | Computer by DevRev | DevRev", + "text": "subtype](#add-a-new-subtype)\\n\\n1. [Documentation](/docs)\\n3. [Computer by DevRev](/docs/intro)\\n[Object customization](/docs/product/object-customization)\\n\\nObject customization\\n====================\\n\\nDevRev powers your organization with the ability to customize DevRev objects for your organization\\'s needs. You can add custom fields to the objects along with the pre-existing fields or add new subtypes to the objects which helps you extend an object\\'s capabilities.\\nObjects are the core" + }, + { + "id": "ART-1956_KNOWLEDGE_NODE-29", + "title": "Roles | Computer by DevRev | DevRev", + "text": "specific subtypes:\\n 1. In the subtype section of the object, select **Add**.\\n 2. Select the subtype to update privileges.\\n 3. To further restrict privileges, add a custom condition as with object\\n roles.\\n7. Select **Save**.\\n\\n### Update a customer role\\n\\n1. In [**Settings > Customer Management > Roles**](https://app.devrev.ai/devrev/settings/customer-roles), select the role to update.\\n2. Select **Edit**.\\n3. Update the role details.\\n4. Select **Save**.\\n\\n### Assign a" + }, + { + "id": "ART-1957_KNOWLEDGE_NODE-36", + "title": "Object customization | Computer by DevRev | DevRev", + "text": "object.\\n\\n1. Click **+** on the right side of **Objects**. A **New subtype** popup will appear.\\n2. Provide a name and description and select which object this belongs to. Click **Proceed**.\\n3. You can now customize this subtype as per your wish. Click **Edit** in the top right corner.\\n4. [Add new fields](#add-a-new-field-to-an-object-or-a-subtype) that you need.\\n5. Publish the subtype to make it live.\\n\\nTo delete the subtype, **\\xe2\\x8b\\xae** next to **Edit** then **Deprecate" + }, + { + "id": "ART-1956_KNOWLEDGE_NODE-26", + "title": "Roles | Computer by DevRev | DevRev", + "text": "subtype section of the object, select **Add**.\\n 2. Select the subtype to update privileges.\\n 3. To further restrict privileges, add a custom condition as with object\\n roles.\\n7. Select **Save**.\\n\\n### Update a user role\\n\\n1. In [**Settings > User Management > Roles**](https://app.devrev.ai/devrev/settings/user-roles), select the role to update.\\n2. Select **Edit**.\\n3. Update the role details.\\n4. Select **Save**.\\n\\n### Assign a user role\\n\\n1. In [**Settings > User Management >" + }, + { + "id": "ART-1957_KNOWLEDGE_NODE-28", + "title": "Object customization | Computer by DevRev | DevRev", + "text": "customization**](https://app.devrev.ai/devrev/settings/object-customization).\\nHere you can view all the existing objects and their subtypes. You can also check the objects that are no longer in use by going to **Show deprecated objects**.\\n\\nAdd a new field to an object or a subtype\\n-----------------------------------------\\n\\n1. Select the object or subtype you want to add to the custom field.\\n2. Clicking the **+ New field** button takes you to the edit mode where you can fill in the" + }, + { + "id": "ART-1514_KNOWLEDGE_NODE-12", + "title": "Update Conversation (Beta) — DevRev | Docs", + "text": "105| \"notes\": \"notes\", \\n 106| \"ordinal\": 1, \\n 107| \"stage\": { \\n 108| \"id\": \"id\" \\n 109| }, \\n 110| \"state\": { \\n 111| \"id\": \"id\" \\n 112| } \\n 113| }, \\n 114| \"stock_schema_fragment\": \"don:core:dvrv-us-1:devo/example:custom_type_fragment/custom-type-fragment-id\", \\n 115| \"subtype\": \"subtype\", \\n 116| \"tags\": [ \\n 117| { \\n 118| \"tag\": { \\n 119|" + }, + { + "id": "ART-1510_KNOWLEDGE_NODE-10", + "title": "Get Conversation (Beta) — DevRev | Docs", + "text": "\"don:core:dvrv-us-1:devo/example:custom_type_fragment/custom-type-fragment-id\", \\n 115| \"subtype\": \"subtype\", \\n 116| \"tags\": [ \\n 117| { \\n 118| \"tag\": { \\n 119| \"id\": \"id\", \\n 120| \"name\": \"name\" \\n 121| } \\n 122| } \\n 123| ], \\n 124| \"title\": \"title\" \\n 125| } \\n 126| }\\n[/code] \\n \\n[Get Conversation (POST)Up Next](/beta/api-reference/conversations/get-post)\\n\\n[Built" + }, + { + "id": "ART-4148_KNOWLEDGE_NODE-1", + "title": "March 3, 2025 | DevRev | Docs", + "text": "[`POST /schemas.subtypes.prepare-update`](/beta/api-reference/customization/schemas-subtype-prepare-update-get) for preparing a subtype change\\n\\n### Dev organizations\\n\\n* Added [`GET /dev-orgs.get`](/beta/api-reference/dev-orgs/get) and [`POST /dev-orgs.get`](/beta/api-reference/dev-orgs/get-post) to fetch the authenticated user\\xe2\\x80\\x99s Dev organization information\\n\\n### Dev users\\n\\n* Added [`POST /dev-users.create`](/beta/api-reference/dev-users/create) to create new Dev users\\n\\n###" + }, + { + "id": "ART-12390_KNOWLEDGE_NODE-31", + "title": "Workflow action library | Workflows | Computer by DevRev | DevRev", + "text": "Conversation object |\\n| GetCustomer | Retrieves customer (rev\\\\_user) details. | * id: ID of the customer * subtype: (Optional) Customer subtype * apps: (Optional) Related apps | Rev\\\\_user object |\\n| GetEnhancement | Retrieves enhancement details. | * id: ID of the enhancement * subtype: (Optional) Enhancement subtype * apps: (Optional) Related apps | Enhancement object |\\n| GetFeature | Retrieves feature details. | * id: ID of the feature * subtype: (Optional) Feature subtype * apps:" + } + ] + }, + { + "query_id": "c52998fe-3545-4109-b719-ee5a3b792209", + "query": "DevRev Platform Orientation & Navigation Guide video login options", + "retrievals": [ + { + "id": "ART-2666_KNOWLEDGE_NODE-27", + "title": "October 5: Left navigation | Changelog | DevRev", + "text": "DevRev's left navigation is designed to provide a more customizable and intuitive navigation experience. This update introduces new sections for better organization, enhanced customization capabilities, and a dedicated **Explore** page for managing views, dashboards, and sprint boards.\\n\\nWhen existing users log in, a prompt appears to guide them in migrating to the new left navigation. Follow the on-screen instructions to complete the migration and begin customizing your experience.\\n\\n## Key" + }, + { + "id": "ART-12475_KNOWLEDGE_NODE-0", + "title": "Migrating from UserExperior to DevRev", + "text": "b'This document serves as a guide for migrating from UserExperior ( plug.devrev.ai ) to DevRev ( app.devrev.ai ).\\n\\nLog in to your DevRev account at app.devrev.ai/login .\\n\\nPin the relevant views in the left navigation panel for Session Analytics. The views to pin are Session Replays , Session Analytics: Web , and Session Analytics: Mobile . For detailed instructions on this process, click here .\\n\\nLocate the SDK integration key by navigating to Settings > Support > Session Replays" + }, + { + "id": "ART-1966_KNOWLEDGE_NODE-37", + "title": "External identity provider setup | Computer by DevRev | DevRev", + "text": "{}\\n```\\n```\\n\\n### Step 3: Test and verify the setup\\n\\nFollow these steps to ensure your SSO integration is working correctly:\\n\\n1. **Check the login page:**\\n\\n * Go to: https://app.devrev.ai/\\n * You should see a new SSO login option with your identity provider\\'s name\\n2. **Test user authentication:**\\n\\n * Use a test user account that\\'s assigned to the DevRev application in your identity provider\\n * Click the SSO login option and complete the authentication" + }, + { + "id": "ART-12461_KNOWLEDGE_NODE-0", + "title": "Quickstart guide — DevRev | Docs", + "text": "b'[](/public/sdks/cordova/quickstart)\\n\\nPublic\\n\\n[](https://devrev.ai)\\n\\n * Product\\n * Platform\\n * Solutions\\n * Marketplace\\n * Company\\n * Resources\\n * [Pricing](https://devrev.ai/pricing)\\n\\n __\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](https://devrev.ai/request-a-demo)\\n\\n[](https://devrev.ai)\\n\\n __\\n\\nProduct __\\n\\nPlatform __\\n\\nSolutions __\\n\\nMarketplace __\\n\\nCompany __\\n\\nResources" + }, + { + "id": "ART-1470_KNOWLEDGE_NODE-1", + "title": "Getting started — DevRev | Docs", + "text": "__\\n\\n[Pricing](https://devrev.ai/pricing)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](https://devrev.ai/request-a-demo)\\n\\nOn this page\\n\\n * [Before you begin](/public/snapin-development/tutorials/getting-started#before-you-begin)\\n * [Log in to DevRev for authentication](/public/snapin-development/tutorials/getting-started#log-in-to-devrev-for-authentication)\\n * [Initialize a snap-in template](/public/snapin-development/tutorials/getting-started#initialize-a-snap-in-template)\\n" + }, + { + "id": "ART-1274_KNOWLEDGE_NODE-2", + "title": "Getting started | DevRev | Docs", + "text": "CLI](/snapin-development/references/cli-install)\\n* Install [jq](https://stedolan.github.io/jq)\\n\\n[2](/snapin-development/tutorials/getting-started#log-in-to-devrev-for-authentication)\\n\\n### Log in to DevRev for authentication\\n\\nTo authenticate, run the following command:\\n\\n```\\n| | |\\n| --- | --- |\\n| $ | devrev profiles authenticate -o -u |\\n```\\n\\n[3](/snapin-development/tutorials/getting-started#initialize-a-snap-in-template)\\n\\n### Initialize" + }, + { + "id": "ART-1470_KNOWLEDGE_NODE-6", + "title": "Getting started — DevRev | Docs", + "text": "[jq](https://stedolan.github.io/jq)\\n\\n[2](/public/snapin-development/tutorials/getting-started#log-in-to-devrev-for-authentication)\\n\\n### Log in to DevRev for authentication\\n\\nTo authenticate, run the following command:\\n\\n[code]\\n\\n $| devrev profiles authenticate -o -u \\n ---|---\\n[/code] \\n \\n[3](/public/snapin-development/tutorials/getting-started#initialize-a-snap-in-template)\\n\\n### Initialize a snap-in template\\n\\nTo initialize a" + }, + { + "id": "ART-12457_KNOWLEDGE_NODE-1", + "title": "Quickstart guide for Expo — DevRev | Docs", + "text": "__\\n\\n[Pricing](https://devrev.ai/pricing)\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](https://devrev.ai/request-a-demo)\\n\\nOn this page\\n\\n * [Quickstart guide for Expo](/public/sdks/react-native/quickstart-expo#quickstart-guide-for-expo)\\n * [Requirements](/public/sdks/react-native/quickstart-expo#requirements)\\n * [Installation](/public/sdks/react-native/quickstart-expo#installation)\\n * [Set up the DevRev SDK](/public/sdks/react-native/quickstart-expo#set-up-the-devrev-sdk)\\n" + }, + { + "id": "ART-2666_KNOWLEDGE_NODE-36", + "title": "October 5: Left navigation | Changelog | DevRev", + "text": "* [Terms of Service](/legal/terms-of-service)\\n\\n[](/)\\n\\n[](https://www.linkedin.com/company/devrev)[](https://medium.com/devrev)[](https://twitter.com/devrev)\\n\\n[System Status](/status)\\n\\n\\xc2\\xa9 2025 DevRev Inc.\\n\\n\"" + }, + { + "id": "ART-1470_KNOWLEDGE_NODE-0", + "title": "Getting started — DevRev | Docs", + "text": "b'[](/public/snapin-development/tutorials/getting-started)\\n\\nPublic\\n\\n[](https://devrev.ai)\\n\\n * Product\\n * Platform\\n * Solutions\\n * Marketplace\\n * Company\\n * Resources\\n * [Pricing](https://devrev.ai/pricing)\\n\\n __\\n\\n[Login](https://app.devrev.ai/login)[Book a demo](https://devrev.ai/request-a-demo)\\n\\n[](https://devrev.ai)\\n\\n __\\n\\nProduct __\\n\\nPlatform __\\n\\nSolutions __\\n\\nMarketplace __\\n\\nCompany __\\n\\nResources" + } + ] + }, + { + "query_id": "da7b37fd-25ab-4968-9f53-c311043f6306", + "query": "change subtype of ticket error something went wrong", + "retrievals": [ + { + "id": "ART-5010_KNOWLEDGE_NODE-26", + "title": "Subtype Migration | Automate | Snap-ins | DevRev", + "text": "**Work Item Type**: Select either \"ticket\" or \"issue\" based on the type of work items you want to migrate\\n * **Source Subtype**: Enter the name of the current subtype from which you want to migrate work items\\n * **Target Subtype**: Enter the name of the target subtype to which you want to migrate work items\\n * **Field Mappings**: Enter each mapping as source\\\\_field, target\\\\_field, one mapping per line\\n\\n ![]()\\n\\n Field names and subtype names must exactly match how they appear" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-49", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "tickets. Resolved means that the customer's concerns which led to the ticket have been addressed.\\n\\nSubtypes\\n--------\\n\\nYou can create subtypes for tickets to categorize them based on the type of issue. For example, you can create subtypes for bugs, feature requests, or questions.\\nA subtype inherits all the attributes of its parent ticket type. You can add custom attributes to a subtype.\\nTo know how to create subtypes and add custom attributes to them, see [object" + }, + { + "id": "ART-12390_KNOWLEDGE_NODE-39", + "title": "Workflow action library | Workflows | Computer by DevRev | DevRev", + "text": "to update * subtype: (Optional) Ticket subtype * apps: (Optional) Related apps * app\\\\_custom\\\\_fields: (Optional) Custom fields * stage: (Optional) New stage | Updated ticket object |\\n\\nObject links\\n------------\\n\\n| Operation | Description | Input Parameters | Output |\\n| --- | --- | --- | --- |\\n| LinkConversationWithTicket | Creates a link between a conversation and a ticket. | * source: Conversation ID * link\\\\_type: Type of link (usually \"is\\\\_related\\\\_to\") * target: Ticket ID | Empty" + }, + { + "id": "ART-15664_KNOWLEDGE_NODE-14", + "title": "Links | DevRev | Docs", + "text": "> | \"leaf_type\": \"issue\", |\\n| > | \"subtype\": \"social_media\" |\\n| > | } |\\n| > | ], |\\n| > | \"target_types\": [ |\\n| > | { |\\n| > | \"leaf_type\": \"ticket\" |\\n| > | } |\\n| > | ], |\\n| > | \"forward_name\": \"is related to\", |\\n| > | \"backward_name\": \"is related to\" |\\n| > | }\\' |\\n```\\n\\nThis configuration:\\n\\n* Allows issues of subtype \\xe2\\x80\\x9csocial\\\\_media\\xe2\\x80\\x9d to be linked to tickets\\n* Rejects attempts to link issues with no subtype or with other subtypes\\n\\n##### \\n\\nThe subtype" + }, + { + "id": "ART-1959_KNOWLEDGE_NODE-34", + "title": "Search | Computer by DevRev | DevRev", + "text": "subtype: :\\n```\\n```\\n\\n**Examples**\\n\\nSearch for tickets related to access issues with tenant field escalated:\\n\\n```\\n```\\n1 tnt__escalated:true access issues\\n```\\n```\\n\\nSearch for bugs related to access issues with subtype field customer\\\\_impact:\\n\\n```\\n```\\n1 subtype:Bug ctype__customer_impact:true access issues\\n```\\n```\\n\\nSearch across multiple subtypes for tickets related to access issues:\\n\\n```\\n```\\n1 subtype:Bug,Events access" + }, + { + "id": "ART-5010_KNOWLEDGE_NODE-24", + "title": "Subtype Migration | Automate | Snap-ins | DevRev", + "text": "[Snap-ins](/docs/snapins)\\n[Automate](/docs/automate)\\n[Subtype Migration](/docs/automations/subtype-migration)\\n\\nSubtype Migration\\n=================\\n\\nThe [Subtype Migration snap-in](https://marketplace.devrev.ai/marketplace/subtype-migration) is designed to facilitate the seamless transition of work items (tickets and issues) from one custom schema subtype to another. It efficiently handles large volumes of work items by processing them in batches, transferring custom field values between" + }, + { + "id": "ART-16108_KNOWLEDGE_NODE-0", + "title": "Airdrop Work Subtype Schema", + "text": "b'Airdrop does not allow changing which subtype it syncs work items to. The subtypes that Airdrop creates, are maintained by Airdrop, because they have to reflect the schema they the customer has in the external system (custom fields, field values, stages etc. all have to exactly match the external system schema). To modify the subtype, one should modify the schema in the external system.'" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-65", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "conversion](/docs/product/conversation-ticket)[NextRouting](/docs/product/routing)\\n\\n#### On this page\\n\\n* [Attributes](#attributes)\\n* [Create a ticket](#create-a-ticket)\\n* [Tags](#tags)\\n* [Stages](#stages)\\n* [Subtypes](#subtypes)\\n* [Viewing attachments on tickets](#viewing-attachments-on-tickets)\\n* [Turing suggests](#turing-suggests)\\n* [Duplicate ticket merging](#duplicate-ticket-merging)\\n* [Merging guidelines](#merging-guidelines)\\n* [Merge settings](#merge-settings)\\n* [Merge" + }, + { + "id": "ART-5010_KNOWLEDGE_NODE-13", + "title": "Subtype Migration | Automate | Snap-ins | DevRev", + "text": "group](/docs/automations/set-user-preference)\\n - [SLA status change Slack notifier](/docs/automations/sla-change-notifier)\\n - [Slash commands](/docs/automations/slash-commands)\\n - [Spam Shield](/docs/automations/spam-shield)\\n - [Subtype Migration](/docs/automations/subtype-migration)\\n - [Ticket age in engineering](/docs/automations/ticket-age-in-engineering)\\n - [Ticket issue field migrator](/docs/automations/ticket-issue-field-migrator)\\n - [Ticket" + }, + { + "id": "ART-2003_KNOWLEDGE_NODE-28", + "title": "Automate | Snap-ins | DevRev", + "text": "commands](/docs/automations/slash-commands)[### Spam Shield](/docs/automations/spam-shield)[### Subtype Migration](/docs/automations/subtype-migration)[### Ticket age in engineering](/docs/automations/ticket-age-in-engineering)[### Ticket issue field migrator](/docs/automations/ticket-issue-field-migrator)[### Ticket Immutability](/docs/automations/ticket-immutability)[### Ticket email notifier](/docs/automations/ticket-email-notifier)[### Task tracker](/docs/automations/task-tracker)[###" + } + ] + }, + { + "query_id": "882cde96-7501-41c4-8767-0023a96e5fcc", + "query": "Why would I use DevRev?", + "retrievals": [ + { + "id": "ART-1960_KNOWLEDGE_NODE-30", + "title": "Glossary | Computer by DevRev | DevRev", + "text": "customer (rev).\\n: Terms related to\\xc2\\xa0*dev*:\\n\\n * *[rev](#rev)*\\n: dev-users [*API reference*](https://developer.devrev.ai/api-reference/dev-users/)\\n\\nDevRev\\n\\n: A platform that brings developers (devs) closer to customers (revs) by providing a single system of record for development, customer-facing, and product teams.\\n: DevRev\\'s mission is to leverage design, data engineering, and machine intelligence to empower engineers to embrace their customers.\\n: Read more" + }, + { + "id": "ART-1033_KNOWLEDGE_NODE-5", + "title": "Spintly uses DevRev to bridge the gap between developers and end-users", + "text": "prompting them to search for an all-in-one solution that connected their developers to their customers. That\\xe2\\x80\\x99s how DevRev came to the rescue.\\n\\nThe Solution\\n------------\\n\\nAccording to Parkar, DevRev was the solution that Spintly was searching for. Initially, Spintly used DevRev as a ticketing tool. However, they soon discovered that the system was product-centric, allowing them to define their product and its features in great detail, even at the microservices level. This level" + }, + { + "id": "ART-722_KNOWLEDGE_NODE-0", + "title": "Busting silos, the WHY of DevRev", + "text": "b'Start With \\xe2\\x80\\x98WHY\\xe2\\x80\\x99\\n\\nIn order to understand the Why of DevRev, it\\xe2\\x80\\x99s essential to understand the history and lessons of the past.\\n\\nWhen Nutanix was founded, we started with everyone co-located in the same room which was easy to keep everyone coordinated due to the benefit of locality. At the time it was just engineering and we were all on the same Jira system (yeah, I know). However, as we grew, we added new teams (e.g., support, marketing, sales), each" + }, + { + "id": "ART-1033_KNOWLEDGE_NODE-14", + "title": "Spintly uses DevRev to bridge the gap between developers and end-users", + "text": "Status](/status)\\n\\n\\xc2\\xa9 2025 DevRev Inc.'" + }, + { + "id": "ART-4169_KNOWLEDGE_NODE-9", + "title": "DevRev For Startups", + "text": "GUIDESReady to dive into DevRev? Explore DevRevU for startups to get going\\n\\n[Explore Now](/startups/devrevu)\\n\\nFrequently asked questions\\n--------------------------\\n\\n### What are the eligibility criteria?\\n\\nYou need to be a funded startup up-to Series A, associated with one of our VC ecosystem partners and a new customer of DevRev.\\n\\n### How do I apply for the Startup Program?\\n\\n### How do I unlock the full $10K in startup credits with DevRev?\\n\\n### What if I am a bootstrapped" + }, + { + "id": "ART-15792_KNOWLEDGE_NODE-0", + "title": "DevRev Products and Agents", + "text": "b'What is DevRev?\\n\\nDevRev is an enterprise AI platform that delivers \"Team Intelligence\" by transforming artificial intelligence from a passive tool into an active business teammate. The company addresses a fundamental challenge facing modern organizations: the fragmentation of company knowledge across multiple systems and databases that prevents AI from delivering meaningful business value.Core platform capabilities\\n\\nDevRev\\'s platform centers around three key components that work together" + }, + { + "id": "ART-1487_KNOWLEDGE_NODE-2", + "title": "Install DevRev CLI — DevRev | Docs", + "text": "development](/public/snapin-development/concepts)[References](/public/snapin-development/references/cli-install)\\n\\n#\\n\\nInstall DevRev CLI\\n\\nThe DevRev CLI is a command-line interface tool that simplifies working with the DevRev REST APIs.\\n\\n###### Debian\\n\\n###### MacOS\\n\\n###### Windows\\n\\n## Supported architectures:\\n\\n * Linux amd64\\n * Linux arm64\\n\\n## Installation\\n\\n[Download the Debian package](https://github.com/devrev/cli/releases/latest) and install it using the following" + }, + { + "id": "ART-1945_KNOWLEDGE_NODE-26", + "title": "Computer by DevRev | DevRev", + "text": "\\xe2\\x86\\x97\\xef\\xb8\\x8f](https://support.devrev.ai/devrev/article/ART-16784-glossary)), maximizing productivity and minimizing customer churn.\\n\\n\\xf0\\x9f\\x9b\\xa0\\xef\\xb8\\x8f Apps\\n-------\\n\\nDevRev\\xe2\\x80\\x99s platform integrates all departments with a customizable CRM, serverless workflow engine, and a bot-supported collaborative experience comprising two native [apps](./product/apps): Computer for Support Teams and Computer for Builders.\\n\\nStreamline customer support with [product-centric" + }, + { + "id": "ART-15498_KNOWLEDGE_NODE-3", + "title": "Quickstart guide | DevRev | Docs", + "text": "|\\n| > | -keep class com.userexperior.* { *; } |\\n```\\n\\nSet up the DevRev SDK\\n---------------------\\n\\n1. Open the DevRev web app at [https://app.devrev.ai](https://app.devrev.ai/) and go to the **Settings** page.\\n2. Under **Plug settings** copy the value under **Your unique App ID**.\\n3. Configure the DevRev SDK in your app using the obtained credentials.\\n\\n##### \\n\\nThe DevRev SDK must be configured before you can use any of its features.\\n\\nThe SDK becomes ready for use once the" + }, + { + "id": "ART-12447_KNOWLEDGE_NODE-3", + "title": "Quickstart guide — DevRev | Docs", + "text": "$| -keep class ai.devrev.** { *; } \\n ---|--- \\n >| -keep class com.userexperior.* { *; }\\n[/code] \\n \\n## Set up the DevRev SDK\\n\\n 1. Open the DevRev web app at [https://app.devrev.ai](https://app.devrev.ai/) and go to the **Settings** page.\\n 2. Under **PLuG settings** copy the value under **Your unique App ID**.\\n 3. After obtaining the credentials, you can configure the DevRev SDK in your app.\\n\\nThe SDK will be ready for use once you execute the following configuration" + } + ] + }, + { + "query_id": "a01c7c2b-0eda-489a-a3f7-e2fadaf9f999", + "query": "apply repeated multiple fields on tickets with one click", + "retrievals": [ + { + "id": "ART-2874_KNOWLEDGE_NODE-26", + "title": "Ticket issue field migrator | Automate | Snap-ins | DevRev", + "text": "> **Ticket Issue Field Migrator** > **Configure**.\\n2. Specify the **Field Names** to migrate values from the ticket to the issue when fields are empty or undefined.\\n3. Click **Save** and **Install** to complete the setup.\\n4. Link an issue to a ticket to begin the migration of values from the ticket fields to the issue fields.\\n5. After the migration process is complete, you will receive a summary message in the snap-in **Discussion** tab, informing you of the number of fields processed," + }, + { + "id": "ART-2874_KNOWLEDGE_NODE-24", + "title": "Ticket issue field migrator | Automate | Snap-ins | DevRev", + "text": "[Configuration](#configuration)\\n\\n1. [Documentation](/docs)\\n3. [Snap-ins](/docs/snapins)\\n[Automate](/docs/automate)\\n[Ticket issue field migrator](/docs/automations/ticket-issue-field-migrator)\\n\\nTicket issue field migrator\\n---------------------------\\n\\nThe Ticket issue field migration snap-in automates the transfer of custom field values from tickets to new linked issues in DevRev. It checks for empty or undefined fields and fills them with corresponding ticket values based on the field" + }, + { + "id": "ART-3107_KNOWLEDGE_NODE-26", + "title": "Ticket Tagger | Automate | Snap-ins | DevRev", + "text": "If multiple tags are selected, only one needs to match.\\n * **Search for tags on**: Specify where to search for tags\\xe2\\x80\\x94on the contact,\\n the account, or both.\\n * **Assign tags if found**: Choose the tags to add to the ticket if matching\\n tags are found.\\n * (Optional) **Assign tags if not found**: Choose tags to add if no matching\\n tags are found.\\n3. Click **Save**.\\n4. Click **Install** to activate the snap-in.\\n\\nHow to use\\n----------\\n\\nOnce the snap-in is" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-57", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "only when users configure the post merge stage in the ticket preference settings page.\\n\\n### Merge tickets\\n\\n1. Open the primary ticket and select the merge option from the side panel.\\n\\n ![]()\\n\\n The ticket from which you initiate the merge becomes the primary ticket.\\n2. In the modal window that appears, review the suggested duplicate tickets based on the pre-filled primary ticket title.\\n3. Select the appropriate duplicate tickets and confirm the merge action.\\n\\n There is no limit" + }, + { + "id": "ART-2874_KNOWLEDGE_NODE-25", + "title": "Ticket issue field migrator | Automate | Snap-ins | DevRev", + "text": "mappings specified in the configuration input. The process features robust error handling, detailed logging, and appends a summary comment to the timeline for easy update tracking.\\n\\nInstallation\\n------------\\n\\n1. Install the **Ticket Issue Field Migrator** snap-in from the DevRev marketplace.\\n2. Select the workspace where you want to install the snap-in, confirm your selection, and click **Deploy snap-in**.\\n\\nConfiguration\\n-------------\\n\\n1. In DevRev, go to **Settings** > **Snap-ins**" + }, + { + "id": "ART-15716_KNOWLEDGE_NODE-5", + "title": "Support queries related playbook", + "text": "ticket, selecting the merge option, and choosing the duplicate tickets to merge. Only unclosed tickets with the same reporters can be merged. After merging, duplicate tickets are archived, and all future messages go to the primary ticket.\\n\\nStep-by-step guide:\\xc2\\xa0[How to merge tickets](https://devrev.ai/docs/product/tickets#merging-guidelines)\\n\\n2. Creating Tickets in DevRevYou can create tickets from the app, support portal, Slack, or via API. Fill in required fields (like title, part," + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-40", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "a child issue or create a new one by clicking on **+ New issue**.\\nJust update the title of the child issue and click enter. All other fields will be populated automatically by DevRev. You can edit them later.\\n\\nTags\\n----\\n\\n* Stalled\\n* Priority/Escalated\\n* Fast/Slow Moving\\n* Blocked\\n* Resolution: [*value*]\\n* Impact: [*value*]\\n* Reason: [*value*]\\n\\nStages\\n------\\n\\nThe following figure shows the state machine for tickets.\\n\\n```\\nClosed\\n\\n\\n\\nIn" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-62", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "up ticket.\\n\\nThe below fields would be copied on the new follow up ticket from the archived/immutable ticket:\\n\\n* Part\\n* Channel\\n* Account\\n* Workspace\\n* Reported by\\n* Description\\n* Title\\n* Channel specific custom fields\\n* Subtype\\n\\nThe follow up trigger is added in the workflows and admins configure the changes required on new follow up ticket, for example, copying of any other fields.\\n\\nInternal Tickets\\n----------------\\n\\nInternal tickets allow your team to create and manage" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-58", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "on the number of tickets that can be merged.\\n4. Review the automatic communication sent to primary and duplicate ticket owners (configurable in ticket preferences).\\n\\n### Post-merge conditions\\n\\n* The primary ticket retains all key fields (description, part, group, owner, creator, priority, stage), and the SLA remains unchanged.\\n* Events are updated to reflect all merge actions.\\n* Subscribers and reporters from duplicate tickets are added to the primary ticket.\\n* Linked objects from" + }, + { + "id": "ART-2874_KNOWLEDGE_NODE-27", + "title": "Ticket issue field migrator | Automate | Snap-ins | DevRev", + "text": "updated, and not updated. If the fields specified in the configuration are not found, a notification will be provided in the **Discussion** tab.\\n\\n[PreviousTicket age in engineering](/docs/automations/ticket-age-in-engineering)[NextTicket Immutability](/docs/automations/ticket-immutability)\\n\\n#### On this page\\n\\n* [Ticket issue field migrator](#ticket-issue-field-migrator)\\n* [Installation](#installation)\\n* [Configuration](#configuration)\\n\\n[Enterprise grade security to protect customer" + } + ] + }, + { + "query_id": "bd3a18be-1f76-4d1d-b813-c54880d2b2b7", + "query": "configure contact to open ticket in different workspace", + "retrievals": [ + { + "id": "ART-2039_KNOWLEDGE_NODE-25", + "title": "Marker.io | Integrate | Snap-ins | DevRev", + "text": "create DevRev tickets from Marker.io issues, you can configure the\\nsnap-in to use this email to auto-fill the **Reported By** and **Customer\\nWorkspace** fields in tickets. If no contact or accounts match the email, they\\nare automatically created.\\n\\nInstalling the Marker.io integration snap-in\\n--------------------------------------------\\n\\n1. Install the [Marker.io](/marketplace/marker-io) from the\\n DevRev Marketplace.\\n2. Configure the snap-in as needed.\\n\\n * (Optional) Select the" + }, + { + "id": "ART-1978_KNOWLEDGE_NODE-41", + "title": "Customer portal | Computer for Support Teams | DevRev", + "text": "If no such contact is found, JIT provisioning automatically creates a user account, allowing immediate access to the portal. This means users can sign up and log in without manual contact creation within the app.\\n* **Existing contacts without mapped accounts**: If a user is already a contact within the app but does not have a mapped account, they can still log in and create a ticket. In this scenario, the login is performed under the default workspace assigned to the contact.\\n* **Account" + }, + { + "id": "ART-2027_KNOWLEDGE_NODE-30", + "title": "Email | Integrate | Snap-ins | DevRev", + "text": "or @mentioned in the DevRev app.\\n\\n *Is able to:* View the ticket on the portal and reply via email as an email member.\\n* A customer admin for the same workspace\\n\\n *Added to:* **Customer Admins** group.\\n\\n *Is able to:* View the ticket on the portal once their workspace is updated on the ticket.\\n* An end user outside original sender's organization\\n\\n *Added to:* **To** or **CC** fields in the email thread, or mentioned in the DevRev app (adds them to **CC**).\\n\\n *Is able to:* Reply" + }, + { + "id": "ART-3107_KNOWLEDGE_NODE-25", + "title": "Ticket Tagger | Automate | Snap-ins | DevRev", + "text": "specific users (customer users).\\n* Ignores tickets created by other user types.\\n* Allows multiple tags to be assigned based on predefined rules.\\n* Can be triggered via commands or automatically when tickets are created.\\n\\nConfiguration\\n-------------\\n\\nFollow these steps to set up the Ticket Tagger:\\n\\n1. Go to **Snap-ins** > **Ticket Tagger** > **Configure**.\\n2. Fill in the configuration settings.\\n\\n * **Search for Tags**: Select the tags to check for on the contact or\\n account." + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-62", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "up ticket.\\n\\nThe below fields would be copied on the new follow up ticket from the archived/immutable ticket:\\n\\n* Part\\n* Channel\\n* Account\\n* Workspace\\n* Reported by\\n* Description\\n* Title\\n* Channel specific custom fields\\n* Subtype\\n\\nThe follow up trigger is added in the workflows and admins configure the changes required on new follow up ticket, for example, copying of any other fields.\\n\\nInternal Tickets\\n----------------\\n\\nInternal tickets allow your team to create and manage" + }, + { + "id": "ART-2933_KNOWLEDGE_NODE-2", + "title": "Account creation | DevRev | Docs", + "text": "[contacts](https://docs.devrev.ai/product/grow#-contact) which represents an individual user associated with the account of the organization. To create a contact, we also need to use the `rev-orgs.list` API with the `accounts` filter to get the default [workspace](https://docs.devrev.ai/product/grow#-workspace)(rev org) created with the account. We will be creating a contact under the workspace (`rev_org`) of the account as contacts (`rev_user`) cannot exist individually without being" + }, + { + "id": "ART-1947_KNOWLEDGE_NODE-32", + "title": "Apps | Computer by DevRev | DevRev", + "text": "same conversation. This means you do not need to ask your external users to write in separately about each topic they\\'d like to discuss, while the workspace can still track each item separately.\\n\\nIn the DevRev app, a support engineer can create a ticket based on a conversation they had with someone using the Plug widget. This ticket and conversation are linked.\\n\\nA ticket should describe what the external user is experiencing in a language that\\'s familiar to them. Developer-specific" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-33", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "members** does not remove them from the **Reported by** field.\\n\\nShadow users can also be subscribers and email members.\\n\\n* **CCed members in email**: The CCed members in emails will be added to reporters if they are contacts in the workspace to which the ticket belongs. They will be added to email members if they are part of the ongoing email thread, without any workspace restriction.\\n* **Shadow users**: Users created for tracking and record-keeping purposes that do not have access to the" + }, + { + "id": "ART-1960_KNOWLEDGE_NODE-28", + "title": "Glossary | Computer by DevRev | DevRev", + "text": "Individual prospects or users associated with an organization\\'s workspaces or accounts.\\n: Contacts can be associated with an account or workspace, but not always.\\n: Terms related to\\xc2\\xa0*contact*:\\n\\n * *[account](#account)*\\n * *[workspace](#workspace)*\\n: Read more about\\xc2\\xa0[*contact*](https://docs.devrev.ai/product/grow)\\n\\nconversation\\n\\n: An interaction between the builder and consumer that may be escalated to a ticket.\\n: Terms related" + }, + { + "id": "ART-1979_KNOWLEDGE_NODE-38", + "title": "Tickets | Computer for Support Teams | DevRev", + "text": "the top-right corner of your screen.\\n3. Add a title and description for your new ticket. You can also attach files related to the ticket in the description.\\n4. Select which part of the company/product this ticket is related to.\\n\\n ![]()\\n5. Enter other attributes for the ticket: change the assignee or accept the default; enter the severity; add any relevant tags to help employees identify any relevant traits of the ticket; select the workspace that the ticket pertains to.\\n6. If there are" + } + ] + }, + { + "query_id": "35acf2f7-9d3f-47ad-89d8-49474855dbad", + "query": "link an agent with the search agent so that the search agent can ask the other agent", + "retrievals": [ + { + "id": "ART-2897_KNOWLEDGE_NODE-20", + "title": "Methods — DevRev | Docs", + "text": "agent is currently open or closed.\\n\\n[code]\\n\\n 1| window.plugSDK.isSearchAgentOpen \\n ---|---\\n[/code] \\n \\nThis returns `true` if the search agent is open and `false` if it is closed.\\n\\n## Prefill search query in search agent\\n\\nUse the `prefillSearchQuery` method to prefill a search query when opening and initializing the search agent.\\n\\n[code]\\n\\n 1| window.plugSDK.prefillSearchQuery(\"search_query\"); \\n ---|---\\n[/code] \\n \\n## Add session properties\\n\\nThe" + }, + { + "id": "ART-1466_KNOWLEDGE_NODE-27", + "title": "Methods — DevRev | Docs", + "text": "Toggle search agent.\\n\\nThe toggleSearchAgent method allows you to control the visibility of the search agent.\\n\\nIf no input is provided, the method toggles the search bar: opening it if it\\xe2\\x80\\x99s closed, and closing it if it\\xe2\\x80\\x99s open.\\n\\n1 window. plugSDK. toggleSearchAgent ( true ) ; Prefill search query in search agent.\\n\\nUse the prefillSearchQuery method to prefill a search query when opening and initializing the search agent.\\n\\n1 window. plugSDK. prefillSearchQuery ( \"" + }, + { + "id": "ART-4074_KNOWLEDGE_NODE-27", + "title": "Get Conversation (POST) — DevRev | Docs", + "text": "Service](https://devrev.ai/legal/terms-of-service)\\n\\nLearn\\n\\n * [What are AI Agents?](https://devrev.ai/what-are-ai-agents)\\n * [What is Agentic AI?](https://devrev.ai/what-is-agentic-ai)\\n * [What is Enterprise Search?](https://devrev.ai/what-is-enterprise-search)\\n * [What is Conversational AI?](https://devrev.ai/what-is-conversational-ai)\\n\\n[](https://devrev.ai)\\n\\n[](https://www.linkedin.com/company/devrev)[](https://medium.com/devrev)[](https://twitter.com/devrev)\\n\\n[System" + }, + { + "id": "ART-2897_KNOWLEDGE_NODE-19", + "title": "Methods — DevRev | Docs", + "text": "10| } \\n 11| }); \\n 12| }, []);\\n[/code] \\n \\n## Toggle search agent\\n\\nThe `toggleSearchAgent` method allows you to control the visibility of the search agent.\\n\\nIf no input is provided, the method toggles the search bar: opening it if it\\xe2\\x80\\x99s closed, and closing it if it\\xe2\\x80\\x99s open.\\n\\n[code]\\n\\n 1| window.plugSDK.toggleSearchAgent(true); \\n ---|---\\n[/code] \\n \\n## Check Search Agent status\\n\\nUse `isSearchAgentOpen` to determine whether the search" + }, + { + "id": "ART-12972_KNOWLEDGE_NODE-8", + "title": "Get Chat (POST) — DevRev | Docs", + "text": "Service](https://devrev.ai/legal/terms-of-service)\\n\\nLearn\\n\\n * [What are AI Agents?](https://devrev.ai/what-are-ai-agents)\\n * [What is Agentic AI?](https://devrev.ai/what-is-agentic-ai)\\n * [What is Enterprise Search?](https://devrev.ai/what-is-enterprise-search)\\n * [What is Conversational AI?](https://devrev.ai/what-is-conversational-ai)\\n\\n[](https://devrev.ai)\\n\\n[](https://www.linkedin.com/company/devrev)[](https://medium.com/devrev)[](https://twitter.com/devrev)\\n\\n[System" + }, + { + "id": "ART-15509_KNOWLEDGE_NODE-1", + "title": "Methods | DevRev | Docs", + "text": "conversation](/sdks/web/methods#start-conversation)\\n* [Shutdown](/sdks/web/methods#shutdown)\\n* [Initialize the search agent](/sdks/web/methods#initialize-the-search-agent)\\n* [Toggle search agent](/sdks/web/methods#toggle-search-agent)\\n* [Check Search Agent status](/sdks/web/methods#check-search-agent-status)\\n* [Prefill search query in search agent](/sdks/web/methods#prefill-search-query-in-search-agent)\\n* [Add session properties](/sdks/web/methods#add-session-properties)\\n* [Get session" + }, + { + "id": "ART-2897_KNOWLEDGE_NODE-2", + "title": "Methods — DevRev | Docs", + "text": "conversation](/public/sdks/web/methods#start-conversation)\\n * [Shutdown](/public/sdks/web/methods#shutdown)\\n * [Initialize the search agent](/public/sdks/web/methods#initialize-the-search-agent)\\n * [Toggle search agent](/public/sdks/web/methods#toggle-search-agent)\\n * [Check Search Agent status](/public/sdks/web/methods#check-search-agent-status)\\n * [Prefill search query in search agent](/public/sdks/web/methods#prefill-search-query-in-search-agent)\\n * [Add session" + }, + { + "id": "ART-12449_KNOWLEDGE_NODE-51", + "title": "Features — DevRev | Docs", + "text": "Service](https://devrev.ai/legal/terms-of-service)\\n\\nLearn\\n\\n * [What are AI Agents?](https://devrev.ai/what-are-ai-agents)\\n * [What is Agentic AI?](https://devrev.ai/what-is-agentic-ai)\\n * [What is Enterprise Search?](https://devrev.ai/what-is-enterprise-search)\\n * [What is Conversational AI?](https://devrev.ai/what-is-conversational-ai)\\n\\n[](https://devrev.ai)\\n\\n[](https://www.linkedin.com/company/devrev)[](https://medium.com/devrev)[](https://twitter.com/devrev)\\n\\n[System" + }, + { + "id": "ART-4090_KNOWLEDGE_NODE-13", + "title": "Create Link — DevRev | Docs", + "text": "[Subprocessors](https://devrev.ai/security/sub-processors)\\n * [Cookie Policy](https://devrev.ai/legal/cookie-policy)\\n * [Privacy Policy](https://devrev.ai/legal/privacy-policy)\\n * [Terms of Service](https://devrev.ai/legal/terms-of-service)\\n\\nLearn\\n\\n * [What are AI Agents?](https://devrev.ai/what-are-ai-agents)\\n * [What is Agentic AI?](https://devrev.ai/what-is-agentic-ai)\\n * [What is Enterprise Search?](https://devrev.ai/what-is-enterprise-search)\\n * [What is Conversational" + }, + { + "id": "ART-13038_KNOWLEDGE_NODE-13", + "title": "Get Survey — DevRev | Docs", + "text": "Agents?](https://devrev.ai/what-are-ai-agents)\\n * [What is Agentic AI?](https://devrev.ai/what-is-agentic-ai)\\n * [What is Enterprise Search?](https://devrev.ai/what-is-enterprise-search)\\n * [What is Conversational AI?](https://devrev.ai/what-is-conversational-ai)\\n\\n[](https://devrev.ai)\\n\\n[](https://www.linkedin.com/company/devrev)[](https://medium.com/devrev)[](https://twitter.com/devrev)\\n\\n[System Status](https://devrev.ai/status)\\n\\n\\xc2\\xa9 2025 DevRev Inc.\\n\\n'" + } + ] + }, + { + "query_id": "1477f1ba-efec-4c13-8c57-86e33ae542a1", + "query": "devrev platform orientation and navigation guide", + "retrievals": [ + { + "id": "ART-2666_KNOWLEDGE_NODE-27", + "title": "October 5: Left navigation | Changelog | DevRev", + "text": "DevRev's left navigation is designed to provide a more customizable and intuitive navigation experience. This update introduces new sections for better organization, enhanced customization capabilities, and a dedicated **Explore** page for managing views, dashboards, and sprint boards.\\n\\nWhen existing users log in, a prompt appears to guide them in migrating to the new left navigation. Follow the on-screen instructions to complete the migration and begin customizing your experience.\\n\\n## Key" + }, + { + "id": "ART-2666_KNOWLEDGE_NODE-26", + "title": "October 5: Left navigation | Changelog | DevRev", + "text": "[Developer](https://developer.devrev.ai/)\\n * [DevRevU](/docs/DevRevU)\\n\\n * [Product demos](/docs/DevRevU/demos)\\n\\nOn this page\\n\\n * Key changes\\n * New navigation sections\\n * Explore the section for boards and views\\n * Search and filter options in Explore\\n * Pinning and unpinning views\\n * Recents section\\n\\n 1. [Documentation](/docs)\\n 2. 3. [Changelog](/docs/changelog)\\n 4. [October 5: Left navigation](/docs/product/left-navigation)\\n\\n# Left navigation\\n\\nThe updated" + }, + { + "id": "ART-12474_KNOWLEDGE_NODE-0", + "title": "Pin Session Analytics views to the left navigation", + "text": "b'This document serves as a guide for pinning the relevant Session Analytics views to the left navigation panel in DevRev.\\n\\nTo begin, navigate to the left panel and select \"Explore.\"\\n\\nSearch for \"Session Replays\" and pin it to your preferred section of the left navigation. Repeat the same for \"Session Analytics: Web\" and \"Session Analytics: Mobile.\".\\n\\nAdditionally, feel free to unpin any views that you do not wish to display in your left navigation.'" + }, + { + "id": "ART-15519_KNOWLEDGE_NODE-3", + "title": "Quickstart guide | DevRev | Docs", + "text": "cases for the DevRev Cordova plugin is provided as part of our [public repository](https://github.com/devrev/devrev-sdk-cordova). To set up and run the sample app:\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | cd sample |\\n| 2 | npm install |\\n| 3 | cordova platform add android |\\n| 4 | cordova platform add ios |\\n```\\n\\n###### Android\\n\\n###### iOS\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | cordova run android |\\n```\\n\\nOR open `platforms/android` in Android Studio and run the app.\\n\\nWas this page" + }, + { + "id": "ART-12454_KNOWLEDGE_NODE-11", + "title": "Quickstart guide for React Native — DevRev | Docs", + "text": "Status](https://devrev.ai/status)\\n\\n\\xc2\\xa9 2025 DevRev Inc.\\n\\n'" + }, + { + "id": "ART-12450_KNOWLEDGE_NODE-3", + "title": "Quickstart guide — DevRev | Docs", + "text": "1.0.0\\' \\n ---|---\\n[/code] \\n \\n 2. Run `pod install` in your project directory.\\n\\nThis will install the DevRev SDK in your project, making it ready for use.\\n\\n## Set up the DevRev SDK\\n\\n 1. Open the DevRev web app at [https://app.devrev.ai](https://app.devrev.ai/) and go to the **Settings** page.\\n 2. Under **PLuG settings** copy the value under **Your unique App ID**.\\n 3. After obtaining the credentials, you can configure the DevRev SDK in your app.\\n\\n#####\\n\\nThe DevRev" + }, + { + "id": "ART-2666_KNOWLEDGE_NODE-36", + "title": "October 5: Left navigation | Changelog | DevRev", + "text": "* [Terms of Service](/legal/terms-of-service)\\n\\n[](/)\\n\\n[](https://www.linkedin.com/company/devrev)[](https://medium.com/devrev)[](https://twitter.com/devrev)\\n\\n[System Status](/status)\\n\\n\\xc2\\xa9 2025 DevRev Inc.\\n\\n\"" + }, + { + "id": "ART-15501_KNOWLEDGE_NODE-9", + "title": "Quickstart guide | DevRev | Docs", + "text": "with](https://buildwithfern.com/?utm_campaign=buildWith&utm_medium=docs&utm_source=developer.devrev.ai)\\n\\n![]()'" + }, + { + "id": "ART-15519_KNOWLEDGE_NODE-1", + "title": "Quickstart guide | DevRev | Docs", + "text": "page\\n\\nThis guide helps you integrate the DevRev SDK into your Cordova app.\\n\\nRequirements\\n------------\\n\\n* Cordova CLI 10.0.0 or higher.\\n* Minimum deployment target Android SDK 24 or iOS 15.\\n\\nInstallation\\n------------\\n\\nTo install the DevRev SDK, run the following command:\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | npm install @devrev/sdk-cordova |\\n```\\n\\nSet up the DevRev SDK\\n---------------------\\n\\n1. Open the DevRev web app at [https://app.devrev.ai](https://app.devrev.ai/) and go to" + }, + { + "id": "ART-12447_KNOWLEDGE_NODE-15", + "title": "Quickstart guide — DevRev | Docs", + "text": "demo](https://devrev.ai/request-a-demo)\\n\\n'" + } + ] + }, + { + "query_id": "d1c10c3c-ce66-42b1-afd0-3de10ded4f08", + "query": "common causes of Bad_Request error in DevRev", + "retrievals": [ + { + "id": "ART-17232_KNOWLEDGE_NODE-3", + "title": "Mapping reasons | DevRev | Docs", + "text": "process.\\n\\nThere are several reasons why some mappings might be unavailable:\\n\\n1. A common reason is mismatch of types. For example, if a DevRev field is expected to be `rich_text`,\\n but the field is set as `text` mapping to some fields is unavailable.\\n Refer to the [supported types](/public/airsync/metadata-extraction#declare-fields-for-each-record-type)\\n section and the general DevRev documentation for more information.\\n2. Only references can be mapped to references. Ensure that" + }, + { + "id": "ART-1174_KNOWLEDGE_NODE-2", + "title": "Errors | DevRev | Docs", + "text": "HTTP/1.1 404 Not Found |\\n| Content-Type: application/json |\\n| Content-Length: 29 |\\n| {\"message\":\"route not found\"} |\\n```\\n\\n| Status Code | Status | Description |\\n| --- | --- | --- |\\n| `400` | `Bad Request` | The request was malformed or contained invalid arguments. |\\n| `401` | `Unauthorized` | The user attempted to access an endpoint that requires authentication and no credentials were provided or their validation failed. |\\n| `403` | `Forbidden` | The user isn\\xe2\\x80\\x99t authorized" + }, + { + "id": "ART-1364_KNOWLEDGE_NODE-3", + "title": "Errors — DevRev | Docs", + "text": "\\n`429`| `Too Many Requests`| The user is currently throttled due to exceeding their permitted rate limit. The `Retry-After` response header contains the number of seconds before the user should retry. \\n`500`| `Internal Server Error`| An internal error was encountered in the handling of the request which couldn\\xe2\\x80\\x99t be processed to completion. DevRev is automatically alerted to any occurrence of this error. The user should retry after a short delay and contact DevRev support if the" + }, + { + "id": "ART-1364_KNOWLEDGE_NODE-2", + "title": "Errors — DevRev | Docs", + "text": "{\"message\":\"route not found\"}\\n[/code] \\n \\nStatus Code| Status| Description \\n---|---|--- \\n`400`| `Bad Request`| The request was malformed or contained invalid arguments. \\n`401`| `Unauthorized`| The user attempted to access an endpoint that requires authentication and no credentials were provided or their validation failed. \\n`403`| `Forbidden`| The user isn\\xe2\\x80\\x99t authorized to perform the requested action. \\n`404`| `Not Found`| The requested endpoint doesn\\xe2\\x80\\x99t exist." + }, + { + "id": "ART-1174_KNOWLEDGE_NODE-3", + "title": "Errors | DevRev | Docs", + "text": "to perform the requested action. |\\n| `404` | `Not Found` | The requested endpoint doesn\\xe2\\x80\\x99t exist. |\\n| `429` | `Too Many Requests` | The user is currently throttled due to exceeding their permitted rate limit. The `Retry-After` response header contains the number of seconds before the user should retry. |\\n| `500` | `Internal Server Error` | An internal error was encountered in the handling of the request which couldn\\xe2\\x80\\x99t be processed to completion. DevRev is automatically" + }, + { + "id": "ART-1174_KNOWLEDGE_NODE-4", + "title": "Errors | DevRev | Docs", + "text": "alerted to any occurrence of this error. The user should retry after a short delay and contact DevRev support if the problem persists. |\\n| `503` | `Service Unavailable` | A transient error was encountered and the user should retry after a short delay. |\\n\\nAn endpoint may be annotated with additional status codes in the OpenAPI specification to denote special behavior.\\n\\n| Status Code | Status | Description |\\n| --- | --- | --- |\\n| `301` | `Moved Permanently` | The target" + }, + { + "id": "ART-15514_KNOWLEDGE_NODE-1", + "title": "Troubleshooting | DevRev | Docs", + "text": "block.\\n* **Issue**: How does the DevRev SDK handle errors?\\n **Solution**: The DevRev SDK reports all errors using Android\\xe2\\x80\\x99s logging utility. Look for error messages in Android Studio\\xe2\\x80\\x99s Logcat after applying `DEVREV SDK` filter.\\n* **Issue**: Support chat doesn\\xe2\\x80\\x99t show.\\n **Solution**: Ensure you have correctly called one of the identification methods: `DevRev.identifyUnverifiedUser(...)`, `DevRev.identifyVerifiedUser(...)`, or" + }, + { + "id": "ART-1174_KNOWLEDGE_NODE-0", + "title": "Errors | DevRev | Docs", + "text": "b'Errors | DevRev | Docs\\n\\n[![]()![]()](https://developer.devrev.ai/)\\n\\nPublic\\n\\nPublic\\n\\nSearch\\n\\n`/`\\n\\n[About](/about/for-developers)\\n\\nErrors\\n======\\n\\nCopy page\\n\\nDevRev\\xe2\\x80\\x99s APIs use standard HTTP status codes when responding to requests. On success, a `20X` status code is returned along with any response data, as indicated in the OpenAPI specification.\\n\\n| Status Code | Status | Description |\\n| --- | --- | --- |\\n| `200` | `OK` | The request succeeded and the result is" + }, + { + "id": "ART-12451_KNOWLEDGE_NODE-2", + "title": "Troubleshooting — DevRev | Docs", + "text": "level repositories block.\\n\\n * **Issue** : How does the DevRev SDK handle errors? **Solution** : The DevRev SDK reports all errors using Android\\xe2\\x80\\x99s logging utility. Look for error messages in Android Studio\\xe2\\x80\\x99s Logcat after applying `DEVREV SDK` filter.\\n\\n * **Issue** : Support chat doesn\\xe2\\x80\\x99t show. **Solution** : Ensure you have correctly called one of the identification methods: `DevRev.identifyUnverifiedUser(...)`, `DevRev.identifyVerifiedUser(...)`, or" + }, + { + "id": "ART-1364_KNOWLEDGE_NODE-1", + "title": "Errors — DevRev | Docs", + "text": "the result is contained in the response. \\n`204`| `No Content`| The request succeeded and contains no response data. This is common for object deletions. \\n \\nA request may encounter a set of errors that are common across all the APIs. In the response, a JSON object with a `message` field is provided that contains supplemental information to the encountered error.\\n\\n[code]\\n\\n HTTP/1.1 404 Not Found \\n --- \\n Content-Type: application/json \\n Content-Length: 29 \\n" + } + ] + }, + { + "query_id": "d87ed963-92e7-4659-82b5-ef0566b2eb48", + "query": "associate multiple workspaces to a contact", + "retrievals": [ + { + "id": "ART-2000_KNOWLEDGE_NODE-25", + "title": "Accounts | Computer for Growth Teams | DevRev", + "text": "address.\\n\\nAccounts are associated with a workspace. An account can be a part of multiple workspaces at the same time. An account can also be linked to multiple opportunities. Accounts help you keep track of your customer contacts. Contacts are always linked to a workspace or an account.\\n\\nCreate an account\\n-----------------\\n\\nYou can create accounts in the following ways:\\n\\n### Using the DevRev app\\n\\n1. Go to **Accounts** > **+ Account**.\\n2. Fill in the details like account name," + }, + { + "id": "ART-2933_KNOWLEDGE_NODE-2", + "title": "Account creation | DevRev | Docs", + "text": "[contacts](https://docs.devrev.ai/product/grow#-contact) which represents an individual user associated with the account of the organization. To create a contact, we also need to use the `rev-orgs.list` API with the `accounts` filter to get the default [workspace](https://docs.devrev.ai/product/grow#-workspace)(rev org) created with the account. We will be creating a contact under the workspace (`rev_org`) of the account as contacts (`rev_user`) cannot exist individually without being" + }, + { + "id": "ART-1997_KNOWLEDGE_NODE-31", + "title": "Computer for Growth Teams | DevRev", + "text": "users associated with an organization's workspaces or accounts. A contact is also known as a rev-user in the DevRev API.\\n\\nContacts represent customers, leads, and stakeholders with whom a business interacts. Contacts can be associated with an account or workspace, but not always.\\n\\n\\xf0\\x9f\\xa4\\x9d Engagement\\n------------\\n\\nDevRev uses engagements to capture all interactions between employees and customers, encompassing communications across various channels and touchpoints. DevRev records" + }, + { + "id": "ART-1960_KNOWLEDGE_NODE-28", + "title": "Glossary | Computer by DevRev | DevRev", + "text": "Individual prospects or users associated with an organization\\'s workspaces or accounts.\\n: Contacts can be associated with an account or workspace, but not always.\\n: Terms related to\\xc2\\xa0*contact*:\\n\\n * *[account](#account)*\\n * *[workspace](#workspace)*\\n: Read more about\\xc2\\xa0[*contact*](https://docs.devrev.ai/product/grow)\\n\\nconversation\\n\\n: An interaction between the builder and consumer that may be escalated to a ticket.\\n: Terms related" + }, + { + "id": "ART-2002_KNOWLEDGE_NODE-26", + "title": "Contacts | Computer for Growth Teams | DevRev", + "text": "(for example Stripe as a customer of Slack) or a workspace in your software product (such as a Slack workspace).\\n\\nCreate a new customer contact\\n-----------------------------\\n\\n1. Go to **Contacts** > **+ Contact**.\\n2. Fill in the following fields as **Add Display Name, Description, Domains, Tags, Tiers**.\\n3. Click **Create**.\\n\\nWhile creating new customer records, be sure to specify the [**External Reference**](#external-reference) so customer information coming from other channels (like" + }, + { + "id": "ART-15506_KNOWLEDGE_NODE-17", + "title": "Identify your users with Plug | DevRev | Docs", + "text": "Contacts linked to the account | User and account information | Recommended for most B2B cases |\\n| **Three-level** | Account with linked workspaces and contacts | User, workspace and account information | Used for B2B cases but only recommended if your business model requires workspace organization |\\n\\n**What happens when you send different combinations:**\\n\\nUser reference:\\n\\n* A user reference is mandatory, ensuring its constant presence.\\n* If a user with the provided reference" + }, + { + "id": "ART-16784_KNOWLEDGE_NODE-6", + "title": "Glossary", + "text": "in the source system.\\n\\nTerms related to connection: AirSync, snap-incontact\\n\\nIndividual prospects or users associated with an organization\\'s workspaces or accounts.\\n\\nContacts can be associated with an account or workspace, but not always.\\n\\nTerms related to contact: account, workspace\\n\\nRead more about contact: [https://devrev.ai/docs/product/grow](https://devrev.ai/docs/product/grow)conversation\\n\\nAn interaction between the builder and consumer that may be escalated to a" + }, + { + "id": "ART-16264_KNOWLEDGE_NODE-29", + "title": "June 2025 | Changelog | DevRev", + "text": "account.\\n + If both **Reported By** and **Account** fields are initially empty, you can search for and add any contact to the **Reported By** field, which will auto-fill the **Account** and **Workspace** (if applicable).\\n* **Handling multiple users:**\\n\\n + If all selected users within the **Reported By** field belong to the same workspace, the **Workspace** field remains unchanged.\\n + If users are from different workspaces, the **Workspace** field is emptied, while the **Account** field" + }, + { + "id": "ART-1997_KNOWLEDGE_NODE-27", + "title": "Computer for Growth Teams | DevRev", + "text": "timeline.\\n\\nYou can use a customizable set of states and stages to manage the lifecycle of an account, from prospect to customer to churned.\\n\\n\\xf0\\x9f\\x96\\xa5\\xef\\xb8\\x8f Workspace\\n------------\\n\\nA [workspace](https://docs.devrev.ai/product/glossary) represents an instance of a signed-up organization on your application. A workspace is also known as rev-org in the DevRev API. Customers can create multiple workspaces on your application. Therefore, you can link multiple workspaces to a" + }, + { + "id": "ART-2002_KNOWLEDGE_NODE-30", + "title": "Contacts | Computer for Growth Teams | DevRev", + "text": "record, for example, company domain or account\\\\_id. This is used to match customer identity across channels to one record.\\n* **Created date**: The date the contact was created.\\n* **Verified**: Indicates whether the contact has been verified.\\n* **Phone numbers**: The phone number associated with the contact.\\n* **Customer**: Account or workspace this contact is associated with.\\n* **Tags**: Tags are used to categorize contacts.\\n\\nThese attributes can be effectively used in filters and" + } + ] + }, + { + "query_id": "6dbad6ea-8ad4-41c5-8cf0-ed39a644fb26", + "query": "Slack notifications org name unknown organisation", + "retrievals": [ + { + "id": "ART-2035_KNOWLEDGE_NODE-60", + "title": "Slack | Integrate | Snap-ins | DevRev", + "text": "hidden.\\n\\n![]()\\n\\nSlack currently does not support custom objects or related automations.\\n\\nSlack snap-in user resolution\\n-----------------------------\\n\\n* The Slack snap-in uses email for user resolution between platforms. If a user or organization hides their emails, the integration cannot resolve the user to a DevRev Contact and will act on behalf of itself instead. It's recommended to ask customers to share their emails with your organization so apps, including DevRev, can access" + }, + { + "id": "ART-2017_KNOWLEDGE_NODE-27", + "title": "SLA status change Slack notifier | Automate | Snap-ins | DevRev", + "text": "Connection**.\\n * Select **Slack** from the dowpdown list.\\n * Give it a name and sign in with Slack. Ensure to toggle on **Make public** to make the connection public for your organization.\\n\\nConfigure the snap-in\\n---------------------\\n\\n1. In the **Configuration** tab, the first input field to set is *filters*. Here you can declare for which tickets to track the SLA status and to which channels to send notifications.\\n\\n Set the ticket subtype, severity, and part; the support heads" + }, + { + "id": "ART-1035_KNOWLEDGE_NODE-2", + "title": "Goodmeetings uses PLuG to reduce ticket resolution time", + "text": "has a talented team of 11-50 employees dedicated to revolutionizing remote sales.\\n\\nGoodmeetings provides an end-to-end platform for remote sales that empowers sales reps with actionable summaries and Slack notifications to enhance their pitching abilities in their next meeting.\\n\\nThe Challenge\\n-------------\\n\\nAlok Mishra, the co-founder and CTO of Goodmeetings, discussed the pain points his team faced prior to using DevRev. They wasted a lot of time on data mismatches that occurred on a" + }, + { + "id": "ART-1953_KNOWLEDGE_NODE-27", + "title": "Customer email notifications | Computer by DevRev | DevRev", + "text": "conversation, ensuring seamless and continuous communication.\\n\\nBy default, notifications are sent from [notifications@devrev.ai](mailto:notifications@devrev.ai). However, this setting can be overridden to use the organization\\xe2\\x80\\x99s primary email address as the sender, or notifications can be turned off entirely.\\n\\nTo configure the notifications setting, under [**Settings** > **Snap-ins** > **Email Integration**](https://app.devrev.ai/devrev/settings/snap-ins/email-with-tickets), go to" + }, + { + "id": "ART-2017_KNOWLEDGE_NODE-31", + "title": "SLA status change Slack notifier | Automate | Snap-ins | DevRev", + "text": "Customers](/case-study)\\n* [Snap-In Extensions](https://developer.devrev.ai/public/snapin-development/concepts)\\n* [DevRevU training](/docs/DevRevU)\\n* [Documentation](https://docs.devrev.ai/)\\n* [API References](https://docs.devrev.ai/api/)\\n\\nCompany\\n\\n* [About](/about)\\n* [Events](/events)\\n* [Careers](/careers)\\n* [What Why How](/what-why-how)\\n\\nInitiatives\\n\\n* [Partner Program](/partners)\\n* [Startups Program](/startups)\\n* [Gr.ai.ce](/graice)\\n\\n*" + }, + { + "id": "ART-2017_KNOWLEDGE_NODE-1", + "title": "SLA status change Slack notifier | Automate | Snap-ins | DevRev", + "text": "[Apps](/docs/product/apps)\\n + [Groups](/docs/product/groups)\\n + [Parts & trails](/docs/product/parts)\\n + [Vistas](/docs/product/vistas)\\n\\n - [Vista Reports](/docs/product/vista-reports)\\n - [Board view](/docs/product/board-view)\\n + [Tasks](/docs/product/tasks)\\n + [Updates](/docs/product/updates)\\n + [Customer email notifications](/docs/product/customer-emails)\\n + [Roles](/docs/product/roles)\\n\\n - [Default privileges by group](/docs/product/privs)\\n + [Access" + }, + { + "id": "ART-4199_KNOWLEDGE_NODE-1", + "title": "Slack message agent | Automate | Snap-ins | DevRev", + "text": "[Groups](/docs/product/groups)\\n + [Parts & trails](/docs/product/parts)\\n + [Vistas](/docs/product/vistas)\\n\\n - [Vista Reports](/docs/product/vista-reports)\\n - [Board view](/docs/product/board-view)\\n + [Tasks](/docs/product/tasks)\\n + [Updates](/docs/product/updates)\\n + [Customer email notifications](/docs/product/customer-emails)\\n + [Roles](/docs/product/roles)\\n\\n - [Default privileges by group](/docs/product/privs)\\n + [Access control](/docs/product/access-control)\\n +" + }, + { + "id": "ART-1283_KNOWLEDGE_NODE-10", + "title": "Keyrings — DevRev | Docs", + "text": "https://www.googleapis.com/auth/gmail.send\\n\\ndevrev-github-oauth. : Facilitates OAuth connections for integrating with GitHub.\\n\\nscopes: repo admin:repo_hook admin:org notifications user write:discussion\\n\\ndevrev-zendesk-oauth. : Facilitates OAuth connections for integrating with Microsoft.\\n\\nscopes: read tickets:write\\n\\nManifest Declaration:\\n\\n1 keyrings : 2 organization : 3 - name : my-secret-org-token 4 description : Enables access to organization-wide resources (e.g., Slack workspace)" + }, + { + "id": "ART-1491_KNOWLEDGE_NODE-10", + "title": "Keyrings — DevRev | Docs", + "text": "https://www.googleapis.com/auth/gmail.send\\n\\ndevrev-github-oauth. : Facilitates OAuth connections for integrating with GitHub.\\n\\nscopes: repo admin:repo_hook admin:org notifications user write:discussion\\n\\ndevrev-zendesk-oauth. : Facilitates OAuth connections for integrating with Microsoft.\\n\\nscopes: read tickets:write\\n\\nManifest Declaration:\\n\\n1 keyrings : 2 organization : 3 - name : my-secret-org-token 4 description : Enables access to organization-wide resources (e.g., Slack workspace)" + }, + { + "id": "ART-1283_KNOWLEDGE_NODE-14", + "title": "Keyrings — DevRev | Docs", + "text": "example connection 4 description : Enables access to organization-wide resources (e.g., Slack workspace) 5 types : 6 - custom-example-connection 7 display_name : Organization secret token 8 user : 9 - name : example connection 10 description : Enables access to organization-wide resources (e.g., Slack workspace) 11 types : 12 - custom-example-connection 13 display_name : Organization secret token\\n\\n3.1. Reusing Predefined keyring_type with Custom Scopes. : Here\\xe2\\x80\\x99s an example of a" + } + ] + }, + { + "query_id": "5008d8ba-33fe-4763-b515-5934672610d1", + "query": "how to create tickets in DevRev MVP org", + "retrievals": [ + { + "id": "ART-1483_KNOWLEDGE_NODE-21", + "title": "Using a snap-in to perform a DevRev action — DevRev | Docs", + "text": "devrevSDK.worksCreate({ \\n 17| title: ticketName, \\n 18| body: ticketBody, \\n 19| // The ticket is created in the PROD-1 part. Rename this to match your part. \\n 20| applies_to_part: \"PROD-1\", \\n 21| // The ticket is owned by the DEVU-1 user. Rename this to match the required user. \\n 22| owned_by: [\"DEVU-1\"], \\n 23| type: publicSDK.WorkType.Ticket, \\n 24| }); \\n 25| \\n 26| console.log(response); \\n" + }, + { + "id": "ART-1275_KNOWLEDGE_NODE-18", + "title": "Using a snap-in to perform a DevRev action | DevRev | Docs", + "text": "= `Ticket created at ${date.toLocaleString()}`; |\\n| 14 | const ticketBody = `This ticket was created by a snap-in at ${date.toLocaleString()}`; |\\n| 15 | |\\n| 16 | const response = await devrevSDK.worksCreate({ |\\n| 17 | title: ticketName, |\\n| 18 | body: ticketBody, |\\n| 19 | // The ticket is created in the PROD-1 part. Rename this to match your part. |\\n| 20 | applies_to_part: \"PROD-1\", |\\n| 21 | // The ticket is owned by the DEVU-1 user. Rename this to match the required user. |\\n| 22 |" + }, + { + "id": "ART-1483_KNOWLEDGE_NODE-8", + "title": "Using a snap-in to perform a DevRev action — DevRev | Docs", + "text": "the snap-in should create a work-item of type ticket when triggered. To do that, use the [DevRev TypeScript SDK](https://www.npmjs.com/package/@devrev/typescript-sdk) to make API calls for creating the ticket.\\n\\n[2](/public/snapin-development/tutorials/timer-ticket-creator#creating-the-snap-in)\\n\\n### Creating the snap-in\\n\\n#### Updating the manifest\\n\\nUpdate the manifest file to reflect the objective. Update the name, the description, and the service account\\xe2\\x80\\x99s display name to" + }, + { + "id": "ART-1483_KNOWLEDGE_NODE-12", + "title": "Using a snap-in to perform a DevRev action — DevRev | Docs", + "text": "description: Function to create a new ticket when triggered. \\n 4| \\n 5| automations: \\n 6| - name: periodic_ticket_creator \\n 7| description: Automation to create a ticket every 10 minutes \\n 8| source: timer-event-source \\n 9| event_types: \\n 10| - timer.tick \\n 11| function: ticket_creator\\n[/code] \\n \\nAfter these changes, the final version of the manifest can be found" + }, + { + "id": "ART-1483_KNOWLEDGE_NODE-18", + "title": "Using a snap-in to perform a DevRev action — DevRev | Docs", + "text": "the code\\n\\nUpdate the code in `src/functions/ticket_creator/index.ts` to reflect the behavior.\\n\\nFirstly, import the DevRev TypeScript SDK in the `index.ts` file\\n\\nindex.ts\\n\\n[code]\\n\\n 1| import {client, publicSDK} from \"@devrev/typescript-sdk\"; \\n ---|---\\n[/code] \\n \\nNext, update the `run` function in the hello-world example. Since the ticket gets created frequently, set some creation time in the title and the body. The example uses the part as `PROD-1` and keeps the owner as" + }, + { + "id": "ART-1483_KNOWLEDGE_NODE-20", + "title": "Using a snap-in to perform a DevRev action — DevRev | Docs", + "text": "\\n 8| // Initialize the public SDK client \\n 9| const devrevSDK = client.setup({ endpoint, token }); \\n 10| \\n 11| // Create a ticket. Name the ticket using the current date and time. \\n 12| const date = new Date(); \\n 13| const ticketName = `Ticket created at ${date.toLocaleString()}`; \\n 14| const ticketBody = `This ticket was created by a snap-in at ${date.toLocaleString()}`; \\n 15| \\n 16| const response = await" + }, + { + "id": "ART-1275_KNOWLEDGE_NODE-6", + "title": "Using a snap-in to perform a DevRev action | DevRev | Docs", + "text": "snap-in is triggered.\\nHere, the snap-in should create a work-item of type ticket when triggered. To do\\nthat, use the\\n[DevRev TypeScript SDK](https://www.npmjs.com/package/@devrev/typescript-sdk) to\\nmake API calls for creating the ticket.\\n\\n[2](/snapin-development/tutorials/timer-ticket-creator#creating-the-snap-in)\\n\\n### Creating the snap-in\\n\\n#### Updating the manifest\\n\\nUpdate the manifest file to reflect the objective. Update the name, the\\ndescription, and the service" + }, + { + "id": "ART-1275_KNOWLEDGE_NODE-2", + "title": "Using a snap-in to perform a DevRev action | DevRev | Docs", + "text": "work item is created.\\nThis tutorial makes the following changes to the snap-in:\\n\\n1. Update the trigger condition to run every 10 minutes instead of work\\n creation.\\n2. Create a ticket whenever the snap-in is triggered.\\n\\nEnsure that you have at least one [part](https://docs.devrev.ai/product/parts#product-or-service) in your organization since every\\nticket must be linked to a part and have an owner.\\n\\nSince a DevRev ticket is created whenever the function is triggered,\\nDevRev APIs" + }, + { + "id": "ART-1483_KNOWLEDGE_NODE-4", + "title": "Using a snap-in to perform a DevRev action — DevRev | Docs", + "text": "changes to the snap-in:\\n\\n 1. Update the trigger condition to run every 10 minutes instead of work creation.\\n 2. Create a ticket whenever the snap-in is triggered.\\n\\nEnsure that you have at least one [part](https://docs.devrev.ai/product/parts#product-or-service) in your organization since every ticket must be linked to a part and have an owner.\\n\\nSince a DevRev ticket is created whenever the function is triggered, DevRev APIs need to be called that allow this functionality. Although one" + }, + { + "id": "ART-2046_KNOWLEDGE_NODE-29", + "title": "DevRev for Jira app | Jira Software AirSync | AirSync | Snap-ins | DevRev", + "text": "Ticket** button to create a ticket in DevRev by filling necessary attributes. You can turn this feature off in the app configuration if you want.\\n* To view comments on the tickets linked to the discussions that support teams had with customers or internally on DevRev, head over to the DevRev activity tab which is present in the same line as the **Comments** tab of Jira.\\n* To send comments from the Jira issue to the DevRev ticket, select the ticket from the dropdown, type in the comment, and" + } + ] + }, + { + "query_id": "399ad65e-5dd6-473b-9482-ae5444682ad4", + "query": "manage multiple email addresses for one account", + "retrievals": [ + { + "id": "ART-2847_KNOWLEDGE_NODE-1", + "title": "Merge Accounts (Beta) — DevRev | Docs", + "text": "account, which will be merged into the primary account.\\n\\n### Response\\n\\nThe response to merging an account.\\n\\nPOST\\n\\n/accounts.merge\\n\\ncURL\\n\\n[code]\\n\\n $| curl -X POST https://api.devrev.ai/accounts.merge \\\\ \\n ---|--- \\n >| -H \"Authorization: Bearer \" \\\\ \\n >| -H \"Content-Type: application/json\" \\\\ \\n >| -d \\'{ \\n >| \"primary_account\": \"primary_account\", \\n >| \"secondary_account\": \"secondary_account\" \\n >| }\\'\\n[/code] \\n \\nTry" + }, + { + "id": "ART-12962_KNOWLEDGE_NODE-3", + "title": "Merge Accounts — DevRev | Docs", + "text": "https://api.devrev.ai/accounts.merge \\\\ \\n ---|--- \\n >| -H \"Authorization: Bearer \" \\\\ \\n >| -H \"Content-Type: application/json\" \\\\ \\n >| -d \\'{ \\n >| \"primary_account\": \"ACC-12345\", \\n >| \"secondary_account\": \"ACC-12345\" \\n >| }\\'\\n[/code] \\n \\nTry it\\n\\n200accountsMergeExample\\n\\n[code]\\n\\n 1| {} \\n ---|---\\n[/code] \\n \\n[Update AccountUp Next](/public/api-reference/accounts/update)\\n\\n[Built" + }, + { + "id": "ART-2000_KNOWLEDGE_NODE-25", + "title": "Accounts | Computer for Growth Teams | DevRev", + "text": "address.\\n\\nAccounts are associated with a workspace. An account can be a part of multiple workspaces at the same time. An account can also be linked to multiple opportunities. Accounts help you keep track of your customer contacts. Contacts are always linked to a workspace or an account.\\n\\nCreate an account\\n-----------------\\n\\nYou can create accounts in the following ways:\\n\\n### Using the DevRev app\\n\\n1. Go to **Accounts** > **+ Account**.\\n2. Fill in the details like account name," + }, + { + "id": "ART-15269_KNOWLEDGE_NODE-1", + "title": "Merge Accounts | DevRev | Docs", + "text": "application/json\" \\\\ |\\n| > | -d \\'{ |\\n| > | \"primary_account\": \"ACC-12345\", |\\n| > | \"secondary_account\": \"ACC-12345\" |\\n| > | }\\' |\\n```\\n\\n[Try it](/api-reference/accounts/merge?explorer=true)\\n\\n200Successful\\n\\n```\\n| | |\\n| --- | --- |\\n| 1 | {} |\\n```\\n\\nMerges two accounts.\\n\\n### Headers\\n\\nAuthorizationstringRequired\\n\\nBearer authentication of the form `Bearer `, where token is your auth token.\\n\\n### Request\\n\\nThis endpoint expects an" + }, + { + "id": "ART-2045_KNOWLEDGE_NODE-49", + "title": "AirSync | Snap-ins | DevRev", + "text": "associated with the account you want to merge from will be associated with the account to be merged with.\\n4. Click **Merge**.\\n\\nContact deduplication\\n---------------------\\n\\nDevRev contacts help you keep track of your [customers](https://docs.devrev.ai/product/customers). Contacts are the individual users, which may or may not be associated with an account. DevRev contacts aren\\'t globally unique. The same user may have multiple contact records.\\n\\nAirSync imported contacts are deduplicated" + }, + { + "id": "ART-2045_KNOWLEDGE_NODE-25", + "title": "AirSync | Snap-ins | DevRev", + "text": "user email\\\\*\\\\*](#user-has-an-email-but-doesnt-match-any-existing-devrev-user-email)\\n* [\\\\*\\\\*User has an email that matches an existing DevRev email\\\\*\\\\*](#user-has-an-email-that-matches-an-existing-devrev-email)\\n* [Manual user merging](#manual-user-merging)\\n* [\\\\*\\\\*Find duplicated AirSync-created user\\\\*\\\\*](#find-duplicated-airsynccreated-user)\\n* [\\\\*\\\\*Merge duplicated user\\\\*\\\\*](#merge-duplicated-user)\\n* [Account deduplication](#account-deduplication)\\n* [Manual account" + }, + { + "id": "ART-2911_KNOWLEDGE_NODE-24", + "title": "Account deduplication | Automate | Snap-ins | DevRev", + "text": "[Documentation](/docs)\\n3. [Snap-ins](/docs/snapins)\\n[Automate](/docs/automate)\\n[Account deduplication](/docs/automations/account-deduplication)\\n\\nAccount deduplication\\n=====================\\n\\nThe Account Deduplication snap-in streamlines account management by merging duplicates imported from various external sources. It consolidates the primary account, which remains synced with the external source, and the secondary account, which ceases syncing.\\n\\n![]()\\n\\nFor more information, refer" + }, + { + "id": "ART-888_KNOWLEDGE_NODE-49", + "title": "Privacy Policy", + "text": "enterprise, or use your personal email address to register for or access the Services. If an administrator has not already asserted control over your account or access to the Services, you can update the email address associated with your account through your account settings in your profile. Once an administrator asserts control over your account or use of the Services, you will no longer be able to change the email address associated with your account without administrator approval.Please" + }, + { + "id": "ART-3207_KNOWLEDGE_NODE-38", + "title": "Email snap-in configuration | Email | Integrate | Snap-ins | DevRev", + "text": "Step 2: Define the Primary Use Case\\n\\nChoose how DevRev should interpret emails sent to the primary address:\\n\\n* Choose between generating a **Ticket or a Conversation** from the incoming email.\\n\\nToggle on **Set email as the default channel for tickets** to ensure that:\\n\\n* Customer chat replies are sent via email as well as to the original source of the channel.\\n\\n### Step 3: Add Additional Support Emails\\n\\nYou can add more addresses to handle support requests.\\n\\n* **Tickets**: Emails" + }, + { + "id": "ART-2032_KNOWLEDGE_NODE-28", + "title": "Google Calendar | Integrate | Snap-ins | DevRev", + "text": "Emails**: Events containing any of these email addresses are completely excluded from sync. No meetings are created in DevRev for events where these emails appear as attendees, organizers, or creators. Enter multiple emails separated by commas.\\n * **Add non-existing customers**: Enable this to allow people in meeting that are not customer to be added as a customer.\\n\\nIf a meeting is scheduled with people who are neither part of the company nor customers, this option allows them to be added" + } + ] + }, + { + "query_id": "5fba19b8-8d24-4148-afb1-27629d9080be", + "query": "how to install PLuG website installation PLuG ID setup guide", + "retrievals": [ + { + "id": "ART-2059_KNOWLEDGE_NODE-7", + "title": "Install PLuG chat on your website", + "text": "these steps.\\n\\nIn DevRev, go to Settings. > Support. > PLuG Settings. through the settings icon in the top-left corner.\\nClick Enable PLuG Widget. if it isn\\'t already enabled.\\nCopy your Unique App ID. from the Configuration tab..\\nSetup for HTML.\\n\\nPlace this code in the head of your HTML page.\\n\\n1 //\\n2 < script\\n3 type = \"text/javascript\"\\n4 src = \"https://plug-platform.devrev.ai/static/plug.js\"\\n5 > \\n\\nPlace this code in the body of your HTML page.\\n\\n1 < script >\\n2" + }, + { + "id": "ART-15716_KNOWLEDGE_NODE-10", + "title": "Support queries related playbook", + "text": "work perfectly in a mobile WebView\\n\\nSetting Up the PluG Widget on a Website\\n\\nGo to your DevRev workspace, open PluG settings, configure the widget, and copy the provided JavaScript snippet. Paste it before the closing tag in your website\\xe2\\x80\\x99s HTML. Deploy your site and the widget should appear.\\n\\n[PLuG installation steps](https://developer.devrev.ai/public/sdks/web/installation)\\n\\nRenaming the \\'DevRev Turing\\' Chatbot - asked in slack channel\\n\\nTroubleshooting PluG AI" + }, + { + "id": "ART-2059_KNOWLEDGE_NODE-5", + "title": "Install PLuG chat on your website", + "text": "Jul 06 to Jul 19, 2023 Jun 20 to Jul 05, 2023 Jun 05 to Jun 19, 2023 May 22 to Jun 05, 2023 Apr 22 to May 22, 2023\\n\\nDeveloper DevRevU\\n\\nOn this page\\nIntegration code Unique app ID Setup for HTML Setup for React\\nInstall PLuG chat on your website.\\n\\nThere are two primary methods to customize PLuG chat. The easiest way is to do so through the app by navigating to Settings > Support > PLuG Settings > Configuration, Styling and Layout Tabs.. For detailed descriptions of the parameters, refer" + }, + { + "id": "ART-2059_KNOWLEDGE_NODE-9", + "title": "Install PLuG chat on your website", + "text": "App.js.\\n\\n1 useEffect ( () => {\\n2 window. plugSDK. init ({\\n3 // Please ensure you replace the app_id with your unique app id\\n4 app_id : \"\" ,\\n5 });\\n6 }, []);\\n\\nYou should now have PLuG chat widget installed on your website. Facing some issues? Reach out to us through our own PLuG chat widget from the bottom right of your screen.\\n\\nOnce the widget is installed on your website, every user who visits your website is considered an anonymous user. Anonymous users are the" + }, + { + "id": "ART-2894_KNOWLEDGE_NODE-3", + "title": "Install PLuG search — DevRev | Docs", + "text": "3. Copy your **Unique App ID** from the **Configuration tab**.\\n\\n###### Setup\\n\\n###### Setup for React\\n\\nPlace the following code in the `` section of your HTML page:\\n\\n[code]\\n\\n 1| \\n[/code] \\n \\nPlace the following code in the `` section of your HTML page:\\n\\n[code]\\n\\n 1| \\n[/code] \\n \\nPlace the following code in the `` section of your HTML page:\\n\\n[code]\\n\\n 1| \\n[/code] \\n \\nThe PLuG widget should now be installed on" + }, + { + "id": "ART-2893_KNOWLEDGE_NODE-1", + "title": "Install the Web SDK — DevRev | Docs", + "text": "ID\\n\\nYou can access your app ID from your DevRev account by following these steps:\\n\\n 1. In DevRev, go to **Settings > Support > PLuG Settings** via the settings icon in the top-left corner.\\n\\n 2. If the PLuG feature is not already enabled, click **Enable PLuG**.\\n\\n 3. Under the **Configuration** tab, copy the **Unique App ID**.\\n\\n###### Setup\\n\\n###### Setup for React\\n\\nPlace the following code in the `` section of your HTML page:\\n\\n[code]\\n\\n 1|