Using the Mode API to Get Active Users Count (with PHP examples)

by Endgrate Team 2024-07-06 5 min read

Mode homepage

Introduction to Mode API for Active User Insights

Mode is a collaborative analytics platform that empowers teams to make data-driven decisions through its robust suite of tools. By leveraging Mode's API, developers can programmatically access and interact with various analytics functions, including querying data, managing reports, and overseeing workspace memberships.

Integrating with the Mode API is particularly beneficial for developers looking to monitor user engagement and activity. For example, you might want to retrieve the count of active users within a specific timeframe to analyze user behavior trends or optimize resource allocation.

This article will guide you through using PHP to interact with the Mode API, specifically focusing on obtaining the active user count. By following this tutorial, you'll learn how to set up your Mode account, authenticate API requests, and execute the necessary API calls to gather valuable user insights.

Setting Up Your Mode API Test Account

Before diving into the Mode API, you'll need to set up a Mode account and configure it for API access. This setup is crucial for testing and authenticating your API requests effectively.

Create a Mode Account and Workspace

If you don't already have a Mode account, start by signing up on the Mode website. Once registered, create a Workspace, which is essential for accessing Mode's API features. A Workspace acts as a collaborative environment where you can manage data and analytics resources.

Generate an API Access Token

To interact with the Mode API, you'll need an API access token. Follow these steps to create one:

  1. Navigate to your Workspace Settings.
  2. Go to Privacy & Security and select API.
  3. Click the gear icon and choose Create new API token.
  4. Provide a display name for your token and save it securely. Remember, the token consists of a public component (username) and a private component (secret).

Ensure you store your API token and secret securely, as they are required for authenticating API requests.

Authenticate Using Basic Authentication

Mode's API uses basic authentication. Here's how to set it up:

  1. Combine your API token and secret into a string formatted as username:password.
  2. Encode this string using BASE64 encoding.
  3. Include the encoded string in the HTTP header for authorization in each API call:
Authorization: Basic "BASE-64 encoded string"

For more details on authentication, refer to the Mode API Authentication Documentation.

Test Your API Setup

With your account and API token ready, it's time to test your setup by sending a simple request to the Mode API. This step ensures that your authentication is correctly configured and that you can access Mode's resources programmatically.

For further guidance on API setup, visit the Mode API Introduction.

Mode authentication documentation page.
sbb-itb-96038d7

Executing Mode API Calls to Retrieve Active User Count with PHP

To effectively interact with the Mode API and retrieve the active user count, you'll need to follow a series of steps to ensure your PHP environment is correctly configured. This section will guide you through setting up PHP, making the API call, and handling the response.

Setting Up PHP Environment for Mode API Integration

Before making API calls, ensure your PHP environment is ready. You'll need PHP 7.4 or later and the cURL extension enabled, which is essential for making HTTP requests.

  1. Verify your PHP version by running php -v in your terminal.
  2. Ensure the cURL extension is enabled in your php.ini file.

Making the API Call to Get Active Users Count

With your environment set up, you can now proceed to make the API call. The following PHP code demonstrates how to retrieve the active user count from the Mode API.


<?php
// Set API credentials
$apiToken = 'your_api_token';
$apiSecret = 'your_api_secret';

// Encode credentials for Basic Authentication
$credentials = base64_encode("$apiToken:$apiSecret");

// Define the API endpoint
$url = 'https://app.mode.com/api/your_workspace/memberships';

// Initialize cURL session
$ch = curl_init($url);

// Set cURL options
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Basic ' . $credentials,
    'Content-Type: application/json',
    'Accept: application/hal+json'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Execute the request
$response = curl_exec($ch);

// Check for errors
if (curl_errno($ch)) {
    echo 'Request Error:' . curl_error($ch);
} else {
    // Decode the response
    $data = json_decode($response, true);
    // Output the active user count
    echo 'Active Users Count: ' . count($data['memberships']);
}

// Close cURL session
curl_close($ch);
?>

Replace your_api_token, your_api_secret, and your_workspace with your actual API credentials and workspace name. This script initializes a cURL session, sets the necessary headers for authentication, and sends a GET request to the Mode API to retrieve the list of active users.

Verifying the API Request and Handling Errors

After executing the API call, it's crucial to verify the request's success and handle any potential errors. The Mode API uses standard HTTP response codes to indicate the status of your request:

  • 200 OK: The request was successful, and the active user count is returned.
  • 401 Unauthorized: Authentication failed. Check your API token and secret.
  • 404 Not Found: The specified workspace or resource could not be found.

For more detailed error information, refer to the Mode API Error Codes Documentation.

Mode API call documentation page.

Conclusion and Best Practices for Using Mode API with PHP

Integrating with the Mode API to retrieve active user counts provides valuable insights into user engagement and activity within your workspace. By following the steps outlined in this guide, you can effectively set up your PHP environment, authenticate API requests, and handle responses to gather meaningful data.

Best Practices for Secure and Efficient Mode API Integration

  • Secure Storage of Credentials: Always store your API token and secret securely. Avoid exposing them in public repositories or client-side code.
  • Handle Rate Limiting: Be mindful of Mode's API rate limits to prevent request throttling. Implement retry logic with exponential backoff to handle rate limit errors gracefully.
  • Data Standardization: Ensure that the data retrieved from the API is standardized and transformed as needed to fit your application's requirements.
  • Error Handling: Implement robust error handling to manage different HTTP response codes effectively. This will help you quickly identify and resolve issues with API requests.

Streamline Your Integrations with Endgrate

While integrating with Mode API using PHP is straightforward, managing multiple integrations can become complex and time-consuming. Endgrate offers a unified API solution that simplifies the integration process across various platforms, including Mode.

By leveraging Endgrate, you can save time and resources, allowing you to focus on your core product development. Build once for each use case and enjoy an intuitive integration experience for your customers. Visit Endgrate to learn more about how you can streamline your integration efforts.

Read More

Ready to get started?

Book a demo now

Book Demo