Tracking Link

    에어브릿지의 트래킹 링크는 다양한 환경에 대응하는 올인원 링크입니다.

    트래킹 링크를 통해 다양한 플랫폼, 채널, 상황에서 링크를 클릭하는 유저를 원하는 목적지에 도달시키며, 링크 클릭, 클릭 후 설치, 설치 후 구매 행동 등 유저들로부터 발생한 행동에 어떤 채널이 기여되었는지 분석할 수 있습니다.

    트래킹 링크 API 토큰 활용

    클라이언트에서 트래킹 링크를 생성하고자 하는 경우 '트래킹 링크 API 토큰' 활용을 권장합니다.


    생성하기

    POST

    https://api.airbridge.io/v1/tracking-links

    트래킹 링크를 생성합니다.

    rate limit : 초당 50개로 제한됩니다.

    Request

    Headers

    Accept-Language
    string

    API 요청 및 결과 반환에 사용할 언어를 지정할 수 있습니다. ISO-639-1 포맷을 따릅니다.

    Content-Type
    string

    리소스의 미디어 타입을 나타냅니다. 기본값으로 application/json을 사용합니다.

    Authorization
    string

    API 요청에 사용하는 키값입니다. 키값 생성 및 조회 방법을 확인하여 획득할 수 있습니다.

    Body Params

    channel
    필수string

    터치포인트와 컨버젼이 발생한 채널명.

    에어브릿지의 채널은 S2S 형태의 포스트백이 연동된 Integrated 채널과 직접 생성할 수 있는 Custom 채널로 나뉘어집니다.

    Integrated 채널은 [Integrated Channel] 에서 확인할 수 있습니다. Integrated 채널 이외에 모든 채널은 Custom 채널입니다.

    campaignParams
    object

    트래킹 링크에 들어갈 캠페인 파라미터.

    campaignParams.campaign
    string

    캠페인 이름.

    campaignParams.ad_group
    string

    광고 그룹.

    campaignParams.ad_creative
    string

    광고 소재.

    campaignParams.content
    string

    광고 콘텐츠.

    campaignParams.term
    string

    검색 광고 키워드.

    campaignParams.sub_id
    string

    하위 네트워크 혹은 제휴 매체사 등을 나타내는 아이디.

    campaignParams.sub_id_1
    string

    하위 네트워크 또다른 하위 네트워크 아이디.(sub-sub publisher)
    하위 매체 순서(계층)에 맞게 사용해야합니다.(sub_id_1 > sub_id_2 > sub_id_3)

    campaignParams.sub_id_2
    string

    하위 네트워크 또다른 하위 네트워크 아이디.(sub-sub publisher)
    하위 매체 순서(계층)에 맞게 사용해야합니다.(sub_id_1 > sub_id_2 > sub_id_3)

    campaignParams.sub_id_3
    string

    하위 네트워크 또다른 하위 네트워크 아이디.(sub-sub publisher)
    하위 매체 순서(계층)에 맞게 사용해야합니다.(sub_id_1 > sub_id_2 > sub_id_3)

    isReengagement
    enum

    Re-engagement 파라미터.

    ENUM VALUES
    OFF

    해당 트래킹링크에 발생한 터치포인트로 설치 및 인앱 이벤트를 기여합니다.

    ON-TRUE

    딥링크 오픈 및 그에 기인한 이벤트만 기여됩니다. Re-engagement 캠페인에 활용 가능합니다.

    ON-FALSE

    설치 이벤트 및 그에 기인한 인앱 이벤트만 기여됩니다. UA 캠페인에 활용 가능합니다.

    deeplinkUrl
    stringnullable

    리다이렉트할 딥링크 URL.

    deeplinkUrl이 없거나 null일 경우 deeplink가 설정되지 않습니다.

    포멧은 다음과 같습니다 : URLScheme://path?key=value

    올바르지 않은 deeplink URL을 사용할 경우, 딥링크가 정상적으로 동작하지 않거나 예상치 못한 동작으로 인해 문제가 발생할 수 있습니다.

    deeplinkOption
    object

    딥링크 옵션

    deeplinkOption.showAlertForInitialDeeplinkingIssue
    boolean

    스탑 오버 페이지

    true : 활성화

    false : 비활성화

    fallbackPaths
    object

    플랫폼별 리다이렉트 경로.

    fallbackPaths.android
    enum

    안드로이드가 리다이렉트될 경로.

    ENUM VALUES
    google-play

    google play store로 랜딩합니다.

    {HTTP_URL}

    설정한 url로 랜딩합니다.

    fallbackPaths.ios
    enum

    iOS에서 리다이렉트될 경로.

    ENUM VALUES
    itunes-appstore

    appstore로 랜딩합니다.

    {HTTP_URL}

    설정한 url로 랜딩합니다.

    fallbackPaths.desktop
    enum

    데스크톱에서 리다이렉트될 경로.

    ENUM VALUES
    google-play

    google play store로 랜딩합니다.

    itunes-appstore

    appstore로 랜딩합니다.

    airpage

    airpage로 랜딩합니다.

    {HTTP_URL}

    설정한 url로 랜딩합니다.

    fallbackPaths.option
    object
    fallbackPaths.option.iosCustomProductPageId
    string

    애플 앱 스토어의 맞춤형 제품 페이지(Custom Product Page)의 ppid.

    앱 스토어로 랜딩할 경우 맞춤형 제품 페이지를 보여줄 수 있도록 설정합니다.

    fallbackPaths.option.googlePlayCustomStoreListing
    string

    구글 플레이 스토어의 맞춤 스토어 등록정보(Custom Store Listing) listing 값.

    구글 플레이 스토어로 랜딩할 경우 맞춤 스토어 등록정보를 보여줄 수 있도록 설정합니다.

    ogTag
    object

    트래킹 링크를 공유 혹은 게시하면 노출되는 썸네일의 미리보기(Open Graph).

    ogTag.title
    string

    트래킹 링크의 og:title

    ogTag.description
    string

    트래킹 링크의 og:description

    ogTag.imageUrl
    string

    트래킹 링크의 og:image

    ogTag.websiteCrawl
    enum

    fallbackPath에 지정된 url의 Open Graph를 트래킹 링크의 Open Graph로 타입.

    ENUM VALUES
    desktop

    fallbackPath에 지정된 desktop의 Open Graph를 크롤링해서 사용합니다. title, description, imageUrl으로 설정한 값은 무시됩니다.

    ogTag.useDefault
    boolean

    Airbridge 대시보드에서 설정한 소셜쉐어 프리뷰 기본 값을 사용하도록 설정 합니다.

    주의. og tag 의 다른 파라미터 값들은 무시됩니다.

    customShortId
    string

    Custom 채널의 트래킹 링크 생성 시 축약된 숏 링크 ID. [커스텀 도메인] 설정을 해야 사용할 수 있습니다. 입력하지 않으면 랜덤하게 생성되며, 트래킹 링크 생성 완료 후에는 변경할 수 없습니다.

    트래킹 링크를 생성할 때 한 번 사용한 숏 링크 ID는 해당 트래킹 링크를 삭제해도 재사용할 수 없습니다.

    허용 문자 및 제한 사항

    • 영문 소문자: a–z

    • 한글: 가-힣

    • 숫자: 0–9

    • 특수문자: 하이픈(-), 언더스코어(_)

    • 최대 길이: 45자

    Request
    12345
    curl -X POST 'https://api.airbridge.io/v1/tracking-links' \
      -H 'Accept-Language: ko' \
      -H 'Content-Type: application/json' \
      -H 'Authorization: Bearer {AIRBRIDGE-API-TOKEN}' \
      -d '{"channel":"my-channel","campaignParams":{"campaign":"2022_FW_Sale_Festival","ad_group":"UA","ad_creative":"Coat_840x600"},"isReengagement":"ON-TRUE","deeplinkOption":{"showAlertForInitialDeeplinkingIssue":true},"fallbackPaths":{"option":{"iosCustomProductPageId":"5ae82ffe-1f08-428d-b352-ac1c3a22aa1e","googlePlayCustomStoreListing":"custom-store-listing"}},"ogTag":{"title":"30% Off Winter Apparel for 3 Days Only","description":"Get great deals on apparel to keep you warm this winter","imageUrl":"https://static.airbridge.io/images/2021_airbridge_og_tag.png"}}'
    Payload
    1234567891011121314151617181920212223
    {
      "channel": "my-channel",
      "campaignParams": {
        "campaign": "2022_FW_Sale_Festival",
        "ad_group": "UA",
        "ad_creative": "Coat_840x600"
      },
      "isReengagement": "ON-TRUE",
      "deeplinkOption": {
        "showAlertForInitialDeeplinkingIssue": true
      },
      "fallbackPaths": {
        "option": {
          "iosCustomProductPageId": "5ae82ffe-1f08-428d-b352-ac1c3a22aa1e",
          "googlePlayCustomStoreListing": "custom-store-listing"
        }
      },
      "ogTag": {
        "title": "30% Off Winter Apparel for 3 Days Only",
        "description": "Get great deals on apparel to keep you warm this winter",
        "imageUrl": "https://static.airbridge.io/images/2021_airbridge_og_tag.png"
      }
    }

    Response

    200SUCCESS

    404ERROR

    입력한 필드에 오류가 있거나 해당하는 앱이 없습니다.

    422ERROR

    필드가 누락되었거나 오류가 있습니다.

    429ERROR

    rate limit을 초과하였습니다.

    Response
    12345678910111213141516
    {
      "data": {
        "trackingLink": {
          "id": 10000,
          "link": {
            "click": "http://abr.ge/@airbridge/my-channel?...",
            "impression": "http://abr.ge/@airbridge/my-channel?...",
            "serverToServerClick": null
          },
          "shortId": "6nwx4w",
          "shortUrl": "http://abr.ge/6nwx4w",
          "channelType": "custom",
          "trackingTemplateId": "706f9839a7b50d87ab917dbb1b9fa7f3"
        }
      }
    }
    Response
    1234567
    {
      "type": "about:blank",
      "title": "Not Found",
      "detail": "There is no such app.",
      "status": 404,
      "traceId": "1-000000-000000000000000"
    }
    Response
    1234567891011
    {
      "detail": [
        {
          "loc": [
            "string"
          ],
          "msg": "string",
          "type": "string"
        }
      ]
    }
    Response
    123456
    {
      "type": "Rate limit exceeded",
      "title": null,
      "status": 429,
      "traceId": "1-6768fb4d-0833f0c4639017b1613ac244"
    }

    세부 정보 가져오기

    GET

    https://api.airbridge.io/v1/tracking-links/{id}

    트래킹 링크의 세부 정보를 조회합니다.

    Request

    Headers

    Accept-Language
    string

    API 요청 및 결과 반환에 사용할 언어를 지정할 수 있습니다. ISO-639-1 포맷을 따릅니다.

    Content-Type
    string

    리소스의 미디어 타입을 나타냅니다. 기본값으로 application/json을 사용합니다.

    Authorization
    string

    API 요청에 사용하는 키값입니다. 키값 생성 및 조회 방법을 확인하여 획득할 수 있습니다.

    Path Params

    id
    필수string

    트래킹 링크 식별자. idType를 활용하면 트래킹 링크 식별자로 트래킹 링크 ID 대신 숏 링크 ID와 트래킹 링크 템플릿 ID를 사용할 수 있습니다. idType을 입력하지 않으면 트래킹 링크 식별자로 트래킹 링크 ID를 사용합니다.

    트래킹 링크 ID는 목록 가져오기 API를 통해 확인할 수 있습니다. 숏 링크 ID와 트래킹 링크 템플릿 ID는 에어브릿지 대시보드에서 확인할 수 있습니다.

    Query Params

    idType
    string

    트래킹 링크 식별자의 형식. 기본 설정은 id입니다.

    • id: 일반적인 트래킹 링크의 식별자입니다. 목록 가져오기 API를 통해 확인할 수 있습니다.

    • shortId: 숏 링크 ID입니다. 숏 링크는 숏 링크 형식의 트래킹 링크입니다.

    • trackingTemplateId: 트래킹 링크 템플릿의 ID입니다.

    Request
    1234
    curl -X GET 'https://api.airbridge.io/v1/tracking-links/10000?idType=id' \
      -H 'Accept-Language: ko' \
      -H 'Content-Type: application/json' \
      -H 'Authorization: Bearer {AIRBRIDGE-API-TOKEN}'

    Response

    200SUCCESS

    400ERROR

    입력한 필드에 오류가 있거나 해당하는 리소스가 없습니다.

    422ERROR

    필드가 누락되었거나 오류가 있습니다.

    Response
    123456789101112131415161718192021222324252627282930313233343536373839404142434445
    {
      "data": {
        "link": {
          "click": "https://go.ab180.co/@ablog/my-channel?...",
          "impression": null,
          "serverToServerClick": null
        },
        "email": "contact@ab180.co",
        "ogTag": {
          "title": "AB180",
          "imageUrl": "http://static.airbridge.io/images/og_tags/50ca2e8d-07b2-4a0e-8294-f00ddb8e59ae.png",
          "description": "Discovering Metrics That Matter!"
        },
        "company": null,
        "shortId": "ri4lnp",
        "shortUrl": "https://go.ab180.co/ri4lnp",
        "createdAt": "2023-01-01T00:00:00+09:00",
        "channelName": "my-channel",
        "channelType": "custom",
        "deeplinkUrl": null,
        "deeplinkOption": {
          "showAlertForInitialDeeplinkingIssue": false
        },
        "fallbackPaths": {
          "ios": "itunes-appstore",
          "option": {
            "iosCustomProductPageId": null
          },
          "android": "google-play",
          "desktop": "https://airbridge.io"
        },
        "campaignParams": {
          "campaign": "123",
          "adCreative": "asdf",
          "adGroup": "zxcv",
          "content": null,
          "term": "poiu",
          "subId": null,
          "subId1": null,
          "subId2": null,
          "subId3": null
        },
        "isReengagement": "OFF"
      }
    }
    Response
    1234567
    {
      "type": "about:blank",
      "title": "Not Found",
      "detail": "Resource not found.",
      "status": 404,
      "traceId": "1-6450a21d-2b02e4d533589b625d875399"
    }
    Response
    1234567891011
    {
      "detail": [
        {
          "loc": [
            "string"
          ],
          "msg": "string",
          "type": "string"
        }
      ]
    }

    소셜 쉐어 프리뷰 수정하기

    PATCH

    https://api.airbridge.io/v1/tracking-links/{id}/og-tag

    HTTP Method PATCH, PUT 을 지원합니다.

    트래킹 링크의 소셜 쉐어 프리뷰를 수정합니다.

    Request

    Headers

    Accept-Language
    string

    API 요청 및 결과 반환에 사용할 언어를 지정할 수 있습니다. ISO-639-1 포맷을 따릅니다.

    Content-Type
    string

    리소스의 미디어 타입을 나타냅니다. 기본값으로 application/json을 사용합니다.

    Authorization
    string

    API 요청에 사용하는 키값입니다. 키값 생성 및 조회 방법을 확인하여 획득할 수 있습니다.

    Path Params

    id
    필수string

    트래킹 링크 식별자. idType를 활용하면 트래킹 링크 식별자로 트래킹 링크 ID 대신 숏 링크 ID와 트래킹 링크 템플릿 ID를 사용할 수 있습니다. idType을 입력하지 않으면 트래킹 링크 식별자로 트래킹 링크 ID를 사용합니다.

    트래킹 링크 ID는 목록 가져오기 API를 통해 확인할 수 있습니다. 숏 링크 ID와 트래킹 링크 템플릿 ID는 에어브릿지 대시보드에서 확인할 수 있습니다.

    Body Params

    idType
    string

    트래킹 링크 식별자의 형식. 기본 설정은 id입니다.

    • id: 일반적인 트래킹 링크의 식별자입니다. 목록 가져오기 API를 통해 확인할 수 있습니다.

    • shortId: 숏 링크 ID입니다. 숏 링크는 숏 링크 형식의 트래킹 링크입니다.

    • trackingTemplateId: 트래킹 링크 템플릿의 ID입니다.

    title
    필수string

    트래킹 링크의 og:title

    description
    필수string

    트래킹 링크의 og:description

    imageUrl
    필수string

    트래킹 링크의 og:image

    ogTag.websiteCrawl
    enum

    fallbackPath에 지정된 url의 Open Graph를 트래킹 링크의 Open Graph로 타입.

    ENUM VALUES
    desktop

    fallbackPath에 지정된 desktop의 Open Graph를 크롤링해서 사용합니다. title, description, imageUrl으로 설정한 값은 무시됩니다.

    ogTag.websiteCrawl
    enum

    fallbackPath에 지정된 url의 Open Graph를 트래킹 링크의 Open Graph로 타입.

    ENUM VALUES
    desktop

    fallbackPath에 지정된 desktop의 Open Graph를 크롤링해서 사용합니다. title, description, imageUrl으로 설정한 값은 무시됩니다.

    ogTag.useDefault
    boolean

    Airbridge 대시보드에서 설정한 소셜쉐어 프리뷰 기본 값을 사용하도록 설정 합니다.

    주의. og tag 의 다른 파라미터 값들은 무시됩니다.

    Request
    12345
    curl -X PATCH 'https://api.airbridge.io/v1/tracking-links/10000/og-tag' \
      -H 'Accept-Language: ko' \
      -H 'Content-Type: application/json' \
      -H 'Authorization: Bearer {AIRBRIDGE-API-TOKEN}' \
      -d '{"idType":"id","title":"30% Off Winter Apparel for 3 Days Only","description":"Get great deals on apparel to keep you warm this winter","imageUrl":"https://static.airbridge.io/images/2021_airbridge_og_tag.png"}'
    Payload
    123456
    {
      "idType": "id",
      "title": "30% Off Winter Apparel for 3 Days Only",
      "description": "Get great deals on apparel to keep you warm this winter",
      "imageUrl": "https://static.airbridge.io/images/2021_airbridge_og_tag.png"
    }

    Response

    200SUCCESS

    400ERROR

    image URL 이 올바르지 않은 URL 형태를 사용한 경우.

    404ERROR

    입력한 필드에 오류가 있거나 해당하는 리소스가 없습니다.

    Response
    1
    {}
    Response
    12345678910111213141516
    {
      "instance": [
        {
          "loc": [
            "imageUrl"
          ],
          "msg": "Invalid URL",
          "type": "validation_error"
        }
      ],
      "detail": "invalid_request",
      "status": 400,
      "title": "Bad Request",
      "traceId": "1-67c6a5e8-1f93748e2c8c732e71767b98",
      "type": "about:blank"
    }
    Response
    1234567
    {
      "type": "about:blank",
      "title": "Not Found",
      "detail": "Resource not found.",
      "status": 404,
      "traceId": "1-6450a21d-2b02e4d533589b625d875399"
    }

    경로 수정하기

    PATCH

    https://api.airbridge.io/v1/tracking-links/{id}/routing

    HTTP Method PATCH, PUT 을 지원합니다.

    트래킹 링크의 최종 목적지 및 Fallback 경로를 수정합니다.

    Request

    Headers

    Accept-Language
    string

    API 요청 및 결과 반환에 사용할 언어를 지정할 수 있습니다. ISO-639-1 포맷을 따릅니다.

    Content-Type
    string

    리소스의 미디어 타입을 나타냅니다. 기본값으로 application/json을 사용합니다.

    Authorization
    string

    API 요청에 사용하는 키값입니다. 키값 생성 및 조회 방법을 확인하여 획득할 수 있습니다.

    Path Params

    id
    필수string

    트래킹 링크 식별자. idType를 활용하면 트래킹 링크 식별자로 트래킹 링크 ID 대신 숏 링크 ID와 트래킹 링크 템플릿 ID를 사용할 수 있습니다. idType을 입력하지 않으면 트래킹 링크 식별자로 트래킹 링크 ID를 사용합니다.

    트래킹 링크 ID는 목록 가져오기 API를 통해 확인할 수 있습니다. 숏 링크 ID와 트래킹 링크 템플릿 ID는 에어브릿지 대시보드에서 확인할 수 있습니다.

    Body Params

    idType
    string

    트래킹 링크 식별자의 형식. 기본 설정은 id입니다.

    • id: 일반적인 트래킹 링크의 식별자입니다. 목록 가져오기 API를 통해 확인할 수 있습니다.

    • shortId: 숏 링크 ID입니다. 숏 링크는 숏 링크 형식의 트래킹 링크입니다.

    • trackingTemplateId: 트래킹 링크 템플릿의 ID입니다.

    deeplinkUrl
    stringnullable

    리다이렉트할 딥링크 URL.

    deeplinkUrl이 없거나 null일 경우 deeplink가 설정되지 않습니다.

    포멧은 다음과 같습니다 : URLScheme://path?key=value

    올바르지 않은 deeplink URL을 사용할 경우, 딥링크가 정상적으로 동작하지 않거나 예상치 못한 동작으로 인해 문제가 발생할 수 있습니다.

    deeplinkOption
    objectnullable

    딥링크 옵션

    deeplinkOption.showAlertForInitialDeeplinkingIssue
    booleannullable

    스탑 오버 페이지

    true : 활성화

    false : 비활성화

    fallbackPaths
    object

    플랫폼별 리다이렉트 경로.

    fallbackPaths.android
    enum

    안드로이드가 리다이렉트될 경로.

    ENUM VALUES
    google-play

    google play store로 랜딩합니다.

    {HTTP_URL}

    설정한 url로 랜딩합니다.

    fallbackPaths.ios
    enum

    iOS에서 리다이렉트될 경로.

    ENUM VALUES
    itunes-appstore

    appstore로 랜딩합니다.

    {HTTP_URL}

    설정한 url로 랜딩합니다.

    fallbackPaths.desktop
    enum

    데스크톱에서 리다이렉트될 경로.

    ENUM VALUES
    google-play

    google play store로 랜딩합니다.

    itunes-appstore

    appstore로 랜딩합니다.

    airpage

    airpage로 랜딩합니다.

    {HTTP_URL}

    설정한 url로 랜딩합니다.

    fallbackPaths.option
    object

    fallback의 옵션을 설정합니다.

    fallbackPaths.option.iosCustomProductPageId
    string

    애플 앱 스토어의 맞춤형 제품 페이지(Custom Product Page)의 ppid.

    fallbackPaths.option.googlePlayCustomStoreListing
    string

    구글 플레이 스토어의 맞춤 스토어 등록정보(Custom Store Listing) listing 값.

    Request
    12345
    curl -X PATCH 'https://api.airbridge.io/v1/tracking-links/10000/routing' \
      -H 'Accept-Language: ko' \
      -H 'Content-Type: application/json' \
      -H 'Authorization: Bearer {AIRBRIDGE-API-TOKEN}' \
      -d '{"idType":"id","deeplinkOption":{"showAlertForInitialDeeplinkingIssue":true}}'
    Payload
    123456
    {
      "idType": "id",
      "deeplinkOption": {
        "showAlertForInitialDeeplinkingIssue": true
      }
    }

    Response

    200SUCCESS

    404ERROR

    입력한 필드에 오류가 있거나 해당하는 리소스가 없습니다.

    Response
    1
    {}
    Response
    1234567
    {
      "type": "about:blank",
      "title": "Not Found",
      "detail": "Resource not found.",
      "status": 404,
      "traceId": "1-6450a21d-2b02e4d533589b625d875399"
    }

    목록 가져오기 v2

    GET

    https://api.airbridge.io/v2/tracking-links

    생성한 트래킹 링크 목록을 조회합니다.

    Request

    Headers

    Accept-Language
    string

    API 요청 및 결과 반환에 사용할 언어를 지정할 수 있습니다. ISO-639-1 포맷을 따릅니다.

    Content-Type
    string

    리소스의 미디어 타입을 나타냅니다. 기본값으로 application/json을 사용합니다.

    Authorization
    string

    API 요청에 사용하는 키값입니다. 키값 생성 및 조회 방법을 확인하여 획득할 수 있습니다.

    Query Params

    from
    필수string

    생성한 트래킹 링크 목록을 조회할 기준 시작일.

    to
    필수string

    생성한 트래킹 링크 목록을 조회할 기준 종료일.

    next_cursor
    numbernullable

    다음 트래킹 링크 데이터를 이어서 조회하기 위한 기준 ID.

    size
    number

    가져올 item의 갯수. (최대 1000)

    keyword
    string

    검색 키워드.

    channel_name
    string

    채널 명 필터.

    sort_key
    enum

    정렬 기준 (기본값: createdAt)

    ENUM VALUES
    createdAt

    생성 순 정렬

    sort_type
    enum

    정렬 타입. (기본값: ASC)

    ENUM VALUES
    DESC

    내림차순 정렬.

    ASC

    오름차순 정렬.

    Request
    1234
    curl -X GET 'https://api.airbridge.io/v2/tracking-links?from=2023-04-01&to=2023-04-02&next_cursor=123456789&size=10&sort_key=createdAt&sort_type=ASC' \
      -H 'Accept-Language: ko' \
      -H 'Content-Type: application/json' \
      -H 'Authorization: Bearer {AIRBRIDGE-API-TOKEN}'

    Response

    200SUCCESS

    totalCount

    • 타입: number

    • 설명: 응답에 포함된 트래킹 링크의 개수를 나타냅니다. 요청 시 지정한 size 값보다 클 수 없으며, 요청에 size를 지정하지 않은 경우 최대 1,000까지 반환됩니다. 조회 기간 동안 생성된 트래킹 링크가 없는 경우 0이 반환됩니다.

    hasNext

    • 타입: boolean

    • 설명: from, to 기간 내에 추가로 조회할 수 있는 트래킹 링크가 존재하는지를 나타냅니다. true는 추가 데이터 있음, false는 더 이상 조회할 데이터 없음을 의미합니다. 일반적으로 nextCursor와 함께 사용됩니다.

    nextCursor

    • 타입: number (nullable)

    • 설명: 다음 트래킹 링크를 요청할 때 사용되는 값입니다.

      • 예를 들어, 앱에서 생성된 1,001번째 트래킹 링크 ID가 20002342라면, 첫 요청으로 트래킹 링크 1,000개를 받은 후 응답에 "next_cursor": "20002342"가 포함되어 반환됩니다. 이후 요청에서 이 값을 next_cursor 파라미터로 전달하면, 1,001번째부터 2,000번째까지의 트래킹 링크를 조회할 수 있습니다.

      • 단, ID는 Airbridge에서 생성되는 전체 트래킹 링크를 기준으로 부여되기 때문에, 해당 앱에서 생성한 순서와 일치하지 않거나 연속적이지 않을 수 있습니다. 더 이상 조회할 데이터가 없는 경우 null이 반환됩니다.

    400ERROR

    입력한 필드가 오류가 있거나 형태가 올바르지 않습니다.

    Response
    123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
    {
      "data": {
        "hasNext": true,
        "nextCursor": 55843942,
        "totalCount": 2,
        "trackingLinks": [
          {
            "id": 55835049,
            "link": {
              "click": "https://abr.ge/@app_name/channel?og_tag_id=123&routing_short_id=id&tracking_template_id=template&ad_type=click",
              "impression": null,
              "serverToServerClick": null
            },
            "email": "user@ab180.co",
            "ogTag": {
              "title": "AB180",
              "imageUrl": "http://static.airbridge.io/images/og_tags/50ca2e8d-07b2-4a0e-8294-f00ddb8e59ae.png",
              "description": "Discovering Metrics That Matter!"
            },
            "company": null,
            "shortId": "short_id",
            "shortUrl": "https://abr.ge/short_id",
            "createdAt": "2024-02-26T19:35:02+09:00",
            "channelName": "channel",
            "channelType": "custom",
            "deeplinkUrl": "scheme://",
            "fallbackPaths": {
              "ios": "https://airbridge.io",
              "option": {
                "iosCustomProductPageId": null,
                "googlePlayCustomStoreListing": null
              },
              "android": "https://airbridge.io",
              "desktop": "https://airbridge.io"
            },
            "campaignParams": {
              "term": null,
              "subId": null,
              "subId1": null,
              "subId2": null,
              "subId3": null,
              "adGroup": null,
              "content": null,
              "campaign": null,
              "adCreative": null
            },
            "deeplinkOption": {
              "showAlertForInitialDeeplinkingIssue": false
            },
            "isReengagement": "OFF"
          },
          {
            "id": 55835585,
            "link": {
              "click": "https://abr.ge/@app_name/test?campaign=test&routing_short_id=short&tracking_template_id=template&ad_type=click",
              "impression": null,
              "serverToServerClick": null
            },
            "email": "user@ab180.co",
            "ogTag": {
              "title": "AB180",
              "imageUrl": "http://static.airbridge.io/images/og_tags/50ca2e8d-07b2-4a0e-8294-f00ddb8e59ae.png",
              "description": "Discovering Metrics That Matter!"
            },
            "company": null,
            "shortId": "short_id2",
            "shortUrl": "https://abr.ge/short_id2",
            "createdAt": "2024-02-26T19:40:44+09:00",
            "channelName": "channel",
            "channelType": "custom",
            "deeplinkUrl": null,
            "fallbackPaths": {
              "ios": "itunes-appstore",
              "option": {
                "iosCustomProductPageId": null,
                "googlePlayCustomStoreListing": null
              },
              "android": "google-play",
              "desktop": "https://airbridge.io"
            },
            "campaignParams": {
              "term": null,
              "subId": null,
              "subId1": null,
              "subId2": null,
              "subId3": null,
              "adGroup": null,
              "content": null,
              "campaign": "test",
              "adCreative": null
            },
            "deeplinkOption": {
              "showAlertForInitialDeeplinkingIssue": false
            },
            "isReengagement": "OFF"
          }
        ]
      },
      "resultMessage": "Here is your result."
    }
    Response
    12345678910111213141516
    {
      "instance": [
        {
          "loc": [
            "size"
          ],
          "msg": "must be less than or equal to 1000",
          "type": "validation_error"
        }
      ],
      "detail": "invalid_request",
      "status": 400,
      "title": "Bad Request",
      "traceId": "1-68513579-369f49243aa5430b228cfa8a",
      "type": "about:blank"
    }

    목록 가져오기

    GET

    https://api.airbridge.io/v1/tracking-links

    생성한 트래킹 링크 목록을 불러옵니다.

    Request

    Headers

    Accept-Language
    string

    API 요청 및 결과 반환에 사용할 언어를 지정할 수 있습니다. ISO-639-1 포맷을 따릅니다.

    Content-Type
    string

    리소스의 미디어 타입을 나타냅니다. 기본값으로 application/json을 사용합니다.

    Authorization
    string

    API 요청에 사용하는 키값입니다. 키값 생성 및 조회 방법을 확인하여 획득할 수 있습니다.

    Query Params

    from
    필수string

    생성한 트래킹 링크 목록을 조회할 기준 시작일.

    to
    필수string

    생성한 트래킹 링크 목록을 조회할 기준 종료일.

    skip
    number

    건너뛸 item의 갯수.

    size
    number

    가져올 item의 갯수. (최대 500)

    keyword
    string

    검색 키워드.

    channel_name
    string

    채널 명 필터.

    sort_key
    enum

    정렬 기준 (기본값: createdAt)

    ENUM VALUES
    createdAt

    생성 순 정렬

    sort_type
    enum

    정렬 타입. (기본값: DESC)

    ENUM VALUES
    DESC

    내림차순 정렬.

    ASC

    오름차순 정렬.

    Request
    1234
    curl -X GET 'https://api.airbridge.io/v1/tracking-links?from=2023-04-01&to=2023-04-02&skip=0&size=10&sort_key=createdAt&sort_type=DESC' \
      -H 'Accept-Language: ko' \
      -H 'Content-Type: application/json' \
      -H 'Authorization: Bearer {AIRBRIDGE-API-TOKEN}'

    Response

    200SUCCESS

    400ERROR

    입력한 필드가 오류가 있거나 형태가 올바르지 않습니다.

    Response
    12345678910111213
    {
      "data": {
        "totalCount": 2,
        "trackingLinks": [
          {
            "id": 10001
          },
          {
            "id": 10002
          }
        ]
      }
    }
    Response
    12345678910111213141516
    {
      "instance": [
        {
          "loc": [
            "size"
          ],
          "msg": "must be less than or equal to 1000",
          "type": "validation_error"
        }
      ],
      "detail": "invalid_request",
      "status": 400,
      "title": "Bad Request",
      "traceId": "1-68513579-369f49243aa5430b228cfa8a",
      "type": "about:blank"
    }