Skip to content

Conversation

@mtahasylmz
Copy link
Collaborator

  • Added QStash and Search Endpoints openapi documentation to developerAPI docs.
  • Added stats endpoint for vector
  • Changed vector transfer endpoint so that it does not say one can transfer to a personal account.

added endpoints
"GET /vector/index/{id}/stats"
"GET /vector/index/stats"
"GET /search",
"GET /search/{id}",
"GET /search/stats",
"GET /search/{id}/stats",
"POST /search",
"POST /search/{id}/reset-password",
"POST /search/{id}/transfer",
"POST /search/{id}/rename",
"DELETE /search/{id}"
"GET /qstash/user",
"GET /qstash/stats",
"POST /qstash/user/rotatetoken",
"POST /qstash-upgrade"

@buggyhunter buggyhunter requested a review from Copilot October 27, 2025 11:12
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds comprehensive API documentation for QStash and Search endpoints, expands Vector statistics endpoints, and updates the vector transfer operation description to clarify that transfers are team-only.

Key Changes

  • Added global and per-index statistics endpoints for Vector and Search indices
  • Added complete CRUD operations and management endpoints for Search indices
  • Added QStash user management, statistics, and plan upgrade endpoints

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
docs.json Added navigation entries for new Vector stats endpoints, Search endpoints group, and QStash endpoints group
devops/developer-api/openapi.yml Added OpenAPI specifications for Vector stats, Search CRUD/management operations, QStash user management, and corresponding schema definitions

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

description: The ID of the target account. If the target is a team, then use the format `team:<TEAM_ID>`, else if the target is your personal account use the format `<YOUR_EMAIL>`.
example: "team:team-id-1"
description: The team ID of the target team.
example: "team-id-1"
Copy link

Copilot AI Oct 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The description and example are inconsistent with the actual request body structure. Based on line 1364, the target_account should be a full team UUID (e.g., '2c670cd0-5a4d-4242-9300-b0a01548y612'), not a simple team ID string like 'team-id-1'. Update the example to match the format used in the search transfer endpoint.

Suggested change
example: "team-id-1"
example: "2c670cd0-5a4d-4242-9300-b0a01548y612"

Copilot uses AI. Check for mistakes.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStats'
Copy link

Copilot AI Oct 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The schema reference should be '#/components/schemas/SearchStats' or a generic stats schema, not 'VectorStats'. Search indices may have different statistics than vector indices, and using VectorStats for search statistics is semantically incorrect and could be misleading.

Suggested change
$ref: '#/components/schemas/VectorStats'
$ref: '#/components/schemas/SearchStats'

Copilot uses AI. Check for mistakes.
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

they have the same schema

type: string
format: uuid
description: Unique identifier for the QStash user account
example: 0639864f-ece6-429c-8118-86a2808
Copy link

Copilot AI Oct 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected UUID format - the example UUID is incomplete/truncated.

Suggested change
example: 0639864f-ece6-429c-8118-86a2808
example: 0639864f-ece6-429c-8118-86a2808e7b2

Copilot uses AI. Check for mistakes.
@mtahasylmz mtahasylmz requested a review from Copilot October 28, 2025 19:46
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 6 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

type: string
description: The ID of the target account. If the target is a team, then use the format `team:<TEAM_ID>`, else if the target is your personal account use the format `<YOUR_EMAIL>`.
example: "team:team-id-1"
description: The team ID of the target team.
Copy link

Copilot AI Oct 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The updated description 'The team ID of the target team' is less informative than the original. Consider revising to clarify what format the team ID should take (e.g., 'The UUID of the target team account') and whether personal accounts are supported for transfers, matching the detail level of the new search transfer endpoint at line 1363.

Suggested change
description: The team ID of the target team.
description: The UUID of the target team account to which the index will be transferred. Only team accounts are supported; personal accounts are not supported for transfers.

Copilot uses AI. Check for mistakes.
type: integer
description: Maximum size for events
example: 100000
max_dlq_retention_time_milis:
Copy link

Copilot AI Oct 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'milis' to 'millis' in the field name. This is a typo in 'milliseconds'.

Suggested change
max_dlq_retention_time_milis:
max_dlq_retention_time_millis:

Copilot uses AI. Check for mistakes.
Comment on lines 2903 to 2904
Array of day names for the measurement period, typically representing the current month.
It also includes the upcoming days of the month.
Copy link

Copilot AI Oct 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The description is unclear. It states the array includes 'upcoming days of the month,' which is confusing. Clarify whether this means future dates within the current month or if it extends beyond the current month, and explain the practical purpose of including future days in historical statistics.

Suggested change
Array of day names for the measurement period, typically representing the current month.
It also includes the upcoming days of the month.
Array of day names for the measurement period, typically representing all days in the current month.
This includes both past and future dates within the current month, so the array covers the entire month regardless of the current day.
Future days are included to align with other daily metrics arrays, allowing for consistent indexing and potential forecasting or placeholder values.

Copilot uses AI. Check for mistakes.
Comment on lines 2954 to 2955
Request counts for the requested time period
If 1h is specified, it shows 60 data points for every 1 minute within the last 1 hour.
Copy link

Copilot AI Oct 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent indentation in multi-line description. Line 2954 has 11 spaces while line 2955 has 11 spaces, but they should align consistently with the YAML structure. Other similar descriptions in the file maintain proper indentation.

Suggested change
Request counts for the requested time period
If 1h is specified, it shows 60 data points for every 1 minute within the last 1 hour.
Request counts for the requested time period
If 1h is specified, it shows 60 data points for every 1 minute within the last 1 hour.

Copilot uses AI. Check for mistakes.
Comment on lines 2964 to 2965
Workflow usage metrics for the requested time period
If 1h is specified, it shows 60 data points for every 1 minute within the last 1 hour.
Copy link

Copilot AI Oct 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent indentation in multi-line description. Line 2964 has 11 spaces while line 2965 has 11 spaces. This should match the consistent indentation pattern used elsewhere in the schema definitions.

Suggested change
Workflow usage metrics for the requested time period
If 1h is specified, it shows 60 data points for every 1 minute within the last 1 hour.
Workflow usage metrics for the requested time period
If 1h is specified, it shows 60 data points for every 1 minute within the last 1 hour.

Copilot uses AI. Check for mistakes.
Comment on lines 3010 to 3011
Bandwidth usage for the requested time period
If 1h is specified, it shows 60 data points for every 1 minute within the last 1 hour.
Copy link

Copilot AI Oct 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent indentation in multi-line description. Line 3010 has 11 spaces while line 3011 has 11 spaces. This should be consistent with the YAML structure and match formatting used in other parts of the file.

Suggested change
Bandwidth usage for the requested time period
If 1h is specified, it shows 60 data points for every 1 minute within the last 1 hour.
Bandwidth usage for the requested time period
If 1h is specified, it shows 60 data points for every 1 minute within the last 1 hour.

Copilot uses AI. Check for mistakes.
@mtahasylmz mtahasylmz requested a review from Copilot October 29, 2025 06:32
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

content:
application/json:
schema:
$ref: '#/components/schemas/VectorStats'
Copy link

Copilot AI Oct 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The search index stats endpoint references 'VectorStats' schema, but this should likely reference a 'SearchStats' schema or be clearly documented that search indices use the same statistics structure as vector indices. If the schemas are intentionally identical, consider adding a comment explaining this design decision.

Copilot uses AI. Check for mistakes.
type: integer
description: Maximum size for events
example: 100000
max_dlq_retention_time_milis:
Copy link

Copilot AI Oct 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'milis' to 'millis' (standard abbreviation for milliseconds).

Suggested change
max_dlq_retention_time_milis:
max_dlq_retention_time_millis:

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant