회원 API v2.0.0

Updated by Oh

 오프사이트 캠페인의 발송 시 사용되는 회원의 정보를 그루비에 전송하는 API 입니다. 회원 API 이해 문서를 참고해 주세요.
회원 API v1 과 v2는 혼용하여 사용할 수 없습니다.

회원 정보 조회


설명

등록한 회원 정보를 조회합니다.

회원 정보는 회원 ID, 회원 전화번호를 쿼리 파라미터로 전달하여 조회할 수 있습니다.
※ '회원 정보'란 그루비에서 SMS 또는 카카오 모먼트 메세지를 발송하기 위해 등록한 회원의 정보입니다.


  • 기본 정보
  • Method URL 인증 방식
    GET https://api.groobee.io/v2/users/sms API Key

  • 요청 헤더
  • 이름 설명 필수
    x-api-key x-api-key: ${x-api-key} O
    Content-Type Content-Type: application/json O

  • 쿼리 파라미터
  • 이름 타입 설명 필수 비고
    memberId String 조회 회원의 ID O/X 둘 중 하나는 필수로 입력되어야 합니다.
    phoneNumber String 조회 회원의 전화번호 X/O

  • 응답
  • 응답은 그루비 API 공통응답 형식의 "processValue" 필드에 조회한 회원의 정보를 JSON 배열로 반환합니다.

    이름 타입 설명 비고
    memberId String 조회 회원의 ID
    phoneNumber String 조회 회원의 전화번호
    isReceive String 조회한 회원의 SMS 수신 동의 여부
    • "true": 수신 동의
    • "false": 수신 거부
    name String 조회 회원의 이름
    isReceive 필드는 SMS 수신 동의 항목으로 회원 정보 등록 시 등록하지 않으면 '수신 거부' 로 응답합니다.
    '수신 거부' 상태라면 SMS 발송만 제한되고 카카오 모먼트 발송은 가능합니다.
    name 필드는 회원 정보 저장/수정에서 정보를 전송하지 않으면 정보가 없는 상태로 응답합니다.


    예제

  • 요청(회원 ID) 검색
  • curl -X GET "https://api.groobee.io/v2/users/sms?memberId=${회원아이디}" \ 
    -H "x-api-key: ${x-api-key}" \
    -H "Content-Type": application/json

  • 응답
  • 회원 ID로 조회 시 등록한 회원 ID의 목록이 출력됩니다.

    ※ 회원 API v2 에서는 phoneNumber 를 회원 정보의 유일 값으로 사용합니다.

    {
                      "httpStatus": { 
    "code": "200",
    "reasonPhrase": "OK"
    },
    "processCode": "0",
    "processValue": [
    {
    "memberId": "groobee",
    "phoneNumber": "010-8012-0817",
    "isReceive": "false",
    "name": "그루비"
    },
    {
    "memberId": "groobee",
    "phoneNumber": "010-8012-0815",
    "isReceive": "false",
    "name": "그루비"
    },
    {
    "memberId": "groobee",
    "phoneNumber": "010-8012-0814",
    "isReceive": "false",
    "name": "그루비"
    }
    ]
    }


  • 요청(회원 전화번호) 검색
  • curl -X GET "https://api.groobee.io/v2/users/sms?phoneNumber=${전화번호}" \
    -H "x-api-key: ${x-api-key}" \
    -H "Content-Type": application/json

  • 응답
  • 전화번호로 조회 시 등록한 회원의 정보가 출력됩니다.

    ※ 회원 API v2 에서는 phoneNumber 를 회원 정보의 유일 값으로 사용합니다.

    { 
    "httpStatus": {
    "code": "200",
    "reasonPhrase": "OK"
    },
    "processCode": "0",

    "processValue": [
    {
    "memberId": "plateer",
    "phoneNumber": "010-8012-0812",
    "isReceive": "false",
    "name": "플래티어"
    }
    ]
    }




    회원 정보 저장/수정


    설명

    회원 정보를 저장/수정 합니다.

    회원 대상으로 SMS 또는 카카오 모먼트 메세지를 발송하기 위해 회원 정보를 저장/수정합니다.

    ‘저장/수정' 시 등록된 회원의 정보가 없으면 등록되고, 회원의 정보가 있으면 '전화번호’를 기준으로 회원의 정보가 변경됩니다.

    회원 정보 저장 시 API v2 에서는 전화번호 중복 입력을 확인합니다.
    전송하는 정보에 전화번호가 중복되면 중복된 정보를 제외하고 입력됩니다.


  • 기본 정보
  • Method URL 인증 방식
    POST https://api.groobee.io/v2/users/sms API Key

  • 요청 헤더
  • 이름 설명 필수
    x-api-key x-api-key: ${x-api-key} O
    Content-Type Content-Type: application/json O

  • 요청 본문
  • 요청 본문으로 전송할 수 있는 최대 데이터 행은 1,000 개 입니다.
    1,000 개가 넘으면 오류를 반환합니다.

    이름 타입 설명 필수 비고
    memberId String 저장/수정 회원의 ID O 저장 시 암호화
    phoneNumber String 저장/수정 회원의 전화번호 O 저장 시 암호화
    전화번호 형식: 휴대폰 번호 (구분기호 "-" 만 허용)
    isReceive String 저장/수정 회원의 SMS 수신 동의 여부 X
    • “true": 수신 동의
    • "false": 수신 거부
    • 기본 값 : "false"
    name String 저장/수정 회원의 이름 X 저장 시 암호화

  • 응답
  • 회원 정보 '저장/수정' 응답은 성공/실패 시 모두 정상 응답하며 입력받은 회원 정보의 오류가 있으면 정상 데이터는 처리하고 오류 데이터 행을 오류코드와 함께 반환합니다.

    이름 타입 설명 비고
    memberId String 저장/수정 회원의 ID 저장 시 암호화
    phoneNumber String 저장/수정 회원의 전화번호 저장 시 암호화
    전화번호 형식: 휴대폰 번호 (구분기호 "-" 만 허용)
    isReceive String 저장/수정 회원의 SMS 수신 동의 여부
    • “true": 수신 동의
    • "false": 수신 거부
    name String 저장/수정 회원의 이름
    failureCode String 입력한 행의 실패코드
    • "F00" : 회원 ID가 없고 전화번호 형식 불일치
    • "F01" : 회원 ID가 없음
    • "F02" : 전화번호 형식 불일치
    • “F11“ : 전화번호 중복 행 존재
    failureMessage String 실패 코드에 대한 세부내용
    isReceive 필드는 SMS 수신 동의 항목으로 회원 정보 등록 시 입력하지 않으면 '수신 거부' 로 등록됩니다. '수신 거부' 상태라면 SMS 발송만 제한되고 카카오 모먼트 발송은 가능합니다.
    name 필드는 회원정보 저장/수정에서 정보를 전송하지 않으면 정보가 없는 상태로 저장됩니다.


    예제
  • 요청(회원 ID) 검색
  •   curl -X POST "https://api.groobee.io/v2/users/sms" \ 
    -H "x-api-key: ${x-api-key}" \
    -H "Content-Type": application/json \
    -d '[
    {
    "memberId": "groobee",
    "phoneNumber": "010-9999-9001",
    "isReceive": "true",
    "name": "그루비"
    },
    {
    "memberId": "plateer",
    "phoneNumber": "010-9999-9002",
    "isReceive": "true",
    "name": "플래티어"
    }
    ]'

  • 응답(성공)
  • { 
    "httpStatus": {
    "code": "200",
    "reasonPhrase": "OK"
    },
    "processCode": "0",
    "processValue": [
    ]
    }


  • 응답(실패)
  • 데이터 오류가 있을 경우 실패 응답에 실패한 데이터 및 오류코드를 함께 응답합니다.

    {
    "httpStatus":
    { "code": "200",
    "reasonPhrase": "OK"
    },
    "processCode": "0",
    "processValue": [
    {
    "memberId": "",
    "phoneNumber": "010-9999-9001",
    "isReceive": "true",
    "name": "그루비",
    "failureCode": "F01",
    "failureMessage": "memberId가 유효하지 않습니다"
    } ] }




    회원 정보 삭제


    설명

    회원 정보를 삭제합니다.

    • 입력된 회원의 ID를 기준으로 요청한 회원의 정보를 모두 삭제합니다.
    • POST 요청으로 수행되며, 쿼리 파라미터 'delete' 를 인자로 추가합니다.
    • 삭제 시 입력되었던 회원의 정보는 복구할 수 없습니다.

  • 기본 정보
  • Method URL 인증 방식
    POST https://api.groobee.io/v2/users/sms?delete API Key

  • 요청 헤더
  • 이름 설명 필수
    x-api-key x-api-key: ${x-api-key} O
    Content-Type Content-Type: application/json O

  • 쿼리 파라미터
  • 이름 타입 설명 필수 비고
    delete - 삭제 명령 파라미터 O 파라미터 값(value)이 없어도 동작

  • 요청 본문
  • 이름 타입 설명 필수 비고
    phoneNumber String 삭제할 회원의 아이디 O

  • 응답
  • 회원정보 '삭제' 응답은 성공/실패 시 모두 정상 응답하며 입력받은 회원 정보의 오류가 있으면 정상 데이터는 처리하고 오류데이터 행을 오류코드와 함께 반환합니다.

    이름 타입 설명 비고
    memberId String 삭제할 회원의 아이디
    failureCode String 입력한 행의 실패 코드 "F02" : 전화번호가 누락 되었거나 형식에 맞지 않음.


    예제

  • 요청
  •   curl -X POST "https://api.groobee.io/v2/users/sms" \ 
    -H "x-api-key: ${x-api-key}" \
    -H "Content-Type": application/json \
    -d '[
    {
    "phoneNumber": "010-9999-9002",
    },
    {
    "phoneNumber": "010-9999-9001",
    }
    ]

  • 응답(성공)
  • {
    "httpStatus":
    { "code": "200",
    "reasonPhrase": "OK"
    },
    "processCode": "0",
    "processValue": [
    ]
    }


  • 응답(실패)
  • 데이터 오류가 있을 경우 실패 응답에 실패한 데이터 및 오류코드를 함께 응답합니다.

    {
    "httpStatus":
    { "code": "200",
    "reasonPhrase": "OK"
    },
    "processCode": "0",
    "processValue": [
    {
    "phoneNumber": "",
    "failureCode": "F02",
    "failureMessage": "phoneNumber가 유효하지 않습니다"
    }
    ]
    }



    공통 사항


    processCode 코드값

    코드 값 상태 설명
    0 성공 -
    -1000 실패 요청 시 Header에 x-api-key 미존재
    -1001 실패 고객사 미존재
    -1002 실패 고객사 미승인 상태 (승인 필요)
    -1003 실패 고객사 계약기간 만료
    -1004 실패 데이터 초과
    -9997 실패 데이터가 올바르지 않습니다.
    -9998 실패 http 관련 에러
    -9999 실패 요청 API 서버 에러

    코드 값 상태 설명
    -1005 실패 진행 중인 프로세스 있음
    -1006 실패 회원 ID가 올바르지 않습니다.
    -1007 실패 회원 전화번호가 올바르지 않습니다.





    How did we do?