Retention Report

    The Retention Report shows how many users returned to the app a certain number of days after installing the app or opening the app through a deep link.

    You can identify the channels and campaigns that attract the most active app users. The retention data can be used for campaign optimization and ad billings.


    Request Report

    POST

    https://api.airbridge.io/reports/api/v5/apps/{app_name}/retention/query

    Request a Retention Report.

    Request

    Path Params

    app_name
    Requiredstring

    Airbridge App Name. (Unique ID)

    Body Params

    from
    Requiredstring

    The start date of the report data to request.

    • The date must be in the format 'YYYY-MM-DD'

    • This date must correspond with the timezone set in the Airbridge app. 

    • The system only accepts dates within the 174 days preceding the current date. Future dates are not permitted.

    to
    Requiredstring

    The end date of the report data to request.

    • The date must be in the format 'YYYY-MM-DD'

    • This date must correspond with the timezone set in the Airbridge app.

    • The system only accepts dates up the current date. The time period available for querying is up to 31 days.

    granularity
    Requiredenum

    The analytics interval period.

    ENUM VALUES
    day

    Analyze the data by day.

    week

    Analyze the data by week. The week is calculated from Monday to Sunday.

    month

    Analyze the data by month. The month is calculated from the first date to the last day of the month. For instance, if you request a date from March 10 to April 10, count it as 3/10-3/31 and 04/01-04/10.

    startEvent
    Requiredenum

    The event that initiates a User Journey in the time period set.

    ENUM VALUES
    app_installs

    Installs (App). Install events that occurred within the selected time period.

    app_deeplink_opens

    Deeplink Opens (App). Deeplink Open events that occurred within the selected time period.

    returnEvents
    Requiredstring[]

    An in-app event performed by the user after performing a Start Event.

    Accept Airbridge Standard Events and Custom Events that have been collected at least once. Any event can be set as a return event with any_event.

    measurementOption
    Requiredenum

    The option to view the retention by unique users or by user journeys that are separated by Start Events. [Reference]

    ENUM VALUES
    general_retention

    General. A User Journey of a unique user is initiated by the Start Event performed by that user.

    confined_retention

    Confined. A User Journey of a unique user is initiated by the Start Event performed by that user. The Airbridge Device ID is used to identify unique users.

    groupBy
    object

    Allows you to set a group by to divide the numbers for the metric you want to see.

    filters
    object[]

    The filter for providing 'group by' items.

    sorts
    Requiredobject[]

    Sort report data by 'Group By'

    keyword
    string

    The keywords to filter on GroupBy in the results.

    pagination
    object
    Request
    12345
    curl -X POST 'https://api.airbridge.io/reports/api/v5/apps/{app_name}/retention/query' \
      -H 'Accept-Language: en' \
      -H 'Content-Type: application/json' \
      -H 'Authorization: Bearer {AIRBRIDGE-API-TOKEN}' \
      -d '{"from":"2023-01-01","to":"2023-01-07","granularity":"day","returnEvents":["any_event"],"measurementOption":"general_retention","pagination":{"skip":0,"size":50}}'
    Payload
    12345678910111213
    {
      "from": "2023-01-01",
      "to": "2023-01-07",
      "granularity": "day",
      "returnEvents": [
        "any_event"
      ],
      "measurementOption": "general_retention",
      "pagination": {
        "skip": 0,
        "size": 50
      }
    }

    Response

    200 SUCCESS

    400 ERROR

    The field contains an error or is incorrectly formatted.

    Response
    12345
    {
      "data": {
        "taskId": "5e286bd4-b4b1-4c04-8f6a-123456789abc"
      }
    }

    Get Report

    GET

    https://api.airbridge.io/reports/api/v5/apps/{app_name}/retention/query/{task_id}

    Request status

    The status of an asynchronous request can be checked with task.status in the API request result.

    #{"style":{"minWidth":"130px"}}

    PENDING

    Data aggregation is in preparation

    RUNNING

    Data is being aggregated.

    SUCCESS

    The aggregation is completed and returns the result.

    FAILURE

    The request has failed.

    CANCELED

    The request has been canceled.

    Request

    Path Params

    app_name
    Requiredstring

    Airbridge App Name. (Unique ID)

    task_id
    Requiredstring

    The task_id returned by the result of the 'Request Report' API.

    Query Params

    skip
    string

    The number of objects to be skipped.

    The default is 0.

    size
    string

    A limit on the number of objects to be returned.

    The default is 100.

    Request
    1234
    curl -X GET 'https://api.airbridge.io/reports/api/v5/apps/{app_name}/retention/query/{task_id}' \
      -H 'Accept-Language: en' \
      -H 'Content-Type: application/json' \
      -H 'Authorization: Bearer {AIRBRIDGE-API-TOKEN}'

    Response

    200 (Processing the request)SUCCESS

    200 (Completed the request processing)SUCCESS

    404 ERROR

    Response
    1234567
    {
      "task": {
        "status": "RUNNING",
        "taskId": "5e286bd4-b4b1-4c04-8f6a-670dc7ce637d",
        "endedAt": "2022-01-17T19:10:00.286939+09:00"
      }
    }

    Was this page helpful?

    Have any questions or suggestions?