μ¬μ μ€λΉ
- μλΌ μλ΅ APIλ μλΌλ‘ μμ§ν λ°μ΄ν°λ₯Ό μΈλΆ μμ€ν κ³Ό μ°λν μ μλλ‘ νλ APIμ λλ€.
- μλΌ μλ΅ APIλ₯Ό μ¬μ©νλ©΄ μλΌλ‘ μμ§ν λ°μ΄ν°λ₯Ό μΈλΆ μμ€ν μΌλ‘ μ λ¬ν μ μμ΄μ.
- μλΌ μλ΅ APIλ ν λ΄ κ΄λ¦¬μ κΆνμ κ°μ ΈμΌλ§ μ¬μ©ν μ μμ΅λλ€. ν λ΄ κ΄λ¦¬μκ° μλλΌλ©΄ ν κ΄λ¦¬μμκ² λ¬Έμνμ¬ κΆνμ λ°κ±°λ, κ΄λ¦¬μλ‘λΆν° API ν€λ₯Ό λ°μ μ¬μ©ν μ μμ΅λλ€.
- APIλ‘ νμνκ³ μ νλ νλ‘μ νΈκ° μν νμ΄ Enterprise νλμ κ°μ λμ΄ μμ΄μΌ ν©λλ€.
API ν€ λ°κΈ
μλΌμ ν κ΄λ¦¬μλ μλΌμ ν μ€μ νμ΄μ§μμ API ν€λ₯Ό νμΈνκ³ λ°κΈν μ μμ΅λλ€.
API ν€μ Client IDλ₯Ό νμΈνκ³ λ©λͺ¨μ₯ λ±μ μ μ₯ν΄λμΈμ.
μ©μ΄ ν΄μ€
projectKey
μλΌμ νλ‘μ νΈ ν€λ μμ±νλ νΌ λ³λ‘ μμ±λλ κ³ μ ν κ°μ λλ€.
μ΄ κ°μ λ°°ν¬λ μλΌ νΌμ 곡μ URLμμ νμΈν μ μμ΅λλ€.
https://walla.my/v/{PROJECT_KEY}
https://walla.my/survey/{PROJECT_KEY}
fieldLabel
μλΌ νΌμ κ° νλ μμ Title μ μλ―Έν©λλ€.
value
fieldLabel μ λν μ€λ¬Έμ‘°μ¬ν μ¬λλ€μ μλ΅ κ°μ λλ€.
responseKey
μλΌ μ€λ¬Έμ λν κ° μλ΅μ κ³ μ ν μλ΅ ν€μ λλ€.
ν΄λΉ μλ΅ ν€λ μλΌμ μλ΅μνΈμμ νμΈνκ±°λ μΉν μ ν΅ν΄ μ λ¬λ°μ μ μμ΅λλ€.
customerKey
μλΌ μ€λ¬Έμ μ°Έμ¬ν μ¬λμ κ³ μ ν μλ³μμ λλ€.
ν΄λΉ ν€λ μλ΅μκ° μλ΅νλ μ€λ¬Έ URLμ νλΌλ―Έν°λ‘ μ λ¬νμ¬ κΈ°λ‘ν μ μμ΅λλ€.
μΈλΆ μμ€ν μμ κ΄λ¦¬νκ³ μ νλ κ³ κ°μ κ³ μ ν μλ³μλ₯Ό μ¬μ©νμ¬ μ¬μ©μκ° μλ΅ν μ€λ¬Έμ μλ³ν μ μμ΅λλ€.
ex)
https://walla.my/survey/{PROJECT_KEY}?customerKey={CUSTOMER_KEY}
https://walla.my/v/{PROJECT_KEY}?customerKey={CUSTOMER_KEY}
fieldId
μλΌ μ€λ¬Έμ κ° νλ λΉ κ³ μ ν ν€κ°μ λλ€.
response
μλΌ μ€λ¬Έμ λν΄ μλ΅ν μ¬λλ€μ μλ΅ κ°μ λλ€.
-
id: νλμ λν κ³ μ ν€ κ°μ λλ€. μ¦ fieldId μ κ°μ ννμ λλ€.
-
label: νλμ λν Title μ λλ€. μ¦ fieldLabel μ κ°μ ννμ λλ€.
-
answer: νλμ λν΄ μλ΅ν κ°μ λλ€. μ¦ value μ κ°μ ννμ λλ€.
{
"response": [
{
"id": "fieldId",
"label": "fieldLabel",
"answer": "value"
},
{
"id": "fieldId",
"label": "fieldLabel",
"answer": "value"
}
]
}
API μ¬μ©νκΈ°
Authorization ν ν° λ§λ€κΈ°
- μλΌ μλ΅ APIλ₯Ό μ¬μ©νκΈ° μν΄μλ λ¨Όμ Headers μμ key: "Authorization" value: TOKEN μ λ£μ΄μΌ ν©λλ€.
TOKEN μ {Client ID}:{API Key} λ₯Ό base64λ‘ μΈμ½λ©ν κ°μ
λλ€.
API ν μ€νΈνκΈ°
μ΄ λ§ν¬ (opens in a new tab)λ₯Ό ν΅ν΄ μλΌ μλ΅ APIλ₯Ό ν μ€νΈν΄λ³Ό μ μμ΅λλ€.
ν΄λΉ μμΉμμ μμ±ν ν ν°μ μ
λ ₯νκ³ , Try it out
λ²νΌμ ν΄λ¦νμ¬ APIλ₯Ό ν
μ€νΈν μ μμ΅λλ€.
API μμΈ μ€ν
- base URL:
https://staging---walla-api-thqwfj7gra-uc.a.run.app
checkFieldDataExists
νΉμ νλμ λν μλ΅μ΄ μ‘΄μ¬νλμ§ νμΈν©λλ€.
- method: POST
- url:
https://staging---walla-api-thqwfj7gra-uc.a.run.app/checkFieldDataExists
- parameters: empty
- header:
Authorization: {TOKEN}
- request body:
{
"projectKey": "string",
"fieldLabel": "string",
"value": "string"
}
- response:
boolean
κ²°κ³Ό κ°μ λν true / false κ°μ λ°νν©λλ€.
checkCustomerKeyExists
νΉμ κ³ κ°μ΄ μλ΅ν μ€λ¬Έμ΄ μ‘΄μ¬νλμ§ νμΈν©λλ€.
- method: POST
- url:
https://staging---walla-api-thqwfj7gra-uc.a.run.app/checkCustomerKeyExists
- parameters: empty
- header:
Authorization: {TOKEN}
- request body:
{
"projectKey": "string",
"customerKey": "string"
}
- response:
boolean
κ²°κ³Ό κ°μ λν true / false κ°μ λ°νν©λλ€.
listColumnData
νΉμ νλμ λν μλ΅μ 리μ€νΈλ‘ λ°νν©λλ€.
- method: POST
- url:
https://staging---walla-api-thqwfj7gra-uc.a.run.app/listColumnData
- parameters: empty
- header:
Authorization: {TOKEN}
- request body:
{
"projectKey": "string",
"fieldLabel": "string"
}
- response: νΉμ νλ‘μ νΈμ νΉμ νλμ λν μλ΅μ λν μ 보λ₯Ό λ°°μ΄λ‘ λ°νν©λλ€. κ° μλ΅μλ μλ΅ λ΄μ©, νμμ€ν¬ν, μλ΅ ν€κ° ν¬ν¨λ©λλ€.
{
"fieldLabel": "string",
"responses": [
{
"response": "string",
"timestamp": "string",
"responseKey": "string"
}
],
"fieldId": "string"
}
listCustomerKeys
customerKey κ° μ¬μ©λ μλ΅μ λ°μ΄ν°λ₯Ό λ°°μ΄λ‘ λ°νν©λλ€.
- method: POST
- url:
https://staging---walla-api-thqwfj7gra-uc.a.run.app/listCustomerKeys
- parameters: empty
- header:
Authorization: {TOKEN}
- request body:
{
"projectKey": "string"
}
- response: κ° μλ΅μ customerKey, νμμ€ν¬νλ₯Ό λ°νν©λλ€.
[
{
"customerKey": "string",
"timestamp": "string"
},
{
"customerKey": "string",
"timestamp": "string"
}
]
getResponseByCustomerKey
νΉμ κ³ κ°μ΄ μλ΅ν μ€λ¬Έμ λ°νν©λλ€.
- method: POST
- url:
https://staging---walla-api-thqwfj7gra-uc.a.run.app/getResponseByCustomerKey
- parameters: empty
- header:
Authorization: {TOKEN}
- request body:
{
"projectKey": "string",
"customerKey": "string"
}
- response: customerKey μ μ°κ΄λ μλ΅μ λ°νν©λλ€. νμμ€ν¬ν, νλ‘μ νΈ ν€, μλ΅ ν€, κ³ κ° ν€κ° ν¬ν¨λμ΄ μμΌλ©°,
κ°κ°μ κ°μ²΄μ νλμ κ³ μ fieldId(id), νλμ Title(label), κ·Έλ¦¬κ³ νλμ λν μλ΅(answer)μ ν¬ν¨ν©λλ€.
{
"timestamp": "string",
"projectKey": "string",
"responseKey": "string",
"customerKey": "string",
"response": [
{
"id": "string",
"label": "string",
"answer": "string"
}
]
}
getResponseByResponseKey
νΉμ μλ΅ ν€μ λν μλ΅μ λ°νν©λλ€.
- method: POST
- url:
https://staging---walla-api-thqwfj7gra-uc.a.run.app/getResponseByResponseKey
- parameters: empty
- header:
Authorization: {TOKEN}
- request body:
{
"projectKey": "string",
"responseKey": "string"
}
- response: responseKey μ μ°κ΄λ μλ΅μ λ°νν©λλ€. νμμ€ν¬ν, νλ‘μ νΈ ν€, μλ΅ ν€, κ³ κ° ν€κ° ν¬ν¨λμ΄ μμΌλ©°,
κ°κ°μ κ°μ²΄μ νλμ κ³ μ fieldId(id), νλμ Title(label), κ·Έλ¦¬κ³ νλμ λν μλ΅(answer)μ ν¬ν¨ν©λλ€.
{
"timestamp": "string",
"projectKey": "string",
"customerKey": "string",
"response": [
{
"id": "string",
"label": "string",
"answer": "string"
}
]
}
getProjectResponses
νΉμ νλ‘μ νΈμ λν λͺ¨λ μλ΅μ λ°νν©λλ€.
- method: POST
- url:
https://staging---walla-api-thqwfj7gra-uc.a.run.app/getProjectResponses
- parameters: empty
- header:
Authorization: {TOKEN}
- request body:
{
"projectKey": "string"
}
- response: νλ‘μ νΈμ λν λͺ¨λ μλ΅μ λ°νν©λλ€. κ° μλ΅μλ fieldId(id), νλ Title(label), νμμ€ν¬ν, hiddenFields κ° ν¬ν¨λμ΄ μμ΅λλ€.
{
"projectDetails": {
"fields": [
{
"id": "string",
"label": "string"
}
],
"hiddenFields": [],
"projectKey": "string"
},
"responses": [
{
"timestamp": "string",
"customerKey": "string",
"responseKey": "string",
"response": [
{
"id": "string",
"label": "string",
"answer": "string"
}
]
},
{
"timestamp": "string",
"customerKey": "string",
"responseKey": "string",
"response": [
{
"id": "string",
"label": "string",
"answer": "string"
}
]
}
]
}
μλ¬ μλ΅ μ½λ
400 Bad Request
- νΉμ ν€μ λν΄ μλͺ»λ κ°μ΄ λ€μ΄κ°μ λ λ°νλ©λλ€.
{
"message": "Bad Request"
}
- μ‘°νν νλ‘μ νΈκ° μ‘΄μ¬νμ§ μμ λ λ°νλ©λλ€.
{
"message": "Bad Request: Project does not exist"
}
403 Unauthorized & Forbidden
- λ°κΈλ°λ Client IDκ° νλ‘μ νΈμ μ κ·Όν κΆνμ΄ μλ κ²½μ° λ°νλ©λλ€.
{
"message": "Unauthorized: No Access to Project"
}
- ν€λμ Authorization ν ν°μ΄ μλ κ²½μ°μ λ°νλ©λλ€.
{
"message": "Unauthorized: No API Key"
}
- ν€λμ μλͺ»λ Authorization ν ν°μ΄ λ€μ΄κ° κ²½μ°μ λ°νλ©λλ€.
{
"message": "Unauthorized: Invalid API Key"
}
- ν λ΄ κ΄λ¦¬μκ° μλ μ¬λμ΄ APIλ₯Ό μ¬μ©νλ €κ³ ν λ λ°νλ©λλ€.
{
"message": "Unauthorized: No Access to API"
}
500 Internal Server Error
- μλ²μμ μ€λ₯κ° λ°μνμ λ λ°νλ©λλ€.
{
"message": "Internal Server Error"
}