본문으로 건너뛰기

SMM 패널 API: 서비스, 주문, 상태, 잔액 연동

SMMHO API는 다른 SMM 패널에서 흔히 쓰는 API v2 형식이에요. 한 주소로 POST를 보내고 action 값으로 할 일을 정하면 JSON으로 답해요.

API 기본 정보

주소
POST https://smmho.com/api/v2
보내는 형식
application/x-www-form-urlencoded 또는 application/json
인증
key 칸에 API 키. 키는 로그인한 뒤 계정 화면에서 만들어요
답
JSON. 틀린 요청은 error 칸에 이유
요청 한도
키 하나에 1분 300번
API 키 만들기API 키는 로그인한 뒤 계정 화면에서 만들어요.
curl https://smmho.com/api/v2 \  -d "key=YOUR_API_KEY" \  -d "action=add" -d "service=9340" \  -d "link=https://instagram.com/yourname" \  -d "quantity=1000"
// { "order": "TT5M-CA9L" }

SMM 패널 API 동작

action=services서비스 목록

모든 서비스의 번호, 이름, 분류, 1,000개당 가격, 최소와 최대 수량, 리필 여부를 받아요.

보내는 값
이름설명
keyAPI 키
actionservices

답 예시

[
  {
    "service": 9340,
    "name": "Instagram Followers, 30-day refill",
    "type": "Default",
    "category": "Instagram Followers",
    "rate": "2.2470",
    "min": 50,
    "max": 75000,
    "refill": true,
    "cancel": true
  }
]

action=add새 주문

서비스 번호, 링크, 수량으로 주문을 넣어요. 금액은 잔액에서 빠지고 주문 코드가 돌아와요.

보내는 값
이름설명
keyAPI 키
actionadd
service서비스 번호
link계정이나 게시물 주소
quantity수량(서비스의 최소~최대)

답 예시

{
  "order": "TT5M-CA9L"
}

action=status주문 상태

주문 코드 하나(order) 또는 쉼표로 이은 100개까지(orders)의 금액, 시작 수, 상태, 남은 수량을 받아요.

보내는 값
이름설명
keyAPI 키
actionstatus
order주문 코드 하나
orders주문 코드 여러 개(쉼표로, 100개까지)

답 예시

{
  "charge": "2.2470",
  "start_count": 0,
  "status": "Pending",
  "remains": 1000,
  "currency": "USD"
}

action=balance잔액

지금 잔액과 통화를 받아요.

보내는 값
이름설명
keyAPI 키
actionbalance

답 예시

{
  "balance": "100.0000",
  "currency": "USD"
}

action=cancel주문 취소

대기 중인 주문을 취소해요. 금액은 잔액으로 돌아와요.

보내는 값
이름설명
keyAPI 키
actioncancel
orders주문 코드(쉼표로, 100개까지)

답 예시

[
  {
    "order": "TT5M-CA9L",
    "cancel": 1
  }
]

주문 상태 값

Pending
대기. 아직 시작 전이라 취소할 수 있어요
In progress
진행 중
Completed
완료
Partial
부분 완료. 처리되지 않은 수량만큼 잔액으로 돌아와요
Canceled
취소. 금액이 잔액으로 돌아와요

API 오류

Invalid API key
키가 틀렸거나 새 키로 바뀌었어요
Invalid service
없는 서비스 번호예요
Invalid link
https:// 로 시작하는 공개 주소가 아니에요
Quantity out of range
수량이 서비스의 최소, 최대 밖이에요
Not enough funds on balance
잔액이 모자라요
Too many requests
요청 한도를 넘었어요. 잠시 뒤에 다시 보내요