A Retrofit interface for Monzo's public API.
dependencies {
compile 'com.christiangp:monzo-retrofit:<latest_version>'
}
Create a RxMonzoApiService
through MonzoApi.retrofitBuilder()
.
Most methods require you to add an Authorization header with an access token
for authorization (and authentication). The provided AuthorizationInterceptor
handles this for you. Simply add it to your Retrofit's OkHttpClient
and provide it when creating the Retrofit
instance.
OkHttpClient client = new OkHttpClient.Builder()
.addInterceptor(new AuthorizationInterceptor(() -> accessToken))
.build();
Retrofit monzoRetrofit = MonzoApi.retrofitBuilder()
.client(okHttpClient)
.addCallAdapterFactory(RxJava2CallAdapterFactory.createWithScheduler(Schedulers.io()))
.build();
If you don't want to use AuthorizationInterceptor
, requests having a No-Authentication: true
header won't need an Authorization
header. All other requests require it.
Copyright 2017 Christian García
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.