Skip to content

Add support for Blink Mini (owl) camera #7

Description

@alexeyvasilyev

At the moment Blink Mini camera is not supported. It uses different API.
This is what I have when calling https://rest-%s.immedia-semi.com/api/v3/accounts/%s/homescreen

{
    "account": {
        "id": 12345,
        "email_verified": true,
        "email_verification_required": true
    },
    "networks": [{
        "id": 23456,
        "created_at": "2020-06-05T06:36:36+00:00",
        "updated_at": "2020-06-05T06:36:36+00:00",
        "name": "Office",
        "time_zone": "Europe/New York",
        "dst": true,
        "armed": false,
        "lv_save": false
    }],
    "sync_modules": [],
    "cameras": [],
    "sirens": [],
    "chimes": [],
    "video_stats": {
        "storage": 0,
        "auto_delete_days": 14
    },
    "doorbell_buttons": [],
    "owls": [{
        "id": 56789,
        "created_at": "2020-06-05T06:40:28+00:00",
        "updated_at": "2020-06-10T19:54:40+00:00",
        "name": "G8T1-9412-3135-0JD5",
        "type": "owl",
        "onboarded": true,
        "serial": "G8T1941231350JD5",
        "fw_version": "9.63",
        "enabled": true,
        "thumbnail": "/media/e002/account/12345/network/23456/owl/56789/thumbnail/fw_9.63__dZ9ITQhc_2020_06_05__06_43AM",
        "status": "online",
        "network_id": 23456
    }],
    "app_updates": {
        "message": "OK",
        "code": 103,
        "update_available": false,
        "update_required": false
    },
    "device_limits": {
        "total_devices": 20,
        "owl": 10,
        "camera": 10,
        "siren": 5,
        "doorbell_button": 2,
        "chime": 5
    },
    "whats_new": {
        "updated_at": 20200416,
        "url": "https://blinkforhome.com/blogs/updates"
    }
}

Here is a full list API extracted from Blink app v6.0.12:

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/account/options")
    Observable<AccountOptionsResponse> accountOptions(@Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v2/notification")
    Observable<Object> acknowledgeNotification(@Body AcknowledgeNotificationBody acknowledgeNotificationBody, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/sirens/{siren}/activate/")
    Observable<BlinkData> activateSiren(@Body SirenDurationBody sirenDurationBody, @Path("tier") String str, @Path("network") long j, @Path("siren") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/sirens/activate/")
    Observable<BlinkData> activateSirens(@Path("tier") String str, @Path("network") long j);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/camera/add")
    Observable<AddCameraResponseBody> addCamera(@Body AddCameraBody addCameraBody, @Path("tier") String str, @Path("network") long j);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{account}/networks/{network}/chimes/add/")
    Observable<AddChimeResponse> addChime(@Body AddSirenNetworkBody addSirenNetworkBody, @Path("tier") String str, @Path("account") long j, @Path("network") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/networks/{networkId}/owls/add")
    Observable<AddOwlResponseBody> addOwl(@Body AddOwlBody addOwlBody, @Path("tier") String str, @Path("accountId") long j, @Path("networkId") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/sirens/add/")
    Observable<AddSirenResponse> addSiren(@Body AddSirenNetworkBody addSirenNetworkBody, @Path("tier") String str, @Path("network") long j);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/version")
    Observable<UpdateStatusBody> appUpdateStatus(@Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/networks/{networkId}/state/{type}")
    Observable<Command> armDisarmNetwork(@Path("tier") String str, @Path("accountId") long j, @Path("networkId") long j2, @Path("type") String str2);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/camera/usage")
    Observable<BatteryUsage> batteryUsage(@Path("tier") String str);

    @GET("https://blinkstatus.net/api/v1/{tier}")
    Observable<StatusBoxBody> blinkStabilityStatus(@Path("tier") String str);

    @GET("https://rest-{tier}.immedia-semi.com/network/{network}/camera/{camera}")
    Observable<CameraStatus> cameraCommandStatus(@Path("tier") String str, @Path("network") long j, @Path("camera") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/camera/{camera}/{type}")
    Observable<Command> cameraMotion(@Path("tier") String str, @Path("network") long j, @Path("camera") long j2, @Path("type") String str2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/{accountId}/client/{clientId}/email_change/")
    Observable<ChangeAccountDetailPinResponse> changeEmail(@Path("tier") String str, @Path("accountId") long j, @Path("clientId") long j2, @Body ChangeEmailRequest changeEmailRequest);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/networks/{networkId}/owls/{owlId}/change_wifi")
    Observable<OwlAddBody> changeOwlWifi(@Body OnboardingStartRequest onboardingStartRequest, @Path("tier") String str, @Path("accountId") long j, @Path("networkId") long j2, @Path("owlId") long j3);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/{accountId}/client/{clientId}/password_change/")
    Observable<BlinkData> changePassword(@Path("tier") String str, @Path("accountId") long j, @Path("clientId") long j2, @Body TokenizedChangePassword tokenizedChangePassword);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/password_change/")
    Observable<BlinkData> changePasswordUnauthenticated(@Path("tier") String str, @Body TokenizedChangePassword tokenizedChangePassword);

    @GET("https://rest-{tier}.immedia-semi.com/network/{network}/command/{command}")
    Observable<Commands> commandPolling(@Path("tier") String str, @Path("network") long j, @Path("command") long j2);

    @GET("https://rest-{tier}.immedia-semi.com/api/v2/support/ob_phone/")
    Observable<ContactBlink> contactBlink(@Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/programs/create")
    Observable<BlinkData> createProgram(@Body Program program, @Path("tier") String str, @Path("network") long j);

    @POST("https://rest-{tier}.immedia-semi.com/network/add")
    Observable<ANetwork> createSystem(@Body AddNetworkBody addNetworkBody, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/sirens/deactivate/")
    Observable<BlinkData> deactivateSirens(@Path("tier") String str, @Path("network") long j);

    @POST("https://rest-{tier}.immedia-semi.com/account/delete/")
    Observable<BlinkData> deleteAccount(@Body DeleteAccountBody deleteAccountBody, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/camera/{camera}/delete/")
    Observable<BlinkData> deleteCamera(@Path("tier") String str, @Path("network") long j, @Path("camera") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/media/delete")
    Single<Object> deleteMedia(@Body MediaIdListBody mediaIdListBody, @Path("accountId") long j, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/media/delete")
    Call<Object> deleteMediaCall(@Body MediaIdListBody mediaIdListBody, @Path("accountId") long j, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/networks/{networkId}/owls/{owlId}/delete")
    Observable<BlinkData> deleteOwl(@Path("tier") String str, @Path("accountId") long j, @Path("networkId") long j2, @Path("owlId") long j3);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/programs/{program}/delete")
    Observable<BlinkData> deleteProgram(@Path("tier") String str, @Path("network") long j, @Path("program") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/sirens/{siren}/delete")
    Observable<BlinkData> deleteSirens(@Path("tier") String str, @Path("network") long j, @Path("siren") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/syncmodule/{syncmodule}/delete/")
    Observable<BlinkData> deleteSyncModule(@Path("tier") String str, @Path("network") long j, @Path("syncmodule") String str2);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/delete")
    Observable<BlinkData> deleteSystem(@Path("tier") String str, @Path("network") long j);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/programs/{program}/disable")
    Observable<BlinkData> disableProgram(@Path("tier") String str, @Path("network") long j, @Path("program") long j2);

    @GET
    Observable<Result<ResponseBody>> downloadFirmware(@Url String str);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/sync_modules/{serial}/fw_update")
    Observable<Result<ResponseBody>> downloadFirmwareUpdate(@Path("tier") String str, @Path("serial") String str2);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/owls/{serial}/fw_update")
    Observable<Result<ResponseBody>> downloadOwlFirmwareUpdate(@Path("tier") String str, @Path("accountId") long j, @Path("serial") String str2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/programs/{program}/enable")
    Observable<BlinkData> enableProgram(@Path("tier") String str, @Path("network") long j, @Path("program") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/{accountId}/client/{clientId}/password_change/pin/generate/")
    Observable<ResendPinEmailResponse> generateChangePasswordPinCode(@Path("tier") String str, @Path("accountId") long j, @Path("clientId") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/password_change/pin/generate/")
    Observable<ResendPinEmailResponse> generateChangePasswordPinCodeUnauthenticated(@Path("tier") String str, @Body ResetPasswordUnauthenticatedRequest resetPasswordUnauthenticatedRequest);

    @GET("https://rest-{tier}.immedia-semi.com/account")
    Observable<AccountRetrievalResponse> getAccount(@Path("tier") String str);

    @GET("https://rest-{tier}.immedia-semi.com/network/{network}/camera/{camera}/config")
    Observable<CameraConfig> getCameraConfig(@Path("tier") String str, @Path("network") long j, @Path("camera") long j2);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/media/changed")
    Call<ChangedMedia> getChangedMedia(@Path("tier") String str, @Path("accountId") long j, @Query("since") OffsetDateTime offsetDateTime, @Query("page") int i);

    @Deprecated
    @GET("https://rest-{tier}.immedia-semi.com/api/v2/videos/changed")
    Call<ChangedVideos> getChangedVideos(@Path("tier") String str, @Query("since") OffsetDateTime offsetDateTime, @Query("page") int i);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{account}/clients/{client}/options")
    Observable<ClientOptionsResponse> getClientOptions(@Path("tier") String str, @Path("account") long j, @Path("client") long j2);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{account}/networks/{network}/cameras/{camera}/motion_regions")
    Observable<MotionRegions> getMotionRegions(@Path("tier") String str, @Path("account") long j, @Path("network") long j2, @Path("camera") long j3);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/networks/{networkId}/owls/{owlId}/config")
    Observable<OwlConfigInfo> getOwlConfig(@Path("tier") String str, @Path("accountId") long j, @Path("networkId") long j2, @Path("owlId") long j3);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/programs")
    Observable<List<Program>> getPrograms(@Path("network") long j, @Path("tier") String str);

    @GET("https://rest-{tier}.immedia-semi.com/regions")
    Observable<QuickRegionInfo> getRegions(@Path("tier") String str, @Query("locale") String str2);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/sirens/")
    Observable<Siren[]> getSirens(@Path("tier") String str, @Path("network") long j);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/sirens/")
    Observable<SirensReponse> getSirensForAllNetworks(@Path("tier") String str);

    @GET("https://rest-{tier}.immedia-semi.com/user")
    Observable<User> getUser(@Path("tier") String str);

    @GET("https://rest-{tier}.immedia-semi.com/api/v3/accounts/{account}/homescreen")
    Observable<HomescreenV3> homescreenV3(@Path("tier") String str, @Path("account") long j);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/devices/identify/{serialNumber}")
    Single<IdentifyDeviceResponse> identifyDevice(@Path("tier") String str, @Path("serialNumber") String str2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v3/networks/{network}/cameras/{camera}/liveview")
    Observable<LiveVideoResponse> liveView(@Body VideoLiveViewBody videoLiveViewBody, @Path("tier") String str, @Path("network") long j, @Path("camera") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{account}/networks/{network}/owls/{owl}/liveview")
    Observable<PirPollingResponse> liveViewOwl(@Body LiveViewBody liveViewBody, @Path("tier") String str, @Path("account") long j, @Path("network") long j2, @Path("owl") long j3);

    @POST("https://rest-{tier}.immedia-semi.com/api/v5/accounts/{account}/networks/{network}/cameras/{camera}/liveview")
    Observable<PirPollingResponse> liveViewV5(@Body LiveViewBody liveViewBody, @Path("tier") String str, @Path("account") long j, @Path("network") long j2, @Path("camera") long j3);

    @GET("https://rest-{tier}.immedia-semi.com/network/{network}/camera/{camera}/signals")
    Observable<SignalStrength> loadCameraStatus(@Path("tier") String str, @Path("network") long j, @Path("camera") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/login")
    Observable<LoginResponse> login(@Body LoginBody loginBody, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/login")
    Call<LoginResponse> loginCall(@Body LoginBody loginBody, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/{accountId}/client/{clientId}/logout/")
    Observable<BlinkData> logout(@Path("tier") String str, @Path("accountId") Long l, @Path("clientId") Long l2);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/camera/{camera}/status")
    Observable<Command> refreshCameraStatus(@Path("tier") String str, @Path("network") long j, @Path("camera") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/networks/{networkId}/owls/{owlId}/status")
    Observable<Command> refreshOwlStatus(@Path("tier") String str, @Path("accountId") long j, @Path("networkId") long j2, @Path("owlId") long j3);

    @GET("https://rest-prod.immedia-semi.com/regions?locale=US")
    Observable<BlinkData> regions(@Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/register")
    Observable<RegisterResponse> registerV4(@Body RegisterBody registerBody, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/{accountId}/client/{clientId}/email_change/pin/resend")
    Observable<ResendPinEmailResponse> resendChangeEmailPinCode(@Path("tier") String str, @Path("accountId") long j, @Path("clientId") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/account/reset_password/")
    Observable<MessageResponse> resetPassword(@Body ResetPasswordBody resetPasswordBody, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/network/{network}/camera/{camera}/calibrate")
    Observable<Command> saveCalibrateTemperature(@Body Calibrate calibrate, @Path("tier") String str, @Path("network") long j, @Path("camera") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/camera/{camera}/update")
    Observable<Command> saveCameraSettings(@Body UpdateCameraBody updateCameraBody, @Path("tier") String str, @Path("network") long j, @Path("camera") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/networks/{networkId}/owls/{owlId}/config")
    Observable<Command> saveOwlSettings(@Body UpdateOwlBody updateOwlBody, @Path("tier") String str, @Path("accountId") long j, @Path("networkId") long j2, @Path("owlId") long j3);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{account}/clients/{client}/options")
    Observable<BlinkData> sendClientOptions(@Body ClientOptionsResponse clientOptionsResponse, @Path("tier") String str, @Path("account") long j, @Path("client") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/app/logs/upload/")
    Observable<BlinkData> sendLogs(@Body LogsBody logsBody, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/app/logs/upload/")
    Call<BlinkData> sendLogsCall(@Body LogsBody logsBody, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/account/system_offline/{network}")
    Observable<BlinkData> sendSystemOfflineHelpEmaail(@Path("tier") String str, @Path("network") long j);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{account}/networks/{network}/cameras/{camera}/motion_regions")
    Observable<MotionsRegionsSetResponse> setMotionRegions(@Body MotionRegions motionRegions, @Path("tier") String str, @Path("account") long j, @Path("network") long j2, @Path("camera") long j3);

    @POST("https://rest-{tier}.immedia-semi.com/api/v2/network/{network}/sync_module/{type}")
    Observable<Command> startOnboarding(@Body OnboardingStartRequest onboardingStartRequest, @Path("tier") String str, @Path("network") long j, @Path("type") String str2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{account}/networks/{network}/owls/add")
    Observable<OwlAddBody> startOwlOnboarding(@Body OnboardingStartRequest onboardingStartRequest, @Path("tier") String str, @Path("account") long j, @Path("network") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/accounts/{accountId}/networks/{networkId}/owls/{owlId}/thumbnail")
    Observable<Command> takeOwlThumbnail(@Path("tier") String str, @Path("accountId") long j, @Path("networkId") long j2, @Path("owlId") long j3);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/camera/{camera}/thumbnail")
    Observable<Command> takeThumbnail(@Path("tier") String str, @Path("network") long j, @Path("camera") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/network/{network}/camera/{camera}/temp_alert_disable")
    Observable<BlinkData> tempAlertDisable(@Path("tier") String str, @Path("network") long j, @Path("camera") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/network/{network}/camera/{camera}/temp_alert_enable")
    Observable<BlinkData> tempAlertEnable(@Path("tier") String str, @Path("network") long j, @Path("camera") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/command/{command}/done/")
    Call<BlinkData> terminateCommand(@Path("network") long j, @Path("command") long j2, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/command/{command}/update/")
    Observable<BlinkData> terminateOnboardingCommand(@Body TerminateOnboardingBody terminateOnboardingBody, @Path("tier") String str, @Path("network") long j, @Path("command") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/account/update")
    Observable<BlinkData> updateAccount(@Body UpdateAccountBody updateAccountBody, @Path("tier") String str);

    @GET("https://rest-{tier}.immedia-semi.com/api/v1/fw/app/update_check")
    Observable<UpdateCheckBodyReceiveBody> updateCheck(@Path("tier") String str, @Query("serial") String str2);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/command/{command}/update/")
    Observable<BlinkData> updateCommand(@Body UpdateCommandRequest updateCommandRequest, @Path("network") long j, @Path("command") long j2, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/command/{command}/update/")
    Call<BlinkData> updateCommandSync(@Body UpdateCommandRequest updateCommandRequest, @Path("network") long j, @Path("command") long j2, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/update")
    Observable<BlinkData> updateNetworkSaveAllLiveViews(@Body UpdateNetworkSaveAllLiveViews updateNetworkSaveAllLiveViews, @Path("tier") String str, @Path("network") long j);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/programs/{program}/update")
    Observable<BlinkData> updateProgram(@Body UpdateProgramRequest updateProgramRequest, @Path("tier") String str, @Path("network") long j, @Path("program") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/sirens/{siren}/update")
    Observable<BlinkData> updateSiren(@Body SirenNameBody sirenNameBody, @Path("tier") String str, @Path("network") long j, @Path("siren") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/networks/{network}/sirens/update")
    Observable<Siren[]> updateSirens(@Body SirenDurationBody sirenDurationBody, @Path("tier") String str, @Path("network") long j);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/update")
    Observable<BlinkData> updateSystem(@Body UpdateSystemNameBody updateSystemNameBody, @Path("tier") String str, @Path("network") long j);

    @POST("https://rest-{tier}.immedia-semi.com/network/{network}/update")
    Observable<BlinkData> updateTimezone(@Body UpdateTimezoneBody updateTimezoneBody, @Path("tier") String str, @Path("network") long j);

    @POST("https://rest-{tier}.immedia-semi.com/api/v3/account/validate_email")
    Single<ValidationResponse> validateEmailAddress(@Body ValidateEmailBody validateEmailBody, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v3/account/validate_password")
    Single<ValidationResponse> validatePassword(@Body ValidatePasswordBody validatePasswordBody, @Path("tier") String str);

    @POST("https://rest-{tier}.immedia-semi.com/api/v3/account/{account}/resend_account_verification/")
    Observable<ResendPinEmailResponse> verificationEmail(@Path("tier") String str, @Path("account") long j);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/{account}/client/{client}/pin/resend/")
    Observable<ResendPinEmailResponse> verificationPinClient(@Path("tier") String str, @Path("account") long j, @Path("client") long j2);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/{account}/pin/resend/")
    Observable<ResendPinEmailResponse> verificationPinEmail(@Path("tier") String str, @Path("account") long j);

    @GET("https://rest-{tier}.immedia-semi.com/api/v3/account/{account_id}/status")
    Observable<VerificationStatusResponse> verificationStatusEndpoint(@Path("tier") String str, @Path("account_id") long j);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/{account}/pin/verify/")
    Observable<PinVerificationResponse> verifyAccountPIN(@Path("tier") String str, @Path("account") long j, @Body VerifyPinBody verifyPinBody);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/{accountId}/client/{clientId}/email_change/pin/verify/")
    Observable<PinVerificationResponse> verifyChangeEmailPinCode(@Path("tier") String str, @Path("accountId") long j, @Path("clientId") long j2, @Body VerifyPinBody verifyPinBody);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/{account}/client/{client}/pin/verify/")
    Observable<PinVerificationResponse> verifyClientPIN(@Path("tier") String str, @Path("account") long j, @Path("client") long j2, @Body VerifyPinBody verifyPinBody);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/{accountId}/client/{clientId}/password_change/pin/verify/")
    Observable<PinVerificationResponse> verifyPasswordChangePinCode(@Path("tier") String str, @Path("accountId") long j, @Path("clientId") long j2, @Body VerifyPinBody verifyPinBody);

    @POST("https://rest-{tier}.immedia-semi.com/api/v4/account/password_change/pin/verify/")
    Observable<PinVerificationResponse> verifyPasswordChangePinCodeUnauthenticated(@Path("tier") String str, @Body VerifyPinBody verifyPinBody);

    @POST("https://rest-{tier}.immedia-semi.com/api/v1/account/video_options")
    Observable<Object> video_options_setter(@Body AutoPurgeSetterBody autoPurgeSetterBody, @Path("tier") String str);

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions