All Downloads are FREE. Search and download functionalities are using the official Maven repository.

jp.co.freee.accounting.api.UsersApi Maven / Gradle / Ivy

There is a newer version: 2.29.0
Show newest version
package jp.co.freee.accounting.api;

import jp.co.freee.accounting.CollectionFormats.*;

import io.reactivex.Observable;
import io.reactivex.Completable;
import retrofit2.http.*;

import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import okhttp3.MultipartBody;

import jp.co.freee.accounting.models.BadRequestError;
import jp.co.freee.accounting.models.BadRequestNotFoundError;
import jp.co.freee.accounting.models.ForbiddenError;
import jp.co.freee.accounting.models.InlineResponse20012;
import jp.co.freee.accounting.models.InlineResponse20013;
import jp.co.freee.accounting.models.InternalServerError;
import jp.co.freee.accounting.models.MeResponse;
import jp.co.freee.accounting.models.UnauthorizedError;
import jp.co.freee.accounting.models.UserParams;
import jp.co.freee.accounting.models.UserResponse;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public interface UsersApi {
  /**
   * 事業所に所属するユーザー一覧の取得
   * 
   * @param companyId 事業所ID (required)
   * @param limit 取得レコードの件数 (デフォルト: 50, 最小: 1, 最大: 3000) (optional)
   * @return Observable<InlineResponse20012>
   */
  @GET("api/1/users")
  Observable getUsers(
    @retrofit2.http.Query("company_id") Integer companyId, @retrofit2.http.Query("limit") Integer limit
  );

  /**
   * ログインユーザーの権限の取得
   * 
   * @param companyId 事業所ID (required)
   * @return Observable<InlineResponse20013>
   */
  @GET("api/1/users/capabilities")
  Observable getUsersCapabilities(
    @retrofit2.http.Query("company_id") Integer companyId
  );

  /**
   * ログインユーザー情報の取得
   * 
   * @param companies 取得情報にユーザーが所属する事業所一覧を含める (optional)
   * @param advisor 取得情報に事業がアドバイザー事象所の場合は事業所毎の一意なプロフィールIDを含める (optional)
   * @return Observable<MeResponse>
   */
  @GET("api/1/users/me")
  Observable getUsersMe(
    @retrofit2.http.Query("companies") Boolean companies, @retrofit2.http.Query("advisor") Boolean advisor
  );

  /**
   * ユーザー情報の更新
   * 
   * @param userParams ユーザー情報の更新 (optional)
   * @return Observable<UserResponse>
   */
  @Headers({
    "Content-Type:application/json"
  })
  @PUT("api/1/users/me")
  Observable updateUser(
    @retrofit2.http.Body UserParams userParams
  );

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy