{"id":19251051,"url":"https://github.com/onesignal/onesignal-ruby-api","last_synced_at":"2026-04-02T12:04:07.177Z","repository":{"id":37072537,"uuid":"52290983","full_name":"OneSignal/onesignal-ruby-api","owner":"OneSignal","description":null,"archived":false,"fork":false,"pushed_at":"2026-03-25T23:54:15.000Z","size":529,"stargazers_count":17,"open_issues_count":2,"forks_count":15,"subscribers_count":31,"default_branch":"main","last_synced_at":"2026-03-26T20:43:35.786Z","etag":null,"topics":["email","in-app-messaging","notifications","push-notifications","ruby","sms"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OneSignal.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2016-02-22T17:21:43.000Z","updated_at":"2026-03-25T21:55:36.000Z","dependencies_parsed_at":"2025-12-30T01:07:41.374Z","dependency_job_id":null,"html_url":"https://github.com/OneSignal/onesignal-ruby-api","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/OneSignal/onesignal-ruby-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OneSignal%2Fonesignal-ruby-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OneSignal%2Fonesignal-ruby-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OneSignal%2Fonesignal-ruby-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OneSignal%2Fonesignal-ruby-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OneSignal","download_url":"https://codeload.github.com/OneSignal/onesignal-ruby-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OneSignal%2Fonesignal-ruby-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31305971,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T09:48:21.550Z","status":"ssl_error","status_checked_at":"2026-04-02T09:48:19.196Z","response_time":89,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["email","in-app-messaging","notifications","push-notifications","ruby","sms"],"created_at":"2024-11-09T18:19:45.200Z","updated_at":"2026-04-02T12:04:07.166Z","avatar_url":"https://github.com/OneSignal.png","language":"Ruby","readme":"# onesignal\n\nOneSignal - the Ruby gem for the OneSignal\n\nA powerful way to send personalized messages at scale and build effective customer engagement strategies. Learn more at onesignal.com\n\nThis SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:\n\n- API version: 5.3.0\n- Package version: 5.3.0\n- Build package: org.openapitools.codegen.languages.RubyClientCodegen\nFor more information, please visit [https://onesignal.com](https://onesignal.com)\n\n## Installation\n\n### Build a gem\n\nTo build the Ruby code into a gem:\n\n```shell\ngem build onesignal.gemspec\n```\n\nThen either install the gem locally:\n\n```shell\ngem install ./onesignal-5.3.0.gem\n```\n\n(for development, run `gem install --dev ./onesignal-5.3.0.gem` to install the development dependencies)\n\nor publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).\n\nFinally add this to the Gemfile:\n\n    gem 'onesignal', '~\u003e 5.3.0'\n\n### Install from Git\n\nIf the Ruby gem is hosted at a git repository: https://github.com/GIT_USER_ID/GIT_REPO_ID, then add the following in the Gemfile:\n\n    gem 'onesignal', :git =\u003e 'https://github.com/GIT_USER_ID/GIT_REPO_ID.git'\n\n### Include the Ruby code directly\n\nInclude the Ruby code directly using `-I` as follows:\n\n```shell\nruby -Ilib script.rb\n```\n\n## Getting Started\n\nPlease follow the [installation](#installation) procedure and then run the following code:\n\n```ruby\n# Load the gem\nrequire 'onesignal'\n\n# Setup authorization\nOneSignal.configure do |config|\n  # Configure Bearer authorization: organization_api_key\n  config.organization_api_key = 'ORGANIZATION_API_KEY' # Organization key is only required for creating new apps and other top-level endpoints\n  # Configure Bearer authorization: rest_api_key\n  config.rest_api_key = 'REST_API_KEY' # App REST API key required for most endpoints\nend\n\napi_instance = OneSignal::DefaultApi.new\napp_id = 'app_id_example' # String | \nnotification_id = 'notification_id_example' # String | \n\nbegin\n  #Stop a scheduled or currently outgoing notification\n  result = api_instance.cancel_notification(app_id, notification_id)\n  p result\nrescue OneSignal::ApiError =\u003e e\n  puts \"Exception when calling DefaultApi-\u003ecancel_notification: #{e}\"\nend\n\n```\n\n## Documentation for API Endpoints\n\nAll URIs are relative to *https://api.onesignal.com*\n\nClass | Method | HTTP request | Description\n------------ | ------------- | ------------- | -------------\n*OneSignal::DefaultApi* | [**cancel_notification**](docs/DefaultApi.md#cancel_notification) | **DELETE** /notifications/{notification_id} | Stop a scheduled or currently outgoing notification\n*OneSignal::DefaultApi* | [**copy_template_to_app**](docs/DefaultApi.md#copy_template_to_app) | **POST** /templates/{template_id}/copy_to_app | Copy template to another app\n*OneSignal::DefaultApi* | [**create_alias**](docs/DefaultApi.md#create_alias) | **PATCH** /apps/{app_id}/users/by/{alias_label}/{alias_id}/identity | \n*OneSignal::DefaultApi* | [**create_alias_by_subscription**](docs/DefaultApi.md#create_alias_by_subscription) | **PATCH** /apps/{app_id}/subscriptions/{subscription_id}/user/identity | \n*OneSignal::DefaultApi* | [**create_api_key**](docs/DefaultApi.md#create_api_key) | **POST** /apps/{app_id}/auth/tokens | Create API key\n*OneSignal::DefaultApi* | [**create_app**](docs/DefaultApi.md#create_app) | **POST** /apps | Create an app\n*OneSignal::DefaultApi* | [**create_custom_events**](docs/DefaultApi.md#create_custom_events) | **POST** /apps/{app_id}/integrations/custom_events | Create custom events\n*OneSignal::DefaultApi* | [**create_notification**](docs/DefaultApi.md#create_notification) | **POST** /notifications | Create notification\n*OneSignal::DefaultApi* | [**create_segment**](docs/DefaultApi.md#create_segment) | **POST** /apps/{app_id}/segments | Create Segment\n*OneSignal::DefaultApi* | [**create_subscription**](docs/DefaultApi.md#create_subscription) | **POST** /apps/{app_id}/users/by/{alias_label}/{alias_id}/subscriptions | \n*OneSignal::DefaultApi* | [**create_template**](docs/DefaultApi.md#create_template) | **POST** /templates | Create template\n*OneSignal::DefaultApi* | [**create_user**](docs/DefaultApi.md#create_user) | **POST** /apps/{app_id}/users | \n*OneSignal::DefaultApi* | [**delete_alias**](docs/DefaultApi.md#delete_alias) | **DELETE** /apps/{app_id}/users/by/{alias_label}/{alias_id}/identity/{alias_label_to_delete} | \n*OneSignal::DefaultApi* | [**delete_api_key**](docs/DefaultApi.md#delete_api_key) | **DELETE** /apps/{app_id}/auth/tokens/{token_id} | Delete API key\n*OneSignal::DefaultApi* | [**delete_segment**](docs/DefaultApi.md#delete_segment) | **DELETE** /apps/{app_id}/segments/{segment_id} | Delete Segment\n*OneSignal::DefaultApi* | [**delete_subscription**](docs/DefaultApi.md#delete_subscription) | **DELETE** /apps/{app_id}/subscriptions/{subscription_id} | \n*OneSignal::DefaultApi* | [**delete_template**](docs/DefaultApi.md#delete_template) | **DELETE** /templates/{template_id} | Delete template\n*OneSignal::DefaultApi* | [**delete_user**](docs/DefaultApi.md#delete_user) | **DELETE** /apps/{app_id}/users/by/{alias_label}/{alias_id} | \n*OneSignal::DefaultApi* | [**export_events**](docs/DefaultApi.md#export_events) | **POST** /notifications/{notification_id}/export_events?app_id\u0026#x3D;{app_id} | Export CSV of Events\n*OneSignal::DefaultApi* | [**export_subscriptions**](docs/DefaultApi.md#export_subscriptions) | **POST** /players/csv_export?app_id\u0026#x3D;{app_id} | Export CSV of Subscriptions\n*OneSignal::DefaultApi* | [**get_aliases**](docs/DefaultApi.md#get_aliases) | **GET** /apps/{app_id}/users/by/{alias_label}/{alias_id}/identity | \n*OneSignal::DefaultApi* | [**get_aliases_by_subscription**](docs/DefaultApi.md#get_aliases_by_subscription) | **GET** /apps/{app_id}/subscriptions/{subscription_id}/user/identity | \n*OneSignal::DefaultApi* | [**get_app**](docs/DefaultApi.md#get_app) | **GET** /apps/{app_id} | View an app\n*OneSignal::DefaultApi* | [**get_apps**](docs/DefaultApi.md#get_apps) | **GET** /apps | View apps\n*OneSignal::DefaultApi* | [**get_notification**](docs/DefaultApi.md#get_notification) | **GET** /notifications/{notification_id} | View notification\n*OneSignal::DefaultApi* | [**get_notification_history**](docs/DefaultApi.md#get_notification_history) | **POST** /notifications/{notification_id}/history | Notification History\n*OneSignal::DefaultApi* | [**get_notifications**](docs/DefaultApi.md#get_notifications) | **GET** /notifications | View notifications\n*OneSignal::DefaultApi* | [**get_outcomes**](docs/DefaultApi.md#get_outcomes) | **GET** /apps/{app_id}/outcomes | View Outcomes\n*OneSignal::DefaultApi* | [**get_segments**](docs/DefaultApi.md#get_segments) | **GET** /apps/{app_id}/segments | Get Segments\n*OneSignal::DefaultApi* | [**get_user**](docs/DefaultApi.md#get_user) | **GET** /apps/{app_id}/users/by/{alias_label}/{alias_id} | \n*OneSignal::DefaultApi* | [**rotate_api_key**](docs/DefaultApi.md#rotate_api_key) | **POST** /apps/{app_id}/auth/tokens/{token_id}/rotate | Rotate API key\n*OneSignal::DefaultApi* | [**start_live_activity**](docs/DefaultApi.md#start_live_activity) | **POST** /apps/{app_id}/activities/activity/{activity_type} | Start Live Activity\n*OneSignal::DefaultApi* | [**transfer_subscription**](docs/DefaultApi.md#transfer_subscription) | **PATCH** /apps/{app_id}/subscriptions/{subscription_id}/owner | \n*OneSignal::DefaultApi* | [**unsubscribe_email_with_token**](docs/DefaultApi.md#unsubscribe_email_with_token) | **POST** /apps/{app_id}/notifications/{notification_id}/unsubscribe | Unsubscribe with token\n*OneSignal::DefaultApi* | [**update_api_key**](docs/DefaultApi.md#update_api_key) | **PATCH** /apps/{app_id}/auth/tokens/{token_id} | Update API key\n*OneSignal::DefaultApi* | [**update_app**](docs/DefaultApi.md#update_app) | **PUT** /apps/{app_id} | Update an app\n*OneSignal::DefaultApi* | [**update_live_activity**](docs/DefaultApi.md#update_live_activity) | **POST** /apps/{app_id}/live_activities/{activity_id}/notifications | Update a Live Activity via Push\n*OneSignal::DefaultApi* | [**update_subscription**](docs/DefaultApi.md#update_subscription) | **PATCH** /apps/{app_id}/subscriptions/{subscription_id} | \n*OneSignal::DefaultApi* | [**update_subscription_by_token**](docs/DefaultApi.md#update_subscription_by_token) | **PATCH** /apps/{app_id}/subscriptions_by_token/{token_type}/{token} | Update subscription by token\n*OneSignal::DefaultApi* | [**update_template**](docs/DefaultApi.md#update_template) | **PATCH** /templates/{template_id} | Update template\n*OneSignal::DefaultApi* | [**update_user**](docs/DefaultApi.md#update_user) | **PATCH** /apps/{app_id}/users/by/{alias_label}/{alias_id} | \n*OneSignal::DefaultApi* | [**view_api_keys**](docs/DefaultApi.md#view_api_keys) | **GET** /apps/{app_id}/auth/tokens | View API keys\n*OneSignal::DefaultApi* | [**view_template**](docs/DefaultApi.md#view_template) | **GET** /templates/{template_id} | View template\n*OneSignal::DefaultApi* | [**view_templates**](docs/DefaultApi.md#view_templates) | **GET** /templates | View templates\n\n\n## Documentation for Models\n\n - [OneSignal::ApiKeyToken](docs/ApiKeyToken.md)\n - [OneSignal::ApiKeyTokensListResponse](docs/ApiKeyTokensListResponse.md)\n - [OneSignal::App](docs/App.md)\n - [OneSignal::BasicNotification](docs/BasicNotification.md)\n - [OneSignal::BasicNotificationAllOf](docs/BasicNotificationAllOf.md)\n - [OneSignal::BasicNotificationAllOfAndroidBackgroundLayout](docs/BasicNotificationAllOfAndroidBackgroundLayout.md)\n - [OneSignal::Button](docs/Button.md)\n - [OneSignal::CopyTemplateRequest](docs/CopyTemplateRequest.md)\n - [OneSignal::CreateApiKeyRequest](docs/CreateApiKeyRequest.md)\n - [OneSignal::CreateApiKeyResponse](docs/CreateApiKeyResponse.md)\n - [OneSignal::CreateNotificationSuccessResponse](docs/CreateNotificationSuccessResponse.md)\n - [OneSignal::CreateSegmentConflictResponse](docs/CreateSegmentConflictResponse.md)\n - [OneSignal::CreateSegmentSuccessResponse](docs/CreateSegmentSuccessResponse.md)\n - [OneSignal::CreateTemplateRequest](docs/CreateTemplateRequest.md)\n - [OneSignal::CreateUserConflictResponse](docs/CreateUserConflictResponse.md)\n - [OneSignal::CreateUserConflictResponseErrorsInner](docs/CreateUserConflictResponseErrorsInner.md)\n - [OneSignal::CreateUserConflictResponseErrorsItemsMeta](docs/CreateUserConflictResponseErrorsItemsMeta.md)\n - [OneSignal::CustomEvent](docs/CustomEvent.md)\n - [OneSignal::CustomEventsRequest](docs/CustomEventsRequest.md)\n - [OneSignal::DeliveryData](docs/DeliveryData.md)\n - [OneSignal::ExportEventsSuccessResponse](docs/ExportEventsSuccessResponse.md)\n - [OneSignal::ExportSubscriptionsRequestBody](docs/ExportSubscriptionsRequestBody.md)\n - [OneSignal::ExportSubscriptionsSuccessResponse](docs/ExportSubscriptionsSuccessResponse.md)\n - [OneSignal::Filter](docs/Filter.md)\n - [OneSignal::FilterExpression](docs/FilterExpression.md)\n - [OneSignal::GenericError](docs/GenericError.md)\n - [OneSignal::GenericSuccessBoolResponse](docs/GenericSuccessBoolResponse.md)\n - [OneSignal::GetNotificationHistoryRequestBody](docs/GetNotificationHistoryRequestBody.md)\n - [OneSignal::GetSegmentsSuccessResponse](docs/GetSegmentsSuccessResponse.md)\n - [OneSignal::LanguageStringMap](docs/LanguageStringMap.md)\n - [OneSignal::Notification](docs/Notification.md)\n - [OneSignal::NotificationAllOf](docs/NotificationAllOf.md)\n - [OneSignal::NotificationHistorySuccessResponse](docs/NotificationHistorySuccessResponse.md)\n - [OneSignal::NotificationSlice](docs/NotificationSlice.md)\n - [OneSignal::NotificationTarget](docs/NotificationTarget.md)\n - [OneSignal::NotificationWithMeta](docs/NotificationWithMeta.md)\n - [OneSignal::NotificationWithMetaAllOf](docs/NotificationWithMetaAllOf.md)\n - [OneSignal::Operator](docs/Operator.md)\n - [OneSignal::OutcomeData](docs/OutcomeData.md)\n - [OneSignal::OutcomesData](docs/OutcomesData.md)\n - [OneSignal::PlatformDeliveryData](docs/PlatformDeliveryData.md)\n - [OneSignal::PlatformDeliveryDataEmailAllOf](docs/PlatformDeliveryDataEmailAllOf.md)\n - [OneSignal::PlatformDeliveryDataSmsAllOf](docs/PlatformDeliveryDataSmsAllOf.md)\n - [OneSignal::PropertiesBody](docs/PropertiesBody.md)\n - [OneSignal::PropertiesDeltas](docs/PropertiesDeltas.md)\n - [OneSignal::PropertiesObject](docs/PropertiesObject.md)\n - [OneSignal::Purchase](docs/Purchase.md)\n - [OneSignal::RateLimitError](docs/RateLimitError.md)\n - [OneSignal::Segment](docs/Segment.md)\n - [OneSignal::SegmentData](docs/SegmentData.md)\n - [OneSignal::SegmentNotificationTarget](docs/SegmentNotificationTarget.md)\n - [OneSignal::StartLiveActivityRequest](docs/StartLiveActivityRequest.md)\n - [OneSignal::StartLiveActivitySuccessResponse](docs/StartLiveActivitySuccessResponse.md)\n - [OneSignal::Subscription](docs/Subscription.md)\n - [OneSignal::SubscriptionBody](docs/SubscriptionBody.md)\n - [OneSignal::SubscriptionNotificationTarget](docs/SubscriptionNotificationTarget.md)\n - [OneSignal::TemplateResource](docs/TemplateResource.md)\n - [OneSignal::TemplatesListResponse](docs/TemplatesListResponse.md)\n - [OneSignal::TransferSubscriptionRequestBody](docs/TransferSubscriptionRequestBody.md)\n - [OneSignal::UpdateApiKeyRequest](docs/UpdateApiKeyRequest.md)\n - [OneSignal::UpdateLiveActivityRequest](docs/UpdateLiveActivityRequest.md)\n - [OneSignal::UpdateLiveActivitySuccessResponse](docs/UpdateLiveActivitySuccessResponse.md)\n - [OneSignal::UpdateTemplateRequest](docs/UpdateTemplateRequest.md)\n - [OneSignal::UpdateUserRequest](docs/UpdateUserRequest.md)\n - [OneSignal::User](docs/User.md)\n - [OneSignal::UserIdentityBody](docs/UserIdentityBody.md)\n - [OneSignal::WebButton](docs/WebButton.md)\n\n\n## Documentation for Authorization\n\n\n### organization_api_key\n\n- **Type**: Bearer authentication\n\n### rest_api_key\n\n- **Type**: Bearer authentication\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fonesignal%2Fonesignal-ruby-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fonesignal%2Fonesignal-ruby-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fonesignal%2Fonesignal-ruby-api/lists"}