mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-11-04 04:57:51 +00:00 
			
		
		
		
	# Pull Request Template ## Description Fixes [CW-4620](https://linear.app/chatwoot/issue/CW-4620/rethinking-custom-domains-in-chatwoot) <img width="642" height="187" alt="Screenshot 2025-07-29 at 8 17 44 PM" src="https://github.com/user-attachments/assets/ad2f5dac-4b27-4dce-93ca-6cbba74443fb" /> ## Type of change - [x] New feature (non-breaking change which adds functionality) ## How Has This Been Tested? ## Checklist: - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my code - [x] I have commented on my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [x] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] Any dependent changes have been merged and published in downstream modules --------- Co-authored-by: Vishnu Narayanan <iamwishnu@gmail.com> Co-authored-by: Pranav <pranavrajs@gmail.com> Co-authored-by: Pranav <pranav@chatwoot.com>
		
			
				
	
	
		
			35 lines
		
	
	
		
			821 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			821 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/* global axios */
 | 
						|
import ApiClient from '../ApiClient';
 | 
						|
 | 
						|
class PortalsAPI extends ApiClient {
 | 
						|
  constructor() {
 | 
						|
    super('portals', { accountScoped: true });
 | 
						|
  }
 | 
						|
 | 
						|
  getPortal({ portalSlug, locale }) {
 | 
						|
    return axios.get(`${this.url}/${portalSlug}?locale=${locale}`);
 | 
						|
  }
 | 
						|
 | 
						|
  updatePortal({ portalSlug, portalObj }) {
 | 
						|
    return axios.patch(`${this.url}/${portalSlug}`, portalObj);
 | 
						|
  }
 | 
						|
 | 
						|
  deletePortal(portalSlug) {
 | 
						|
    return axios.delete(`${this.url}/${portalSlug}`);
 | 
						|
  }
 | 
						|
 | 
						|
  deleteLogo(portalSlug) {
 | 
						|
    return axios.delete(`${this.url}/${portalSlug}/logo`);
 | 
						|
  }
 | 
						|
 | 
						|
  sendCnameInstructions(portalSlug, email) {
 | 
						|
    return axios.post(`${this.url}/${portalSlug}/send_instructions`, { email });
 | 
						|
  }
 | 
						|
 | 
						|
  sslStatus(portalSlug) {
 | 
						|
    return axios.get(`${this.url}/${portalSlug}/ssl_status`);
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
export default PortalsAPI;
 |