{"revision":"c10276e953456835cdbb1f3a60d58ae1980be353","document":{"id":4881,"path":"conversational-interfaces/virtual-agent/create-adapter-for-virtual-agent.md","title":"Create a Virtual Agent conversational custom chat integration","bundle":null,"doc_type":null,"release":"australia","body":"\n# Create a Virtual Agent conversational custom chat integration\n\nUse the Custom Chat Configuration Integration Framework \\(CCCIF\\) to create a conversational custom chat integration to support third-party chat clients so they can connect to the Virtual Agent Chat Server \\(VACS\\).\n\n## Before you begin\n\nActivate the [Glide Virtual Agent plugin](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/activate-virtual-agent.md) \\(com.glide.cs.chatbot\\) if it's not already activated. This plugin automatically activates the Conversational Custom Chat Integration plugin \\(com.glide.cs.custom.adapter\\) for custom chat integrations.\n\nRole required: admin\n\n## About this task\n\nTo integrate chat clients with Virtual Agent, follow these configuration steps and add action scripts to Workflow Studio.\n\n**Note:** The CCCIF uses Integration Hub. Transactions count against your Integration Hub quota.\n\n## Procedure\n\n1.  [Create a new channel or update an existing channel for the integration](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/create-channel-va-cccif.md).\n\n2.  [Configure a new provider for the integration](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/create-provider-va-cccif.md).\n\n3.  [Set up message authentication](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/set-up-msg-auth-va-cccif.md).\n\n4.  [Create a channel identifier](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/create-channel-id-va-cccif.md).\n\n5.  [Select rich controls for inbound \\(user input\\) and outbound \\(bot response\\) transformation](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/map-rich-controls-va-cccif.md).\n\n6.  [Create and configure a scripted REST API for your custom chat integration](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/configure-rest-api-va-cccif.md).\n\n7.  [Create the action scripts](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/create-action-scripts-va-cccif.md).\n\n\n-   **[Create a new channel for your custom chat integration](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/create-channel-va-cccif.md)**  \nCreate a new channel or update an existing channel for your custom chat integration. Channels are defined in the Messaging Channels \\[sys\\_cs\\_channel\\] table.\n-   **[Configure a provider for your custom chat integration](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/create-provider-va-cccif.md)**  \nCreate a new provider for your custom chat integration. Providers are defined in the Connections \\[sys\\_cs\\_provider\\] table.\n-   **[Set up message authentication for your custom chat configuration](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/set-up-msg-auth-va-cccif.md)**  \nCreate a Hash Message Verification record and Message Auth record to set up message authentication for your custom chat integration. This is configured in the Hash Message Verifications \\[hash\\_message\\_verification\\] table.\n-   **[Create a channel identifier for your custom chat integration](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/create-channel-id-va-cccif.md)**  \nCreate a channel identifier for your custom chat integration in the Provider Channel Identities \\[sys\\_cs\\_provider\\_application\\] table.\n-   **[Map rich controls to the channel in your custom chat integration](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/map-rich-controls-va-cccif.md)**  \nCreate records for rich controls in the Custom Adapter Configurations \\[sys\\_cs\\_custom\\_adapter\\_config\\] table. If a rich control is missing an outbound transformer implementation, a response is not served to the end user and that user may get an unsatisfactory chat experience.\n-   **[Create and configure a scripted REST API for your custom chat integration](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/configure-rest-api-va-cccif.md)**  \nCreate a scripted REST API, add a scripted REST resource, set security and content negotiation, and set REST API rate limits.\n-   **[Create the action scripts for your custom chat integration](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/create-action-scripts-va-cccif.md)**  \nSet up the transforms that your custom chat integration needs to communicate through the chat process.\n\n**Parent Topic:**[Creating conversational custom chat integrations in Virtual Agent](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/va-custom-adapter-framework.md)\n\n"}}