{"record":{"id":"9f9dc71e51a72c9d","repo":"Semantic-Org/Semantic-UI","slug":"no-search-endpoint-was-specified","errorCode":null,"errorMessage":"No search endpoint was specified","messagePattern":"No search endpoint was specified","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/definitions/modules/search.js","lineNumber":1302,"sourceCode":"  onResultsOpen  : function(){},\n  onResultsClose : function(){},\n\n  className: {\n    animating : 'animating',\n    active    : 'active',\n    empty     : 'empty',\n    focus     : 'focus',\n    hidden    : 'hidden',\n    loading   : 'loading',\n    results   : 'results',\n    pressed   : 'down'\n  },\n\n  error : {\n    source          : 'Cannot search. No source used, and Semantic API module was not included',\n    noResults       : 'Your search returned no results',\n    logging         : 'Error in debug logging, exiting.',\n    noEndpoint      : 'No search endpoint was specified',\n    noTemplate      : 'A valid template name was not specified.',\n    oldSearchSyntax : 'searchFullText setting has been renamed fullTextSearch for consistency, please adjust your settings.',\n    serverError     : 'There was an issue querying the server.',\n    maxResults      : 'Results must be an array to use maxResults setting',\n    method          : 'The method you called is not defined.'\n  },\n\n  metadata: {\n    cache   : 'cache',\n    results : 'results',\n    result  : 'result'\n  },\n\n  regExp: {\n    escape     : /[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g,\n    beginsWith : '(?:\\s|^)'\n  },\n","sourceCodeStart":1284,"sourceCodeEnd":1320,"githubUrl":"https://github.com/Semantic-Org/Semantic-UI/blob/597843ab84d565cccfd8fd7719416350ae73e734/src/definitions/modules/search.js#L1284-L1320","documentation":"The noEndpoint string lives in search.js settings.error but search.js itself never calls module.error(error.noEndpoint). Endpoint configuration is delegated to the Semantic UI api module via $module.api(apiSettings) with action 'search' (search.js:335-361). When apiSettings has no url/action-url, the api module (not search) is what surfaces the missing-endpoint condition. So in this module the string is effectively unused documentation of that scenario.","triggerScenarios":"Remote search is enabled ($.fn.api is present) but apiSettings.url and any action-url mapping are missing; the search module calls $module.api({action:'search', urlData:{query:q}}) with no resolvable endpoint, and the api layer reports the missing endpoint rather than search.js logging noEndpoint.","commonSituations":"Passing apiSettings without a url; relying on a default action URL that was never registered with $.fn.api.settings.api; typos in the url template; assuming search reads settings.url directly (it does not — it goes through api).","solutions":["Provide apiSettings.url (e.g. '/api/search?q={query}') so the api module has an endpoint.","Register the 'search' action URL via $.fn.api.settings.api.search = '/api/search?q={query}'.","Verify $.fn.api is loaded and that the resolved URL is non-empty before triggering a remote query."],"exampleFix":"// before\n$('.ui.search').search({ apiSettings: { action: 'search' } }); // no url -> api reports missing endpoint\n\n// after\n$('.ui.search').search({\n  type: 'standard',\n  apiSettings: { url: '/api/search?q={query}' }\n});","handlingStrategy":"validation","validationCode":"// Validate an endpoint resolves before enabling remote search\nvar url = (cfg.apiSettings && cfg.apiSettings.url) || ($.fn.api && $.fn.api.settings && $.fn.api.settings.api && $.fn.api.settings.api.search);\nif (!url) throw new Error('Search has no api endpoint url configured.');\n$('.ui.search').search(cfg);","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Always set apiSettings.url for remote search.","Register action URLs via $.fn.api.settings.api.search.","Verify $.fn.api is present and the resolved URL is non-empty."],"tags":["search","endpoint","api-module","semantic-ui","network"],"backgroundTag":null,"analyzedSha":"597843ab84d565cccfd8fd7719416350ae73e734","analyzedAt":"2026-08-13T01:44:23.827Z","schemaVersion":2},"datasetVersion":"2026-08-13T04:17:16.726Z"}