시스템에서 요청을 처리하려면 API 키가 필요합니다. 사용자가 등록하면 해당 사용자에 대한 API 키가 자동으로 생성됩니다. API 키는 각 요청과 함께 전송되어야 합니다(아래 전체 예시 참조). API 키가 전송되지 않거나 만료된 경우 오류가 발생합니다. 남용 방지를 위해 API 키는 외부 유출에 주의 바랍니다.
API에는 안정성을 높이기 하기 위해 급한 요청을 방지하는 속도 제한이 있습니다. 현제의 제한은 현재 1분당 30개의 요청으로 제한됩니다.
여러 헤더가 응답과 함께 전송되며, 이를 검사하여 요청에 대한 다양한 정보를 확인할 수 있습니다.
X-RateLimit-Limit: 30
X-RateLimit-Remaining: 29
X-RateLimit-Reset: TIMESTAMP
모든 API 응답은 기본적으로 JSON 형식으로 반환됩니다. 이를 사용 가능한 데이터로 변환하려면 언어에 따라 적절한 기능을 사용해야 합니다. PHP에서는 json_decode() 함수를 사용하여 데이터를 객체(기본값) 또는 배열(두 번째 매개변수를 true로 설정)로 변환할 수 있습니다. 오류 키는 오류가 발생했는지 여부에 대한 정보를 제공하므로 확인하는 것이 매우 중요합니다. 헤더 코드도 확인할 수 있습니다.
{
"error": 1,
"message": "An error occurred"
}
https://vo.la/api/overlay?limit=2&page=1
API를 통해 CTA 팝업배너를 얻으려면 이 엔드포인트를 사용할 수 있습니다. 데이터를 필터링할 수도 있습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
limit | (선택) 페이지별 데이터 결과 |
page | (선택) 현재 페이지 요청 |
curl --location --request GET 'https://vo.la/api/overlay?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"cta": [
{
"id": 1,
"type": "message",
"name": "Product 1 Promo",
"date": "2020-11-10 18:00:00"
},
{
"id": 2,
"type": "contact",
"name": "Contact Page",
"date": "2020-11-10 18:10:00"
}
]
}
}
https://vo.la/api/qr?limit=2&page=1
API를 통해 QR 코드를 얻으려면 이 엔드포인트를 사용할 수 있습니다. 데이터를 필터링할 수도 있습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
limit | (선택) 페이지별 데이터 결과 |
page | (선택) 현재 페이지 요청 |
curl --location --request GET 'https://vo.la/api/qr?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"qrs": [
{
"id": 2,
"link": "https:\/\/vo.la\/qr\/a2d5e",
"scans": 0,
"name": "Google",
"date": "2020-11-10 18:01:43"
},
{
"id": 1,
"link": "https:\/\/vo.la\/qr\/b9edfe",
"scans": 5,
"name": "Google Canada",
"date": "2020-11-10 18:00:25"
}
]
}
}
https://vo.la/api/qr/:id
API를 통해 단일 QR 코드에 대한 세부 정보를 얻으려면 이 엔드포인트를 사용할 수 있습니다.
curl --location --request GET 'https://vo.la/api/qr/:id' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": 0,
"details": {
"id": 1,
"link": "https:\/\/vo.la\/qr\/b9edfe",
"scans": 5,
"name": "Google Canada",
"date": "2020-11-10 18:00:25"
},
"data": {
"clicks": 1,
"uniqueClicks": 1,
"topCountries": {
"Unknown": "1"
},
"topReferrers": {
"Direct, email and other": "1"
},
"topBrowsers": {
"Chrome": "1"
},
"topOs": {
"Windows 10": "1"
},
"socialCount": {
"facebook": 0,
"twitter": 0,
"instagram": 0
}
}
}
https://vo.la/api/qr/add
QR 코드를 생성하려면 POST 요청을 통해 JSON 형식의 유효한 데이터를 보내야 합니다. 데이터는 아래와 같이 요청의 원시 본문으로 전송되어야 합니다. 아래 예는 보낼 수 있는 모든 매개변수를 보여 주지만 모두 보낼 필요는 없습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
type | (필수) text | vcard | link | email | phone | sms | wifi |
data | (필수) QR코드 내부에 삽입할 데이터입니다. 데이터는 유형에 따라 문자열 또는 배열이 될 수 있습니다. |
background | (선택) RGB 색상 예: RGB(255,255,255) |
foreground | (선택) RGB 색상 예: RGB(0,0,0) |
logo | (선택) png 또는 jpg 로고 경로 |
curl --location --request POST 'https://vo.la/api/qr/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"type": "link",
"data": "https:\/\/google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https:\/\/site.com\/logo.png"
}'
{
"error": 0,
"id": 3,
"link": "https:\/\/vo.la\/qr\/a58f79"
}
https://vo.la/api/qr/:id/update
QR 코드를 업데이트하려면 PUT 요청을 통해 JSON으로 유효한 데이터를 보내야 합니다. 데이터는 아래와 같이 요청의 원시 본문으로 전송되어야 합니다. 아래 예는 보낼 수 있는 모든 매개변수를 보여 주지만 모두 보낼 필요는 없습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
data | (필수) QR코드 내부에 삽입할 데이터입니다. 데이터는 유형에 따라 문자열 또는 배열이 될 수 있습니다. |
background | (선택 사항) RGB 색상 예: RGB(255,255,255) |
foreground | (선택 사항) RGB 색상 예: RGB(0,0,0) |
logo | (선택) png 또는 jpg 로고 경로 |
curl --location --request PUT 'https://vo.la/api/qr/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"type": "link",
"data": "https:\/\/google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https:\/\/site.com\/logo.png"
}'
{
"error": 0,
"message": "QR has been updated successfully."
}
https://vo.la/api/qr/:id/delete
QR 코드를 삭제하려면 DELETE 요청을 보내야 합니다.
https://vo.la/api/account
계정에 대한 정보를 얻으려면, 이 엔드포인트에 요청을 보내면 계정에 대한 데이터가 반환됩니다.
curl --location --request GET 'https://vo.la/api/account' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": 0,
"data": {
"id": 1,
"email": "sample@domain.com",
"username": "sampleuser",
"avatar": "https:\/\/domain.com\/content\/avatar.png",
"status": "pro",
"expires": "2022-11-15 15:00:00",
"registered": "2020-11-10 18:01:43"
}
}
https://vo.la/api/account/update
계정 정보를 업데이트하려면 이 엔드포인트에 요청을 보내면 계정의 데이터가 업데이트됩니다.
curl --location --request PUT 'https://vo.la/api/account/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"email": "newemail@google.com",
"password": "newpassword"
}'
{
"error": 0,
"message": "Account has been successfully updated."
}
https://vo.la/api/urls?limit=2&page=1&order=date
API를 통해 링크를 얻으려면 이 엔드포인트를 사용할 수 있습니다. 데이터를 필터링할 수도 있습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
limit | (선택) 페이지별 데이터 결과 |
page | (선택) 현재 페이지 요청 |
order | (선택) 날짜별 데이터 정렬 또는 클릭 |
short | (선택) 1개의 단축URL을 정보를 얻을 수 있습니다. 이 옵션은 다른 링크는 무시되고 일치한 단일 링크 응답이 반환됩니다. (예: &short=vo.la/google) |
curl --location --request GET 'https://vo.la/api/urls?limit=2&page=1&order=date' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"urls": [
{
"id": 2,
"alias": "google",
"shorturl": "https:\/\/vo.la\/google",
"longurl": "https:\/\/google.com",
"clicks": 0,
"title": "Google",
"description": "",
"date": "2020-11-10 18:01:43"
},
{
"id": 1,
"alias": "googlecanada",
"shorturl": "https:\/\/vo.la\/googlecanada",
"longurl": "https:\/\/google.ca",
"clicks": 0,
"title": "Google Canada",
"description": "",
"date": "2020-11-10 18:00:25"
}
]
}
}
https://vo.la/api/url/:id
API를 통해 단일 링크에 대한 세부 정보를 얻으려면 이 엔드포인트를 사용할 수 있습니다.
curl --location --request GET 'https://vo.la/api/url/:id' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": 0,
"id": 1,
"details": {
"id": 1,
"shorturl": "https:\/\/vo.la\/googlecanada",
"longurl": "https:\/\/google.com",
"title": "Google",
"description": "",
"location": {
"canada": "https:\/\/google.ca",
"united states": "https:\/\/google.us"
},
"device": {
"iphone": "https:\/\/google.com",
"android": "https:\/\/google.com"
},
"expiry": null,
"date": "2020-11-10 18:01:43"
},
"data": {
"clicks": 0,
"uniqueClicks": 0,
"topCountries": 0,
"topReferrers": 0,
"topBrowsers": 0,
"topOs": 0,
"socialCount": {
"facebook": 0,
"twitter": 0,
"google": 0
}
}
}
https://vo.la/api/url/add
링크를 단축하려면 POST 요청을 통해 JSON으로 유효한 데이터를 보내야 합니다. 데이터는 아래와 같이 요청의 원시 본문으로 전송되어야 합니다. 아래 예는 보낼 수 있는 모든 매개변수를 보여 주지만 모두 보낼 필요는 없습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
url | (필수) 단축할 긴 URL입니다. |
custom | (선택) 임의의 별칭 대신 사용자 정의 별칭입니다. |
type | (선택) 리디렉션 유형 [직접, 프레임, 미리보기], 맞춤 미리보기 페이지의 경우 id만, CTA 페이지의 경우 overlay-id |
password | (선택) 비밀번호 보호 |
domain | (선택) 사용자 정의 도메인 |
expiry | (선택) 링크 예시 2021-09-28 23:11:16의 만료 |
geotarget | (선택) 지역 타겟팅 데이터 |
devicetarget | (선택) 디바이스 타겟팅 데이터 |
languagetarget | (선택) 언어 타겟팅 데이터 |
metatitle | 선택) 메타 제목 |
metadescription | (선택) 메타 설명 |
metaimage | (선택) jpg 또는 png 이미지에 대한 링크 |
pixels | (선택) 픽셀 ID 정렬 |
channel | (선택) 채널 ID |
deeplink | (선택) 앱 스토어 링크가 포함된 개체입니다. 이를 사용할 때 기기 타겟팅도 설정하는 것이 중요합니다. |
curl --location --request POST 'https://vo.la/api/url/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"url": "https:\/\/google.com",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"metatitle": "Not Google",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"deeplink": {
"apple": "https:\/\/apps.apple.com\/us\/app\/google\/id284815942",
"google": "https:\/\/play.google.com\/store\/apps\/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"metadescription": "Not Google description",
"metaimage": "https:\/\/www.mozilla.org\/media\/protocol\/img\/logos\/firefox\/browser\/og.4ad05d4125a5.png",
"geotarget": [
{
"location": "Canada",
"link": "https:\/\/google.ca"
},
{
"location": "United States",
"link": "https:\/\/google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https:\/\/google.com"
},
{
"device": "Android",
"link": "https:\/\/google.com"
}
],
"languagetarget": [
{
"language": "en",
"link": "https:\/\/google.com"
},
{
"language": "fr",
"link": "https:\/\/google.ca"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}'
{
"error": 0,
"id": 3,
"shorturl": "https:\/\/vo.la\/google"
}
https://vo.la/api/url/:id/update
링크를 업데이트하려면 PUT 요청을 통해 JSON으로 유효한 데이터를 보내야 합니다. 데이터는 아래와 같이 요청의 원시 본문으로 전송되어야 합니다. 아래 예는 보낼 수 있는 모든 매개변수를 보여 주지만 모두 보낼 필요는 없습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
url | (필수) 단축할 긴 URL입니다. |
custom | (선택 사항) 임의의 별칭 대신 사용자 정의 별칭입니다. |
type | (선택) 리디렉션 유형 [직접, 프레임, 미리보기] |
password | (선택) 비밀번호 보호 |
domain | (선택) 사용자 정의 도메인 |
expiry | (선택) 링크 예시 2021-09-28 23:11:16의 만료 |
geotarget | (선택) 지역 타겟팅 데이터 |
devicetarget | (선택) 디바이스 타겟팅 데이터 |
languagetarget | (선택) 언어 타겟팅 데이터 |
metatitle | (선택) 메타 제목 |
metadescription | (선택) 메타 설명 |
metaimage | (선택) jpg 또는 png 이미지에 대한 링크 |
pixels | (선택) 픽셀 ID 정렬 |
channel | (선택) 채널 ID |
deeplink | (선택) 앱 스토어 링크가 포함된 개체입니다. 이를 사용할 때 기기 타겟팅도 설정하는 것이 중요합니다. |
curl --location --request PUT 'https://vo.la/api/url/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"url": "https:\/\/google.com",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"deeplink": {
"apple": "https:\/\/apps.apple.com\/us\/app\/google\/id284815942",
"google": "https:\/\/play.google.com\/store\/apps\/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"geotarget": [
{
"location": "Canada",
"link": "https:\/\/google.ca"
},
{
"location": "United States",
"link": "https:\/\/google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https:\/\/google.com"
},
{
"device": "Android",
"link": "https:\/\/google.com"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}'
{
"error": 0,
"id": 3,
"short": "https:\/\/vo.la\/google"
}
https://vo.la/api/url/:id/delete
링크를 삭제하려면 DELETE 요청을 보내야 합니다.
https://vo.la/api/domains?limit=2&page=1
API를 통해 브랜드 도메인을 얻으려면 이 엔드포인트를 사용할 수 있습니다. 데이터를 필터링할 수도 있습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
limit | (선택사항) 페이지별 데이터 결과 |
page | (선택사항) 현재 페이지 요청 |
curl --location --request GET 'https://vo.la/api/domains?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"domains": [
{
"id": 1,
"domain": "https:\/\/domain1.com",
"redirectroot": "https:\/\/rootdomain.com",
"redirect404": "https:\/\/rootdomain.com\/404"
},
{
"id": 2,
"domain": "https:\/\/domain2.com",
"redirectroot": "https:\/\/rootdomain2.com",
"redirect404": "https:\/\/rootdomain2.com\/404"
}
]
}
}
https://vo.la/api/domain/add
이 엔드포인트를 사용하여 도메인을 추가할 수 있습니다. 도메인이 당사 서버를 올바르게 가리키는지 확인하십시오.
Parameter | 메모 |
---|---|
domain | (필수) http 또는 https를 포함한 브랜드 도메인 |
redirectroot | (선택) 회원님의 도메인을 방문하면 루트 리디렉션 |
redirect404 | (선택) 커스텀 404 리디렉션 |
curl --location --request POST 'https://vo.la/api/domain/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"domain": "https:\/\/domain1.com",
"redirectroot": "https:\/\/rootdomain.com",
"redirect404": "https:\/\/rootdomain.com\/404"
}'
{
"error": 0,
"id": 1
}
https://vo.la/api/domain/:id/update
브랜드 도메인을 업데이트하려면 PUT 요청을 통해 JSON으로 유효한 데이터를 보내야 합니다. 데이터는 아래와 같이 요청의 원시 본문으로 전송되어야 합니다. 아래 예는 보낼 수 있는 모든 매개변수를 보여 주지만 모두 보낼 필요는 없습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
redirectroot | (선택) 회원님의 도메인을 방문하면 루트 리디렉션 |
redirect404 | (선택) 맞춤 404 리디렉션 |
curl --location --request PUT 'https://vo.la/api/domain/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"redirectroot": "https:\/\/rootdomain-new.com",
"redirect404": "https:\/\/rootdomain-new.com\/404"
}'
{
"error": 0,
"message": "Domain has been updated successfully."
}
https://vo.la/api/domain/:id/delete
도메인을 삭제하려면 DELETE 요청을 보내야 합니다.
https://vo.la/api/channels?limit=2&page=1
API를 통해 채널을 얻으려면 이 엔드포인트를 사용할 수 있습니다. 데이터를 필터링할 수도 있습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
limit | (선택) 페이지별 데이터 결과 |
page | (선택) 현재 페이지 요청 |
curl --location --request GET 'https://vo.la/api/channels?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"channels": [
{
"id": 1,
"name": "Channel 1",
"description": "Description of channel 1",
"color": "#000000",
"starred": true
},
{
"id": 2,
"name": "Channel 2",
"description": "Description of channel 2",
"color": "#FF0000",
"starred": false
}
]
}
}
https://vo.la/api/channel/:id?limit=1&page=1
API를 통해 특정 채널의 항목을 가져오려면 이 엔드포인트를 사용할 수 있습니다. 데이터를 필터링할 수도 있습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
limit | (선택) 페이지별 데이터 결과 |
page | (선택) 현재 페이지 요청 |
curl --location --request GET 'https://vo.la/api/channel/:id?limit=1&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"items": [
{
"type": "links",
"id": 1,
"title": "My Sample Link",
"preview": "https:\/\/google.com",
"link": "https:\/\/vo.la\/google",
"date": "2022-05-12"
},
{
"type": "bio",
"id": 1,
"title": "My Sample Bio",
"preview": "https:\/\/vo.la\/mybio",
"link": "https:\/\/vo.la\/mybio",
"date": "2022-06-01"
}
]
}
}
https://vo.la/api/channel/add
이 엔드포인트를 사용하여 채널을 추가할 수 있습니다.
Parameter | 메모 |
---|---|
name | (필수) 채널 명 |
description | (선택) 채널 설명 |
color | (선택) 채널 배지 색상(HEX) |
starred | (선택) 채널에 별표를 표시할지 여부(true 또는 false) |
curl --location --request POST 'https://vo.la/api/channel/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "New Channel",
"description": "my new channel",
"color": "#000000",
"starred": true
}'
{
"error": 0,
"id": 3,
"name": "New Channel",
"description": "my new channel",
"color": "#000000",
"starred": true
}
https://vo.la/api/channel/:channelid/assign/:type/:itemid
채널 ID, 항목 유형(링크, 바이오 또는 qr) 및 항목 ID가 포함된 요청을 보내면 항목을 모든 채널에 할당할 수 있습니다.
Parameter | 메모 |
---|---|
:channelid | (필수) 채널 ID |
:type | (필수) 링크나 약력, QR |
:itemid | (필수) 아이템 ID |
https://vo.la/api/channel/:id/update
채널을 업데이트하려면 PUT 요청을 통해 JSON으로 유효한 데이터를 보내야 합니다. 데이터는 아래와 같이 요청의 원시 본문으로 전송되어야 합니다. 아래 예는 보낼 수 있는 모든 매개변수를 보여 주지만 모두 보낼 필요는 없습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
name | (선택) 채널 명 |
description | (선택) 채널 설명 |
color | (선택) 채널 배지 색상(HEX) |
starred | (선택) 채널에 별표를 표시할지 여부(true 또는 false) |
curl --location --request PUT 'https://vo.la/api/channel/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Acme Corp",
"description": "channel for items for Acme Corp",
"color": "#FFFFFF",
"starred": false
}'
{
"error": 0,
"message": "Channel has been updated successfully."
}
https://vo.la/api/channel/:id/delete
채널을 삭제하려면 DELETE 요청을 보내야 합니다. 모든 항목도 할당 취소됩니다.
https://vo.la/api/campaigns?limit=2&page=1
API를 통해 캠페인을 가져오려면 이 엔드포인트를 사용할 수 있습니다. 데이터를 필터링할 수도 있습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
limit | (선택) 페이지별 데이터 결과 |
page | (선택) 현재 페이지 요청 |
curl --location --request GET 'https://vo.la/api/campaigns?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"campaigns": [
{
"id": 1,
"name": "Sample Campaign",
"public": false,
"rotator": false,
"list": "https:\/\/domain.com\/u\/admin\/list-1"
},
{
"id": 2,
"domain": "Facebook Campaign",
"public": true,
"rotator": "https:\/\/domain.com\/r\/test",
"list": "https:\/\/domain.com\/u\/admin\/test-2"
}
]
}
}
https://vo.la/api/campaign/add
이 엔드포인트를 사용하여 캠페인을 추가할 수 있습니다.
Parameter | 메모 |
---|---|
name | (선택) 캠페인 명 |
slug | (선택) 로테이터 Slug |
public | (선택) 액세스 |
curl --location --request POST 'https://vo.la/api/campaign/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "New Campaign",
"slug": "new-campaign",
"public": true
}'
{
"error": 0,
"id": 3,
"domain": "New Campaign",
"public": true,
"rotator": "https:\/\/domain.com\/r\/new-campaign",
"list": "https:\/\/domain.com\/u\/admin\/new-campaign-3"
}
https://vo.la/api/campaign/:campaignid/assign/:linkid
이 엔드포인트를 사용하여 짧은 링크를 캠페인에 할당할 수 있습니다. 엔드포인트에는 캠페인 ID와 짧은 링크 ID가 필요합니다.
https://vo.la/api/campaign/:id/update
캠페인을 업데이트하려면 PUT 요청을 통해 JSON으로 유효한 데이터를 보내야 합니다. 데이터는 아래와 같이 요청의 원시 본문으로 전송되어야 합니다. 아래 예는 보낼 수 있는 모든 매개변수를 보여 주지만 모두 보낼 필요는 없습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
name | 필수) 캠페인 명 |
slug | (선택) 로테이터 Slug |
public | (선택) 액세스 |
curl --location --request PUT 'https://vo.la/api/campaign/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Twitter Campaign",
"slug": "twitter-campaign",
"public": true
}'
{
"error": 0,
"id": 3,
"domain": "Twitter Campaign",
"public": true,
"rotator": "https:\/\/domain.com\/r\/twitter-campaign",
"list": "https:\/\/domain.com\/u\/admin\/twitter-campaign-3"
}
https://vo.la/api/campaign/:id/delete
캠페인을 삭제하려면 DELETE 요청을 보내야 합니다.
https://vo.la/api/splash?limit=2&page=1
API를 통해 사용자 정의 타임배너 페이지를 얻으려면 이 엔드포인트를 사용할 수 있습니다. 데이터를 필터링할 수도 있습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
limit | (선택) 페이지별 데이터 결과 |
page | (선택) 현재 페이지 요청 |
curl --location --request GET 'https://vo.la/api/splash?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"splash": [
{
"id": 1,
"name": "Product 1 Promo",
"date": "2020-11-10 18:00:00"
},
{
"id": 2,
"name": "Product 2 Promo",
"date": "2020-11-10 18:10:00"
}
]
}
}
https://vo.la/api/pixels?limit=2&page=1
API를 통해 픽셀 코드를 얻으려면 이 엔드포인트를 사용할 수 있습니다. 데이터를 필터링할 수도 있습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
limit | (선택) 페이지별 데이터 결과 |
page | (선택) 현재 페이지 요청 |
curl --location --request GET 'https://vo.la/api/pixels?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"pixels": [
{
"id": 1,
"type": "gtmpixel",
"name": "GTM Pixel",
"tag": "GA-123456789",
"date": "2020-11-10 18:00:00"
},
{
"id": 2,
"type": "twitterpixel",
"name": "Twitter Pixel",
"tag": "1234567",
"date": "2020-11-10 18:10:00"
}
]
}
}
https://vo.la/api/pixel/add
이 엔드포인트를 사용하여 픽셀을 만들 수 있습니다. 픽셀 유형과 태그를 보내야 합니다.
Parameter | 메모 |
---|---|
type | (required) gtmpixel | gapixel | fbpixel | adwordspixel | linkedinpixel | twitterpixel | adrollpixel | quorapixel | pinterest | bing | snapchat | reddit | tiktok |
name | (required) Custom name for your pixel |
tag | (required) The tag for the pixel |
https://vo.la/api/pixel/:id/update
픽셀을 업데이트하려면 PUT 요청을 통해 JSON으로 유효한 데이터를 보내야 합니다. 데이터는 아래와 같이 요청의 원시 본문으로 전송되어야 합니다. 아래 예는 보낼 수 있는 모든 매개변수를 보여 주지만 모두 보낼 필요는 없습니다(자세한 내용은 표 참조).
Parameter | 메모 |
---|---|
name | (선택) 픽셀의 맞춤 이름 |
tag | (필수) 픽셀의 태그 |
curl --location --request PUT 'https://vo.la/api/pixel/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "My GTM",
"tag": "GTM-ABCDE"
}'
{
"error": 0,
"message": "Pixel has been updated successfully."
}
https://vo.la/api/pixel/:id/delete
픽셀을 삭제하려면 DELETE 요청을 보내야 합니다.
curl --location --request DELETE 'https://vo.la/api/pixel/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
{
"error": 0,
"message": "\ud53d\uc140\uc774 \uc131\uacf5\uc801\uc73c\ub85c \uc0ad\uc81c\ub418\uc5c8\uc2b5\ub2c8\ub2e4."
}