diff --git a/README.md b/README.md index a2d51a4..95a3bdf 100644 --- a/README.md +++ b/README.md @@ -17,16 +17,7 @@ gem install activitysmith ```ruby require "activitysmith" -client = ActivitySmith::Client.new(api_key: ENV.fetch("ACTIVITYSMITH_API_KEY")) -``` - -You can also override the API host: - -```ruby -client = ActivitySmith::Client.new( - api_key: ENV.fetch("ACTIVITYSMITH_API_KEY"), - base_url: "https://activitysmith.com/api" -) +activitysmith = ActivitySmith::Client.new(api_key: ENV.fetch("ACTIVITYSMITH_API_KEY")) ``` ## Usage @@ -34,7 +25,7 @@ client = ActivitySmith::Client.new( ### Send a Push Notification ```ruby -response = client.notifications.send( +response = activitysmith.notifications.send( { title: "Build Failed", message: "CI pipeline failed on main branch" @@ -45,7 +36,7 @@ response = client.notifications.send( ### Start a Live Activity ```ruby -start = client.live_activities.start( +start = activitysmith.live_activities.start( { content_state: { title: "Deploy", @@ -62,7 +53,7 @@ activity_id = start.activity_id ### Update a Live Activity ```ruby -update = client.live_activities.update( +update = activitysmith.live_activities.update( { activity_id: activity_id, content_state: { @@ -76,7 +67,7 @@ update = client.live_activities.update( ### End a Live Activity ```ruby -finish = client.live_activities.end( +finish = activitysmith.live_activities.end( { activity_id: activity_id, content_state: { @@ -92,7 +83,7 @@ finish = client.live_activities.end( ```ruby begin - client.notifications.send( + activitysmith.notifications.send( { title: "Build Failed" } ) rescue OpenapiClient::ApiError => e @@ -102,8 +93,8 @@ end ## API Surface -- `client.notifications` -- `client.live_activities` +- `activitysmith.notifications` +- `activitysmith.live_activities` ## Requirements diff --git a/lib/activitysmith/client.rb b/lib/activitysmith/client.rb index d09f31b..24ab8cd 100644 --- a/lib/activitysmith/client.rb +++ b/lib/activitysmith/client.rb @@ -4,14 +4,13 @@ module ActivitySmith class Client attr_reader :notifications, :live_activities - def initialize(api_key:, base_url: nil) + def initialize(api_key:) raise ArgumentError, "ActivitySmith: api_key is required" if api_key.to_s.strip.empty? load_generated_client! config = OpenapiClient::Configuration.new config.access_token = api_key - config.host = base_url.to_s.sub(%r{/+$}, "") unless base_url.to_s.strip.empty? api_client = OpenapiClient::ApiClient.new(config) @notifications = Notifications.new(OpenapiClient::PushNotificationsApi.new(api_client))