{"id":18438730,"url":"https://github.com/sajari/sdk_ruby","last_synced_at":"2025-04-07T21:32:00.339Z","repository":{"id":40511413,"uuid":"315485573","full_name":"sajari/sdk_ruby","owner":"sajari","description":"Official repository of the Search.io SDK for Ruby","archived":false,"fork":false,"pushed_at":"2022-05-04T07:17:28.000Z","size":408,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-03-23T00:51:15.954Z","etag":null,"topics":["api","ruby","sdk","search"],"latest_commit_sha":null,"homepage":"https://www.search.io","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sajari.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-11-24T01:29:50.000Z","updated_at":"2024-06-07T03:35:39.000Z","dependencies_parsed_at":"2022-08-09T22:30:40.969Z","dependency_job_id":null,"html_url":"https://github.com/sajari/sdk_ruby","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sajari%2Fsdk_ruby","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sajari%2Fsdk_ruby/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sajari%2Fsdk_ruby/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sajari%2Fsdk_ruby/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sajari","download_url":"https://codeload.github.com/sajari/sdk_ruby/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247732583,"owners_count":20986891,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["api","ruby","sdk","search"],"created_at":"2024-11-06T06:21:27.310Z","updated_at":"2025-04-07T21:31:59.188Z","avatar_url":"https://github.com/sajari.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# sdk_ruby\n\nSajariAPIClient - the Ruby gem for the Search.io API\n\nSearch.io offers a search and discovery service with Neuralsearch®, the world's first instant AI search technology. Businesses of all sizes use Search.io to build site search and discovery solutions that maximize e-commerce revenue, optimize on-site customer experience, and scale their online presence.\n\nThis SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:\n\n- API version: v4\n- Package version: 5.1.0\n- Build package: org.openapitools.codegen.languages.RubyClientCodegen\nFor more information, please visit [https://www.search.io/company/contact](https://www.search.io/company/contact)\n\n## Installation\n\n### Build a gem\n\nTo build the Ruby code into a gem:\n\n```shell\ngem build sdk_ruby.gemspec\n```\n\nThen either install the gem locally:\n\n```shell\ngem install ./sdk_ruby-5.1.0.gem\n```\n\n(for development, run `gem install --dev ./sdk_ruby-5.1.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 'sdk_ruby', '~\u003e 5.1.0'\n\n### Install from Git\n\nIf the Ruby gem is hosted at a git repository: https://github.com/sajari/GIT_USER_ID/sdk_ruby, then add the following in the Gemfile:\n\n    gem 'sdk_ruby', :git =\u003e 'https://github.com/sajari/GIT_USER_ID/sdk_ruby.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 'sdk_ruby'\n\n# Setup authorization\nSajariAPIClient.configure do |config|\n  # Configure HTTP basic authorization: BasicAuth\n  config.username = 'YOUR_USERNAME'\n  config.password = 'YOUR_PASSWORD'\nend\n\napi_instance = SajariAPIClient::CollectionsApi.new\ncollection_id = 'collection_id_example' # String | The ID to use for the collection.  This must start with an alphanumeric character followed by one or more alphanumeric or `-` characters. Strictly speaking, it must match the regular expression: `^[A-Za-z][A-Za-z0-9\\\\-]*$`.\ncollection = SajariAPIClient::Collection.new({display_name: 'display_name_example'}) # Collection | Details of the collection to create.\nopts = {\n  account_id: 'account_id_example' # String | The account that owns the collection, e.g. `1618535966441231024`.\n}\n\nbegin\n  #Create collection\n  result = api_instance.create_collection(collection_id, collection, opts)\n  p result\nrescue SajariAPIClient::ApiError =\u003e e\n  puts \"Exception when calling CollectionsApi-\u003ecreate_collection: #{e}\"\nend\n\n```\n\n## Documentation for API Endpoints\n\nAll URIs are relative to *https://api.search.io*\n\nClass | Method | HTTP request | Description\n------------ | ------------- | ------------- | -------------\n*SajariAPIClient::CollectionsApi* | [**create_collection**](docs/CollectionsApi.md#create_collection) | **POST** /v4/collections | Create collection\n*SajariAPIClient::CollectionsApi* | [**delete_collection**](docs/CollectionsApi.md#delete_collection) | **DELETE** /v4/collections/{collection_id} | Delete collection\n*SajariAPIClient::CollectionsApi* | [**experiment**](docs/CollectionsApi.md#experiment) | **POST** /v4/collections/{collection_id}:experiment | Experiment\n*SajariAPIClient::CollectionsApi* | [**get_collection**](docs/CollectionsApi.md#get_collection) | **GET** /v4/collections/{collection_id} | Get collection\n*SajariAPIClient::CollectionsApi* | [**list_collections**](docs/CollectionsApi.md#list_collections) | **GET** /v4/collections | List collections\n*SajariAPIClient::CollectionsApi* | [**query_collection**](docs/CollectionsApi.md#query_collection) | **POST** /v4/collections/{collection_id}:query | Query collection\n*SajariAPIClient::CollectionsApi* | [**query_collection2**](docs/CollectionsApi.md#query_collection2) | **POST** /v4/collections/{collection_id}:queryCollection | Query collection\n*SajariAPIClient::CollectionsApi* | [**track_event**](docs/CollectionsApi.md#track_event) | **POST** /v4/collections/{collection_id}:trackEvent | Track event\n*SajariAPIClient::CollectionsApi* | [**update_collection**](docs/CollectionsApi.md#update_collection) | **PATCH** /v4/collections/{collection_id} | Update collection\n*SajariAPIClient::EventsApi* | [**send_event**](docs/EventsApi.md#send_event) | **POST** /v4/events:send | Send event\n*SajariAPIClient::EventsApi* | [**send_event2**](docs/EventsApi.md#send_event2) | **POST** /v4/events:sendEvent | Send event\n*SajariAPIClient::PipelinesApi* | [**create_pipeline**](docs/PipelinesApi.md#create_pipeline) | **POST** /v4/collections/{collection_id}/pipelines | Create pipeline\n*SajariAPIClient::PipelinesApi* | [**generate_pipelines**](docs/PipelinesApi.md#generate_pipelines) | **POST** /v4/collections/{collection_id}:generatePipelines | Generate pipelines\n*SajariAPIClient::PipelinesApi* | [**get_default_pipeline**](docs/PipelinesApi.md#get_default_pipeline) | **GET** /v4/collections/{collection_id}:getDefaultPipeline | Get default pipeline\n*SajariAPIClient::PipelinesApi* | [**get_default_version**](docs/PipelinesApi.md#get_default_version) | **GET** /v4/collections/{collection_id}/pipelines/{type}/{name}:getDefaultVersion | Get default pipeline version\n*SajariAPIClient::PipelinesApi* | [**get_pipeline**](docs/PipelinesApi.md#get_pipeline) | **GET** /v4/collections/{collection_id}/pipelines/{type}/{name}/{version} | Get pipeline\n*SajariAPIClient::PipelinesApi* | [**list_pipelines**](docs/PipelinesApi.md#list_pipelines) | **GET** /v4/collections/{collection_id}/pipelines | List pipelines\n*SajariAPIClient::PipelinesApi* | [**set_default_pipeline**](docs/PipelinesApi.md#set_default_pipeline) | **POST** /v4/collections/{collection_id}:setDefaultPipeline | Set default pipeline\n*SajariAPIClient::PipelinesApi* | [**set_default_version**](docs/PipelinesApi.md#set_default_version) | **POST** /v4/collections/{collection_id}/pipelines/{type}/{name}:setDefaultVersion | Set default pipeline version\n*SajariAPIClient::PromotionsApi* | [**create_promotion**](docs/PromotionsApi.md#create_promotion) | **POST** /v4/collections/{collection_id}/promotions | Create promotion\n*SajariAPIClient::PromotionsApi* | [**delete_promotion**](docs/PromotionsApi.md#delete_promotion) | **DELETE** /v4/collections/{collection_id}/promotions/{promotion_id} | Delete promotion\n*SajariAPIClient::PromotionsApi* | [**get_promotion**](docs/PromotionsApi.md#get_promotion) | **GET** /v4/collections/{collection_id}/promotions/{promotion_id} | Get promotion\n*SajariAPIClient::PromotionsApi* | [**list_promotions**](docs/PromotionsApi.md#list_promotions) | **GET** /v4/collections/{collection_id}/promotions | List promotions\n*SajariAPIClient::PromotionsApi* | [**update_promotion**](docs/PromotionsApi.md#update_promotion) | **PATCH** /v4/collections/{collection_id}/promotions/{promotion_id} | Update promotion\n*SajariAPIClient::RecordsApi* | [**batch_update_records**](docs/RecordsApi.md#batch_update_records) | **POST** /v4/collections/{collection_id}/records:batchUpdate | Batch update records\n*SajariAPIClient::RecordsApi* | [**batch_upsert_records**](docs/RecordsApi.md#batch_upsert_records) | **POST** /v4/collections/{collection_id}/records:batchUpsert | Batch upsert records\n*SajariAPIClient::RecordsApi* | [**delete_record**](docs/RecordsApi.md#delete_record) | **POST** /v4/collections/{collection_id}/records:delete | Delete record\n*SajariAPIClient::RecordsApi* | [**get_record**](docs/RecordsApi.md#get_record) | **POST** /v4/collections/{collection_id}/records:get | Get record\n*SajariAPIClient::RecordsApi* | [**update_record**](docs/RecordsApi.md#update_record) | **POST** /v4/collections/{collection_id}/records:update | Update record\n*SajariAPIClient::RecordsApi* | [**upsert_record**](docs/RecordsApi.md#upsert_record) | **POST** /v4/collections/{collection_id}/records:upsert | Upsert record\n*SajariAPIClient::RedirectsApi* | [**create_redirect**](docs/RedirectsApi.md#create_redirect) | **POST** /v4/collections/{collection_id}/redirects | Create redirect\n*SajariAPIClient::RedirectsApi* | [**delete_redirect**](docs/RedirectsApi.md#delete_redirect) | **DELETE** /v4/collections/{collection_id}/redirects/{redirect_id} | Delete redirect\n*SajariAPIClient::RedirectsApi* | [**get_redirect**](docs/RedirectsApi.md#get_redirect) | **GET** /v4/collections/{collection_id}/redirects/{redirect_id} | Get redirect\n*SajariAPIClient::RedirectsApi* | [**list_redirects**](docs/RedirectsApi.md#list_redirects) | **GET** /v4/collections/{collection_id}/redirects | List redirects\n*SajariAPIClient::RedirectsApi* | [**update_redirect**](docs/RedirectsApi.md#update_redirect) | **PATCH** /v4/collections/{collection_id}/redirects/{redirect_id} | Update redirect\n*SajariAPIClient::SchemaApi* | [**batch_create_schema_fields**](docs/SchemaApi.md#batch_create_schema_fields) | **POST** /v4/collections/{collection_id}/schemaFields:batchCreate | Batch create schema fields\n*SajariAPIClient::SchemaApi* | [**create_schema_field**](docs/SchemaApi.md#create_schema_field) | **POST** /v4/collections/{collection_id}/schemaFields | Create schema field\n*SajariAPIClient::SchemaApi* | [**delete_schema_field**](docs/SchemaApi.md#delete_schema_field) | **DELETE** /v4/collections/{collection_id}/schemaFields/{schema_field_name} | Delete schema field\n*SajariAPIClient::SchemaApi* | [**list_schema_fields**](docs/SchemaApi.md#list_schema_fields) | **GET** /v4/collections/{collection_id}/schemaFields | List schema fields\n*SajariAPIClient::SchemaApi* | [**update_schema_field**](docs/SchemaApi.md#update_schema_field) | **PATCH** /v4/collections/{collection_id}/schemaFields/{schema_field_name} | Update schema field\n\n\n## Documentation for Models\n\n - [SajariAPIClient::ActivePromotion](docs/ActivePromotion.md)\n - [SajariAPIClient::Banner](docs/Banner.md)\n - [SajariAPIClient::BatchCreateSchemaFieldsRequest](docs/BatchCreateSchemaFieldsRequest.md)\n - [SajariAPIClient::BatchCreateSchemaFieldsResponse](docs/BatchCreateSchemaFieldsResponse.md)\n - [SajariAPIClient::BatchCreateSchemaFieldsResponseError](docs/BatchCreateSchemaFieldsResponseError.md)\n - [SajariAPIClient::BatchUpdateRecordsRequest](docs/BatchUpdateRecordsRequest.md)\n - [SajariAPIClient::BatchUpdateRecordsResponse](docs/BatchUpdateRecordsResponse.md)\n - [SajariAPIClient::BatchUpdateRecordsResponseError](docs/BatchUpdateRecordsResponseError.md)\n - [SajariAPIClient::BatchUpdateRecordsResponseRecord](docs/BatchUpdateRecordsResponseRecord.md)\n - [SajariAPIClient::BatchUpsertRecordsRequest](docs/BatchUpsertRecordsRequest.md)\n - [SajariAPIClient::BatchUpsertRecordsRequestPipeline](docs/BatchUpsertRecordsRequestPipeline.md)\n - [SajariAPIClient::BatchUpsertRecordsResponse](docs/BatchUpsertRecordsResponse.md)\n - [SajariAPIClient::BatchUpsertRecordsResponseError](docs/BatchUpsertRecordsResponseError.md)\n - [SajariAPIClient::BatchUpsertRecordsResponseKey](docs/BatchUpsertRecordsResponseKey.md)\n - [SajariAPIClient::BatchUpsertRecordsResponseVariables](docs/BatchUpsertRecordsResponseVariables.md)\n - [SajariAPIClient::Collection](docs/Collection.md)\n - [SajariAPIClient::CollectionType](docs/CollectionType.md)\n - [SajariAPIClient::DeleteRecordRequest](docs/DeleteRecordRequest.md)\n - [SajariAPIClient::Error](docs/Error.md)\n - [SajariAPIClient::Event](docs/Event.md)\n - [SajariAPIClient::ExperimentRequest](docs/ExperimentRequest.md)\n - [SajariAPIClient::ExperimentRequestPipeline](docs/ExperimentRequestPipeline.md)\n - [SajariAPIClient::ExperimentResponse](docs/ExperimentResponse.md)\n - [SajariAPIClient::GeneratePipelinesRequest](docs/GeneratePipelinesRequest.md)\n - [SajariAPIClient::GeneratePipelinesResponse](docs/GeneratePipelinesResponse.md)\n - [SajariAPIClient::GetCollectionRequestView](docs/GetCollectionRequestView.md)\n - [SajariAPIClient::GetDefaultPipelineResponse](docs/GetDefaultPipelineResponse.md)\n - [SajariAPIClient::GetDefaultVersionRequestView](docs/GetDefaultVersionRequestView.md)\n - [SajariAPIClient::GetPipelineRequestView](docs/GetPipelineRequestView.md)\n - [SajariAPIClient::GetRecordRequest](docs/GetRecordRequest.md)\n - [SajariAPIClient::ListCollectionsRequestView](docs/ListCollectionsRequestView.md)\n - [SajariAPIClient::ListCollectionsResponse](docs/ListCollectionsResponse.md)\n - [SajariAPIClient::ListPipelinesRequestView](docs/ListPipelinesRequestView.md)\n - [SajariAPIClient::ListPipelinesResponse](docs/ListPipelinesResponse.md)\n - [SajariAPIClient::ListPromotionsRequestPromotionView](docs/ListPromotionsRequestPromotionView.md)\n - [SajariAPIClient::ListPromotionsResponse](docs/ListPromotionsResponse.md)\n - [SajariAPIClient::ListRedirectsResponse](docs/ListRedirectsResponse.md)\n - [SajariAPIClient::ListSchemaFieldsResponse](docs/ListSchemaFieldsResponse.md)\n - [SajariAPIClient::PercentileDataPoint](docs/PercentileDataPoint.md)\n - [SajariAPIClient::Pipeline](docs/Pipeline.md)\n - [SajariAPIClient::PipelineStep](docs/PipelineStep.md)\n - [SajariAPIClient::PipelineStepParamBinding](docs/PipelineStepParamBinding.md)\n - [SajariAPIClient::PipelineType](docs/PipelineType.md)\n - [SajariAPIClient::Promotion](docs/Promotion.md)\n - [SajariAPIClient::PromotionCategory](docs/PromotionCategory.md)\n - [SajariAPIClient::PromotionExclusion](docs/PromotionExclusion.md)\n - [SajariAPIClient::PromotionFilterBoost](docs/PromotionFilterBoost.md)\n - [SajariAPIClient::PromotionFilterCondition](docs/PromotionFilterCondition.md)\n - [SajariAPIClient::PromotionPin](docs/PromotionPin.md)\n - [SajariAPIClient::PromotionPinMode](docs/PromotionPinMode.md)\n - [SajariAPIClient::PromotionRangeBoost](docs/PromotionRangeBoost.md)\n - [SajariAPIClient::ProtobufAny](docs/ProtobufAny.md)\n - [SajariAPIClient::ProtobufFieldMask](docs/ProtobufFieldMask.md)\n - [SajariAPIClient::ProtobufNullValue](docs/ProtobufNullValue.md)\n - [SajariAPIClient::QueryAggregateResult](docs/QueryAggregateResult.md)\n - [SajariAPIClient::QueryAggregateResultAnalysis](docs/QueryAggregateResultAnalysis.md)\n - [SajariAPIClient::QueryAggregateResultBuckets](docs/QueryAggregateResultBuckets.md)\n - [SajariAPIClient::QueryAggregateResultBucketsBucket](docs/QueryAggregateResultBucketsBucket.md)\n - [SajariAPIClient::QueryAggregateResultCount](docs/QueryAggregateResultCount.md)\n - [SajariAPIClient::QueryAggregateResultDate](docs/QueryAggregateResultDate.md)\n - [SajariAPIClient::QueryAggregateResultMetric](docs/QueryAggregateResultMetric.md)\n - [SajariAPIClient::QueryAggregateResultPercentile](docs/QueryAggregateResultPercentile.md)\n - [SajariAPIClient::QueryCollectionRequest](docs/QueryCollectionRequest.md)\n - [SajariAPIClient::QueryCollectionRequestPipeline](docs/QueryCollectionRequestPipeline.md)\n - [SajariAPIClient::QueryCollectionRequestTracking](docs/QueryCollectionRequestTracking.md)\n - [SajariAPIClient::QueryCollectionRequestTrackingType](docs/QueryCollectionRequestTrackingType.md)\n - [SajariAPIClient::QueryCollectionResponse](docs/QueryCollectionResponse.md)\n - [SajariAPIClient::QueryCollectionResponsePipeline](docs/QueryCollectionResponsePipeline.md)\n - [SajariAPIClient::QueryResult](docs/QueryResult.md)\n - [SajariAPIClient::QueryResultToken](docs/QueryResultToken.md)\n - [SajariAPIClient::QueryResultTokenClick](docs/QueryResultTokenClick.md)\n - [SajariAPIClient::QueryResultTokenPosNeg](docs/QueryResultTokenPosNeg.md)\n - [SajariAPIClient::RecordKey](docs/RecordKey.md)\n - [SajariAPIClient::Redirect](docs/Redirect.md)\n - [SajariAPIClient::RedirectResult](docs/RedirectResult.md)\n - [SajariAPIClient::SchemaField](docs/SchemaField.md)\n - [SajariAPIClient::SchemaFieldMode](docs/SchemaFieldMode.md)\n - [SajariAPIClient::SchemaFieldType](docs/SchemaFieldType.md)\n - [SajariAPIClient::SendEventRequest](docs/SendEventRequest.md)\n - [SajariAPIClient::SetDefaultPipelineRequest](docs/SetDefaultPipelineRequest.md)\n - [SajariAPIClient::SetDefaultVersionRequest](docs/SetDefaultVersionRequest.md)\n - [SajariAPIClient::Status](docs/Status.md)\n - [SajariAPIClient::TextPosition](docs/TextPosition.md)\n - [SajariAPIClient::UpdateRecordRequest](docs/UpdateRecordRequest.md)\n - [SajariAPIClient::UpsertRecordRequest](docs/UpsertRecordRequest.md)\n - [SajariAPIClient::UpsertRecordRequestPipeline](docs/UpsertRecordRequestPipeline.md)\n - [SajariAPIClient::UpsertRecordResponse](docs/UpsertRecordResponse.md)\n\n\n## Documentation for Authorization\n\n\n### BasicAuth\n\n- **Type**: HTTP basic authentication\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsajari%2Fsdk_ruby","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsajari%2Fsdk_ruby","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsajari%2Fsdk_ruby/lists"}