Skip to content
Median
Esc
↑↓navigate↵open⌘Jpreview

Sync the tools

Re-reads one endpoint’s manifest. Pass its exact URL when more than one endpoint is connected. The URL may be omitted when there is exactly one. Answers as soon as the sync is scheduled, so read the endpoints back for what it found.

Syncs have their own limit of 60 an hour per organization, with a burst of 10. Past it, this returns 429 rate_limited with “Too many requests. Wait a moment and try again.” An OAuth token needs an admin or owner.

POST/tool-endpoints/sync
Authorization
AuthorizationBearer token · headerrequired
A MEDIAN_KEY from Settings under API. It starts with `median_key_` and stays on your server. The tool endpoint routes also accept an OAuth access token (`median_oat_`) from `median login` or an MCP client, acting as the person who approved it. The messaging routes accept only a Median key.
Query parameters
urlstring
The exact endpoint URL to sync. Required when more than one is connected.
Responses
202The sync was scheduled.
okboolean
400`no_endpoint`: no tool endpoint is connected. `endpoint_required`: several are connected and no `url` was sent.
errorobjectrequired
Show properties
codestringrequired
Branch on this rather than on the message.
messagestringrequired
401`missing_api_key`: no bearer token. `invalid_api_key`: the key matches no organization or was revoked. `publishable_key`: a `median_pk_` key was sent. `invalid_token`: the OAuth token is unknown or expired.
errorobjectrequired
Show properties
codestringrequired
Branch on this rather than on the message.
messagestringrequired
403With an OAuth token, `forbidden` when the person is not an admin or owner, and `no_organization` when no organization is bound.
errorobjectrequired
Show properties
codestringrequired
Branch on this rather than on the message.
messagestringrequired
404`endpoint_not_found`: the `url` matches no connected endpoint.
errorobjectrequired
Show properties
codestringrequired
Branch on this rather than on the message.
messagestringrequired
429The organization's API allowance for this class of request is used up. Wait the `Retry-After` header's seconds. Limits depend on the plan. See [rate limits](/api/errors-and-limits#rate-limits).
errorobjectrequired
Show properties
codestringrequired
Branch on this rather than on the message.
messagestringrequired
Request
curl -X POST "https://api.median.sh/v1/tool-endpoints/sync" \
  -H "Authorization: Bearer YOUR_TOKEN"
Response
{
  "ok": true
}