> ## Documentation Index
> Fetch the complete documentation index at: https://developer.alltalk.co.kr/llms.txt
> Use this file to discover all available pages before exploring further.

# API 키 발급

> 관리자에서 apikey, service, groupId 확인하는 방법

AllTalk API를 사용하려면 다음 3가지 값이 필요합니다.

| 항목        | 용도                          |
| --------- | --------------------------- |
| `apikey`  | 모든 API 요청 헤더에 포함            |
| `service` | 발송 시 body에 포함 (채널별 서비스 번호)  |
| `groupId` | 발송 시 body · 헤더에 포함 (그룹 식별자) |

<Steps>
  <Step title="관리자 로그인">
    [admin.alltalk.co.kr](https://admin.alltalk.co.kr) 접속 후 계정으로 로그인합니다.

    <Frame caption="관리자 로그인 화면">
      <img src="https://mintcdn.com/atozsoft/N9QnAJQ1f9Yhrikc/images/credentials/step1-login.png?fit=max&auto=format&n=N9QnAJQ1f9Yhrikc&q=85&s=b31946bdc900075d60df65061608c45f" alt="관리자 로그인 화면" width="2036" height="1270" data-path="images/credentials/step1-login.png" />
    </Frame>
  </Step>

  <Step title="내정보 메뉴 진입">
    우측 상단 프로필 이미지를 클릭한 후, 나타난 메뉴에서 **내정보**를 클릭합니다.

    <Frame caption="프로필 → 내정보 메뉴">
      <img src="https://mintcdn.com/atozsoft/N9QnAJQ1f9Yhrikc/images/credentials/step2-menu.png?fit=max&auto=format&n=N9QnAJQ1f9Yhrikc&q=85&s=3a55f5e1d21929a43ef27aac09dea382" alt="내정보 메뉴 위치" width="1194" height="656" data-path="images/credentials/step2-menu.png" />
    </Frame>
  </Step>

  <Step title="키 값 복사">
    내정보 페이지의 **API / 채널 정보** 탭에서 각 항목 옆의 복사 버튼을 눌러 값을 복사합니다.

    <Frame caption="apikey / service / groupId 확인">
      <img src="https://mintcdn.com/atozsoft/N9QnAJQ1f9Yhrikc/images/credentials/step3-copy.png?fit=max&auto=format&n=N9QnAJQ1f9Yhrikc&q=85&s=46bc95a73e200d0cf8a794c51dbd3957" alt="API 키 확인 화면" width="1224" height="804" data-path="images/credentials/step3-copy.png" />
    </Frame>

    <Warning>
      `apikey`는 외부에 노출되면 안 됩니다. 환경변수 또는 Secret Manager에
      저장하고, 프론트엔드 코드에 하드코딩하지 마세요.
    </Warning>
  </Step>

  <Step title="요청에 적용">
    받은 값을 API 요청에 사용합니다.

    ```javascript theme={null}
    await axios.post('https://api.alltalk.co.kr/sms', {
      service: 1234567890,          // 위에서 복사한 service
      groupId: 'YOUR_GROUP_ID',       // 위에서 복사한 groupId
      message: '안녕하세요',
      numbers: ['01012345678'],
      callbackNo: '16612460',
    }, {
      headers: {
        apikey: process.env.ALLTALK_API_KEY,   // 위에서 복사한 apikey
        groupId: 'YOUR_GROUP_ID',
      },
    });
    ```
  </Step>
</Steps>

## 자주 묻는 질문

<AccordionGroup>
  <Accordion title="키가 보이지 않아요">
    계정에 API 사용 권한이 활성화되지 않았을 수 있습니다.
    영업 담당자에게 문의해주세요.
  </Accordion>

  <Accordion title="키가 유출된 것 같아요">
    즉시 관리자 **개발자 → API Key** 에서 **재발급**을 누르세요.
    기존 키는 즉시 무효화되고 새 키가 발급됩니다.
  </Accordion>

  <Accordion title="여러 서비스에 하나의 키를 써도 되나요?">
    `apikey`는 계정 단위, `service`는 채널 단위입니다.
    여러 발송 채널이 있다면 `service` 값만 다르게 사용하고 `apikey`는 동일하게 사용합니다.
  </Accordion>
</AccordionGroup>
