Update an endpoint
const url = 'https://example.com/api/v1/endpoints/boi.17c.415a.%24comp.display-1%2Fhttps';const options = { method: 'PATCH', headers: {'Content-Type': 'application/json'}, body: '{"inputs":{"additionalProperty":"example"},"label":"example","node":"example","params":"example","transport":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://example.com/api/v1/endpoints/boi.17c.415a.%24comp.display-1%2Fhttps \ --header 'Content-Type: application/json' \ --data '{ "inputs": { "additionalProperty": "example" }, "label": "example", "node": "example", "params": "example", "transport": "example" }'Patches an endpoint’s node placement, params, label, or (driver-attached) its connection inputs in place: the host, port and attached secret references, validated against the driver’s declared inputs, the endpoint’s tasks re-derived in the same transaction. A value the driver refuses is a 400 naming the field. An empty label clears it and the surface falls back to the derived name. Gated by endpoint:update; read and update scopes (through the component) drive the 404 versus 403 split.
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The endpoint, as
The endpoint, as
Request Body required
Section titled “Request Body required ”object
A URL to the JSON Schema for this object.
A driver-attached endpoint’s inputs, edited in place (#1061): the host, the port, an attached secret’s reference name, any input the driver declares. Merged over the stored inputs and validated against the driver; a value it refuses is a 400 naming the input. Changing where a credential is sent needs the caller to be able to use that credential
object
A new label; an empty string clears it, and the surface falls back to the derived name. Omit to leave it alone
Reassign the node placement, by name or id
Replace the address/target settings (jsonb). On a driver-attached endpoint only the timeout is set here: its address derives from its host and port inputs
The transport: a driver-attached endpoint takes only one its driver speaks
Responses
Section titled “ Responses ”OK
object
A URL to the JSON Schema for this object.
The owning component name; absent for a server-hosted endpoint
The owning component’s id; the stable form of component
The driver this endpoint was attached through (#813); absent for a bare probe endpoint
The attached driver’s id; the stable form of driver
The endpoint’s uuid, the stable handle;
The effective inputs supplied at attach, defaults baked; secret inputs are reference names, never values
The friendly string an operator reads, and the only identity string an operator types here: the name is derived from the transport. Absent when unset, and a surface with none renders the name verbatim
The derived name (its transport), unique within the owning component
The node placement name, if assigned
The placed node’s id; the stable form of node
The address/target settings (jsonb)
The transport name (the wire this endpoint speaks over), from the code registry
Example
{ "$schema": "/api/v1/schemas/EndpointBody.json"}default
Section titled “default ”Error
object
A URL to the JSON Schema for this object.
A human-readable explanation specific to this occurrence of the problem.
Optional list of individual error details
object
Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’
Error message text
The value at the given location
A URI reference that identifies the specific occurrence of the problem.
HTTP status code
A short, human-readable summary of the problem type. This value should not change between occurrences of the error.
A URI reference to human-readable documentation for the error.
Example
{ "$schema": "/api/v1/schemas/ErrorModel.json", "detail": "Property foo is required but is missing.", "instance": "https://example.com/error-log/abc123", "status": 400, "title": "Bad Request", "type": "about:blank"}