mencoro 1.0.1 → 2.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.
- checksums.yaml +4 -4
- data/README.md +41 -5
- data/docs/AccountApi.md +1 -1
- data/docs/AnalyticsApi.md +96 -86
- data/docs/AsyncJobResource.md +3 -1
- data/docs/AsyncJobResourceError.md +20 -0
- data/docs/BillingApi.md +1 -1
- data/docs/CitedSourceRow.md +32 -0
- data/docs/CitedSourcesResponse.md +20 -0
- data/docs/ClusterBreakdownRow.md +82 -0
- data/docs/ClustersApi.md +74 -0
- data/docs/CompetitorCoOccurrenceResponse.md +18 -0
- data/docs/CompetitorCoOccurrenceRow.md +36 -0
- data/docs/CompetitorShareOfVoice.md +20 -0
- data/docs/CreateInvitation201Response.md +4 -0
- data/docs/CreateInvitationRequest.md +3 -1
- data/docs/CreateInvitationRequestProjectAccess.md +20 -0
- data/docs/DiscoveryApi.md +1 -1
- data/docs/GetMeStats200ResponseProjects.md +1 -1
- data/docs/GetOrganizationOverview200ResponseAggregate.md +1 -1
- data/docs/GetOrganizationOverview200ResponseProjectsInner.md +8 -2
- data/docs/GetOrganizationStats200ResponseInvitations.md +1 -1
- data/docs/GetOrganizationStats200ResponseMembers.md +1 -1
- data/docs/GetOrganizationStats200ResponseProjects.md +1 -1
- data/docs/InvitationResource.md +5 -1
- data/docs/JobsApi.md +1 -1
- data/docs/KeywordListingResource.md +12 -10
- data/docs/KeywordListingResourceCarriedPositions.md +24 -0
- data/docs/KeywordListingResourceCarriedPositionsSerp.md +20 -0
- data/docs/ListProjects200Response.md +1 -1
- data/docs/MemberResource.md +5 -1
- data/docs/MembersApi.md +78 -0
- data/docs/MentionMatchResource.md +44 -0
- data/docs/MentionSampleResponse.md +46 -0
- data/docs/MentionTypeCounts.md +26 -0
- data/docs/OrganizationsApi.md +3 -3
- data/docs/PerCompetitorSentiment.md +30 -0
- data/docs/PerEngineSentiment.md +28 -0
- data/docs/PerEntityMetrics.md +32 -0
- data/docs/PositionDistributionBucket.md +20 -0
- data/docs/ProjectMentionMixResponse.md +22 -0
- data/docs/ProjectMentionSamplesResponse.md +20 -0
- data/docs/ProjectRankTrackingClusterBreakdown.md +20 -0
- data/docs/ProjectRankTrackingStats.md +96 -0
- data/docs/ProjectRankTrackingTimeSeries.md +20 -0
- data/docs/ProjectSentimentBreakdown.md +20 -0
- data/docs/ProjectedMonthlyChecksResource.md +2 -2
- data/docs/ProjectsApi.md +76 -2
- data/docs/SearchTrackedQueryMentionMatches200Response.md +20 -0
- data/docs/SearchTrackedQuerySerpMatches200Response.md +20 -0
- data/docs/SerpMatchResource.md +30 -0
- data/docs/SetMemberProjectAccessRequest.md +20 -0
- data/docs/SubscriptionResource.md +1 -1
- data/docs/TimeSeriesPoint.md +22 -0
- data/docs/TrackedQueriesApi.md +175 -3
- data/docs/TrackedQueryCountResource.md +1 -1
- data/docs/TrackedQueryMoverRow.md +58 -0
- data/docs/TrackedQueryMoversResponse.md +22 -0
- data/docs/TrackedQueryRankTrackingTimeSeries.md +20 -0
- data/docs/TrackedQueryUsageResource.md +1 -1
- data/lib/mencoro/api/account_api.rb +3 -3
- data/lib/mencoro/api/analytics_api.rb +103 -85
- data/lib/mencoro/api/billing_api.rb +3 -3
- data/lib/mencoro/api/captures_api.rb +2 -2
- data/lib/mencoro/api/clusters_api.rb +76 -1
- data/lib/mencoro/api/discovery_api.rb +3 -3
- data/lib/mencoro/api/invitations_api.rb +1 -1
- data/lib/mencoro/api/jobs_api.rb +3 -3
- data/lib/mencoro/api/members_api.rb +95 -1
- data/lib/mencoro/api/organization_operations_api.rb +1 -1
- data/lib/mencoro/api/organizations_api.rb +7 -7
- data/lib/mencoro/api/projects_api.rb +80 -5
- data/lib/mencoro/api/tracked_queries_api.rb +220 -8
- data/lib/mencoro/api_client.rb +2 -2
- data/lib/mencoro/api_error.rb +1 -1
- data/lib/mencoro/api_model_base.rb +1 -1
- data/lib/mencoro/configuration.rb +1 -1
- data/lib/mencoro/models/accepted_job_resource.rb +1 -1
- data/lib/mencoro/models/ai_response_report_resource.rb +1 -1
- data/lib/mencoro/models/ai_response_resource.rb +1 -1
- data/lib/mencoro/models/apply_clustering_job_outcome.rb +1 -1
- data/lib/mencoro/models/apply_clustering_job_outcome_clusters_inner.rb +1 -1
- data/lib/mencoro/models/apply_clustering_job_outcome_failed_inner.rb +1 -1
- data/lib/mencoro/models/apply_clustering_job_outcome_skipped_clusters_inner.rb +1 -1
- data/lib/mencoro/models/apply_clustering_job_outcome_successful_inner.rb +1 -1
- data/lib/mencoro/models/async_job_resource.rb +17 -7
- data/lib/mencoro/models/async_job_resource_error.rb +217 -0
- data/lib/mencoro/models/batch_change_tracked_query_check_frequency_request_data.rb +1 -1
- data/lib/mencoro/models/batch_change_tracked_query_passes_request_data.rb +1 -1
- data/lib/mencoro/models/batch_create_query_clusters_outcome.rb +1 -1
- data/lib/mencoro/models/batch_create_query_clusters_outcome_failed_inner.rb +1 -1
- data/lib/mencoro/models/batch_create_query_clusters_outcome_successful_inner.rb +1 -1
- data/lib/mencoro/models/batch_create_query_clusters_request_data.rb +1 -1
- data/lib/mencoro/models/batch_create_tracked_queries_request_data.rb +1 -1
- data/lib/mencoro/models/batch_create_tracked_queries_result_resource.rb +1 -1
- data/lib/mencoro/models/batch_create_tracked_queries_result_resource_failed_inner.rb +1 -1
- data/lib/mencoro/models/batch_create_tracked_queries_result_resource_successful_inner.rb +1 -1
- data/lib/mencoro/models/batch_force_check_tracked_queries200_response.rb +1 -1
- data/lib/mencoro/models/batch_force_check_tracked_queries200_response_failed_inner.rb +1 -1
- data/lib/mencoro/models/batch_pause_tracked_queries200_response.rb +1 -1
- data/lib/mencoro/models/batch_pause_tracked_queries200_response_failed_inner.rb +1 -1
- data/lib/mencoro/models/batch_pause_tracked_queries200_response_successful_inner.rb +1 -1
- data/lib/mencoro/models/batch_resume_tracked_queries200_response.rb +1 -1
- data/lib/mencoro/models/batch_targets_request_data.rb +1 -1
- data/lib/mencoro/models/batch_write_outcome.rb +1 -1
- data/lib/mencoro/models/batch_write_outcome_failed_inner.rb +1 -1
- data/lib/mencoro/models/brand_profile_resource.rb +1 -1
- data/lib/mencoro/models/bulk_add_clusters_to_tracked_queries200_response.rb +1 -1
- data/lib/mencoro/models/bulk_add_clusters_to_tracked_queries_request.rb +1 -1
- data/lib/mencoro/models/bulk_remove_clusters_from_tracked_queries200_response.rb +1 -1
- data/lib/mencoro/models/bulk_remove_clusters_from_tracked_queries_request.rb +1 -1
- data/lib/mencoro/models/change_member_role_request.rb +1 -1
- data/lib/mencoro/models/change_tracked_query_check_frequency_request_data.rb +1 -1
- data/lib/mencoro/models/change_tracked_query_passes_request_data.rb +1 -1
- data/lib/mencoro/models/citation_resource.rb +1 -1
- data/lib/mencoro/models/cited_source_row.rb +298 -0
- data/lib/mencoro/models/cited_sources_response.rb +192 -0
- data/lib/mencoro/models/cluster_breakdown_row.rb +580 -0
- data/lib/mencoro/models/cluster_membership_request_data.rb +1 -1
- data/lib/mencoro/models/competitor_co_occurrence_response.rb +166 -0
- data/lib/mencoro/models/competitor_co_occurrence_row.rb +318 -0
- data/lib/mencoro/models/competitor_resource.rb +1 -1
- data/lib/mencoro/models/competitor_share_of_voice.rb +174 -0
- data/lib/mencoro/models/create_competitor_request.rb +1 -1
- data/lib/mencoro/models/create_invitation200_response.rb +1 -1
- data/lib/mencoro/models/create_invitation201_response.rb +60 -2
- data/lib/mencoro/models/create_invitation_request.rb +15 -5
- data/lib/mencoro/models/create_invitation_request_project_access.rb +201 -0
- data/lib/mencoro/models/create_organization201_response.rb +1 -1
- data/lib/mencoro/models/create_organization_request.rb +1 -1
- data/lib/mencoro/models/create_project_request.rb +1 -1
- data/lib/mencoro/models/create_project_request_competitors_inner.rb +1 -1
- data/lib/mencoro/models/create_query_cluster409_response.rb +1 -1
- data/lib/mencoro/models/create_query_cluster_request.rb +1 -1
- data/lib/mencoro/models/delete_query_cluster200_response.rb +1 -1
- data/lib/mencoro/models/entitlements_resource.rb +1 -1
- data/lib/mencoro/models/get_available_filters200_response.rb +1 -1
- data/lib/mencoro/models/get_available_filters200_response_clusters_inner.rb +1 -1
- data/lib/mencoro/models/get_me_stats200_response.rb +1 -1
- data/lib/mencoro/models/get_me_stats200_response_organizations.rb +1 -1
- data/lib/mencoro/models/get_me_stats200_response_projects.rb +2 -2
- data/lib/mencoro/models/get_membership_stats200_response.rb +1 -1
- data/lib/mencoro/models/get_mention_samples400_response.rb +1 -1
- data/lib/mencoro/models/get_mention_samples400_response_details_value_inner.rb +1 -1
- data/lib/mencoro/models/get_metric_glossary200_response.rb +1 -1
- data/lib/mencoro/models/get_metric_glossary200_response_metrics_inner.rb +1 -1
- data/lib/mencoro/models/get_organization_overview200_response.rb +1 -1
- data/lib/mencoro/models/get_organization_overview200_response_aggregate.rb +2 -2
- data/lib/mencoro/models/get_organization_overview200_response_projects_inner.rb +34 -3
- data/lib/mencoro/models/get_organization_stats200_response.rb +1 -1
- data/lib/mencoro/models/get_organization_stats200_response_invitations.rb +4 -7
- data/lib/mencoro/models/get_organization_stats200_response_members.rb +4 -7
- data/lib/mencoro/models/get_organization_stats200_response_projects.rb +2 -2
- data/lib/mencoro/models/get_share_of_voice_formula200_response.rb +1 -1
- data/lib/mencoro/models/get_tracking_coverage200_response.rb +1 -1
- data/lib/mencoro/models/get_tracking_coverage200_response_sample_inner.rb +1 -1
- data/lib/mencoro/models/invitation_resource.rb +64 -6
- data/lib/mencoro/models/keyword_listing_resource.rb +40 -14
- data/lib/mencoro/models/keyword_listing_resource_carried_positions.rb +187 -0
- data/lib/mencoro/models/keyword_listing_resource_carried_positions_serp.rb +192 -0
- data/lib/mencoro/models/keyword_listing_resource_mention_type_counts.rb +1 -1
- data/lib/mencoro/models/list_ai_responses200_response.rb +1 -1
- data/lib/mencoro/models/list_competitors200_response.rb +1 -1
- data/lib/mencoro/models/list_invitations200_response.rb +1 -1
- data/lib/mencoro/models/list_keyword_listings200_response.rb +1 -1
- data/lib/mencoro/models/list_members200_response.rb +1 -1
- data/lib/mencoro/models/list_organizations200_response.rb +1 -1
- data/lib/mencoro/models/list_projects200_response.rb +2 -2
- data/lib/mencoro/models/list_query_clusters200_response.rb +1 -1
- data/lib/mencoro/models/list_search_snapshots200_response.rb +1 -1
- data/lib/mencoro/models/list_shopping_snapshots200_response.rb +1 -1
- data/lib/mencoro/models/me_resource.rb +1 -1
- data/lib/mencoro/models/member_resource.rb +63 -5
- data/lib/mencoro/models/mention_match_resource.rb +432 -0
- data/lib/mencoro/models/mention_sample_response.rb +450 -0
- data/lib/mencoro/models/mention_type_counts.rb +268 -0
- data/lib/mencoro/models/operation_effect.rb +1 -1
- data/lib/mencoro/models/organization_resource.rb +1 -1
- data/lib/mencoro/models/per_competitor_sentiment.rb +304 -0
- data/lib/mencoro/models/per_engine_sentiment.rb +278 -0
- data/lib/mencoro/models/per_entity_metrics.rb +218 -0
- data/lib/mencoro/models/position_distribution_bucket.rb +190 -0
- data/lib/mencoro/models/preview_organization_operation200_response.rb +1 -1
- data/lib/mencoro/models/preview_organization_operation200_response_organization.rb +1 -1
- data/lib/mencoro/models/preview_organization_operation_request.rb +3 -3
- data/lib/mencoro/models/project_detail_resource.rb +1 -1
- data/lib/mencoro/models/project_detail_resource_competitors_inner.rb +1 -1
- data/lib/mencoro/models/project_mention_mix_response.rb +222 -0
- data/lib/mencoro/models/project_mention_samples_response.rb +192 -0
- data/lib/mencoro/models/project_rank_tracking_cluster_breakdown.rb +176 -0
- data/lib/mencoro/models/project_rank_tracking_stats.rb +718 -0
- data/lib/mencoro/models/project_rank_tracking_time_series.rb +176 -0
- data/lib/mencoro/models/project_resource.rb +1 -1
- data/lib/mencoro/models/project_sentiment_breakdown.rb +194 -0
- data/lib/mencoro/models/projected_monthly_checks_resource.rb +3 -3
- data/lib/mencoro/models/query_cluster_resource.rb +1 -1
- data/lib/mencoro/models/report_ai_response_request.rb +1 -1
- data/lib/mencoro/models/search_result_resource.rb +1 -1
- data/lib/mencoro/models/search_snapshot_resource.rb +1 -1
- data/lib/mencoro/models/search_tracked_queries200_response.rb +1 -1
- data/lib/mencoro/models/search_tracked_query_mention_matches200_response.rb +158 -0
- data/lib/mencoro/models/search_tracked_query_serp_matches200_response.rb +158 -0
- data/lib/mencoro/models/serp_match_resource.rb +314 -0
- data/lib/mencoro/models/set_member_project_access_request.rb +200 -0
- data/lib/mencoro/models/shopping_offer_resource.rb +1 -1
- data/lib/mencoro/models/shopping_snapshot_resource.rb +1 -1
- data/lib/mencoro/models/start_brand_discovery_job_request.rb +1 -1
- data/lib/mencoro/models/start_brand_name_suggestion_job_request.rb +1 -1
- data/lib/mencoro/models/start_clustering_job_request_data.rb +1 -1
- data/lib/mencoro/models/start_keyword_discovery_job_request.rb +1 -1
- data/lib/mencoro/models/start_prompt_discovery_job_request.rb +1 -1
- data/lib/mencoro/models/submitted_checks_resource.rb +1 -1
- data/lib/mencoro/models/subscription_resource.rb +3 -3
- data/lib/mencoro/models/time_series_point.rb +218 -0
- data/lib/mencoro/models/tracked_query_count_resource.rb +3 -3
- data/lib/mencoro/models/tracked_query_detail_resource.rb +3 -3
- data/lib/mencoro/models/tracked_query_mover_row.rb +492 -0
- data/lib/mencoro/models/tracked_query_movers_response.rb +202 -0
- data/lib/mencoro/models/tracked_query_rank_tracking_time_series.rb +176 -0
- data/lib/mencoro/models/tracked_query_resource.rb +3 -3
- data/lib/mencoro/models/tracked_query_usage_resource.rb +2 -2
- data/lib/mencoro/models/update_organization_request.rb +1 -1
- data/lib/mencoro/models/update_project_brand_profile_request.rb +1 -1
- data/lib/mencoro/models/update_project_request.rb +1 -1
- data/lib/mencoro/version.rb +2 -2
- data/lib/mencoro.rb +32 -1
- data/mencoro.gemspec +2 -2
- data/spec/models/async_job_resource_error_spec.rb +46 -0
- data/spec/models/cited_source_row_spec.rb +78 -0
- data/spec/models/cited_sources_response_spec.rb +42 -0
- data/spec/models/cluster_breakdown_row_spec.rb +228 -0
- data/spec/models/competitor_co_occurrence_response_spec.rb +36 -0
- data/spec/models/competitor_co_occurrence_row_spec.rb +90 -0
- data/spec/models/competitor_share_of_voice_spec.rb +42 -0
- data/spec/models/create_invitation_request_project_access_spec.rb +46 -0
- data/spec/models/keyword_listing_resource_carried_positions_serp_spec.rb +42 -0
- data/spec/models/keyword_listing_resource_carried_positions_spec.rb +54 -0
- data/spec/models/mention_match_resource_spec.rb +114 -0
- data/spec/models/mention_sample_response_spec.rb +114 -0
- data/spec/models/mention_type_counts_spec.rb +60 -0
- data/spec/models/per_competitor_sentiment_spec.rb +72 -0
- data/spec/models/per_engine_sentiment_spec.rb +66 -0
- data/spec/models/per_entity_metrics_spec.rb +78 -0
- data/spec/models/position_distribution_bucket_spec.rb +42 -0
- data/spec/models/project_mention_mix_response_spec.rb +48 -0
- data/spec/models/project_mention_samples_response_spec.rb +42 -0
- data/spec/models/project_rank_tracking_cluster_breakdown_spec.rb +42 -0
- data/spec/models/project_rank_tracking_stats_spec.rb +270 -0
- data/spec/models/project_rank_tracking_time_series_spec.rb +42 -0
- data/spec/models/project_sentiment_breakdown_spec.rb +42 -0
- data/spec/models/search_tracked_query_mention_matches200_response_spec.rb +42 -0
- data/spec/models/search_tracked_query_serp_matches200_response_spec.rb +42 -0
- data/spec/models/serp_match_resource_spec.rb +72 -0
- data/spec/models/set_member_project_access_request_spec.rb +46 -0
- data/spec/models/time_series_point_spec.rb +48 -0
- data/spec/models/tracked_query_mover_row_spec.rb +156 -0
- data/spec/models/tracked_query_movers_response_spec.rb +48 -0
- data/spec/models/tracked_query_rank_tracking_time_series_spec.rb +42 -0
- data/spec/spec_helper.rb +1 -1
- metadata +235 -108
data/docs/AsyncJobResource.md
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
| **type** | **String** | What the job produces, and therefore the shape of `result` | |
|
|
9
9
|
| **status** | **String** | A job in `pending`, `running` or `awaiting_retry` is still in flight; `completed` and `failed` are terminal. | |
|
|
10
10
|
| **result** | **Object** | The job output, shaped by `type`. Null while the job is still in flight and for a job that failed: it means the result is not known, never that the job produced nothing. | [optional] |
|
|
11
|
+
| **error** | [**AsyncJobResourceError**](AsyncJobResourceError.md) | | [optional] |
|
|
11
12
|
|
|
12
13
|
## Example
|
|
13
14
|
|
|
@@ -18,7 +19,8 @@ instance = Mencoro::AsyncJobResource.new(
|
|
|
18
19
|
job_id: null,
|
|
19
20
|
type: null,
|
|
20
21
|
status: null,
|
|
21
|
-
result: null
|
|
22
|
+
result: null,
|
|
23
|
+
error: null
|
|
22
24
|
)
|
|
23
25
|
```
|
|
24
26
|
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Mencoro::AsyncJobResourceError
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **code** | **String** | A stable code for the kind of failure: `timed_out`, `provider_failed`, `submission_failed` or `internal_error`. | |
|
|
8
|
+
| **message** | **String** | A fixed, readable explanation of the code. It is the same for every job that failed with that code. | |
|
|
9
|
+
|
|
10
|
+
## Example
|
|
11
|
+
|
|
12
|
+
```ruby
|
|
13
|
+
require 'mencoro'
|
|
14
|
+
|
|
15
|
+
instance = Mencoro::AsyncJobResourceError.new(
|
|
16
|
+
code: null,
|
|
17
|
+
message: null
|
|
18
|
+
)
|
|
19
|
+
```
|
|
20
|
+
|
data/docs/BillingApi.md
CHANGED
|
@@ -13,7 +13,7 @@ All URIs are relative to *https://api.mencoro.com*
|
|
|
13
13
|
|
|
14
14
|
Get the subscription of an organization
|
|
15
15
|
|
|
16
|
-
Minimum role: viewer. The most recent subscription contract of the organization, whatever its state: tier, billing interval, check budget and consumption, and the cancellation and grace dates. An organization that has never subscribed answers 200 with \"status\": \"none\" and every other field null - a null is \"not applicable\", never a stand-in for a zero budget or zero consumption. Stripe identifiers, prices and payment methods are not part of this API.
|
|
16
|
+
Minimum role: viewer. The most recent subscription contract of the organization, whatever its state: tier, billing interval, check budget and consumption, and the cancellation and grace dates. An organization that has never subscribed answers 200 with \"status\": \"none\" and every other field null - a null is \"not applicable\", never a stand-in for a zero budget or zero consumption. Stripe identifiers, prices and payment methods are not part of this API. For a member restricted to selected projects, `tierCode`, `billingCycleType`, `billingCycleAnchor`, `checkBudget`, `checksConsumed`, `checksAvailable`, `nextResetAt` and `deactivationReason` are null: they keep `status`, `isEntitled` and the cancellation and grace dates.
|
|
17
17
|
|
|
18
18
|
### Examples
|
|
19
19
|
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Mencoro::CitedSourceRow
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **group_key** | **String** | | |
|
|
8
|
+
| **domain** | **String** | | [optional] |
|
|
9
|
+
| **citation_count** | **Integer** | | |
|
|
10
|
+
| **distinct_query_count** | **Integer** | | |
|
|
11
|
+
| **distinct_response_count** | **Integer** | | |
|
|
12
|
+
| **avg_position** | **Float** | | [optional] |
|
|
13
|
+
| **sample_title** | **String** | | [optional] |
|
|
14
|
+
| **sample_url** | **String** | | |
|
|
15
|
+
|
|
16
|
+
## Example
|
|
17
|
+
|
|
18
|
+
```ruby
|
|
19
|
+
require 'mencoro'
|
|
20
|
+
|
|
21
|
+
instance = Mencoro::CitedSourceRow.new(
|
|
22
|
+
group_key: null,
|
|
23
|
+
domain: null,
|
|
24
|
+
citation_count: null,
|
|
25
|
+
distinct_query_count: null,
|
|
26
|
+
distinct_response_count: null,
|
|
27
|
+
avg_position: null,
|
|
28
|
+
sample_title: null,
|
|
29
|
+
sample_url: null
|
|
30
|
+
)
|
|
31
|
+
```
|
|
32
|
+
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Mencoro::CitedSourcesResponse
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **sources** | [**Array<CitedSourceRow>**](CitedSourceRow.md) | | |
|
|
8
|
+
| **total** | **Integer** | | |
|
|
9
|
+
|
|
10
|
+
## Example
|
|
11
|
+
|
|
12
|
+
```ruby
|
|
13
|
+
require 'mencoro'
|
|
14
|
+
|
|
15
|
+
instance = Mencoro::CitedSourcesResponse.new(
|
|
16
|
+
sources: null,
|
|
17
|
+
total: null
|
|
18
|
+
)
|
|
19
|
+
```
|
|
20
|
+
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Mencoro::ClusterBreakdownRow
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **cluster_id** | **String** | | [optional] |
|
|
8
|
+
| **cluster_name** | **String** | | |
|
|
9
|
+
| **query_count** | **Integer** | | |
|
|
10
|
+
| **keyword_count** | **Integer** | | |
|
|
11
|
+
| **avg_serp_position** | **Float** | | [optional] |
|
|
12
|
+
| **trend_serp** | **Float** | | [optional] |
|
|
13
|
+
| **avg_shopping_position** | **Float** | | [optional] |
|
|
14
|
+
| **trend_shopping** | **Float** | | [optional] |
|
|
15
|
+
| **avg_mention_position** | **Float** | | [optional] |
|
|
16
|
+
| **trend_mention** | **Float** | | [optional] |
|
|
17
|
+
| **avg_link_position** | **Float** | | [optional] |
|
|
18
|
+
| **trend_link** | **Float** | | [optional] |
|
|
19
|
+
| **mention_position_stability** | **Float** | | [optional] |
|
|
20
|
+
| **trend_stability** | **Float** | | [optional] |
|
|
21
|
+
| **serp_position_stability** | **Float** | | [optional] |
|
|
22
|
+
| **trend_serp_stability** | **Float** | | [optional] |
|
|
23
|
+
| **shopping_position_stability** | **Float** | | [optional] |
|
|
24
|
+
| **trend_shopping_stability** | **Float** | | [optional] |
|
|
25
|
+
| **positivity_index** | **Integer** | | [optional] |
|
|
26
|
+
| **trend_positivity** | **Integer** | | [optional] |
|
|
27
|
+
| **mention_rate** | **Integer** | | [optional] |
|
|
28
|
+
| **trend_mention_rate** | **Integer** | | [optional] |
|
|
29
|
+
| **serp_rate** | **Integer** | | [optional] |
|
|
30
|
+
| **trend_serp_rate** | **Integer** | | [optional] |
|
|
31
|
+
| **shopping_rate** | **Integer** | | [optional] |
|
|
32
|
+
| **trend_shopping_rate** | **Integer** | | [optional] |
|
|
33
|
+
| **share_of_voice** | **Float** | | [optional] |
|
|
34
|
+
| **trend_share_of_voice** | **Float** | | [optional] |
|
|
35
|
+
| **sentiment_positive** | **Integer** | | |
|
|
36
|
+
| **sentiment_neutral** | **Integer** | | |
|
|
37
|
+
| **sentiment_negative** | **Integer** | | |
|
|
38
|
+
| **avg_mention_count** | **Float** | | [optional] |
|
|
39
|
+
| **mention_type_counts** | [**MentionTypeCounts**](MentionTypeCounts.md) | | |
|
|
40
|
+
|
|
41
|
+
## Example
|
|
42
|
+
|
|
43
|
+
```ruby
|
|
44
|
+
require 'mencoro'
|
|
45
|
+
|
|
46
|
+
instance = Mencoro::ClusterBreakdownRow.new(
|
|
47
|
+
cluster_id: null,
|
|
48
|
+
cluster_name: null,
|
|
49
|
+
query_count: null,
|
|
50
|
+
keyword_count: null,
|
|
51
|
+
avg_serp_position: null,
|
|
52
|
+
trend_serp: null,
|
|
53
|
+
avg_shopping_position: null,
|
|
54
|
+
trend_shopping: null,
|
|
55
|
+
avg_mention_position: null,
|
|
56
|
+
trend_mention: null,
|
|
57
|
+
avg_link_position: null,
|
|
58
|
+
trend_link: null,
|
|
59
|
+
mention_position_stability: null,
|
|
60
|
+
trend_stability: null,
|
|
61
|
+
serp_position_stability: null,
|
|
62
|
+
trend_serp_stability: null,
|
|
63
|
+
shopping_position_stability: null,
|
|
64
|
+
trend_shopping_stability: null,
|
|
65
|
+
positivity_index: null,
|
|
66
|
+
trend_positivity: null,
|
|
67
|
+
mention_rate: null,
|
|
68
|
+
trend_mention_rate: null,
|
|
69
|
+
serp_rate: null,
|
|
70
|
+
trend_serp_rate: null,
|
|
71
|
+
shopping_rate: null,
|
|
72
|
+
trend_shopping_rate: null,
|
|
73
|
+
share_of_voice: null,
|
|
74
|
+
trend_share_of_voice: null,
|
|
75
|
+
sentiment_positive: null,
|
|
76
|
+
sentiment_neutral: null,
|
|
77
|
+
sentiment_negative: null,
|
|
78
|
+
avg_mention_count: null,
|
|
79
|
+
mention_type_counts: null
|
|
80
|
+
)
|
|
81
|
+
```
|
|
82
|
+
|
data/docs/ClustersApi.md
CHANGED
|
@@ -8,6 +8,7 @@ All URIs are relative to *https://api.mencoro.com*
|
|
|
8
8
|
| [**batch_create_query_clusters**](ClustersApi.md#batch_create_query_clusters) | **POST** /api/v1/organizations/{organizationId}/projects/{projectId}/clusters/batch | Create several keyword clusters at once |
|
|
9
9
|
| [**create_query_cluster**](ClustersApi.md#create_query_cluster) | **POST** /api/v1/organizations/{organizationId}/projects/{projectId}/clusters | Create a keyword cluster |
|
|
10
10
|
| [**delete_query_cluster**](ClustersApi.md#delete_query_cluster) | **DELETE** /api/v1/organizations/{organizationId}/projects/{projectId}/clusters/{clusterId} | Delete a keyword cluster |
|
|
11
|
+
| [**get_query_cluster**](ClustersApi.md#get_query_cluster) | **GET** /api/v1/organizations/{organizationId}/projects/{projectId}/clusters/{clusterId} | Get one of a project's keyword clusters |
|
|
11
12
|
| [**rename_query_cluster**](ClustersApi.md#rename_query_cluster) | **PATCH** /api/v1/organizations/{organizationId}/projects/{projectId}/clusters/{clusterId} | Rename a keyword cluster |
|
|
12
13
|
| [**start_clustering_job**](ClustersApi.md#start_clustering_job) | **POST** /api/v1/organizations/{organizationId}/projects/{projectId}/clusters/jobs | Start a keyword clustering job |
|
|
13
14
|
|
|
@@ -312,6 +313,79 @@ end
|
|
|
312
313
|
- **Accept**: application/json
|
|
313
314
|
|
|
314
315
|
|
|
316
|
+
## get_query_cluster
|
|
317
|
+
|
|
318
|
+
> <QueryClusterResource> get_query_cluster(organization_id, project_id, cluster_id)
|
|
319
|
+
|
|
320
|
+
Get one of a project's keyword clusters
|
|
321
|
+
|
|
322
|
+
Minimum role: viewer. Returns a single keyword cluster of the project, the same projection the cluster listing returns for each of its rows. A cluster belonging to another project answers 404, the same answer an unknown id and a malformed one get, so the API never confirms that a cluster the caller cannot reach exists.
|
|
323
|
+
|
|
324
|
+
### Examples
|
|
325
|
+
|
|
326
|
+
```ruby
|
|
327
|
+
require 'time'
|
|
328
|
+
require 'mencoro'
|
|
329
|
+
# setup authorization
|
|
330
|
+
Mencoro.configure do |config|
|
|
331
|
+
# Configure Bearer authorization: ApiKey
|
|
332
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
333
|
+
end
|
|
334
|
+
|
|
335
|
+
api_instance = Mencoro::ClustersApi.new
|
|
336
|
+
organization_id = '38400000-8cf0-11bd-b23e-10b96e4ef00d' # String |
|
|
337
|
+
project_id = '38400000-8cf0-11bd-b23e-10b96e4ef00d' # String | Must belong to the organization in the path.
|
|
338
|
+
cluster_id = '38400000-8cf0-11bd-b23e-10b96e4ef00d' # String | Must be a cluster of the project in the path.
|
|
339
|
+
|
|
340
|
+
begin
|
|
341
|
+
# Get one of a project's keyword clusters
|
|
342
|
+
result = api_instance.get_query_cluster(organization_id, project_id, cluster_id)
|
|
343
|
+
p result
|
|
344
|
+
rescue Mencoro::ApiError => e
|
|
345
|
+
puts "Error when calling ClustersApi->get_query_cluster: #{e}"
|
|
346
|
+
end
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
#### Using the get_query_cluster_with_http_info variant
|
|
350
|
+
|
|
351
|
+
This returns an Array which contains the response data, status code and headers.
|
|
352
|
+
|
|
353
|
+
> <Array(<QueryClusterResource>, Integer, Hash)> get_query_cluster_with_http_info(organization_id, project_id, cluster_id)
|
|
354
|
+
|
|
355
|
+
```ruby
|
|
356
|
+
begin
|
|
357
|
+
# Get one of a project's keyword clusters
|
|
358
|
+
data, status_code, headers = api_instance.get_query_cluster_with_http_info(organization_id, project_id, cluster_id)
|
|
359
|
+
p status_code # => 2xx
|
|
360
|
+
p headers # => { ... }
|
|
361
|
+
p data # => <QueryClusterResource>
|
|
362
|
+
rescue Mencoro::ApiError => e
|
|
363
|
+
puts "Error when calling ClustersApi->get_query_cluster_with_http_info: #{e}"
|
|
364
|
+
end
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
### Parameters
|
|
368
|
+
|
|
369
|
+
| Name | Type | Description | Notes |
|
|
370
|
+
| ---- | ---- | ----------- | ----- |
|
|
371
|
+
| **organization_id** | **String** | | |
|
|
372
|
+
| **project_id** | **String** | Must belong to the organization in the path. | |
|
|
373
|
+
| **cluster_id** | **String** | Must be a cluster of the project in the path. | |
|
|
374
|
+
|
|
375
|
+
### Return type
|
|
376
|
+
|
|
377
|
+
[**QueryClusterResource**](QueryClusterResource.md)
|
|
378
|
+
|
|
379
|
+
### Authorization
|
|
380
|
+
|
|
381
|
+
[ApiKey](../README.md#ApiKey)
|
|
382
|
+
|
|
383
|
+
### HTTP request headers
|
|
384
|
+
|
|
385
|
+
- **Content-Type**: Not defined
|
|
386
|
+
- **Accept**: application/json
|
|
387
|
+
|
|
388
|
+
|
|
315
389
|
## rename_query_cluster
|
|
316
390
|
|
|
317
391
|
> <QueryClusterResource> rename_query_cluster(organization_id, project_id, cluster_id, idempotency_key, create_query_cluster_request)
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Mencoro::CompetitorCoOccurrenceResponse
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **competitors** | [**Array<CompetitorCoOccurrenceRow>**](CompetitorCoOccurrenceRow.md) | | |
|
|
8
|
+
|
|
9
|
+
## Example
|
|
10
|
+
|
|
11
|
+
```ruby
|
|
12
|
+
require 'mencoro'
|
|
13
|
+
|
|
14
|
+
instance = Mencoro::CompetitorCoOccurrenceResponse.new(
|
|
15
|
+
competitors: null
|
|
16
|
+
)
|
|
17
|
+
```
|
|
18
|
+
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Mencoro::CompetitorCoOccurrenceRow
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **competitor_id** | **String** | | |
|
|
8
|
+
| **shared_response_count** | **Integer** | | |
|
|
9
|
+
| **brand_wins** | **Integer** | | |
|
|
10
|
+
| **competitor_wins** | **Integer** | | |
|
|
11
|
+
| **ties** | **Integer** | | |
|
|
12
|
+
| **win_rate** | **Integer** | | [optional] |
|
|
13
|
+
| **avg_own_position** | **Float** | | [optional] |
|
|
14
|
+
| **avg_competitor_position** | **Float** | | [optional] |
|
|
15
|
+
| **example_query_text** | **String** | | [optional] |
|
|
16
|
+
| **example_ai_response_id** | **String** | | [optional] |
|
|
17
|
+
|
|
18
|
+
## Example
|
|
19
|
+
|
|
20
|
+
```ruby
|
|
21
|
+
require 'mencoro'
|
|
22
|
+
|
|
23
|
+
instance = Mencoro::CompetitorCoOccurrenceRow.new(
|
|
24
|
+
competitor_id: null,
|
|
25
|
+
shared_response_count: null,
|
|
26
|
+
brand_wins: null,
|
|
27
|
+
competitor_wins: null,
|
|
28
|
+
ties: null,
|
|
29
|
+
win_rate: null,
|
|
30
|
+
avg_own_position: null,
|
|
31
|
+
avg_competitor_position: null,
|
|
32
|
+
example_query_text: null,
|
|
33
|
+
example_ai_response_id: null
|
|
34
|
+
)
|
|
35
|
+
```
|
|
36
|
+
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Mencoro::CompetitorShareOfVoice
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **competitor_id** | **String** | | |
|
|
8
|
+
| **share_of_voice** | **Float** | | [optional] |
|
|
9
|
+
|
|
10
|
+
## Example
|
|
11
|
+
|
|
12
|
+
```ruby
|
|
13
|
+
require 'mencoro'
|
|
14
|
+
|
|
15
|
+
instance = Mencoro::CompetitorShareOfVoice.new(
|
|
16
|
+
competitor_id: null,
|
|
17
|
+
share_of_voice: null
|
|
18
|
+
)
|
|
19
|
+
```
|
|
20
|
+
|
|
@@ -11,6 +11,8 @@
|
|
|
11
11
|
| **created_at** | **Time** | | |
|
|
12
12
|
| **expires_at** | **Time** | | |
|
|
13
13
|
| **accepted_at** | **Time** | | [optional] |
|
|
14
|
+
| **project_access_mode** | **String** | Which projects of the organization the invitee reaches on accepting: every project, or only projectIds | |
|
|
15
|
+
| **project_ids** | **Array<String>** | The projects a selected access reaches, limited to those still in the organization; empty when the mode is all. It may be empty on selected once its projects left the organization, which grants nothing | |
|
|
14
16
|
| **created** | **Boolean** | Always true on a 201. | [optional] |
|
|
15
17
|
|
|
16
18
|
## Example
|
|
@@ -26,6 +28,8 @@ instance = Mencoro::CreateInvitation201Response.new(
|
|
|
26
28
|
created_at: null,
|
|
27
29
|
expires_at: null,
|
|
28
30
|
accepted_at: null,
|
|
31
|
+
project_access_mode: null,
|
|
32
|
+
project_ids: null,
|
|
29
33
|
created: null
|
|
30
34
|
)
|
|
31
35
|
```
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
7
|
| **email** | **String** | | [optional] |
|
|
8
8
|
| **role** | **String** | | [optional][default to 'viewer'] |
|
|
9
|
+
| **project_access** | [**CreateInvitationRequestProjectAccess**](CreateInvitationRequestProjectAccess.md) | | [optional] |
|
|
9
10
|
|
|
10
11
|
## Example
|
|
11
12
|
|
|
@@ -14,7 +15,8 @@ require 'mencoro'
|
|
|
14
15
|
|
|
15
16
|
instance = Mencoro::CreateInvitationRequest.new(
|
|
16
17
|
email: null,
|
|
17
|
-
role: null
|
|
18
|
+
role: null,
|
|
19
|
+
project_access: null
|
|
18
20
|
)
|
|
19
21
|
```
|
|
20
22
|
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Mencoro::CreateInvitationRequestProjectAccess
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **mode** | **String** | | |
|
|
8
|
+
| **project_ids** | **Array<String>** | For selected: at least one and at most 500 projects of the organization. | [optional] |
|
|
9
|
+
|
|
10
|
+
## Example
|
|
11
|
+
|
|
12
|
+
```ruby
|
|
13
|
+
require 'mencoro'
|
|
14
|
+
|
|
15
|
+
instance = Mencoro::CreateInvitationRequestProjectAccess.new(
|
|
16
|
+
mode: null,
|
|
17
|
+
project_ids: null
|
|
18
|
+
)
|
|
19
|
+
```
|
|
20
|
+
|
data/docs/DiscoveryApi.md
CHANGED
|
@@ -93,7 +93,7 @@ end
|
|
|
93
93
|
|
|
94
94
|
Start a brand-name alias suggestion job
|
|
95
95
|
|
|
96
|
-
Minimum role: manager. Starts a background, web-search-grounded job that suggests alias spellings for one entity - a brand, a project or a competitor - described entirely by the body, and answers 202 with the job to poll; it never returns suggestions inline. The entity need not exist: nothing is looked up, nothing is attached and nothing is saved, so the suggestions are the caller's to apply. Names sent in `enteredBrandNames` are excluded from the result. The organization must be active; no subscription is required, matching the application behaviour this mirrors. Ten starts per minute per organization, counted across every key of every member; a retry carrying an Idempotency-Key already answered is served from the record and does not count.
|
|
96
|
+
Minimum role: manager, with access to every project of the organization: the job names no project, so a member restricted to selected projects is refused as a role below the minimum is. Starts a background, web-search-grounded job that suggests alias spellings for one entity - a brand, a project or a competitor - described entirely by the body, and answers 202 with the job to poll; it never returns suggestions inline. The entity need not exist: nothing is looked up, nothing is attached and nothing is saved, so the suggestions are the caller's to apply. Names sent in `enteredBrandNames` are excluded from the result. The organization must be active; no subscription is required, matching the application behaviour this mirrors. Ten starts per minute per organization, counted across every key of every member; a retry carrying an Idempotency-Key already answered is served from the record and does not count.
|
|
97
97
|
|
|
98
98
|
### Examples
|
|
99
99
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
| Name | Type | Description | Notes |
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
|
-
| **total** | **Integer** | Projects across those organizations, archived ones included. | [optional] |
|
|
7
|
+
| **total** | **Integer** | Projects across those organizations the owner can access, archived ones included. | [optional] |
|
|
8
8
|
| **active** | **Integer** | How many of those are active; the remainder are archived. | [optional] |
|
|
9
9
|
|
|
10
10
|
## Example
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
| Name | Type | Description | Notes |
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
|
-
| **project_count** | **Integer** | Active projects
|
|
7
|
+
| **project_count** | **Integer** | Active projects of the organization the caller can access, the length of `projects`. | [optional] |
|
|
8
8
|
| **projects_with_data** | **Integer** | How many of those have a share of voice; the averages below are means over the projects that report each metric, never over the ones still null. | [optional] |
|
|
9
9
|
| **total_tracked_queries** | **Integer** | | [optional] |
|
|
10
10
|
| **avg_share_of_voice** | **Float** | Null when no project reports a share of voice. | [optional] |
|
|
@@ -7,9 +7,12 @@
|
|
|
7
7
|
| **project_id** | **String** | | [optional] |
|
|
8
8
|
| **name** | **String** | | [optional] |
|
|
9
9
|
| **status** | **String** | | [optional] |
|
|
10
|
-
| **tracked_query_count** | **Integer** |
|
|
10
|
+
| **tracked_query_count** | **Integer** | Configured tracked queries of the project, paused ones included. | [optional] |
|
|
11
|
+
| **ai_tracked_query_count** | **Integer** | How many of trackedQueryCount run on an AI answer engine (ChatGPT, Claude, Perplexity, Google AI Overview, Google AI Mode). | [optional] |
|
|
12
|
+
| **serp_tracked_query_count** | **Integer** | How many of trackedQueryCount run on classic Google SERP. | [optional] |
|
|
13
|
+
| **shopping_tracked_query_count** | **Integer** | How many of trackedQueryCount run on Google Shopping. | [optional] |
|
|
11
14
|
| **share_of_voice** | **Float** | 0-100 percentage share of weighted AI mentions against all tracked brands; higher is better. Null when the project has no rank data yet. | [optional] |
|
|
12
|
-
| **mention_rate** | **Integer** | 0-100 percentage of tracked
|
|
15
|
+
| **mention_rate** | **Integer** | 0-100 percentage of AI checks (one per tracked query x engine x UTC day) across all retained data that mentioned the brand, each check counted as the share of its passes that did; higher is better. Null when the project has no rank data yet. | [optional] |
|
|
13
16
|
| **avg_mention_position** | **Float** | 1-based average rank of the brand within the answer; LOWER is better. Null when the project has no rank data yet. | [optional] |
|
|
14
17
|
| **positivity_index** | **Integer** | 0-100 sentiment score; higher is better. Null when the project has no rank data yet. | [optional] |
|
|
15
18
|
|
|
@@ -23,6 +26,9 @@ instance = Mencoro::GetOrganizationOverview200ResponseProjectsInner.new(
|
|
|
23
26
|
name: null,
|
|
24
27
|
status: null,
|
|
25
28
|
tracked_query_count: null,
|
|
29
|
+
ai_tracked_query_count: null,
|
|
30
|
+
serp_tracked_query_count: null,
|
|
31
|
+
shopping_tracked_query_count: null,
|
|
26
32
|
share_of_voice: null,
|
|
27
33
|
mention_rate: null,
|
|
28
34
|
avg_mention_position: null,
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
| Name | Type | Description | Notes |
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
|
-
| **pending** | **Integer** | Invitations still awaiting an answer. Accepted, cancelled and expired ones are excluded. | [optional] |
|
|
7
|
+
| **pending** | **Integer** | Invitations still awaiting an answer. Accepted, cancelled and expired ones are excluded. Null for a member restricted to selected projects. | [optional] |
|
|
8
8
|
|
|
9
9
|
## Example
|
|
10
10
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
| Name | Type | Description | Notes |
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
|
-
| **total** | **Integer** | Active memberships. Suspended members are excluded. | [optional] |
|
|
7
|
+
| **total** | **Integer** | Active memberships. Suspended members are excluded. Null for a member restricted to selected projects. | [optional] |
|
|
8
8
|
|
|
9
9
|
## Example
|
|
10
10
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
| Name | Type | Description | Notes |
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
|
-
| **total** | **Integer** | Every project
|
|
7
|
+
| **total** | **Integer** | Every project of the organization the caller can access, archived ones included. | [optional] |
|
|
8
8
|
| **active** | **Integer** | Projects that are not archived; never greater than `total`. | [optional] |
|
|
9
9
|
|
|
10
10
|
## Example
|
data/docs/InvitationResource.md
CHANGED
|
@@ -11,6 +11,8 @@
|
|
|
11
11
|
| **created_at** | **Time** | | |
|
|
12
12
|
| **expires_at** | **Time** | | |
|
|
13
13
|
| **accepted_at** | **Time** | | [optional] |
|
|
14
|
+
| **project_access_mode** | **String** | Which projects of the organization the invitee reaches on accepting: every project, or only projectIds | |
|
|
15
|
+
| **project_ids** | **Array<String>** | The projects a selected access reaches, limited to those still in the organization; empty when the mode is all. It may be empty on selected once its projects left the organization, which grants nothing | |
|
|
14
16
|
|
|
15
17
|
## Example
|
|
16
18
|
|
|
@@ -24,7 +26,9 @@ instance = Mencoro::InvitationResource.new(
|
|
|
24
26
|
state: null,
|
|
25
27
|
created_at: null,
|
|
26
28
|
expires_at: null,
|
|
27
|
-
accepted_at: null
|
|
29
|
+
accepted_at: null,
|
|
30
|
+
project_access_mode: null,
|
|
31
|
+
project_ids: null
|
|
28
32
|
)
|
|
29
33
|
```
|
|
30
34
|
|
data/docs/JobsApi.md
CHANGED
|
@@ -13,7 +13,7 @@ All URIs are relative to *https://api.mencoro.com*
|
|
|
13
13
|
|
|
14
14
|
Get an asynchronous job
|
|
15
15
|
|
|
16
|
-
Minimum role: manager. The status of one asynchronous job started inside this organization — geo prompt discovery, keyword discovery, query clustering, brand discovery or brand-name suggestion — and, once it has completed, its result. Poll it until `status` is terminal: `completed` or `failed`. A null `result` means the result is not known, either because the job is still in flight or because it failed; it never means the job produced an empty result. A failed job carries
|
|
16
|
+
Minimum role: manager. The status of one asynchronous job started inside this organization — geo prompt discovery, keyword discovery, query clustering, brand discovery or brand-name suggestion — and, once it has completed, its result. Poll it until `status` is terminal: `completed` or `failed`. A null `result` means the result is not known, either because the job is still in flight or because it failed; it never means the job produced an empty result. A failed job carries `error`: a stable `code` (`timed_out`, `provider_failed`, `submission_failed` or `internal_error`) and a fixed `message` saying what to do next; `error` is null for a job that has not failed. A job started by another organization, a job of a type this API does not publish, and a job id that does not exist all answer 404 alike, so the API never confirms that an inaccessible job exists.
|
|
17
17
|
|
|
18
18
|
### Examples
|
|
19
19
|
|
|
@@ -15,16 +15,16 @@
|
|
|
15
15
|
| **status_summary** | **String** | \"mixed\" when the variants disagree; otherwise the one status they share. | |
|
|
16
16
|
| **statuses** | **Array<String>** | Distinct statuses across the variants. | |
|
|
17
17
|
| **check_frequencies** | **Array<String>** | Distinct check frequencies across the variants. | |
|
|
18
|
-
| **n_passes_values** | **Array<Integer>** | Distinct pass counts across the variants.
|
|
18
|
+
| **n_passes_values** | **Array<Integer>** | Distinct pass counts across the variants. Each Claude pass consumes five checks; each other engine pass consumes one. | |
|
|
19
19
|
| **last_checked_at** | **Time** | The most recent completed check across the variants. Null when none has ever completed — not a check that found nothing. | [optional] |
|
|
20
|
-
| **avg_serp_position** | **Float** | Average position in traditional search over the window. 1-based, LOWER is better. | [optional] |
|
|
21
|
-
| **trend_serp** | **Float** | Signed improvement in avgSerpPosition against the previous window. Positive is better. | [optional] |
|
|
22
|
-
| **avg_shopping_position** | **Float** | Average position in shopping results over the window. 1-based, LOWER is better. | [optional] |
|
|
23
|
-
| **trend_shopping** | **Float** | Signed improvement in avgShoppingPosition. Positive is better. | [optional] |
|
|
24
|
-
| **avg_mention_position** | **Float** | Average position of the brand mention inside the AI answer. 1-based, LOWER is better. | [optional] |
|
|
25
|
-
| **trend_mention** | **Float** | Signed improvement in avgMentionPosition. Positive is better. | [optional] |
|
|
26
|
-
| **avg_link_position** | **Float** | Average position of a cited link to the brand. 1-based, LOWER is better. | [optional] |
|
|
27
|
-
| **trend_link** | **Float** | Signed improvement in avgLinkPosition. Positive is better. | [optional] |
|
|
20
|
+
| **avg_serp_position** | **Float** | Average position in traditional search over the window. 1-based, LOWER is better. A variant not checked in the window contributes its latest earlier measurement instead; see carriedPositions. | [optional] |
|
|
21
|
+
| **trend_serp** | **Float** | Signed improvement in avgSerpPosition against the previous window. Positive is better. Null when carriedPositions.serp is set. | [optional] |
|
|
22
|
+
| **avg_shopping_position** | **Float** | Average position in shopping results over the window. 1-based, LOWER is better. A variant not checked in the window contributes its latest earlier measurement instead; see carriedPositions. | [optional] |
|
|
23
|
+
| **trend_shopping** | **Float** | Signed improvement in avgShoppingPosition. Positive is better. Null when carriedPositions.shopping is set. | [optional] |
|
|
24
|
+
| **avg_mention_position** | **Float** | Average position of the brand mention inside the AI answer. 1-based, LOWER is better. A variant not checked in the window contributes its latest earlier measurement instead; see carriedPositions. | [optional] |
|
|
25
|
+
| **trend_mention** | **Float** | Signed improvement in avgMentionPosition. Positive is better. Null when carriedPositions.mention is set. | [optional] |
|
|
26
|
+
| **avg_link_position** | **Float** | Average position of a cited link to the brand. 1-based, LOWER is better. A variant not checked in the window contributes its latest earlier measurement instead; see carriedPositions. | [optional] |
|
|
27
|
+
| **trend_link** | **Float** | Signed improvement in avgLinkPosition. Positive is better. Null when carriedPositions.link is set. | [optional] |
|
|
28
28
|
| **mention_position_stability** | **Float** | Day-to-day spread of the mention position (a standard deviation): LOWER means steadier. | [optional] |
|
|
29
29
|
| **trend_stability** | **Float** | Signed improvement in mentionPositionStability. Positive means steadier than the previous window. | [optional] |
|
|
30
30
|
| **positivity_index** | **Integer** | 0-100 weighted sentiment score of the mentions; HIGHER is better. Null when there were no mentions to score. | [optional] |
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
| **sentiment_negative** | **Integer** | Negative brand mentions counted in the window. | |
|
|
41
41
|
| **avg_mention_count** | **Float** | Mentions per AI engine per day with a capture, over the window. Not a total: the window total is not part of this contract. | [optional] |
|
|
42
42
|
| **mention_type_counts** | [**KeywordListingResourceMentionTypeCounts**](KeywordListingResourceMentionTypeCounts.md) | | |
|
|
43
|
+
| **carried_positions** | [**KeywordListingResourceCarriedPositions**](KeywordListingResourceCarriedPositions.md) | | |
|
|
43
44
|
|
|
44
45
|
## Example
|
|
45
46
|
|
|
@@ -82,7 +83,8 @@ instance = Mencoro::KeywordListingResource.new(
|
|
|
82
83
|
sentiment_neutral: null,
|
|
83
84
|
sentiment_negative: null,
|
|
84
85
|
avg_mention_count: null,
|
|
85
|
-
mention_type_counts: null
|
|
86
|
+
mention_type_counts: null,
|
|
87
|
+
carried_positions: null
|
|
86
88
|
)
|
|
87
89
|
```
|
|
88
90
|
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Mencoro::KeywordListingResourceCarriedPositions
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **serp** | [**KeywordListingResourceCarriedPositionsSerp**](KeywordListingResourceCarriedPositionsSerp.md) | | |
|
|
8
|
+
| **shopping** | [**KeywordListingResourceCarriedPositionsSerp**](KeywordListingResourceCarriedPositionsSerp.md) | | |
|
|
9
|
+
| **mention** | [**KeywordListingResourceCarriedPositionsSerp**](KeywordListingResourceCarriedPositionsSerp.md) | | |
|
|
10
|
+
| **link** | [**KeywordListingResourceCarriedPositionsSerp**](KeywordListingResourceCarriedPositionsSerp.md) | | |
|
|
11
|
+
|
|
12
|
+
## Example
|
|
13
|
+
|
|
14
|
+
```ruby
|
|
15
|
+
require 'mencoro'
|
|
16
|
+
|
|
17
|
+
instance = Mencoro::KeywordListingResourceCarriedPositions.new(
|
|
18
|
+
serp: null,
|
|
19
|
+
shopping: null,
|
|
20
|
+
mention: null,
|
|
21
|
+
link: null
|
|
22
|
+
)
|
|
23
|
+
```
|
|
24
|
+
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Mencoro::KeywordListingResourceCarriedPositionsSerp
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **measured_at** | **Date** | Date (YYYY-MM-DD) of the oldest carried measurement. | |
|
|
8
|
+
| **all_carried** | **Boolean** | True when every variant behind the figure carried, so it holds no measurement from the window. | |
|
|
9
|
+
|
|
10
|
+
## Example
|
|
11
|
+
|
|
12
|
+
```ruby
|
|
13
|
+
require 'mencoro'
|
|
14
|
+
|
|
15
|
+
instance = Mencoro::KeywordListingResourceCarriedPositionsSerp.new(
|
|
16
|
+
measured_at: null,
|
|
17
|
+
all_carried: null
|
|
18
|
+
)
|
|
19
|
+
```
|
|
20
|
+
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
| Name | Type | Description | Notes |
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
7
|
| **items** | [**Array<ProjectResource>**](ProjectResource.md) | | [optional] |
|
|
8
|
-
| **total** | **Integer** | Every project matching the filters, not the size of this page. | [optional] |
|
|
8
|
+
| **total** | **Integer** | Every project matching the filters that the caller can access, not the size of this page. | [optional] |
|
|
9
9
|
|
|
10
10
|
## Example
|
|
11
11
|
|
data/docs/MemberResource.md
CHANGED
|
@@ -10,6 +10,8 @@
|
|
|
10
10
|
| **state** | **String** | | |
|
|
11
11
|
| **is_active** | **Boolean** | | |
|
|
12
12
|
| **joined_at** | **Time** | | |
|
|
13
|
+
| **project_access_mode** | **String** | Which projects of the organization the member reaches: every project, or only projectIds | |
|
|
14
|
+
| **project_ids** | **Array<String>** | The projects a selected access reaches; empty when the mode is all | |
|
|
13
15
|
|
|
14
16
|
## Example
|
|
15
17
|
|
|
@@ -22,7 +24,9 @@ instance = Mencoro::MemberResource.new(
|
|
|
22
24
|
role: null,
|
|
23
25
|
state: null,
|
|
24
26
|
is_active: null,
|
|
25
|
-
joined_at: null
|
|
27
|
+
joined_at: null,
|
|
28
|
+
project_access_mode: null,
|
|
29
|
+
project_ids: null
|
|
26
30
|
)
|
|
27
31
|
```
|
|
28
32
|
|