hcengineering/platform · error
Love service endpoint not found
Error message
Love service endpoint not found
What it means
getLoveEndpoint reads the 'Love service endpoint' from client metadata (love.metadata.ServiceEnpdoint). If that metadata key is undefined — i.e. the server never injected the endpoint URL into the client configuration — the client cannot know where the Love service lives and throws immediately. This is a configuration-missing error thrown before any network call is attempted.
Source
Thrown at plugins/love-resources/src/loveClient.ts:74
await fetch(concatLink(endpoint, '/startRecord'), {
method: 'POST',
headers: {
Authorization: 'Bearer ' + token,
'Content-Type': 'application/json'
},
body: JSON.stringify({ roomName, room: room.name, meetingMinutes: get(currentMeetingMinutes)?._id })
})
}
} catch (err: any) {
Analytics.handleError(err)
console.error(err)
}
}
private getLoveEndpoint (): string {
const endpoint = getMetadata(love.metadata.ServiceEnpdoint)
if (endpoint === undefined) {
throw new Error('Love service endpoint not found')
}
return endpoint
}
private async refreshRoomToken (room: Room): Promise<string> {
const sessionName = this.getTokenRoomName(room)
const endpoint = this.getLoveEndpoint()
if (endpoint === undefined) {
throw new Error('Love service endpoint not found')
}
const myPerson = await getPersonByPersonRef(getCurrentEmployee())
if (myPerson == null) {
throw new Error('Cannot find current person')
}
const platformToken = getPlatformToken()
const res = await fetch(concatLink(endpoint, '/getToken'), {
method: 'POST',View on GitHub (pinned to 63e28dc964)
Solutions
- Ensure the server/account configuration sets the love service endpoint metadata (love.metadata.ServiceEnpdoint) before the client initializes; restart/reconnect after configuring.
- Check the deployment config (e.g. workspace/service URL settings) and add the Love service endpoint, then reload the client.
- Verify frontend and love plugin versions match so the metadata key is the one the server actually writes.
- In code, read the metadata first and bail out with a friendly message instead of constructing the client when it is undefined.
Example fix
// before
const client = new LoveClient(token)
const ep = client.endpoint // throws if metadata missing
// after
const endpoint = getMetadata(love.metadata.ServiceEnpdoint)
if (endpoint === undefined) {
console.error('Love service endpoint is not configured')
} else {
const client = new LoveClient(token)
const ep = client.endpoint
} Defensive patterns
Strategy: try-catch
Validate before calling
const endpoint = getMetadata(love.metadata.ServiceEnpdoint)
if (endpoint === undefined) {
// service not configured; do not construct/use LoveClient
return
} Type guard
function hasLoveEndpoint (ep: string | undefined): ep is string {
return typeof ep === 'string' && ep.length > 0
} Try / catch
try {
const ep = client.endpoint
} catch (err) {
if (err.message === 'Love service endpoint not found') {
showSetupRequiredNotice()
return
}
throw err
} Prevention
- Configure the love service endpoint in deployment settings before shipping the client.
- Verify after bootstrap that love.metadata.ServiceEnpdoint is set; surface a config warning early.
- Keep client and server plugin versions in sync so metadata keys match.
When it happens
Trigger: Any LoveClient method that resolves the endpoint (directly or via refreshRoomToken) runs in a client bundle that was started without the love service endpoint metadata registered, e.g. endpoint or getRoomToken called before server config is applied.
Common situations: Self-hosted deployment where the love/voximplant service URL was never configured; frontend built/started before the backend registered love.metadata.ServiceEnpdoint; typo or outdated plugin version where the metadata key name (note the 'ServiceEnpdoint' spelling) does not match what the server sets.
Related errors
- Current workspace not found
- Accounts URL or token is not defined
- Sign service endpoint url is not configured
- Accounts URL or token is not defined
- No screen access granted
AI-assisted analysis of hcengineering/platform@63e28dc964 (2026-08-29).
Data as JSON: /api/errors/0d2baf08595879a3.
Report an issue: GitHub.