Skip to content
HIPS
  • Earn with your GPU
  • Pricing
  • Docs
Sign inJoin early access
⌘K

Get started

  1. 01Developer hub
  2. 02Quickstart
  3. 03Migrate to HIPS

Guides

  1. 04HIPS SDK
  2. 05Import and run your model
  3. 06Model and task guides
    1. ATask guides
    2. BLanguage (chat)
    3. CClassification
    4. DImage
    5. EVideo
    6. FAudio
    7. GDocument processing
  4. 07Batch jobs
  5. 08Prompt caching
  6. 09Coding-tool setup
    1. AClaude Code
    2. BOther coding tools and editor integrations
  7. 10Command line
    1. ASign in
  8. 11Console
    1. AAccount
    2. BWorkspaces
    3. CAPI keys
    4. DSettings
    5. EUsage
    6. FModels
    7. GPlayground
    8. HDeployments
  9. 12Billing
  10. 13Provider setup
    1. AWhen it works
    2. BCommands
    3. CSettings
    4. DProvider Console
    5. EEarnings
    6. FCrash reports
    7. GData centers
  11. 14Router
  12. 15Guardrails
  13. 16Knowledge

Reference

  1. 17API reference
    1. AAuthentication
    2. BChat completions
    3. CResponses
    4. DMessages
    5. ECount tokens
    6. FModels
    7. GTasks
    8. HEmbeddings and rerank
    9. IJobs
    10. JUploads
    11. KFiles
    12. LBatches
    13. MWebhooks
    14. NVector stores
    15. ODeployments
    16. PRequirements and headers
    17. QErrors
    18. RUsage
    19. SVersioning
  2. 18Operating guidance
    1. ALimits
    2. BErrors
    3. CRetries and billing outcomes
    4. DIdempotency
    5. EStreaming
    6. FData handling
    7. GCompatibility matrix
  3. 19Changelog
Sheet indexAPI reference

Get started

  1. 01Developer hub
  2. 02Quickstart
  3. 03Migrate to HIPS

Guides

  1. 04HIPS SDK
  2. 05Import and run your model
  3. 06Model and task guides
    1. ATask guides
    2. BLanguage (chat)
    3. CClassification
    4. DImage
    5. EVideo
    6. FAudio
    7. GDocument processing
  4. 07Batch jobs
  5. 08Prompt caching
  6. 09Coding-tool setup
    1. AClaude Code
    2. BOther coding tools and editor integrations
  7. 10Command line
    1. ASign in
  8. 11Console
    1. AAccount
    2. BWorkspaces
    3. CAPI keys
    4. DSettings
    5. EUsage
    6. FModels
    7. GPlayground
    8. HDeployments
  9. 12Billing
  10. 13Provider setup
    1. AWhen it works
    2. BCommands
    3. CSettings
    4. DProvider Console
    5. EEarnings
    6. FCrash reports
    7. GData centers
  11. 14Router
  12. 15Guardrails
  13. 16Knowledge

Reference

  1. 17API reference
    1. AAuthentication
    2. BChat completions
    3. CResponses
    4. DMessages
    5. ECount tokens
    6. FModels
    7. GTasks
    8. HEmbeddings and rerank
    9. IJobs
    10. JUploads
    11. KFiles
    12. LBatches
    13. MWebhooks
    14. NVector stores
    15. ODeployments
    16. PRequirements and headers
    17. QErrors
    18. RUsage
    19. SVersioning
  2. 18Operating guidance
    1. ALimits
    2. BErrors
    3. CRetries and billing outcomes
    4. DIdempotency
    5. EStreaming
    6. FData handling
    7. GCompatibility matrix
  3. 19Changelog
17
  1. Docs/
  2. API reference/
  3. Vector stores
(Detail N)
llms.txt

Vector stores

On this sheet5 sections
  1. Who may call
  2. The base
  3. The document
  4. Search
  5. Errors

Knowledge in OpenAI's vector store API, so the OpenAI SDKs call it unchanged: a knowledge base is a vector_store whose id is its kb_ id, a document a vector_store.file whose id is its File's. OpenAI's names, fields and statuses, with HIPS's additions in a hips member OpenAI's clients ignore; a field the routes do not take is a 400 that names it.

Note

Not switched on in production yet: every path on this page answers 404 route_not_found until it is.

POST/v1/vector_storesnot offered

Create a base: name, file_ids, chunking_strategy, metadata, expires_after, and hips with embedding_model, pool and region.

GET/v1/vector_storesnot offered

OpenAI's list: limit, order, after, before.

GET/v1/vector_stores/{id}not offered

The base.

POST/v1/vector_stores/{id}not offered

Change name, metadata, expires_after or hips.pool; the embedding model and the region never change.

DELETE/v1/vector_stores/{id}not offered

{"id", "object": "vector_store.deleted", "deleted": true}; the base is purged.

POST/v1/vector_stores/{id}/filesnot offered

Add a document: file_id, attributes (up to 16 keys), chunking_strategy.

GET/v1/vector_stores/{id}/filesnot offered

The documents, filtered by status.

GET/v1/vector_stores/{id}/files/{file_id}not offered

A document.

POST/v1/vector_stores/{id}/files/{file_id}not offered

Change a document's attributes.

DELETE/v1/vector_stores/{id}/files/{file_id}not offered

Remove a document from the base; the File is kept.

GET/v1/vector_stores/{id}/files/{file_id}/contentnot offered

The document's extracted text, in pages of 262,144 characters with has_more, next_page and page.

POST/v1/vector_stores/{id}/file_batchesnot offered

Add several documents at once: OpenAI's file batches, ids kbb_....

GET/v1/vector_stores/{id}/file_batches/{batch_id}not offered

A file batch with its counts.

POST/v1/vector_stores/{id}/file_batches/{batch_id}/cancelnot offered

Cancel a file batch: documents not read yet end cancelled.

GET/v1/vector_stores/{id}/file_batches/{batch_id}/filesnot offered

The documents of a file batch.

POST/v1/vector_stores/{id}/searchnot offered

Search the base without a model.

F
Fig. 1, sheet 17API reference

Who may call

  1. 01
    Writes

    Creating, changing and deleting a base, adding, changing and removing a document, file batches, and uploading a document's File: a full key, or a person's token with the inference scope of a member who may write. Any other key is a 403 key_scope_denied.

  2. 02
    Reads and search

    Any key of the workspace, an inference_only key included, and a person's token with the inference scope.

  3. 03
    Another workspace's id

    404, never 403. Reads, exports and deletes answer in a paused workspace too.

The base

vector_store

00000000000000000000000000000000000000001{2  "id": "kb_...",3  "object": "vector_store",4  "created_at": 1792576800,5  "name": "Product manuals",6  "usage_bytes": 0,7  "file_counts": {"in_progress": 0, "completed": 0, "failed": 0, "cancelled": 0, "total": 0},8  "status": "completed",9  "expires_after": null,10  "expires_at": null,11  "last_active_at": 1792576800,12  "metadata": {},13  "hips": {"embedding_model": "<catalog id>", "pool": "auto", "region": "eu", "chunks": 0, "storage": {"price": null, "monthly_micros": null}}14}
vector_store sample

status is in_progress while a document is being read, else completed. usage_bytes is the stored bytes it is billed for; hips.storage its storage price and monthly amount in micro-dollars, null while no storage price is in effect. A base or a document still being read carries openai-poll-after-ms, when to read it again.

The document

id (the file_ id), object: "vector_store.file", vector_store_id, created_at, usage_bytes, status (in_progress, completed, failed, cancelled), last_error (OpenAI's server_error, unsupported_file or invalid_file, and its message), chunking_strategy, attributes, and hips with stage, progress, delayed, error_code, chunks and tokens (Knowledge lists the stages and codes).

Search

The body: query (a string, or a list of strings), max_num_results, filters (OpenAI's comparison filters eq, ne, gt, gte, lt, lte, in, nin and compound and, or over the documents' attributes), ranking_options (score_threshold, ranker). rewrite_query: true is a 400 unsupported_value: HIPS rewrites no query. A NUL in a query or a filter is a 400 invalid_value.

Search answer

00000000000000000000000000000000000000001{2  "object": "vector_store.search_results.page",3  "search_query": "...",4  "data": [5    {"file_id": "file_...", "filename": "manual.pdf", "score": 0.0, "attributes": {},6     "content": [{"type": "text", "text": "..."}],7     "hips": {"heading": "...", "byte_start": 0, "byte_end": 0, "pages": [1]}}8  ],9  "has_more": false,10  "next_page": null11}
Search answer sample

One base a search. A search is one request of your limits. It is billed as one knowledge_search call once its price is in effect; until then nothing is charged and no cost header is written. Server-Timing names the stages kb-base, kb-embed and kb-search.

Errors

StatusTypeCodeSituationRetry
400invalid_request_errorinvalid_valueA value is out of range or malformed: stop with more than 16 entries, a prompt_cache_key over 512 characters, a string holding a lone surrogate escape, a router name with an empty or unknown suffix, both max_tokens names with different valuesNo
400invalid_request_errorunsupported_valuen other than 1, stream_options without stream, a message role, part, item or tool type not accepted, a hosted tool that is not servedNo
400invalid_request_errorknowledge_not_availableA Knowledge route while Knowledge's prices are not in effect. Knowledge is not switched on in production yetNo
400invalid_request_errorlimit_reachedA file or knowledge base past a limit the message names. Knowledge is not switched on in production yetNo
400invalid_request_errorregion_unavailableA knowledge base in a region whose store does not exist yet. Knowledge is not switched on in production yetNo
402insufficient_creditinsufficient_creditThe balance does not cover the request's maximum cost at the bound quoteAfter a top-up
403permission_errorkey_scope_deniedThe key's kind excludes the route: a retrieval key on any route but its batch and file reads; a key other than full writing a knowledge base's documentsNo
404not_found_errorknowledge_base_not_foundA knowledge base that is not the workspace's, or that is being deleted. Knowledge is not switched on in production yetNo
404not_found_errorroute_not_foundUnknown path, among them every /v1/jobs path (not built) and Knowledge's paths while Knowledge is switched offNo
429rate_limit_errorrate_limit_exceededA rate limit; param is requests, tokens, uploads, batches (batches created per hour) or knowledge_search; Retry-AfterYes, after Retry-After
  • Status
    400
    Type
    invalid_request_error
    Code
    invalid_value
    Situation
    A value is out of range or malformed: stop with more than 16 entries, a prompt_cache_key over 512 characters, a string holding a lone surrogate escape, a router name with an empty or unknown suffix, both max_tokens names with different values
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    unsupported_value
    Situation
    n other than 1, stream_options without stream, a message role, part, item or tool type not accepted, a hosted tool that is not served
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    knowledge_not_available
    Situation
    A Knowledge route while Knowledge's prices are not in effect. Knowledge is not switched on in production yet
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    limit_reached
    Situation
    A file or knowledge base past a limit the message names. Knowledge is not switched on in production yet
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    region_unavailable
    Situation
    A knowledge base in a region whose store does not exist yet. Knowledge is not switched on in production yet
    Retry
    No
  • Status
    402
    Type
    insufficient_credit
    Code
    insufficient_credit
    Situation
    The balance does not cover the request's maximum cost at the bound quote
    Retry
    After a top-up
  • Status
    403
    Type
    permission_error
    Code
    key_scope_denied
    Situation
    The key's kind excludes the route: a retrieval key on any route but its batch and file reads; a key other than full writing a knowledge base's documents
    Retry
    No
  • Status
    404
    Type
    not_found_error
    Code
    knowledge_base_not_found
    Situation
    A knowledge base that is not the workspace's, or that is being deleted. Knowledge is not switched on in production yet
    Retry
    No
  • Status
    404
    Type
    not_found_error
    Code
    route_not_found
    Situation
    Unknown path, among them every /v1/jobs path (not built) and Knowledge's paths while Knowledge is switched off
    Retry
    No
  • Status
    429
    Type
    rate_limit_error
    Code
    rate_limit_exceeded
    Situation
    A rate limit; param is requests, tokens, uploads, batches (batches created per hour) or knowledge_search; Retry-After
    Retry
    Yes, after Retry-After

A document's File that is not the workspace's, or is gone, is a 404 file_not_found; past the ingestion and search limits the 429 names knowledge_ingest or knowledge_search.

Related sheets

  • Knowledge
  • Files
Previous sheetWebhooks
Next sheetDeployments
Sheet
17 of 19
Detail
N
Updated
2026-11-11
Sign in to the Console

On this sheet

  1. Who may call
  2. The base
  3. The document
  4. Search
  5. Errors

Product

  • Inference
  • Models
  • Deploy your model
  • Always-on GPU capacity
  • How it works
  • Use cases
  • Pricing

Developer

  • Docs
  • Quickstart
  • Migrate to HIPS
  • HIPS SDK
  • Batch jobs
  • API reference

Provider

  • Earn with your GPU
  • Register GPU interest
  • Download for Mac
  • Download for Windows
  • Download for Linux

Resource

  • Security and Data
  • Resources
  • llms.txt

Compare

  • OpenRouter alternatives
  • Together AI alternatives
  • Groq alternatives
  • All comparisons

Company

  • About
  • Contact
  • Affiliate program
  • HIPS Payments

Legal

  • Legal
  • Consumer Health Data Privacy Policy
  • Report content
  • Cookie preferences

Support

  • Contact HIPS
  • Looking for payments support?

HIPS. AI inference for builders.

hips.com

Hyperscale Inference Processing Systems OÜ