Interface FeatureApi


public interface FeatureApi
Interface defining API endpoints for managing feature toggles.
  • Method Details

    • createFeatureToggle

      @POST("feature-toggle") retrofit2.Call<okhttp3.ResponseBody> createFeatureToggle(@Body FeatureToggleItem featureToggleItem)
      Creates a new feature toggle.
      Parameters:
      featureToggleItem - The FeatureToggleItem object containing the details of the feature toggle to be created, including its name, description, beginning and expiration dates, and package name.
      Returns:
      A Call object to execute the request asynchronously or synchronously. The response contains a ResponseBody that holds the server's response message.
    • getAllFeatureToggles

      @GET("feature-toggles/{package_name}") retrofit2.Call<List<FeatureToggleItem>> getAllFeatureToggles(@Path("package_name") String packageName)
      Retrieves all feature toggles for a specified package.
      Parameters:
      packageName - The name of the package for which to retrieve feature toggles.
      Returns:
      A Call object containing a list of FeatureToggleItem objects.
    • getActiveFeatureToggles

      @GET("feature-toggles/{package_name}/active") retrofit2.Call<List<FeatureToggleItem>> getActiveFeatureToggles(@Path("package_name") String packageName)
      Retrieves all active feature toggles for a specified package.
      Parameters:
      packageName - The name of the package for which to retrieve active feature toggles.
      Returns:
      A Call object containing a list of FeatureToggleItem objects.
    • deleteFeatureToggle

      @DELETE("feature-toggles/{package_name}/{feature_id}") retrofit2.Call<okhttp3.ResponseBody> deleteFeatureToggle(@Path("package_name") String packageName, @Path("feature_id") String featureId)
      Deletes a specific feature toggle by its ID.
      Parameters:
      packageName - The name of the package containing the feature toggle.
      featureId - The ID of the feature toggle to be deleted.
      Returns:
      A Call object for the API response.
    • updateFeatureDates

      @PUT("feature-toggles/{package_name}/{feature_id}/update-dates") retrofit2.Call<okhttp3.ResponseBody> updateFeatureDates(@Path("package_name") String packageName, @Path("feature_id") String featureId, @Body FeatureToggleItem updatedData)
      Updates the beginning and expiration dates of a specific feature toggle.
      Parameters:
      packageName - The name of the package containing the feature toggle.
      featureId - The ID of the feature toggle to be updated.
      updatedData - The updated feature toggle data.
      Returns:
      A Call object for the API response.
    • getRecentFeatureToggles

      @GET("feature-toggles/{package_name}/recent") retrofit2.Call<List<FeatureToggleItem>> getRecentFeatureToggles(@Path("package_name") String packageName)
      Retrieves all feature toggles created in the last 30 days for a specified package.
      Parameters:
      packageName - The name of the package for which to retrieve recent feature toggles.
      Returns:
      A Call object containing a list of FeatureToggleItem objects.
    • updateFeatureInfo

      @PUT("feature-toggles/{package_name}/{feature_id}/update-info") retrofit2.Call<okhttp3.ResponseBody> updateFeatureInfo(@Path("package_name") String packageName, @Path("feature_id") String featureId, @Body FeatureToggleItem updatedData)
      Updates the name and description of a specific feature toggle.
      Parameters:
      packageName - The name of the package containing the feature toggle.
      featureId - The ID of the feature toggle to be updated.
      updatedData - The updated feature toggle data.
      Returns:
      A Call object for the API response.
    • getActiveFeaturesInRange

      @GET("feature-toggles/{package_name}/active-in-range") retrofit2.Call<List<FeatureToggleItem>> getActiveFeaturesInRange(@Path("package_name") String packageName, @Query("start_date") String startDate, @Query("end_date") String endDate)
      Retrieves active feature toggles within a specific date range for a specified package.
      Parameters:
      packageName - The name of the package for which to retrieve active feature toggles.
      startDate - The start date of the range (format: YYYY-MM-DD HH:MM:SS).
      endDate - The end date of the range (format: YYYY-MM-DD HH:MM:SS).
      Returns:
      A Call object containing a list of FeatureToggleItem objects.
    • getFeatureToggleStatistics

      @GET("feature-toggles/{package_name}/statistics") retrofit2.Call<okhttp3.ResponseBody> getFeatureToggleStatistics(@Path("package_name") String packageName)
      Retrieves statistics for a specified package.
      Parameters:
      packageName - The name of the package for which to retrieve statistics.
      Returns:
      A Call object for the API response.
    • getFeatureTogglesByDate

      @GET("feature-toggles/{package_name}/by-date") retrofit2.Call<List<FeatureToggleItem>> getFeatureTogglesByDate(@Path("package_name") String packageName, @Query("date") String date)
      Retrieves all active feature toggles for a specified package by a specific date.
      Parameters:
      packageName - The name of the package for which to retrieve feature toggles.
      date - The specific date (format: YYYY-MM-DD HH:MM:SS).
      Returns:
      A Call object containing a list of FeatureToggleItem objects.
    • deleteAllFeatureToggles

      @DELETE("feature-toggles/{package_name}") retrofit2.Call<okhttp3.ResponseBody> deleteAllFeatureToggles(@Path("package_name") String packageName)
      Deletes all feature toggles for a specified package.
      Parameters:
      packageName - The name of the package for which to delete all feature toggles.
      Returns:
      A Call object for the API response.