22 KiB
22 KiB
Chatwoot Route Source Declarations
Source: reference/chatwoot/config/routes.rb
Ruby is unavailable in the current workspace, so this file records static route DSL declarations with source lines. It is a repeatable fallback until bin/rails routes can run.
| Line | Declaration |
|---|---|
| 3 | mount_devise_token_auth_for 'User', at: 'auth', controllers: { |
| 11 | post 'resend_confirmation', to: 'auth/resend_confirmations#create' |
| 19 | get '/app', to: 'dashboard#index' |
| 20 | get '/app/*params', to: 'dashboard#index' |
| 21 | get '/app/accounts/:account_id/settings/inboxes/new/twitter', to: 'dashboard#index', as: 'app_new_twitter_inbox' |
| 22 | get '/app/accounts/:account_id/settings/inboxes/new/microsoft', to: 'dashboard#index', as: 'app_new_microsoft_inbox' |
| 23 | get '/app/accounts/:account_id/settings/inboxes/new/instagram', to: 'dashboard#index', as: 'app_new_instagram_inbox' |
| 24 | get '/app/accounts/:account_id/settings/inboxes/new/tiktok', to: 'dashboard#index', as: 'app_new_tiktok_inbox' |
| 25 | get '/app/accounts/:account_id/settings/inboxes/new/:inbox_id/agents', to: 'dashboard#index', as: 'app_twitter_inbox_agents' |
| 26 | get '/app/accounts/:account_id/settings/inboxes/new/:inbox_id/agents', to: 'dashboard#index', as: 'app_email_inbox_agents' |
| 27 | get '/app/accounts/:account_id/settings/inboxes/new/:inbox_id/agents', to: 'dashboard#index', as: 'app_instagram_inbox_agents' |
| 28 | get '/app/accounts/:account_id/settings/inboxes/new/:inbox_id/agents', to: 'dashboard#index', as: 'app_tiktok_inbox_agents' |
| 29 | get '/app/accounts/:account_id/settings/inboxes/:inbox_id', to: 'dashboard#index', as: 'app_instagram_inbox_settings' |
| 30 | get '/app/accounts/:account_id/settings/inboxes/:inbox_id', to: 'dashboard#index', as: 'app_tiktok_inbox_settings' |
| 31 | get '/app/accounts/:account_id/settings/inboxes/:inbox_id', to: 'dashboard#index', as: 'app_email_inbox_settings' |
| 32 | get '/app/accounts/:account_id/onboarding/inbox-setup', to: 'dashboard#index', as: 'app_onboarding_inbox_setup' |
| 34 | resource :widget, only: [:show] |
| 35 | namespace :survey do |
| 36 | resources :responses, only: [:show] |
| 38 | resource :slack_uploads, only: [:show] |
| 41 | get '/health', to: 'health#show' |
| 42 | get '/api', to: 'api#index' |
| 43 | namespace :api, defaults: { format: 'json' } do |
| 44 | namespace :v1 do |
| 47 | resources :accounts, only: [:create, :show, :update] do |
| 49 | post :update_active_at |
| 50 | get :cache_keys |
| 53 | scope module: :accounts do |
| 54 | namespace :actions do |
| 55 | resource :contact_merge, only: [:create] |
| 57 | resource :bulk_actions, only: [:create] |
| 58 | resource :onboarding, only: [:update] |
| 59 | resources :agents, only: [:index, :create, :update, :destroy] do |
| 60 | post :bulk_create, on: :collection |
| 62 | namespace :captain do |
| 63 | resource :preferences, only: [:show, :update] |
| 64 | resources :assistants do |
| 66 | post :playground |
| 69 | get :tools |
| 71 | resources :inboxes, only: [:index, :create, :destroy], param: :inbox_id |
| 72 | resources :scenarios |
| 74 | resources :assistant_responses |
| 75 | resources :bulk_actions, only: [:create] |
| 76 | resources :copilot_threads, only: [:index, :create] do |
| 77 | resources :copilot_messages, only: [:index, :create] |
| 79 | resources :custom_tools do |
| 80 | post :test, on: :collection |
| 82 | resources :documents, only: [:index, :show, :create, :destroy] do |
| 83 | post :sync, on: :member |
| 85 | resource :tasks, only: [], controller: 'tasks' do |
| 86 | post :rewrite |
| 87 | post :summarize |
| 88 | post :reply_suggestion |
| 89 | post :label_suggestion |
| 90 | post :follow_up |
| 93 | resource :saml_settings, only: [:show, :create, :update, :destroy] |
| 94 | resources :agent_bots, only: [:index, :create, :show, :update, :destroy] do |
| 95 | delete :avatar, on: :member |
| 96 | post :reset_access_token, on: :member |
| 97 | post :reset_secret, on: :member |
| 99 | resources :contact_inboxes, only: [] do |
| 101 | post :filter |
| 104 | resources :assignable_agents, only: [:index] |
| 105 | resource :audit_logs, only: [:show] |
| 106 | resources :callbacks, only: [] do |
| 108 | post :register_facebook_page |
| 109 | get :register_facebook_page |
| 110 | post :facebook_pages |
| 111 | post :reauthorize_page |
| 114 | resources :canned_responses, only: [:index, :create, :update, :destroy] |
| 115 | resources :automation_rules, only: [:index, :create, :show, :update, :destroy] do |
| 116 | post :clone |
| 118 | resources :macros, only: [:index, :create, :show, :update, :destroy] do |
| 119 | post :execute, on: :member |
| 121 | resources :sla_policies, only: [:index, :create, :show, :update, :destroy] |
| 122 | resources :custom_roles, only: [:index, :create, :show, :update, :destroy] |
| 123 | resources :agent_capacity_policies, only: [:index, :create, :show, :update, :destroy] do |
| 124 | scope module: :agent_capacity_policies do |
| 125 | resources :users, only: [:index, :create, :destroy] |
| 126 | resources :inbox_limits, only: [:create, :update, :destroy] |
| 129 | resources :campaigns, only: [:index, :create, :show, :update, :destroy] |
| 130 | resources :dashboard_apps, only: [:index, :show, :create, :update, :destroy] |
| 131 | namespace :channels do |
| 132 | resource :twilio_channel, only: [:create] |
| 134 | resources :conversations, only: [:index, :create, :show, :update, :destroy] do |
| 136 | get :meta |
| 137 | get :search |
| 138 | get :unread_counts, to: 'conversations/unread_counts#index' |
| 139 | post :filter |
| 141 | scope module: :conversations do |
| 142 | resources :messages, only: [:index, :create, :destroy, :update] do |
| 144 | post :translate |
| 145 | post :retry |
| 148 | resources :assignments, only: [:create] |
| 149 | resources :labels, only: [:create, :index] |
| 150 | resource :participants, only: [:show, :create, :update, :destroy] |
| 151 | resource :direct_uploads, only: [:create] |
| 152 | resource :draft_messages, only: [:show, :update, :destroy] |
| 155 | post :mute |
| 156 | post :unmute |
| 157 | post :transcript |
| 158 | post :toggle_status |
| 159 | post :toggle_priority |
| 160 | post :toggle_typing_status |
| 161 | post :update_last_seen |
| 162 | post :unread |
| 163 | post :custom_attributes |
| 164 | get :attachments |
| 165 | get :inbox_assistant |
| 166 | get :reporting_events if ChatwootApp.enterprise? |
| 170 | resources :search, only: [:index] do |
| 172 | get :conversations |
| 173 | get :messages |
| 174 | get :contacts |
| 175 | get :articles |
| 179 | resources :companies, only: [:index, :show, :create, :update, :destroy] do |
| 181 | get :search |
| 184 | post :destroy_custom_attributes |
| 185 | delete :avatar |
| 187 | scope module: :companies do |
| 188 | resources :contacts, only: [:index, :create, :destroy] do |
| 190 | get :search |
| 193 | resources :conversations, only: [:index] |
| 194 | resources :notes, only: [:index] |
| 197 | resources :contacts, only: [:index, :show, :update, :create, :destroy] do |
| 199 | get :active |
| 200 | get :search |
| 201 | post :filter |
| 202 | post :import |
| 203 | post :export |
| 206 | get :contactable_inboxes |
| 207 | post :destroy_custom_attributes |
| 208 | delete :avatar |
| 210 | scope module: :contacts do |
| 211 | resources :conversations, only: [:index] |
| 212 | resources :contact_inboxes, only: [:create] |
| 213 | resources :labels, only: [:create, :index] |
| 214 | resources :notes |
| 215 | get :attachments, to: 'attachments#index' |
| 216 | post :call, on: :member, to: 'calls#create' if ChatwootApp.enterprise? |
| 219 | resources :csat_survey_responses, only: [:index] do |
| 221 | get :metrics |
| 222 | get :download |
| 225 | patch :update if ChatwootApp.enterprise? |
| 228 | resources :applied_slas, only: [:index] do |
| 230 | get :metrics |
| 231 | get :download |
| 234 | resources :reporting_events, only: [:index] if ChatwootApp.enterprise? |
| 237 | resources :whatsapp_calls, only: [:show] do |
| 239 | post :accept |
| 240 | post :reject |
| 241 | post :terminate |
| 242 | post :upload_recording |
| 245 | post :initiate |
| 250 | resources :custom_attribute_definitions, only: [:index, :show, :create, :update, :destroy] |
| 251 | resources :custom_filters, only: [:index, :show, :create, :update, :destroy] |
| 252 | resources :inboxes, only: [:index, :show, :create, :update, :destroy] do |
| 253 | get :assignable_agents, on: :member |
| 254 | get :campaigns, on: :member |
| 255 | get :agent_bot, on: :member |
| 256 | post :set_agent_bot, on: :member |
| 257 | delete :avatar, on: :member |
| 258 | post :sync_templates, on: :member |
| 259 | get :health, on: :member |
| 260 | post :register_webhook, on: :member |
| 261 | post :reset_secret, on: :member |
| 263 | resource :conference, only: %i[create destroy], controller: 'conference' do |
| 264 | get :token, on: :member |
| 266 | post :enable_whatsapp_calling, on: :member |
| 267 | post :disable_whatsapp_calling, on: :member |
| 270 | resource :csat_template, only: [:show, :create], controller: 'inbox_csat_templates' do |
| 271 | post :analyze, on: :collection |
| 275 | resources :inbox_members, only: [:create, :show], param: :inbox_id do |
| 277 | delete :destroy |
| 278 | patch :update |
| 281 | resources :labels, only: [:index, :show, :create, :update, :destroy] |
| 283 | resources :notifications, only: [:index, :update, :destroy] do |
| 285 | post :read_all |
| 286 | get :unread_count |
| 287 | post :destroy_all |
| 290 | post :snooze |
| 291 | post :unread |
| 294 | resource :notification_settings, only: [:show, :update] |
| 296 | resources :teams do |
| 297 | resources :team_members, only: [:index, :create] do |
| 299 | delete :destroy |
| 300 | patch :update |
| 306 | resources :assignment_policies do |
| 307 | resources :inboxes, only: [:index, :create, :destroy], module: :assignment_policies |
| 310 | resources :inboxes, only: [] do |
| 311 | resource :assignment_policy, only: [:show, :create, :destroy], module: :inboxes |
| 314 | namespace :twitter do |
| 315 | resource :authorization, only: [:create] |
| 318 | namespace :microsoft do |
| 319 | resource :authorization, only: [:create] |
| 322 | namespace :google do |
| 323 | resource :authorization, only: [:create] |
| 326 | namespace :instagram do |
| 327 | resource :authorization, only: [:create] |
| 330 | namespace :tiktok do |
| 331 | resource :authorization, only: [:create] |
| 334 | namespace :notion do |
| 335 | resource :authorization, only: [:create] |
| 338 | namespace :whatsapp do |
| 339 | resource :authorization, only: [:create] |
| 342 | resources :webhooks, only: [:index, :create, :update, :destroy] |
| 343 | namespace :integrations do |
| 344 | resources :apps, only: [:index, :show] |
| 345 | resources :hooks, only: [:show, :create, :update, :destroy] do |
| 347 | post :process_event |
| 350 | resource :slack, only: [:create, :update, :destroy], controller: 'slack' do |
| 352 | get :list_all_channels |
| 355 | resource :dyte, controller: 'dyte', only: [] do |
| 357 | post :create_a_meeting |
| 358 | post :add_participant_to_meeting |
| 361 | resource :shopify, controller: 'shopify', only: [:destroy] do |
| 363 | post :auth |
| 364 | get :orders |
| 367 | resource :linear, controller: 'linear', only: [] do |
| 369 | delete :destroy |
| 370 | get :teams |
| 371 | get :team_entities |
| 372 | post :create_issue |
| 373 | post :link_issue |
| 374 | post :unlink_issue |
| 375 | get :search_issue |
| 376 | get :linked_issues |
| 379 | resource :notion, controller: 'notion', only: [] do |
| 381 | delete :destroy |
| 385 | resources :portals do |
| 387 | patch :archive |
| 388 | delete :logo |
| 389 | post :send_instructions |
| 390 | get :ssl_status |
| 392 | resources :categories do |
| 393 | post :reorder, on: :collection |
| 395 | namespace :articles do |
| 396 | resource :bulk_actions, only: [] do |
| 397 | post :translate |
| 398 | patch :update_status |
| 399 | patch :update_category |
| 400 | delete :delete_articles |
| 403 | resources :articles do |
| 404 | post :reorder, on: :collection |
| 408 | resources :upload, only: [:create] |
| 414 | namespace :integrations do |
| 415 | resources :webhooks, only: [:create] |
| 419 | post 'auth/saml_login', to: 'auth#saml_login' |
| 421 | resource :profile, only: [:show, :update] do |
| 422 | delete :avatar, on: :collection |
| 424 | post :availability |
| 425 | post :auto_offline |
| 426 | put :set_active_account |
| 427 | post :resend_confirmation |
| 428 | post :reset_access_token |
| 432 | scope module: 'profile' do |
| 433 | resource :mfa, controller: 'mfa', only: [:show, :create, :destroy] do |
| 434 | post :verify |
| 435 | post :backup_codes |
| 440 | resource :notification_subscriptions, only: [:create, :destroy] |
| 442 | namespace :widget do |
| 443 | resource :direct_uploads, only: [:create] |
| 444 | resource :config, only: [:create] |
| 445 | resources :campaigns, only: [:index] |
| 446 | resources :events, only: [:create] |
| 447 | resources :messages, only: [:index, :create, :update] |
| 448 | resources :conversations, only: [:index, :create] do |
| 450 | post :destroy_custom_attributes |
| 451 | post :set_custom_attributes |
| 452 | post :update_last_seen |
| 453 | post :toggle_typing |
| 454 | post :transcript |
| 455 | get :toggle_status |
| 458 | resource :contact, only: [:show, :update] do |
| 460 | post :destroy_custom_attributes |
| 461 | patch :set_user |
| 464 | resources :inbox_members, only: [:index] |
| 465 | resources :labels, only: [:create, :destroy] |
| 466 | namespace :integrations do |
| 467 | resource :dyte, controller: 'dyte', only: [] do |
| 469 | post :add_participant_to_meeting |
| 476 | namespace :v2 do |
| 477 | resources :accounts, only: [:create] do |
| 478 | scope module: :accounts do |
| 479 | resources :summary_reports, only: [] do |
| 481 | get :agent |
| 482 | get :team |
| 483 | get :inbox |
| 484 | get :label |
| 485 | get :channel |
| 488 | resources :reports, only: [:index] do |
| 490 | get :summary |
| 491 | get :bot_summary |
| 492 | get :agents |
| 493 | get :inboxes |
| 494 | get :labels |
| 495 | get :teams |
| 496 | get :conversations |
| 497 | get :conversations_summary |
| 498 | get :conversation_traffic |
| 499 | get :bot_metrics |
| 500 | get :inbox_label_matrix |
| 501 | get :first_response_time_distribution |
| 502 | get :outgoing_messages_count |
| 505 | resource :year_in_review, only: [:show] |
| 506 | resources :live_reports, only: [] do |
| 508 | get :conversation_metrics |
| 509 | get :grouped_conversation_metrics |
| 518 | namespace :enterprise, defaults: { format: 'json' } do |
| 519 | namespace :api do |
| 520 | namespace :v1 do |
| 521 | resources :accounts do |
| 523 | post :checkout |
| 524 | post :subscription |
| 525 | get :limits |
| 526 | post :toggle_deletion |
| 527 | post :topup_checkout |
| 533 | post 'webhooks/stripe', to: 'webhooks/stripe#process_payload' |
| 534 | post 'webhooks/firecrawl', to: 'webhooks/firecrawl#process_payload' |
| 540 | namespace :platform, defaults: { format: 'json' } do |
| 541 | namespace :api do |
| 542 | namespace :v1 do |
| 543 | resources :users, only: [:create, :show, :update, :destroy] do |
| 545 | get :login |
| 546 | post :token |
| 549 | resources :agent_bots, only: [:index, :create, :show, :update, :destroy] do |
| 550 | delete :avatar, on: :member |
| 552 | resources :accounts, only: [:index, :create, :show, :update, :destroy] do |
| 553 | resources :account_users, only: [:index, :create] do |
| 555 | delete :destroy |
| 558 | resources :email_channel_migrations, only: [:create] |
| 566 | namespace :public, defaults: { format: 'json' } do |
| 567 | namespace :api do |
| 568 | namespace :v1 do |
| 569 | resources :inboxes do |
| 570 | scope module: :inboxes do |
| 571 | resources :contacts, only: [:create, :show, :update] do |
| 572 | resources :conversations, only: [:index, :create, :show] do |
| 574 | post :toggle_status |
| 575 | post :toggle_typing |
| 576 | post :update_last_seen |
| 579 | resources :messages, only: [:index, :create, :update] |
| 585 | resources :csat_survey, only: [:show, :update] |
| 590 | get 'hc/:slug', to: 'public/api/v1/portals#show' |
| 591 | get 'hc/:slug/sitemap.xml', to: 'public/api/v1/portals#sitemap' |
| 592 | get 'hc/:slug/:locale', to: 'public/api/v1/portals#show', as: :public_portal_locale |
| 593 | get 'hc/:slug/:locale/search', to: 'public/api/v1/portals/search#index', as: :portal_search |
| 594 | get 'hc/:slug/:locale/articles', to: 'public/api/v1/portals/articles#index' |
| 595 | get 'hc/:slug/:locale/categories', to: 'public/api/v1/portals/categories#index' |
| 596 | get 'hc/:slug/:locale/categories/:category_slug', to: 'public/api/v1/portals/categories#show', as: :public_portal_category |
| 597 | get 'hc/:slug/:locale/categories/:category_slug/articles', to: 'public/api/v1/portals/articles#index' |
| 598 | get 'hc/:slug/articles/:article_slug.png', to: 'public/api/v1/portals/articles#tracking_pixel' |
| 599 | get 'hc/:slug/articles/:article_slug.md', to: 'public/api/v1/portals/articles#show_markdown', as: :public_portal_article_markdown, |
| 601 | get 'hc/:slug/articles/:article_slug', to: 'public/api/v1/portals/articles#show', as: :public_portal_article |
| 605 | resource :app, only: [:index] do |
| 606 | resources :accounts do |
| 607 | resources :conversations, only: [:show] |
| 613 | mount Facebook::Messenger::Server, at: 'bot' |
| 614 | get 'webhooks/twitter', to: 'api/v1/webhooks#twitter_crc' |
| 615 | post 'webhooks/twitter', to: 'api/v1/webhooks#twitter_events' |
| 616 | post 'webhooks/line/:line_channel_id', to: 'webhooks/line#process_payload' |
| 617 | post 'webhooks/telegram/:bot_token', to: 'webhooks/telegram#process_payload' |
| 618 | post 'webhooks/sms/:phone_number', to: 'webhooks/sms#process_payload' |
| 619 | get 'webhooks/whatsapp/:phone_number', to: 'webhooks/whatsapp#verify' |
| 620 | post 'webhooks/whatsapp/:phone_number', to: 'webhooks/whatsapp#process_payload' |
| 621 | get 'webhooks/instagram', to: 'webhooks/instagram#verify' |
| 622 | post 'webhooks/instagram', to: 'webhooks/instagram#events' |
| 623 | post 'webhooks/tiktok', to: 'webhooks/tiktok#events' |
| 624 | post 'webhooks/shopify', to: 'webhooks/shopify#events' |
| 626 | namespace :twitter do |
| 627 | resource :callback, only: [:show] |
| 630 | namespace :linear do |
| 631 | resource :callback, only: [:show] |
| 634 | namespace :shopify do |
| 635 | resource :callback, only: [:show] |
| 638 | namespace :twilio do |
| 639 | resources :callback, only: [:create] |
| 640 | resources :delivery_status, only: [:create] |
| 643 | post 'voice/call/:phone', to: 'voice#call_twiml', as: :voice_call |
| 644 | post 'voice/status/:phone', to: 'voice#status', as: :voice_status |
| 645 | post 'voice/conference_status/:phone', to: 'voice#conference_status', as: :voice_conference_status |
| 646 | post 'voice/recording_status/:phone', to: 'voice#recording_status', as: :voice_recording_status |
| 650 | get 'microsoft/callback', to: 'microsoft/callbacks#show' |
| 651 | get 'google/callback', to: 'google/callbacks#show' |
| 652 | get 'instagram/callback', to: 'instagram/callbacks#show' |
| 653 | get 'tiktok/callback', to: 'tiktok/callbacks#show' |
| 654 | get 'notion/callback', to: 'notion/callbacks#show' |
| 657 | get '.well-known/assetlinks.json' => 'android_app#assetlinks' |
| 658 | get '.well-known/apple-app-site-association' => 'apple_app#site_association' |
| 659 | get '.well-known/microsoft-identity-association.json' => 'microsoft#identity_association' |
| 660 | get '.well-known/cf-custom-hostname-challenge/:id', to: 'custom_domains#verify' |
| 669 | get 'super_admin/logout', to: 'super_admin/devise/sessions#destroy' |
| 670 | namespace :super_admin do |
| 673 | resource :app_config, only: [:show, :create] |
| 674 | resource :push_diagnostics, only: [:show, :create] do |
| 675 | post :destroy_subscriptions, on: :collection |
| 679 | resources :accounts, only: [:index, :new, :create, :show, :edit, :update, :destroy] do |
| 680 | post :seed, on: :member |
| 681 | post :reset_cache, on: :member |
| 683 | resources :users, only: [:index, :new, :create, :show, :edit, :update, :destroy] do |
| 684 | delete :avatar, on: :member, action: :destroy_avatar |
| 687 | resources :access_tokens, only: [:index, :show] |
| 688 | resources :installation_configs, only: [:index, :new, :create, :show, :edit, :update] |
| 689 | resources :agent_bots, only: [:index, :new, :create, :show, :edit, :update, :destroy] do |
| 690 | delete :avatar, on: :member, action: :destroy_avatar |
| 692 | resources :platform_apps, only: [:index, :new, :create, :show, :edit, :update, :destroy] |
| 693 | resources :platform_banners |
| 694 | resource :instance_status, only: [:show] |
| 696 | resource :settings, only: [:show] do |
| 697 | get :refresh, on: :collection |
| 701 | resources :account_users, only: [:new, :create, :show, :destroy] |
| 704 | mount Sidekiq::Web => '/monitoring/sidekiq' |
| 708 | namespace :installation do |
| 709 | get 'onboarding', to: 'onboarding#index' |
| 710 | post 'onboarding', to: 'onboarding#create' |
| 715 | get '/swagger/*path', to: 'swagger#respond' |
| 716 | get '/swagger', to: 'swagger#respond' |
| 720 | resources :widget_tests, only: [:index] unless Rails.env.production? |