---
title: "Upload FileDescriptorSet"
method: POST
path: "/descriptors"
tags: ["descriptors"]
---

# Upload FileDescriptorSet

`POST /descriptors`

Accepts binary Protocol Buffers FileDescriptorSet. Registers descriptors for dynamic service discovery. Returns service IDs for later removal via DELETE /services/{serviceID}.

## Response `200`

Descriptors registered successfully

- AddDescriptorsResponse — Result of registering an uploaded FileDescriptorSet.
  - `message` string, required — Human-readable result of the upload.
  - `time` string, date-time, required — Server time when the response was produced (RFC 3339).
  - `serviceIDs` string[], required — Service IDs (e.g. helloworld.Greeter) registered. Use DELETE /services/{serviceID} to remove.

## Other responses

- `400` — Invalid or empty FileDescriptorSet
- `500` — Internal Server Error

---

[API](https://skmtc.net/bavix/apis/gripmock-api-schema.md) · [All operations](https://skmtc.net/bavix/apis/gripmock-api-schema/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bavix/gripmock-api-schema/revisions/38f761f66622/schema)
