first commit
CI / typecheck (push) Successful in 1m8s
CI / format (push) Failing after 1m6s
CI / lint (push) Failing after 49s
CI / test (push) Failing after 1m8s

This commit is contained in:
SDI
2026-07-15 18:05:12 +09:00
commit 12e4f17b62
4633 changed files with 817125 additions and 0 deletions
@@ -0,0 +1,236 @@
---
title: Tenant Settings
description: This guide explains how to manage tenant information, login methods, user management, and other organization-wide settings in ABC User Feedback.
sidebar_position: 1
---
# Tenant Settings
Tenant settings are the top-level management features of ABC User Feedback, covering important settings that affect the entire organization. This document explains how to manage tenant information, configure login methods, and manage all users.
> **Note**: These settings can only be accessed by users with **Super Admin permissions**.
---
## Tenant Settings
A tenant is the top-level unit of an organization, encompassing all projects and users.
### Access Method
1. Click the **Home** icon in the top right menu
2. Select **Tenant Information** from the left menu
### Editable Items
| Item | Description | Editable | Example |
| --------------- | -------------------------------------------- | -------- | ---------------------------- |
| **ID** | Unique tenant identifier (system auto-generated) | ❌ No | `1` |
| **Name** | Tenant name (organization name, company name, etc.) | ✅ Yes | `ABC Company` |
| **Description** | Tenant description (optional) | ✅ Yes | `Customer feedback management system` |
### How to Edit Information
1. Modify the **Name** or **Description** field
2. Click the **Save** button at the top right
3. A success message is displayed when saved
> The tenant name may be displayed in the login UI.
---
## Login Settings
Configure the authentication method users will use when accessing the system.
### Access Method
1. Click the **Home** icon in the top right menu
2. Select **Login Management** from the left menu
### Supported Login Methods
#### 1. Email Login
The default email + password combination method.
**Features**:
- Enabled by default without additional setup
- User invitation → email verification → password setup sequence
- Password reset functionality provided
**Password Policy**:
- Minimum 8 characters
- Recommended to include letters, numbers, and special characters
- Consecutive characters prohibited (e.g., `aa`, `11`)
#### 2. Google Login
Social login method via Google OAuth 2.0.
**Setup Method**:
1. **Enable Google Login**: Toggle to ON
2. **Google Cloud Console setup is required**:
> **Note**: For detailed implementation of Google OAuth integration, refer to the [OAuth Integration Guide](/en/developer-guide/oauth-integration).
#### 3. Custom OAuth Login
Method using your own OAuth server or other OAuth providers.
**Setup Items**:
| Item | Description | Example |
| ----------------- | ------------------------------------ | --------------------------------------------- |
| **Provider Name** | Name displayed on login button | `Sign in with Microsoft` |
| **Client ID** | OAuth client ID | `abc123xyz` |
| **Client Secret** | OAuth client secret | `supersecret` |
| **Auth URL** | Authentication request URL | `https://auth.example.com/oauth2/auth` |
| **Token URL** | Token request URL | `https://auth.example.com/oauth2/token` |
| **User Info URL** | User information request URL | `https://auth.example.com/oauth2/userinfo` |
| **Scope** | Permission scope to request | `openid email profile` |
| **Email Key** | Email field name in user information | `email` |
**Setup Sequence**:
1. Enter OAuth server information in each field
2. Click the **Save** button to save
3. A button with the configured Provider Name is displayed on the login screen
### Login Method Combinations
Multiple login methods can be enabled simultaneously:
- **Email only**: Only default login form displayed
- **Email + Google**: Login form + "Sign in with Google" button
- **Email + Custom**: Login form + custom OAuth button
### Testing Login Settings
After changing settings, be sure to test:
1. Access the login page in browser incognito mode
2. Verify that configured login methods are displayed correctly
3. Perform actual login tests with each method
---
## User Management
A feature to centrally manage all users across the tenant.
### Access Method
1. Click the **Home** icon in the top right menu
2. Select **User Management** from the left menu
### Viewing User List
#### Displayed Information
| Column | Description | Display Example |
| ---------- | -------------------------------- | ---------------------------- |
| Email | Login account email | `user@company.com` |
| Name | User name (from profile) | `John Doe` |
| Department | Department | `Development Team` |
| Type | User type | `SUPER` / `GENERAL` |
| Project | List of accessible projects | `Project A, Project B` |
| Created | Account creation date/time | `2024-03-15 14:30` |
#### User Type Description
| Type | Description | Permission Scope |
| --------- | --------------------------------------------------------------- | ---------------------- |
| `SUPER` | Can access all projects and settings. Acts as full system administrator | Entire tenant |
| `GENERAL` | Can only access specified projects | Specific projects only |
### User Search and Filtering
You can quickly find desired users when there are many users.
#### Filter Function
Click the **Filter** button at the top to set conditions.
**Filter Conditions**:
- **Email**: Search by email address
- **Name**: Search by user name
- **Department**: Search by department name
**Operator Options**:
- **CONTAINS**: When it contains
- **IS**: When it exactly matches
### Inviting Users
Invite new users to the system.
#### Invitation Method
1. Click the **Invite User** button at the top right
2. Enter invitation information
| Item | Description | Options |
| ----------- | ---------------------------------- | --------------------------- |
| **Email** | Email address of user to invite | Required input |
| **Type** | User type | `GENERAL` / `SUPER` |
| **Project** | Projects to allow access | Select from project list |
| **Role** | Role in that project | `Admin` / `Editor` / `Viewer` |
3. Click the **Invite** button to complete the invitation
#### Post-Invitation Process
1. An email is sent to the invited user
2. The user clicks the link in the email to proceed with registration
3. After registration is complete, they are automatically added to the specified project
### Editing User Information
You can modify information and permissions of existing users.
#### Editing Method
1. Click the user you want to edit in the user list
2. The **Edit User** popup opens
#### Editable Items
| Item | Editable | Description |
| --------- | -------- | ------------------------------------- |
| **Email** | ❌ No | Cannot be changed as account identifier |
| **Type** | ✅ Yes | Can change between `GENERAL``SUPER` |
#### Save and Apply
1. Modify necessary information
2. Click the **Save** button
3. Changes are applied immediately and reflected from the user's next login
### Deleting Users
You can delete users who no longer use the system.
#### Deletion Method
1. Click the **Delete** button at the bottom of the user edit popup
2. Approve deletion in the confirmation dialog
#### Deletion Notes
- **Cannot be recovered**: Deleted user accounts cannot be restored
- **Immediate access removal**: All system access is blocked immediately upon deletion
---
## Related Documents
- [Project Management](../02-project-management.md) - Member and permission management per project
- [OAuth Integration Guide](../../02-developer-guide/03-oauth-integration.md) - Technical implementation of OAuth settings
- [API Integration](/en/developer-guide/api-integration) - User management via API
@@ -0,0 +1,134 @@
---
title: API Key Settings
description: This document explains how to create, manage, and maintain security for API keys used for external system integration in ABC User Feedback.
sidebar_position: 2
---
# API Key Settings
API keys are authentication means that allow external systems to securely integrate with ABC User Feedback. This document explains API key creation, management, and security maintenance from a UI perspective.
![api-key-setting.png](/img/api-key/api-key-setting.png)
---
## API Key Overview
### Role of API Keys
API keys are used for the following purposes:
- **External system authentication**: Send feedback from websites, mobile apps
- **Automation integration**: Data collection through batch jobs, scripts
- **Third-party tool connection**: Integration with analysis tools, monitoring systems
- **Security control**: Independent access permission management per project
### Security Features
- **Per-project independence**: Separate keys issued for each project
- **Status management**: Can be controlled immediately with Active/Inactive status
---
## Creating API Keys
### Access Method
1. Click **Settings** in the top menu
2. Select **API Key Management** from the left menu
### Key Creation Process
#### 1. Click Create Button
Click the **Create API Key** button at the top right of the API Key Management screen.
#### 2. Auto Generation and Display
A new API key is automatically generated and displayed in a popup immediately upon clicking the button.
**Popup Components**:
- **API Key Value**: Displays the full key string
- **Copy Button**: Instantly copies to clipboard
---
## Managing API Key List
### Key List Screen Structure
Created API keys are managed in table format.
#### Table Column Information
| Column | Description | Display Format |
| ----------- | ------------------------- | ----------------------------- |
| **API Key** | Generated key value | `AbcdEfgh...` |
| **Status** | Current activation status | Active / Inactive |
| **Created** | Key creation date/time | `2024-03-15 14:30` |
| **Actions** | Management action buttons | Status change, delete buttons |
#### Key Identification Method
Since the full key value cannot be viewed again, distinguish keys using the following methods:
- **Creation time**: Check when the key was created
- **Usage purpose memo**: Record the key's purpose separately
---
## API Key Status Management
![api-key-detail.png](/img/api-key/api-key-detail.png)
### Active / Inactive Toggle
Each API key can be activated/deactivated immediately.
#### Status Meanings
| Status | Description | API Call Result |
| ------------ | ------------------------------ | ----------------- |
| **Active** | Available for actual API calls | Normal processing |
| **Inactive** | Call blocked state | 401 Unauthorized |
#### Status Change Method
1. Click the toggle switch in the **Status** column of the API key list
2. Status changes immediately and is reflected on screen
3. External systems using that key are immediately affected
---
## Deleting API Keys
### When to Delete
API keys should be deleted in the following cases:
- **Key exposure**: When a key is accidentally made public
- **Project termination**: When use of that project ends
- **Security policy**: According to regular key rotation policy
- **Unused keys**: Cleanup of keys no longer in use
### Deletion Method
#### 1. Click Delete Button
Click the delete button in the **Actions** column of the key you want to delete in the key list.
#### 2. Confirm Deletion
Approve deletion in the confirmation dialog.
#### 3. Deletion Complete
When you click the **Delete** button, the key is immediately deleted and removed from the list.
---
## Related Documents
- [API Integration Guide](/en/developer-guide/api-integration) - Actual integration implementation using API keys
- [Project Management](/en/user-guide/project-management) - API key management per project
@@ -0,0 +1,167 @@
---
title: Issue Tracker Settings
description: This guide explains how to integrate ABC User Feedback issues with external issue trackers (Jira, etc.) to track and link issues.
sidebar_position: 3
---
# Issue Tracker Settings
With issue tracker settings, you can integrate ABC User Feedback issues with external issue management systems (Jira, etc.). You can link external ticket links to internal issues to naturally integrate with development workflows.
---
## Issue Tracker Overview
### Purpose of Integration
Issue tracker integration is used for the following purposes:
- **Workflow integration**: Connect customer feedback with development work
- **Issue tracking**: One-to-one mapping between internal issues and external tickets
- **Progress sharing**: Synchronize information between development and customer support teams
- **Efficiency improvement**: Prevent duplicate work and maintain context
### Integration Method
- **Manual link connection**: Manually enter external ticket numbers in ABC issues
- **Automatic URL generation**: Automatically generate links with configured Base URL and Project Key
- **Click navigation**: Click generated links to immediately navigate to external systems
> **Note**: Real-time bidirectional synchronization is not supported. If synchronization such as status changes is needed, use [Webhook](./04-webhook-management.md).
---
## Accessing Settings Screen
### Access Method
1. Click **Settings** in the top menu
2. Select **Issue Tracker Management** from the left menu
### Settings Screen Structure
The issue tracker management screen is structured as follows:
- **Issue Tracking System**: Dropdown to select system to integrate
- **Connection Settings**: Area to enter connection information
- **Link Preview**: Preview of links to be generated
- **Test Connection**: Connection test button
---
## Jira Integration Settings
### System Selection
#### 1. Issue Tracking System Setting
Select **Jira** from the dropdown.
### Entering Connection Information
#### 2. Base URL Setting
Enter the base address of the Jira system.
| Input Example | Description |
| --------------------------------------- | ------------------------------ |
| `https://yourcompany.atlassian.net` | Jira Cloud instance |
| `https://jira.company.com` | Self-hosted Jira Server |
| `https://jira.internal:8080` | Internal network Jira |
**Notes**:
- Must include `https://` or `http://` protocol
- Remove trailing slash (`/`)
- Include port number if present
#### 3. Project Key Setting
Enter the unique key of the Jira project.
| Input Example | Description |
| ------------- | --------------------------- |
| `PROJ` | Common project key |
| `DEV` | Development team project |
| `CS` | Customer support team project |
| `BUG` | Bug management dedicated |
**How to Check Project Key**:
1. Access the project in Jira
2. The part before `-` in the issue number is the Project Key
3. Example: In `PROJ-123`, `PROJ` is the Project Key
### Link Preview
You can preview the links that will be generated based on the configured information.
#### Preview Structure
```
Base URL + /browse/ + Project Key + - + Issue Number
```
**Example**:
- Base URL: `https://yourcompany.atlassian.net`
- Project Key: `PROJ`
- Issue Number: `123` (entered by user)
- **Generated Link**: `https://yourcompany.atlassian.net/browse/PROJ-123`
#### Link Format Validation
Use the preview to check the following:
- Whether the URL format is correct
- Whether actual Jira issues are accessible
- Whether team members have access permissions
---
## Linking Tickets to Issues
### Entering Ticket Number
After issue tracker settings are complete, you can link external tickets to individual issues.
#### Linking Method
1. Click the desired issue in the **Issue** tab
2. The **Issue Details** panel opens on the right
3. Enter the external ticket number in the **Ticket** field
#### Input Format
| Input Method | Description | Generated Link |
| ----------- | ----------- | -------------------------------------------- |
| `123` | Enter only number | `https://jira.company.com/browse/PROJ-123` |
The system automatically adds the Project Key, so you only need to enter the number.
### Automatic Link Generation
After entering the ticket number, click the **Save** button to automatically generate the link.
#### Link Features
- **Click navigation**: Clicking the link opens the external Jira issue in a new tab
- **External link display**: External link icon displayed next to the link
- **Editable**: Can change ticket number in Edit mode
### Unlinking
To remove external ticket connection:
1. Click the **Edit** button in the issue detail panel
2. Delete the content in the **Ticket** field
3. Save changes with the **Save** button
---
## Related Documents
- [Issue Management](/en/user-guide/issue-management) - How to create issues and link tickets
- [Webhook Management](/en/user-guide/settings/webhook-management) - External system notifications when issue status changes
- [API Integration Guide](/en/developer-guide/api-integration) - Issue management via API
@@ -0,0 +1,172 @@
---
sidebar_position: 4
title: 'Webhook Settings'
description: 'This document explains how to set up webhooks for automatic integration with external systems and send notifications when events occur.'
---
# Webhook Settings
Webhooks are a feature that **automatically sends notifications to external systems when specific events occur** in ABC User Feedback. You can deliver events such as feedback creation and issue status changes in real-time to external services (Slack, Discord, your own server, etc.). For detailed integration guide, refer to the [Webhook Integration](/en/developer-guide/webhook-integration) document.
![webhook-setting](/img/webhook/webhook-setting.png)
---
## Access Method
1. Click **Settings** in the top menu
2. Select **Webhook Integration** from the left menu
---
## Webhook Integration Screen Overview
![webhook-list.png](/img/webhook/webhook-list.png)
The webhook integration screen is structured as follows:
### Webhook List Table Structure
| Column | Description |
| ----------------- | --------------------------------------------- |
| **On/Off** | Webhook activation/deactivation toggle switch |
| **Name** | Webhook name |
| **URL** | External endpoint to receive notifications |
| **Event Trigger** | Subscribed event triggers |
| **Created** | Webhook creation date/time |
---
## Creating New Webhooks
![webhook-create](/img/webhook/webhook-create.png)
### 1. Start Webhook Registration
Click the **Register Webhook** button at the top right to open the webhook registration modal.
### 2. Enter Basic Information
#### Required Input Items
| Item | Description |
| -------- | -------------------------------------- |
| **Name** | Name for webhook identification |
| **URL** | Endpoint to receive HTTP POST requests |
### 3. Token Setting (Optional)
You can set a token for authentication in the **Token** field:
- Click the **Generate** button to auto-generate
- Or enter token value directly
### 4. Event Trigger Selection
You can select events to subscribe to per channel:
#### Supported Event Types
For each channel (VOC, Review, Survey, VOC Test), you can select the following events:
| Event Type | Description |
| ----------------------- | -------------------------------- |
| **Feedback Creation** | When new feedback is registered |
| **Issue Registration** | When new issue is created |
| **Issue Status Change** | When issue status is changed |
| **Issue Creation** | When issue is linked to feedback |
### 5. Save Webhook
After entering all information:
1. Click the **OK** button to create the webhook
2. You can cancel with the **Cancel** button
---
## Webhook Status Management
### Activation/Deactivation Toggle
You can change the status by clicking the toggle switch in the **On/Off** column of each webhook in the webhook list:
- **On (Active)**: Real-time transmission when events occur
- **Off (Inactive)**: Webhook is maintained but transmission is stopped
### Temporary Deactivation Scenarios
- When external server is under maintenance
- When changing webhook URL
- When spam notifications need to be prevented
---
## Webhook Editing and Deletion
### Webhook Editing
Click the webhook you want to edit in the webhook list to open the edit modal:
#### Editable Items
- Webhook name
- Target URL change
- Token value modification
- Event type addition/removal
### Webhook Deletion
To completely remove a webhook:
1. Select delete option in the edit modal
2. Or click delete button directly in the list (if delete button exists in UI)
---
## Webhook Testing and Validation
### Manual Validation Method
1. **Feedback Creation Test**:
- Register test feedback to check `Feedback Creation` event
2. **Issue Management Test**:
- Create issues or change status to check related events
3. **External Service Check**:
- Check message reception in Slack, Discord, etc.
---
## Common Integration Examples
### Slack Webhook Settings
```
Name: Slack Notifications
URL: https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXX
Events: Feedback Creation, Issue Registration (all channels)
```
### Discord Webhook Settings
```
Name: Discord Development Team Notifications
URL: https://discord.com/api/webhooks/123456789/abcdefghijk
Events: Issue Status Change (VOC channel only)
```
### Custom Server Integration
```
Name: Internal Analysis System
URL: https://api.yourcompany.com/webhooks/feedback
Token: your-generated-token
Events: All events (all channels)
```
---
## Related Documents
- [Webhook Developer Guide](/en/developer-guide/webhook-integration) - How to implement webhook receiving server
- [API Key Management](./02-api-key-management.md) - API key-based authentication settings
@@ -0,0 +1,272 @@
---
sidebar_position: 5
title: 'AI Settings'
description: 'This document explains basic settings and integration methods for using generative AI features.'
---
# AI Settings
To use **generative AI features** in ABC User Feedback, you must first set up integration with an AI provider.
After completing AI settings, you can use all features such as **AI Field Templates**, **AI Issue Recommendations**, and **AI Usage Monitoring**.
---
## Access Method
1. Click **Settings** in the top menu
2. Select **Generative AI Integration** from the left menu
3. Click **AI Setting** in the top tabs
---
## AI Provider Selection and Settings
![ai-setting.png](/img/ai/ai-setting.png)
### 1. Provider Selection
Select one of the currently supported AI providers: OpenAI, Google Gemini:
### 2. API Key Input
Enter the API key issued from the selected AI provider.
### 3. Base URL Setting (Optional)
In most cases, **leave it empty** and the default value will be used automatically.
Enter only when using special endpoints or proxy servers.
### 4. System Prompt Setting (Optional)
You can set **basic instructions** that the AI will reference when processing all requests.
Use this when you have organizational tone and manner or special requirements.
### 5. Save Settings
After entering all information, click the **Save** button at the top right.
---
## AI Usage Monitoring
![ai-usage.png](/img/ai/ai-usage.png)
You can monitor AI feature usage and costs in the **AI Usage** tab.
### Usage Dashboard
Information you can check:
- **Daily/monthly API call count**
- **Token usage** (input/output separately)
- **Usage distribution by feature** (AI fields vs issue recommendations)
---
## AI Field Template Management
![ai-field-template.png](/img/ai/ai-field-template.png)
After completing AI settings, you can manage automatic feedback analysis templates in the **AI Field Template** tab.
### Default Templates
Default templates provided by the system:
| Template | Description | Usage Example |
| ---------------------- | ---------------------------------------------- | ---------------------------------------- |
| **Feedback Summary** | Summarize feedback in one sentence | Grasp core of long feedback |
| **Sentiment Analysis** | Sentiment analysis (positive/negative/neutral) | Analyze customer satisfaction trends |
| **Translation** | Translate feedback to English | Integrate multilingual feedback analysis |
| **Keyword Extraction** | Extract 2-3 core keywords | Auto-tag issue categories |
### Creating Custom Templates
![ai-field-template-create.png](/img/ai/ai-field-template-create.png)
1. Click the **Create New** card
2. Enter template information
| Item | Description |
| --------------- | ------------------------------- |
| **Title** | Template name |
| **Prompt** | Instruction sentence for AI |
| **Model** | Select AI model to use |
| **Temperature** | Creativity adjustment (0.0~1.0) |
3. Test in Playground
- Enter test feedback with "Add Data" button
- Check results by clicking "AI test execution"
### Template Editing and Deletion
- Click template card → edit
- Delete with **Delete Template** button
- Deletion may affect AI fields using that template
---
## Applying AI Fields to Channels
After creating AI field templates, you must apply them as actual channel fields to view AI analysis results in feedback.
### 1. Add AI Field in Field Management
Add AI fields in **Settings > Channel List > [Select Channel] > Field Management**.
#### AI Field Setting Items
| Item | Description | Required |
| ----------------------- | -------------------------------- | -------- |
| **Key** | Unique field identifier | Required |
| **Display Name** | Name displayed in UI | Required |
| **Format** | Select `aiField` | Required |
| **Template** | Select created AI field template | Required |
| **Target Field** | Text field to be analyzed | Required |
| **Property** | Editable or Read Only | Required |
| **AI Field Automation** | Auto execution | Optional |
#### Setting Example
```
Key: sentiment_analysis
Display Name: Sentiment Analysis
Format: aiField
Template: Feedback Sentiment Analysis
Target Field: message
Property: Read Only
AI Field Automation: ON (auto execution)
```
### 2. Template Connection and Target Field Setting
Select the AI field template created earlier from the **Template** dropdown.
**Target Field** specifies the fields to be analyzed by AI
### 3. AI Field Automation Setting
Select execution method through **AI Field Automation** toggle:
- **ON (Auto execution)**: Automatically execute AI analysis when new feedback is registered
- **OFF (Manual execution)**: User must manually click execution button
## Checking AI Analysis Results in Feedback
After AI field settings are complete, you can check AI analysis results in the feedback list and detail screens.
### Checking in Feedback List
AI fields are added as new columns in the feedback table:
- **Summary**: Summary generated by AI
- **Classification**: AI classification results
- **Korean**: Translation results, etc.
### Checking in Feedback Detail Screen
You can check more detailed AI analysis results in the feedback detail view panel:
1. Click feedback row → right detail panel opens
2. Check AI analysis results by field
3. Displayed with analysis results for each AI field
## Manual AI Analysis Execution
You can manually execute AI analysis in the feedback detail screen.
### Using Run AI Button
1. Click **Run AI** button in feedback detail screen
2. AI analysis executes and results are automatically entered in that field
3. Results can be checked immediately after analysis completes
### Manual Execution Usage Scenarios
- **Cost savings**: Select only needed feedback for AI analysis
- **Performance check**: Test results of new templates in advance
- **Re-analysis**: Re-analyze existing feedback after template modification
---
## AI Issue Recommendation Settings
![ai-issue-recommendation.png](/img/ai/ai-issue-recommendation.png)
You can set up automatic issue recommendation features based on feedback in the **AI Issue Recommendation** tab.
### Creating AI Issue Recommendation Settings
![ai-issue-recommendation-create.png](/img/ai/ai-issue-recommendation-create.png)
1. Click **Create New** button
2. Enter setting items
| Item | Description | Required |
| ---------------- | -------------------------------- | -------- |
| **Channel** | Select channel to apply | Required |
| **Target Field** | Field to analyze (e.g., message) | Required |
| **Prompt** | Recommendation criteria prompt | Optional |
| **Enable** | Feature activation toggle | Required |
3. Advanced Settings
| Setting | Description |
| ------------------------- | ----------------------------------------------------------- |
| **Model** | Model to use |
| **Temperature** | Creativity adjustment |
| **Data Reference Amount** | Amount of issues to reference (issues and related feedback) |
### Testing AI Issue Recommendation Feature
Test in Playground with entered settings:
1. Enter example feedback
2. Click "AI test execution"
3. Check recommended issue list
### Using Recommendations in Actual Feedback
In feedback detail view:
- Check AI recommended issue list
- Select appropriate issues with checkboxes
- Request different recommendations with **Retry** button
### Using Issue Recommendations in Feedback List
In channels with AI issue recommendations configured, you can also use issue recommendation features directly in the feedback list screen.
#### Usage Method
1. Click the **+ button** in the **Issue column** of the feedback you want to link issues to in the feedback list
2. When dropdown menu appears, select **"Run AI"**
3. AI analyzes related issues and displays recommendation list
#### Checking and Applying Recommendation Results
After AI analysis completes, from the recommended issue list:
- Check **recommended issues**
- Select appropriate recommended issues
- Option to create new issues also provided
- After selection, that issue is automatically linked to feedback
#### Batch Processing Usage
You can use AI issue recommendations even when multiple feedback are selected, enabling efficient feedback classification:
1. Select multiple rows in feedback list (using checkboxes)
2. Execute AI issue recommendations from top batch operation menu
3. Check and apply recommended issues for each feedback
---
## Related Documents
- [Field Settings](/en/user-guide/feedback-management) - How to apply AI fields to channels
- [Issue Creation and Status Management](/en/user-guide/issue-management) - How to use AI recommended issues
- [Feedback Checking and Filtering](/en/user-guide/feedback-management) - How to check AI analysis results
@@ -0,0 +1,102 @@
---
sidebar_position: 6
title: 'Image Settings'
description: 'This guide explains how to set up image storage methods and security policies for images attached to feedback.'
---
# Image Settings
ABC User Feedback supports **uploading images along with feedback** when users submit feedback. You can build a safe and efficient feedback collection environment by appropriately setting image storage methods and security policies.
![image-setting.png](/img/image/image-setting.png)
---
## Access Method
1. Click **Settings** in the top menu
2. Select **Channel List > [Select Channel]** from the left menu
3. Select **Image Management** from the bottom tabs
---
## Image Storage Integration Settings
S3 or S3-compatible storage integration is required to upload images directly to the server via **Multipart Upload API** or use **Presigned URL Download** functionality.
### Required Setting Items
| Item | Description | Example |
| --------------------- | ------------------------------------- | ----------------------------------------- |
| **Access Key ID** | Key ID for S3 access | `AKIAIOSFODNN7EXAMPLE` |
| **Secret Access Key** | Secret for the key | `wJalrXUtnFEMI/K7MDENG/...` |
| **End Point** | S3 API endpoint URL | `https://s3.ap-northeast-1.amazonaws.com` |
| **Region** | Region where bucket is located | `ap-northeast-1` |
| **Bucket Name** | Target bucket where images are stored | `consumer-ufb-images` |
### Presigned URL Download Settings
You can enhance image download security through the **Presigned URL Download** option.
#### Setting Options
- **Enable**: Access images through authenticated one-time URLs (enhanced security)
- **Disable**: Image URLs are directly exposed and publicly accessible
### Connection Test
After entering all settings, click the **Test Connection** button to verify storage connection.
Connection results:
-**Success**: "Connection test succeeded" message
-**Failure**: Recheck input values, bucket permissions, network settings
---
## Image URL Domain Whitelist Settings
When using **Image URL method** or wanting to enhance security, you can set a whitelist to allow only trusted domains.
### Current Status Check
Default setting is **"All image URLs are allowed"** state, allowing image URLs from all domains.
### Adding to Whitelist
To allow only specific domains for security enhancement:
1. Add trusted domains in the **Whitelist** area
2. Example domains:
- `cdn.yourcompany.com`
- `images.trusted-partner.io`
- `storage.googleapis.com`
---
## Supported Storage Services
### AWS S3
- Most commonly used cloud storage
- Stable and highly scalable
---
## Saving Settings
After completing all settings, click the **Save** button at the top right to save changes.
After saving:
- New image uploads work according to configured method
- Existing images remain with existing settings
- Recommended to recheck normal operation with Test Connection
---
## Related Documents
- [Field Settings](/en/user-guide/feedback-management) - How to add image fields to feedback forms
- [Feedback Checking and Filtering](/en/user-guide/feedback-management) - How to check uploaded images in feedback
- [API Key Management](./02-api-key-management.md) - API key security management methods
@@ -0,0 +1,5 @@
{
"position": 7,
"label": "Settings",
"description": "Guide for settings."
}
@@ -0,0 +1,8 @@
---
title: Settings
description: Guide for settings.
---
import DocCardList from '@theme/DocCardList';
<DocCardList />