rankvectors 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +191 -0
  4. data/Rakefile +10 -0
  5. data/docs/AddCredits200Response.md +22 -0
  6. data/docs/AddCreditsRequest.md +20 -0
  7. data/docs/AutoRechargeSettings.md +22 -0
  8. data/docs/ChangeResult.md +24 -0
  9. data/docs/ContentVerification.md +22 -0
  10. data/docs/ContentVerificationApi.md +81 -0
  11. data/docs/Crawl.md +30 -0
  12. data/docs/CrawlingApi.md +155 -0
  13. data/docs/CreateProjectRequest.md +60 -0
  14. data/docs/CreditBalance.md +30 -0
  15. data/docs/CreditBalanceInfo.md +26 -0
  16. data/docs/CreditsApi.md +161 -0
  17. data/docs/CustomCredentials.md +20 -0
  18. data/docs/DeleteProject200Response.md +20 -0
  19. data/docs/Error.md +24 -0
  20. data/docs/GenerateSuggestions200Response.md +22 -0
  21. data/docs/GenerateSuggestionsRequest.md +18 -0
  22. data/docs/GetImplementation200Response.md +20 -0
  23. data/docs/Implementation.md +36 -0
  24. data/docs/ImplementationInstructions.md +28 -0
  25. data/docs/ImplementationRequest.md +26 -0
  26. data/docs/ImplementationResponse.md +22 -0
  27. data/docs/ImplementationResult.md +24 -0
  28. data/docs/ImplementationSummary.md +24 -0
  29. data/docs/ImplementationsApi.md +313 -0
  30. data/docs/LinkOpportunity.md +28 -0
  31. data/docs/ListImplementations200Response.md +24 -0
  32. data/docs/PageInfo.md +24 -0
  33. data/docs/PageLimitStatus.md +22 -0
  34. data/docs/PeriodCharges.md +22 -0
  35. data/docs/Project.md +70 -0
  36. data/docs/ProjectCount.md +20 -0
  37. data/docs/ProjectsApi.md +292 -0
  38. data/docs/ReportImplementationStatus200Response.md +20 -0
  39. data/docs/ReportImplementationStatusRequest.md +22 -0
  40. data/docs/Rollback.md +24 -0
  41. data/docs/RollbackImplementation200Response.md +22 -0
  42. data/docs/RollbackImplementationRequest.md +20 -0
  43. data/docs/SpendingLimitStatus.md +24 -0
  44. data/docs/StartCrawlRequest.md +18 -0
  45. data/docs/StepByStepInstructions.md +20 -0
  46. data/docs/Suggestion.md +38 -0
  47. data/docs/SuggestionsApi.md +235 -0
  48. data/docs/UpdateSuggestionRequest.md +18 -0
  49. data/docs/UsageHistoryItem.md +26 -0
  50. data/docs/VerifyContent200Response.md +20 -0
  51. data/docs/VerifyContentRequest.md +20 -0
  52. data/docs/WebhooksApi.md +151 -0
  53. data/git_push.sh +57 -0
  54. data/lib/openapi_client/api/content_verification_api.rb +96 -0
  55. data/lib/openapi_client/api/crawling_api.rb +155 -0
  56. data/lib/openapi_client/api/credits_api.rb +168 -0
  57. data/lib/openapi_client/api/implementations_api.rb +332 -0
  58. data/lib/openapi_client/api/projects_api.rb +273 -0
  59. data/lib/openapi_client/api/suggestions_api.rb +242 -0
  60. data/lib/openapi_client/api/webhooks_api.rb +154 -0
  61. data/lib/openapi_client/api_client.rb +393 -0
  62. data/lib/openapi_client/api_error.rb +58 -0
  63. data/lib/openapi_client/configuration.rb +316 -0
  64. data/lib/openapi_client/models/add_credits200_response.rb +238 -0
  65. data/lib/openapi_client/models/add_credits_request.rb +259 -0
  66. data/lib/openapi_client/models/auto_recharge_settings.rb +292 -0
  67. data/lib/openapi_client/models/change_result.rb +328 -0
  68. data/lib/openapi_client/models/content_verification.rb +274 -0
  69. data/lib/openapi_client/models/crawl.rb +373 -0
  70. data/lib/openapi_client/models/create_project_request.rb +541 -0
  71. data/lib/openapi_client/models/credit_balance.rb +379 -0
  72. data/lib/openapi_client/models/credit_balance_info.rb +329 -0
  73. data/lib/openapi_client/models/custom_credentials.rb +265 -0
  74. data/lib/openapi_client/models/delete_project200_response.rb +229 -0
  75. data/lib/openapi_client/models/error.rb +268 -0
  76. data/lib/openapi_client/models/generate_suggestions200_response.rb +261 -0
  77. data/lib/openapi_client/models/generate_suggestions_request.rb +249 -0
  78. data/lib/openapi_client/models/get_implementation200_response.rb +229 -0
  79. data/lib/openapi_client/models/implementation.rb +454 -0
  80. data/lib/openapi_client/models/implementation_instructions.rb +372 -0
  81. data/lib/openapi_client/models/implementation_request.rb +362 -0
  82. data/lib/openapi_client/models/implementation_response.rb +293 -0
  83. data/lib/openapi_client/models/implementation_result.rb +268 -0
  84. data/lib/openapi_client/models/implementation_summary.rb +319 -0
  85. data/lib/openapi_client/models/link_opportunity.rb +355 -0
  86. data/lib/openapi_client/models/list_implementations200_response.rb +251 -0
  87. data/lib/openapi_client/models/page_info.rb +285 -0
  88. data/lib/openapi_client/models/page_limit_status.rb +292 -0
  89. data/lib/openapi_client/models/period_charges.rb +292 -0
  90. data/lib/openapi_client/models/project.rb +634 -0
  91. data/lib/openapi_client/models/project_count.rb +230 -0
  92. data/lib/openapi_client/models/report_implementation_status200_response.rb +229 -0
  93. data/lib/openapi_client/models/report_implementation_status_request.rb +316 -0
  94. data/lib/openapi_client/models/rollback.rb +302 -0
  95. data/lib/openapi_client/models/rollback_implementation200_response.rb +239 -0
  96. data/lib/openapi_client/models/rollback_implementation_request.rb +247 -0
  97. data/lib/openapi_client/models/spending_limit_status.rb +319 -0
  98. data/lib/openapi_client/models/start_crawl_request.rb +249 -0
  99. data/lib/openapi_client/models/step_by_step_instructions.rb +267 -0
  100. data/lib/openapi_client/models/suggestion.rb +497 -0
  101. data/lib/openapi_client/models/update_suggestion_request.rb +262 -0
  102. data/lib/openapi_client/models/usage_history_item.rb +331 -0
  103. data/lib/openapi_client/models/verify_content200_response.rb +229 -0
  104. data/lib/openapi_client/models/verify_content_request.rb +265 -0
  105. data/lib/openapi_client/version.rb +15 -0
  106. data/lib/openapi_client.rb +87 -0
  107. data/openapi_client.gemspec +39 -0
  108. data/spec/api/content_verification_api_spec.rb +48 -0
  109. data/spec/api/crawling_api_spec.rb +60 -0
  110. data/spec/api/credits_api_spec.rb +63 -0
  111. data/spec/api/implementations_api_spec.rb +91 -0
  112. data/spec/api/projects_api_spec.rb +82 -0
  113. data/spec/api/suggestions_api_spec.rb +75 -0
  114. data/spec/api/webhooks_api_spec.rb +59 -0
  115. data/spec/models/add_credits200_response_spec.rb +48 -0
  116. data/spec/models/add_credits_request_spec.rb +42 -0
  117. data/spec/models/auto_recharge_settings_spec.rb +48 -0
  118. data/spec/models/change_result_spec.rb +62 -0
  119. data/spec/models/content_verification_spec.rb +48 -0
  120. data/spec/models/crawl_spec.rb +76 -0
  121. data/spec/models/create_project_request_spec.rb +170 -0
  122. data/spec/models/credit_balance_info_spec.rb +60 -0
  123. data/spec/models/credit_balance_spec.rb +72 -0
  124. data/spec/models/custom_credentials_spec.rb +42 -0
  125. data/spec/models/delete_project200_response_spec.rb +42 -0
  126. data/spec/models/error_spec.rb +54 -0
  127. data/spec/models/generate_suggestions200_response_spec.rb +48 -0
  128. data/spec/models/generate_suggestions_request_spec.rb +36 -0
  129. data/spec/models/get_implementation200_response_spec.rb +42 -0
  130. data/spec/models/implementation_instructions_spec.rb +66 -0
  131. data/spec/models/implementation_request_spec.rb +68 -0
  132. data/spec/models/implementation_response_spec.rb +48 -0
  133. data/spec/models/implementation_result_spec.rb +54 -0
  134. data/spec/models/implementation_spec.rb +102 -0
  135. data/spec/models/implementation_summary_spec.rb +54 -0
  136. data/spec/models/link_opportunity_spec.rb +66 -0
  137. data/spec/models/list_implementations200_response_spec.rb +54 -0
  138. data/spec/models/page_info_spec.rb +54 -0
  139. data/spec/models/page_limit_status_spec.rb +48 -0
  140. data/spec/models/period_charges_spec.rb +48 -0
  141. data/spec/models/project_count_spec.rb +42 -0
  142. data/spec/models/project_spec.rb +200 -0
  143. data/spec/models/report_implementation_status200_response_spec.rb +42 -0
  144. data/spec/models/report_implementation_status_request_spec.rb +52 -0
  145. data/spec/models/rollback_implementation200_response_spec.rb +48 -0
  146. data/spec/models/rollback_implementation_request_spec.rb +42 -0
  147. data/spec/models/rollback_spec.rb +54 -0
  148. data/spec/models/spending_limit_status_spec.rb +54 -0
  149. data/spec/models/start_crawl_request_spec.rb +36 -0
  150. data/spec/models/step_by_step_instructions_spec.rb +42 -0
  151. data/spec/models/suggestion_spec.rb +100 -0
  152. data/spec/models/update_suggestion_request_spec.rb +40 -0
  153. data/spec/models/usage_history_item_spec.rb +60 -0
  154. data/spec/models/verify_content200_response_spec.rb +42 -0
  155. data/spec/models/verify_content_request_spec.rb +42 -0
  156. data/spec/spec_helper.rb +111 -0
  157. metadata +288 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 52a1c30f0a17b7581b9969606a62575bd926c7d18780021d0c3ccaa862265924
4
+ data.tar.gz: c5a1cf0e14c55342eff68fd990d11544a06f8101ad086e96548bdcb2c1366e3f
5
+ SHA512:
6
+ metadata.gz: abbfbd5e374a782470e3cfd40e602b441763bfc6d549bd2ebfa94b8e06dc2659d6ae54938ad5c2124bd824c613667b71941ef7428f0a50c67b3e5daf38c757a5
7
+ data.tar.gz: ad3720dbab4bf5da632467011241310f8fdf3011587b86a361a3b2fbaa97d7ac5a271e139806677e46720f7bded9a691d40738947f8cd5be391cb3d523ae366a
data/Gemfile ADDED
@@ -0,0 +1,9 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ group :development, :test do
6
+ gem 'rake', '~> 13.0.1'
7
+ gem 'pry-byebug'
8
+ gem 'rubocop', '~> 0.66.0'
9
+ end
data/README.md ADDED
@@ -0,0 +1,191 @@
1
+ # openapi_client
2
+
3
+ OpenapiClient - the Ruby gem for the RankVectors API
4
+
5
+ Intelligent internal linking optimization API using AI.
6
+
7
+ RankVectors helps you automatically discover and implement optimal internal links
8
+ across your website to improve SEO performance and user experience.
9
+
10
+ ## Key Features
11
+ - **AI-Powered Analysis**: Uses OpenAI embeddings to find optimal linking opportunities
12
+ - **Smart Crawling**: Automatically crawls and analyzes your website content
13
+ - **Automated Implementation**: Implement links via webhooks or manual instructions
14
+ - **Credit-Based System**: Pay-per-use model with transparent pricing
15
+ - **Multi-Platform Support**: Works with any CMS or platform via REST API
16
+
17
+ ## Getting Started
18
+ 1. Create a project with your website URL
19
+ 2. Start a crawl to analyze your content
20
+ 3. Generate AI-powered link suggestions
21
+ 4. Implement suggestions via API or webhook
22
+ 5. Track performance and manage credits
23
+
24
+ ## Authentication
25
+ All API endpoints require authentication using your RankVectors API key.
26
+ Include your API key in the `Authorization` header:
27
+ ```
28
+ Authorization: Bearer YOUR_API_KEY
29
+ ```
30
+
31
+ Get your API key from your RankVectors dashboard: Settings → API Keys
32
+
33
+
34
+ This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
35
+
36
+ - API version: 1.2.0
37
+ - Package version: 1.0.0
38
+ - Generator version: 7.16.0
39
+ - Build package: org.openapitools.codegen.languages.RubyClientCodegen
40
+ For more information, please visit [https://docs.rankvectors.com](https://docs.rankvectors.com)
41
+
42
+ ## Installation
43
+
44
+ ### Build a gem
45
+
46
+ To build the Ruby code into a gem:
47
+
48
+ ```shell
49
+ gem build openapi_client.gemspec
50
+ ```
51
+
52
+ Then either install the gem locally:
53
+
54
+ ```shell
55
+ gem install ./openapi_client-1.0.0.gem
56
+ ```
57
+
58
+ (for development, run `gem install --dev ./openapi_client-1.0.0.gem` to install the development dependencies)
59
+
60
+ or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
61
+
62
+ Finally add this to the Gemfile:
63
+
64
+ gem 'openapi_client', '~> 1.0.0'
65
+
66
+ ### Install from Git
67
+
68
+ If the Ruby gem is hosted at a git repository: https://github.com/rankvectors/rankvectors-ruby-sdk, then add the following in the Gemfile:
69
+
70
+ gem 'openapi_client', :git => 'https://github.com/rankvectors/rankvectors-ruby-sdk.git'
71
+
72
+ ### Include the Ruby code directly
73
+
74
+ Include the Ruby code directly using `-I` as follows:
75
+
76
+ ```shell
77
+ ruby -Ilib script.rb
78
+ ```
79
+
80
+ ## Getting Started
81
+
82
+ Please follow the [installation](#installation) procedure and then run the following code:
83
+
84
+ ```ruby
85
+ # Load the gem
86
+ require 'openapi_client'
87
+
88
+ # Setup authorization
89
+ OpenapiClient.configure do |config|
90
+ # Configure API key authorization: ApiKeyAuth
91
+ config.api_key['Authorization'] = 'YOUR API KEY'
92
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
93
+ # config.api_key_prefix['Authorization'] = 'Bearer'
94
+ end
95
+
96
+ api_instance = OpenapiClient::ContentVerificationApi.new
97
+ project_id = 'proj-123' # String | Unique identifier for the project
98
+ verify_content_request = OpenapiClient::VerifyContentRequest.new({page_url: 'https://example.com/page', suggestion_id: 'sugg-123'}) # VerifyContentRequest |
99
+
100
+ begin
101
+ #Verify page content
102
+ result = api_instance.verify_content(project_id, verify_content_request)
103
+ p result
104
+ rescue OpenapiClient::ApiError => e
105
+ puts "Exception when calling ContentVerificationApi->verify_content: #{e}"
106
+ end
107
+
108
+ ```
109
+
110
+ ## Documentation for API Endpoints
111
+
112
+ All URIs are relative to *https://api.rankvectors.com*
113
+
114
+ Class | Method | HTTP request | Description
115
+ ------------ | ------------- | ------------- | -------------
116
+ *OpenapiClient::ContentVerificationApi* | [**verify_content**](docs/ContentVerificationApi.md#verify_content) | **POST** /api/projects/{projectId}/verify-content | Verify page content
117
+ *OpenapiClient::CrawlingApi* | [**get_crawl_history**](docs/CrawlingApi.md#get_crawl_history) | **GET** /api/projects/{projectId}/crawl | Get crawl history
118
+ *OpenapiClient::CrawlingApi* | [**start_crawl**](docs/CrawlingApi.md#start_crawl) | **POST** /api/projects/{projectId}/crawl | Start website crawl
119
+ *OpenapiClient::CreditsApi* | [**add_credits**](docs/CreditsApi.md#add_credits) | **POST** /api/projects/{projectId}/credits | Add credits
120
+ *OpenapiClient::CreditsApi* | [**get_credits**](docs/CreditsApi.md#get_credits) | **GET** /api/projects/{projectId}/credits | Get credit balance
121
+ *OpenapiClient::ImplementationsApi* | [**get_implementation**](docs/ImplementationsApi.md#get_implementation) | **GET** /api/projects/{projectId}/implementations/{implementationId} | Get implementation details
122
+ *OpenapiClient::ImplementationsApi* | [**implement_links**](docs/ImplementationsApi.md#implement_links) | **POST** /api/projects/{projectId}/implementations | Implement link suggestions
123
+ *OpenapiClient::ImplementationsApi* | [**list_implementations**](docs/ImplementationsApi.md#list_implementations) | **GET** /api/projects/{projectId}/implementations | List implementations
124
+ *OpenapiClient::ImplementationsApi* | [**rollback_implementation**](docs/ImplementationsApi.md#rollback_implementation) | **POST** /api/projects/{projectId}/implementations/{implementationId}/rollback | Rollback implementation
125
+ *OpenapiClient::ProjectsApi* | [**create_project**](docs/ProjectsApi.md#create_project) | **POST** /api/projects | Create a new project
126
+ *OpenapiClient::ProjectsApi* | [**delete_project**](docs/ProjectsApi.md#delete_project) | **DELETE** /api/projects/{projectId} | Delete a project
127
+ *OpenapiClient::ProjectsApi* | [**get_project**](docs/ProjectsApi.md#get_project) | **GET** /api/projects/{projectId} | Get project details
128
+ *OpenapiClient::ProjectsApi* | [**list_projects**](docs/ProjectsApi.md#list_projects) | **GET** /api/projects | List all projects
129
+ *OpenapiClient::SuggestionsApi* | [**generate_suggestions**](docs/SuggestionsApi.md#generate_suggestions) | **POST** /api/projects/{projectId}/suggestions | Generate link suggestions
130
+ *OpenapiClient::SuggestionsApi* | [**get_suggestions**](docs/SuggestionsApi.md#get_suggestions) | **GET** /api/projects/{projectId}/suggestions | Get link suggestions
131
+ *OpenapiClient::SuggestionsApi* | [**update_suggestion**](docs/SuggestionsApi.md#update_suggestion) | **PATCH** /api/projects/{projectId}/suggestions/{suggestionId} | Update suggestion status
132
+ *OpenapiClient::WebhooksApi* | [**get_implementation_instructions**](docs/WebhooksApi.md#get_implementation_instructions) | **GET** /api/webhook/implement-link | Get implementation instructions
133
+ *OpenapiClient::WebhooksApi* | [**report_implementation_status**](docs/WebhooksApi.md#report_implementation_status) | **POST** /api/webhook/implement-link | Report implementation status
134
+
135
+
136
+ ## Documentation for Models
137
+
138
+ - [OpenapiClient::AddCredits200Response](docs/AddCredits200Response.md)
139
+ - [OpenapiClient::AddCreditsRequest](docs/AddCreditsRequest.md)
140
+ - [OpenapiClient::AutoRechargeSettings](docs/AutoRechargeSettings.md)
141
+ - [OpenapiClient::ChangeResult](docs/ChangeResult.md)
142
+ - [OpenapiClient::ContentVerification](docs/ContentVerification.md)
143
+ - [OpenapiClient::Crawl](docs/Crawl.md)
144
+ - [OpenapiClient::CreateProjectRequest](docs/CreateProjectRequest.md)
145
+ - [OpenapiClient::CreditBalance](docs/CreditBalance.md)
146
+ - [OpenapiClient::CreditBalanceInfo](docs/CreditBalanceInfo.md)
147
+ - [OpenapiClient::CustomCredentials](docs/CustomCredentials.md)
148
+ - [OpenapiClient::DeleteProject200Response](docs/DeleteProject200Response.md)
149
+ - [OpenapiClient::Error](docs/Error.md)
150
+ - [OpenapiClient::GenerateSuggestions200Response](docs/GenerateSuggestions200Response.md)
151
+ - [OpenapiClient::GenerateSuggestionsRequest](docs/GenerateSuggestionsRequest.md)
152
+ - [OpenapiClient::GetImplementation200Response](docs/GetImplementation200Response.md)
153
+ - [OpenapiClient::Implementation](docs/Implementation.md)
154
+ - [OpenapiClient::ImplementationInstructions](docs/ImplementationInstructions.md)
155
+ - [OpenapiClient::ImplementationRequest](docs/ImplementationRequest.md)
156
+ - [OpenapiClient::ImplementationResponse](docs/ImplementationResponse.md)
157
+ - [OpenapiClient::ImplementationResult](docs/ImplementationResult.md)
158
+ - [OpenapiClient::ImplementationSummary](docs/ImplementationSummary.md)
159
+ - [OpenapiClient::LinkOpportunity](docs/LinkOpportunity.md)
160
+ - [OpenapiClient::ListImplementations200Response](docs/ListImplementations200Response.md)
161
+ - [OpenapiClient::PageInfo](docs/PageInfo.md)
162
+ - [OpenapiClient::PageLimitStatus](docs/PageLimitStatus.md)
163
+ - [OpenapiClient::PeriodCharges](docs/PeriodCharges.md)
164
+ - [OpenapiClient::Project](docs/Project.md)
165
+ - [OpenapiClient::ProjectCount](docs/ProjectCount.md)
166
+ - [OpenapiClient::ReportImplementationStatus200Response](docs/ReportImplementationStatus200Response.md)
167
+ - [OpenapiClient::ReportImplementationStatusRequest](docs/ReportImplementationStatusRequest.md)
168
+ - [OpenapiClient::Rollback](docs/Rollback.md)
169
+ - [OpenapiClient::RollbackImplementation200Response](docs/RollbackImplementation200Response.md)
170
+ - [OpenapiClient::RollbackImplementationRequest](docs/RollbackImplementationRequest.md)
171
+ - [OpenapiClient::SpendingLimitStatus](docs/SpendingLimitStatus.md)
172
+ - [OpenapiClient::StartCrawlRequest](docs/StartCrawlRequest.md)
173
+ - [OpenapiClient::StepByStepInstructions](docs/StepByStepInstructions.md)
174
+ - [OpenapiClient::Suggestion](docs/Suggestion.md)
175
+ - [OpenapiClient::UpdateSuggestionRequest](docs/UpdateSuggestionRequest.md)
176
+ - [OpenapiClient::UsageHistoryItem](docs/UsageHistoryItem.md)
177
+ - [OpenapiClient::VerifyContent200Response](docs/VerifyContent200Response.md)
178
+ - [OpenapiClient::VerifyContentRequest](docs/VerifyContentRequest.md)
179
+
180
+
181
+ ## Documentation for Authorization
182
+
183
+
184
+ Authentication schemes defined for the API:
185
+ ### ApiKeyAuth
186
+
187
+
188
+ - **Type**: API key
189
+ - **API key parameter name**: Authorization
190
+ - **Location**: HTTP header
191
+
data/Rakefile ADDED
@@ -0,0 +1,10 @@
1
+ require "bundler/gem_tasks"
2
+
3
+ begin
4
+ require 'rspec/core/rake_task'
5
+
6
+ RSpec::Core::RakeTask.new(:spec)
7
+ task default: :spec
8
+ rescue LoadError
9
+ # no rspec available
10
+ end
@@ -0,0 +1,22 @@
1
+ # OpenapiClient::AddCredits200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **success** | **Boolean** | | [optional] |
8
+ | **balance** | [**CreditBalanceInfo**](CreditBalanceInfo.md) | | [optional] |
9
+ | **message** | **String** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'openapi_client'
15
+
16
+ instance = OpenapiClient::AddCredits200Response.new(
17
+ success: true,
18
+ balance: null,
19
+ message: Successfully added 100 credits
20
+ )
21
+ ```
22
+
@@ -0,0 +1,20 @@
1
+ # OpenapiClient::AddCreditsRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **amount** | **Float** | Number of credits to add | |
8
+ | **source** | **String** | Source of credits | [optional][default to 'manual_addition'] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'openapi_client'
14
+
15
+ instance = OpenapiClient::AddCreditsRequest.new(
16
+ amount: 100,
17
+ source: purchase
18
+ )
19
+ ```
20
+
@@ -0,0 +1,22 @@
1
+ # OpenapiClient::AutoRechargeSettings
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **enabled** | **Boolean** | Whether auto-recharge is enabled | |
8
+ | **threshold** | **Float** | Credit threshold for auto-recharge | |
9
+ | **amount** | **Float** | Amount to recharge | |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'openapi_client'
15
+
16
+ instance = OpenapiClient::AutoRechargeSettings.new(
17
+ enabled: false,
18
+ threshold: 10,
19
+ amount: 500
20
+ )
21
+ ```
22
+
@@ -0,0 +1,24 @@
1
+ # OpenapiClient::ChangeResult
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **page_url** | **String** | URL of the page | |
8
+ | **change_status** | **String** | Change status | |
9
+ | **visibility** | **String** | Page visibility | |
10
+ | **previous_scrape_at** | **Time** | Previous scrape timestamp | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'openapi_client'
16
+
17
+ instance = OpenapiClient::ChangeResult.new(
18
+ page_url: https://example.com/page,
19
+ change_status: same,
20
+ visibility: visible,
21
+ previous_scrape_at: 2025-01-14T10:00Z
22
+ )
23
+ ```
24
+
@@ -0,0 +1,22 @@
1
+ # OpenapiClient::ContentVerification
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **safe** | **Boolean** | Whether it's safe to implement the link | |
8
+ | **reason** | **String** | Reason for the verification result | |
9
+ | **change_result** | [**ChangeResult**](ChangeResult.md) | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'openapi_client'
15
+
16
+ instance = OpenapiClient::ContentVerification.new(
17
+ safe: true,
18
+ reason: Page is same,
19
+ change_result: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,81 @@
1
+ # OpenapiClient::ContentVerificationApi
2
+
3
+ All URIs are relative to *https://api.rankvectors.com*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**verify_content**](ContentVerificationApi.md#verify_content) | **POST** /api/projects/{projectId}/verify-content | Verify page content |
8
+
9
+
10
+ ## verify_content
11
+
12
+ > <VerifyContent200Response> verify_content(project_id, verify_content_request)
13
+
14
+ Verify page content
15
+
16
+ Check if page content has changed since last crawl
17
+
18
+ ### Examples
19
+
20
+ ```ruby
21
+ require 'time'
22
+ require 'openapi_client'
23
+ # setup authorization
24
+ OpenapiClient.configure do |config|
25
+ # Configure API key authorization: ApiKeyAuth
26
+ config.api_key['Authorization'] = 'YOUR API KEY'
27
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
28
+ # config.api_key_prefix['Authorization'] = 'Bearer'
29
+ end
30
+
31
+ api_instance = OpenapiClient::ContentVerificationApi.new
32
+ project_id = 'proj-123' # String | Unique identifier for the project
33
+ verify_content_request = OpenapiClient::VerifyContentRequest.new({page_url: 'https://example.com/page', suggestion_id: 'sugg-123'}) # VerifyContentRequest |
34
+
35
+ begin
36
+ # Verify page content
37
+ result = api_instance.verify_content(project_id, verify_content_request)
38
+ p result
39
+ rescue OpenapiClient::ApiError => e
40
+ puts "Error when calling ContentVerificationApi->verify_content: #{e}"
41
+ end
42
+ ```
43
+
44
+ #### Using the verify_content_with_http_info variant
45
+
46
+ This returns an Array which contains the response data, status code and headers.
47
+
48
+ > <Array(<VerifyContent200Response>, Integer, Hash)> verify_content_with_http_info(project_id, verify_content_request)
49
+
50
+ ```ruby
51
+ begin
52
+ # Verify page content
53
+ data, status_code, headers = api_instance.verify_content_with_http_info(project_id, verify_content_request)
54
+ p status_code # => 2xx
55
+ p headers # => { ... }
56
+ p data # => <VerifyContent200Response>
57
+ rescue OpenapiClient::ApiError => e
58
+ puts "Error when calling ContentVerificationApi->verify_content_with_http_info: #{e}"
59
+ end
60
+ ```
61
+
62
+ ### Parameters
63
+
64
+ | Name | Type | Description | Notes |
65
+ | ---- | ---- | ----------- | ----- |
66
+ | **project_id** | **String** | Unique identifier for the project | |
67
+ | **verify_content_request** | [**VerifyContentRequest**](VerifyContentRequest.md) | | |
68
+
69
+ ### Return type
70
+
71
+ [**VerifyContent200Response**](VerifyContent200Response.md)
72
+
73
+ ### Authorization
74
+
75
+ [ApiKeyAuth](../README.md#ApiKeyAuth)
76
+
77
+ ### HTTP request headers
78
+
79
+ - **Content-Type**: application/json
80
+ - **Accept**: application/json
81
+
data/docs/Crawl.md ADDED
@@ -0,0 +1,30 @@
1
+ # OpenapiClient::Crawl
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | Unique crawl identifier | |
8
+ | **project_id** | **String** | Project identifier | |
9
+ | **status** | **String** | Crawl status | |
10
+ | **started_at** | **Time** | Crawl start timestamp | |
11
+ | **completed_at** | **Time** | Crawl completion timestamp | [optional] |
12
+ | **pages_crawled** | **Integer** | Number of pages crawled | [optional] |
13
+ | **error_message** | **String** | Error message if crawl failed | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'openapi_client'
19
+
20
+ instance = OpenapiClient::Crawl.new(
21
+ id: crawl-123,
22
+ project_id: proj-123,
23
+ status: completed,
24
+ started_at: 2025-01-15T10:00Z,
25
+ completed_at: 2025-01-15T10:05Z,
26
+ pages_crawled: 150,
27
+ error_message: Connection timeout
28
+ )
29
+ ```
30
+
@@ -0,0 +1,155 @@
1
+ # OpenapiClient::CrawlingApi
2
+
3
+ All URIs are relative to *https://api.rankvectors.com*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**get_crawl_history**](CrawlingApi.md#get_crawl_history) | **GET** /api/projects/{projectId}/crawl | Get crawl history |
8
+ | [**start_crawl**](CrawlingApi.md#start_crawl) | **POST** /api/projects/{projectId}/crawl | Start website crawl |
9
+
10
+
11
+ ## get_crawl_history
12
+
13
+ > <Array<Crawl>> get_crawl_history(project_id)
14
+
15
+ Get crawl history
16
+
17
+ Get the crawl history for a project
18
+
19
+ ### Examples
20
+
21
+ ```ruby
22
+ require 'time'
23
+ require 'openapi_client'
24
+ # setup authorization
25
+ OpenapiClient.configure do |config|
26
+ # Configure API key authorization: ApiKeyAuth
27
+ config.api_key['Authorization'] = 'YOUR API KEY'
28
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
29
+ # config.api_key_prefix['Authorization'] = 'Bearer'
30
+ end
31
+
32
+ api_instance = OpenapiClient::CrawlingApi.new
33
+ project_id = 'proj-123' # String | Unique identifier for the project
34
+
35
+ begin
36
+ # Get crawl history
37
+ result = api_instance.get_crawl_history(project_id)
38
+ p result
39
+ rescue OpenapiClient::ApiError => e
40
+ puts "Error when calling CrawlingApi->get_crawl_history: #{e}"
41
+ end
42
+ ```
43
+
44
+ #### Using the get_crawl_history_with_http_info variant
45
+
46
+ This returns an Array which contains the response data, status code and headers.
47
+
48
+ > <Array(<Array<Crawl>>, Integer, Hash)> get_crawl_history_with_http_info(project_id)
49
+
50
+ ```ruby
51
+ begin
52
+ # Get crawl history
53
+ data, status_code, headers = api_instance.get_crawl_history_with_http_info(project_id)
54
+ p status_code # => 2xx
55
+ p headers # => { ... }
56
+ p data # => <Array<Crawl>>
57
+ rescue OpenapiClient::ApiError => e
58
+ puts "Error when calling CrawlingApi->get_crawl_history_with_http_info: #{e}"
59
+ end
60
+ ```
61
+
62
+ ### Parameters
63
+
64
+ | Name | Type | Description | Notes |
65
+ | ---- | ---- | ----------- | ----- |
66
+ | **project_id** | **String** | Unique identifier for the project | |
67
+
68
+ ### Return type
69
+
70
+ [**Array&lt;Crawl&gt;**](Crawl.md)
71
+
72
+ ### Authorization
73
+
74
+ [ApiKeyAuth](../README.md#ApiKeyAuth)
75
+
76
+ ### HTTP request headers
77
+
78
+ - **Content-Type**: Not defined
79
+ - **Accept**: application/json
80
+
81
+
82
+ ## start_crawl
83
+
84
+ > <Crawl> start_crawl(project_id, opts)
85
+
86
+ Start website crawl
87
+
88
+ Start crawling a website to analyze content for link opportunities
89
+
90
+ ### Examples
91
+
92
+ ```ruby
93
+ require 'time'
94
+ require 'openapi_client'
95
+ # setup authorization
96
+ OpenapiClient.configure do |config|
97
+ # Configure API key authorization: ApiKeyAuth
98
+ config.api_key['Authorization'] = 'YOUR API KEY'
99
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
100
+ # config.api_key_prefix['Authorization'] = 'Bearer'
101
+ end
102
+
103
+ api_instance = OpenapiClient::CrawlingApi.new
104
+ project_id = 'proj-123' # String | Unique identifier for the project
105
+ opts = {
106
+ start_crawl_request: OpenapiClient::StartCrawlRequest.new # StartCrawlRequest |
107
+ }
108
+
109
+ begin
110
+ # Start website crawl
111
+ result = api_instance.start_crawl(project_id, opts)
112
+ p result
113
+ rescue OpenapiClient::ApiError => e
114
+ puts "Error when calling CrawlingApi->start_crawl: #{e}"
115
+ end
116
+ ```
117
+
118
+ #### Using the start_crawl_with_http_info variant
119
+
120
+ This returns an Array which contains the response data, status code and headers.
121
+
122
+ > <Array(<Crawl>, Integer, Hash)> start_crawl_with_http_info(project_id, opts)
123
+
124
+ ```ruby
125
+ begin
126
+ # Start website crawl
127
+ data, status_code, headers = api_instance.start_crawl_with_http_info(project_id, opts)
128
+ p status_code # => 2xx
129
+ p headers # => { ... }
130
+ p data # => <Crawl>
131
+ rescue OpenapiClient::ApiError => e
132
+ puts "Error when calling CrawlingApi->start_crawl_with_http_info: #{e}"
133
+ end
134
+ ```
135
+
136
+ ### Parameters
137
+
138
+ | Name | Type | Description | Notes |
139
+ | ---- | ---- | ----------- | ----- |
140
+ | **project_id** | **String** | Unique identifier for the project | |
141
+ | **start_crawl_request** | [**StartCrawlRequest**](StartCrawlRequest.md) | | [optional] |
142
+
143
+ ### Return type
144
+
145
+ [**Crawl**](Crawl.md)
146
+
147
+ ### Authorization
148
+
149
+ [ApiKeyAuth](../README.md#ApiKeyAuth)
150
+
151
+ ### HTTP request headers
152
+
153
+ - **Content-Type**: application/json
154
+ - **Accept**: application/json
155
+
@@ -0,0 +1,60 @@
1
+ # OpenapiClient::CreateProjectRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **name** | **String** | Project name | |
8
+ | **domain** | **String** | Website domain URL | |
9
+ | **prompt** | **String** | Natural language prompt for crawling | [optional] |
10
+ | **search_query** | **String** | Search query for targeted crawling | [optional] |
11
+ | **sitemap_mode** | **String** | How to handle sitemaps | [optional][default to &#39;include&#39;] |
12
+ | **include_subdomains** | **Boolean** | Whether to include subdomains | [optional][default to true] |
13
+ | **ignore_query_params** | **Boolean** | Whether to ignore URL query parameters | [optional][default to true] |
14
+ | **max_discovery_depth** | **Integer** | Maximum crawl depth | [optional] |
15
+ | **exclude_paths** | **Array&lt;String&gt;** | Paths to exclude from crawling | [optional] |
16
+ | **include_paths** | **Array&lt;String&gt;** | Specific paths to include | [optional] |
17
+ | **crawl_entire_domain** | **Boolean** | Whether to crawl the entire domain | [optional][default to false] |
18
+ | **allow_external_links** | **Boolean** | Whether to allow external links | [optional][default to false] |
19
+ | **max_pages** | **Integer** | Maximum number of pages to crawl | [optional][default to 100] |
20
+ | **crawl_delay** | **Integer** | Delay between crawl requests (ms) | [optional] |
21
+ | **crawl_max_concurrency** | **Integer** | Maximum concurrent crawl requests | [optional] |
22
+ | **only_main_content** | **Boolean** | Whether to extract only main content | [optional][default to true] |
23
+ | **custom_headers** | **Hash&lt;String, String&gt;** | Custom headers for crawling | [optional] |
24
+ | **wait_for** | **Integer** | Wait time for page load (ms) | [optional][default to 0] |
25
+ | **block_ads** | **Boolean** | Whether to block ads | [optional][default to true] |
26
+ | **proxy_mode** | **String** | Proxy mode for crawling | [optional][default to &#39;auto&#39;] |
27
+ | **use_reranking** | **Boolean** | Whether to use AI reranking | [optional][default to true] |
28
+ | **enable_change_tracking** | **Boolean** | Whether to enable change tracking | [optional][default to false] |
29
+
30
+ ## Example
31
+
32
+ ```ruby
33
+ require 'openapi_client'
34
+
35
+ instance = OpenapiClient::CreateProjectRequest.new(
36
+ name: My Website,
37
+ domain: https://example.com,
38
+ prompt: Only crawl blog posts and documentation,
39
+ search_query: SEO optimization,
40
+ sitemap_mode: include,
41
+ include_subdomains: true,
42
+ ignore_query_params: true,
43
+ max_discovery_depth: 3,
44
+ exclude_paths: [&quot;/admin&quot;,&quot;/private&quot;],
45
+ include_paths: [&quot;/blog&quot;,&quot;/docs&quot;],
46
+ crawl_entire_domain: false,
47
+ allow_external_links: false,
48
+ max_pages: 100,
49
+ crawl_delay: 1000,
50
+ crawl_max_concurrency: 5,
51
+ only_main_content: true,
52
+ custom_headers: null,
53
+ wait_for: 0,
54
+ block_ads: true,
55
+ proxy_mode: auto,
56
+ use_reranking: true,
57
+ enable_change_tracking: false
58
+ )
59
+ ```
60
+