REST API
The SearchBlox REST-API enables the indexing and searching of custom content using simple HTTP POST and GET actions. The REST-API can add and delete documents from Custom, HTTP and File Collections only.
SearchBlox REST-API provides methods for working with standard and custom collections by means of REST requests with JSON payloads. Index, delete, clear and check the status of custom collections, or create new custom collections using REST-API. Individual documents can also be added or deleted in HTTP and file collections.
SearchBlox Development Environment
The SearchBlox Development Environment otherwise known as API Explorer is a simple browser-based tool designed to help developers use the SearchBlox REST-API with minimal effort. This tool is part of the SearchBlox deployment and can be accessed here: https://localhost:8443/api. SearchBlox's API Explorer supports REST-JSON API.
POSTMAN is another external third-party tool that can be used with Searchblox JSON API. The settings for POSTMAN API can be found at the end of this documentation. For more details on the POSTMAN API tool, refer to https://www.getpostman.com.
Index
Index URL
REST-JSON API
https://localhost:8443/rest/v2/api/add
Method
POST
Media Type
REST-JSON API
application/json
Headers
SB-PKEY
LmfxTTDSeYxHTntJMHuhwRrGVICMaVN/wl/zPuQ3LtQDNRMnng5GpKIkgt0q1rCC/h6wDA==
Document Syntax
REST-JSON API
{
"apikey" : "5BD07C1F3E8555C66E1E5B10FCAB315F",
"document" : {
"colname" : "Custom",
"url" : "http://www.searchblox.com",
"uid" : "http://www.searchblox.com",
"location":"http://www.searchblox.com",
"alpha" : "string",
"size" : "44244",
"title" : "Text",
"keywords" : "keywords",
"description" : "SearchBlox Content Search Software",
"content" : "content",
"lastmodified" : "14 January 2021 06:19:42 GMT",
"contenttype" : "HTML",
"urllen": "300",
"meta":{
"location":"San Francisco",
"temp":"23",
"weather":"sunny"
}
}
}
Document Description
JSON key | Attribute | Value |
---|---|---|
apikey | API key from https://localhost:8443/console?page=admin&tab=license. | |
document | colname | Name of the custom collection. |
document | Location | Value of file location (URL or file path) |
document | url | URL value to be returned with search results. |
document | uid | Assigned unique identifier for a document (the URL is used as uid when unassigned). |
document | title | Title value of search results. |
keywords | Keyword value of document. | |
content | Content of document. | |
description | Description of search result. | |
lastmodified | Date in format 07 May 2015 06:19:42 GMT. | |
size | Size value. | |
alpha | Text value for sorting. | |
contenttype | Type of content value (HTML, PDF, etc.,). | |
urllen | length | |
meta | meta fields to be updated |
Response Codes
JSON
code | Description |
---|---|
100 | Document indexed successfully |
101 | Document indexing failed |
501 | Collection not found |
502 | Invalid Document URL/Location |
Update Meta Data
updatemetadata URL
REST-JSON API
https://localhost:8443/rest/v2/api/updatemetadata
Method
POST
Media Type
REST-JSON API
application/json
Headers
SB-PKEY
LmfxTTDSeYxHTntJMHuhwRrGVICMaVN/wl/zPuQ3LtQDNRMnng5GpKIkgt0q1rCC/h6wDA==
Document Syntax
REST-JSON API
{
"apikey" : "31372006F71D0A874BBE0F02894C7E0A",
"document" : {
"colname" : "custom",
"url" : "http://www.searchblox.com",
"meta":{
"location":"San Francisco",
"temp":"23",
"weather":"sunny"
}
}
}
Document Description
JSON Attribute | Description |
---|---|
apikey | API key from https://localhost:8443/console?page=admin&tab=license. |
colname | Name of the collection |
url | URL value to be returned with search results. |
meta fields | custom fields |
Response Codes
Code | Description |
---|---|
7000 | Meta Data updated successfully |
7001 | Meta Data update failed |
601 | API key is not found/invalid |
7003 | Document not found |
Delete
This is to delete documents only in a custom collection
Delete URL
REST-JSON API
https://localhost:8443/rest/v2/api/delete
Method
POST
Media Type
REST-JSON API
application/json
Headers
SB-PKEY
LmfxTTDSeYxHTntJMHuhwRrGVICMaVN/wl/zPuQ3LtQDNRMnng5GpKIkgt0q1rCC/h6wDA==
Document Syntax
REST-JSON API
{
"apikey" : "302D02144F115712204DD54596EDDCCEDD284878D3BBFA130215008BF2501E38561A439C9260D7",
"document" :
{
"colname" : "Custom_Collection", "uid" : "http://www.searchblox.com"
}
}
Document Description
JSON key | Attribute | Value |
---|---|---|
apikey | API key from https://localhost:8443/console?page=admin&tab=license. | |
document | colname | Name of the custom collection. |
document | uid | Value of unique identifier (file location or URL). |
Response Codes
JSON
2001 | Document Deleted Successfully |
2002 | Document requested for deletion does not exist. |
501 | Invalid Collection Name |
Document Status
Status URL
REST-JSON API
https://localhost:8443/rest/v2/api/status
Method
POST
Media Type
REST-JSON API
application/json
Headers
SB-PKEY
LmfxTTDSeYxHTntJMHuhwRrGVICMaVN/wl/zPuQ3LtQDNRMnng5GpKIkgt0q1rCC/h6wDA==
Document Syntax
REST-JSON API
{
"apikey" : "302D02144F115712204DD508BF2501E38561A439C9260D509DBF12952619177", "document" :
{
"colname" : "Custom_Collection", "uid" : "http://www.searchblox.com"
}
}
Document Description
JSON Tag | Attribute | Value |
---|---|---|
apikey | API key from https://localhost:8443/console?page=admin&tab=license. | |
document | colname | Name of the custom collection. |
document | uid | Value of unique identifier (URL or file location) |
Response Codes
JSON
301 | Document not found |
Clear Collection
Clear URL
REST-JSON API
https://localhost:8443/rest/v2/api/clear
Method
POST
Media Type
REST-JSON API
application/json
Headers
SB-PKEY
LmfxTTDSeYxHTntJMHuhwRrGVICMaVN/wl/zPuQ3LtQDNRMnng5GpKIkgt0q1rCC/h6wDA==
Document Syntax
REST-JSON API
{
"apikey" : "302D02144F115712204DD54596EDDCCEDD284878D3BBFA130215008BF2501E38561A439C9260D509DBF12952619177",
"document" :
{
"colname" : "Custom_Collection"
}
}
Document Description
JSON Tag | Attribute | Value |
---|---|---|
apikey | API key from https://localhost:8443/console?page=admin&tab=license. | |
document | colname | Name of the custom collection. |
Response
JSON
400 | Collection has been cleared successfully |
501 | Collection not found |
Add collection
You can add a new custom collection through REST-API using JSON payload using the details provided here.
Add Collection URL
REST-JSON API
https://localhost:8443/rest/v2/api/coladd
Method
POST
Media Type
REST-JSON API
application/json
Headers
SB-PKEY
LmfxTTDSeYxHTntJMHuhwRrGVICMaVN/wl/zPuQ3LtQDNRMnng5GpKIkgt0q1rCC/h6wDA==
Document Syntax
REST-JSON API
{
"apikey" : "DAB42B6BDDFDD1F079C12B2FFEDCB92E5",
"public": true,
"encrypt": false,
"document" :
{
"colname" : "custom",
"coltype":"custom",
"language" : "en"
}
}
Document Description
JSON Key | Attribute | Value |
---|---|---|
document | colname | Name of the custom collection. |
language | Language of the collection specified in standard two letter code. https://developer.searchblox.com/docs/supported-languages | |
coltype | Type of collection. | |
public | public | Collection access type either true or false. If "true", then access type is "public". If "false", then access type is "private" |
encrypt | encrypt | Collection encryption either true or false. |
Response Codes
JSON
900 | Custom collection with name <colname> has been created |
400 | Failed creating custom collection |
Delete Collection
You can delete existing custom collections through REST-API using JSON payload using the details given here.
Delete Collection URL
REST-JSON API
https://localhost:8443/rest/v2/api/coldelete
Method
POST
Media Type
REST-JSON API
application/json
Headers
SB-PKEY
LmfxTTDSeYxHTntJMHuhwRrGVICMaVN/wl/zPuQ3LtQDNRMnng5GpKIkgt0q1rCC/h6wDA==
Document Syntax
REST-JSON API
{
"apikey" : "5BD07C1F3E8555C66E1E5B10FCAB315F",
"document" :
{
"colname" : "Custom_Collection"
}
}
Document Description
JSON Tag | Attribute | Value |
---|---|---|
apikey | API key from https://localhost:8443/console?page=admin&tab=license. | |
document | colname | Name of the custom collection. |
Response
JSON
800 | Custom collection with name <colname> has been deleted. |
501 | Collection does not exist |
Add/Update Document
You can add documents to an HTTP collection or File collection through REST-API using JSON payload using the details given here.
Add/update Document URL
REST-JSON API
https://localhost:8443/rest/v2/api/docadd
Method
POST
Media Type
REST-JSON API
application/json
Headers
SB-PKEY
LmfxTTDSeYxHTntJMHuhwRrGVICMaVN/wl/zPuQ3LtQDNRMnng5GpKIkgt0q1rCC/h6wDA==
Document Syntax
REST-JSON API
{
"apikey" : "5BD07C1F3E8555C66E1E5B10FCAB315F", "document" :
{
"colname" : "CollectionName", "location" : "http://www.searchblox.com"
}
}
Document Description
JSON Tag | Attribute | Value |
---|---|---|
searchblox | apikey | API key from https://localhost:8443/console?page=admin&tab=license. |
document | colname | Name of the Http or file collection. |
document | location | Value of file location (URL or file location) |
Response
JSON
1001 | Document has been added/updated successfully |
1002 | Document add/update failed |
501 | Collection not found |
Delete Document
You can delete documents from an HTTP collection or File collection through REST-API from the Delete Document tab in API, using the JSON code given in the following Document Syntax section.
Delete Document URL
REST-JSON API
https://localhost:8443/rest/v2/api/docdelete
Method
POST
Media Type
REST-JSON API
application/json
Headers
SB-PKEY
LmfxTTDSeYxHTntJMHuhwRrGVICMaVN/wl/zPuQ3LtQDNRMnng5GpKIkgt0q1rCC/h6wDA==
Document Syntax
REST-JSON API
{
"apikey" : "5BD07C1F3E8555C66E1E5B10FCAB315F", "document" :
{
"colname" : "CollectionName", "location" : "http://www.searchblox.com"
}
}
Document Description
JSON Tag | Attribute | Value |
---|---|---|
document | colname | Name of the HTTP or file collection. |
document | location | Value of file location (URL or file location) |
Response
JSON
2001 | Document Deleted Successfully |
502 | Invalid Document Location |
501 | Collection not found |
Response Codes
Document Syntax
{
"statusCode": 100,
"message": "Document indexed successfully",
"success": true
}
Status Code Description
100 | Document indexed successfully |
101 | Document indexing failed |
2001 | Document Deleted Successfully |
2002 | Document delete failed. |
301 | Document Not Found |
400 | Collection has been cleared successfully |
401 | Clearing collection failed |
501 | Collection not found |
501 | Invalid Request |
502 | Invalid Document Location |
503 | Specified collection is not a CUSTOM collection. |
506 | Invalid Document UID |
800 | Custom collection with name has been deleted. |
900 | Custom collection with name has been created |
1001 | Document Added Successfully |
1002 | Document Couldn't Be Reached |
2001 | Document Deleted Successfully |
2002 | Specified collection is not a custom collection. |
Settings in POSTMAN API
Postman API is a third-party tool that can be used with SearchBlox API. The prerequisite settings that are required to work with SearchBlox API are as follows:
- URL to be given for each API function as mentioned under each function in the preceding documentation.
- Method to be selected is POST for all functions.
- Header to be added is Content-Type, which has to be given as a header. The value for the header for JSON API is application/json. This could be also done by selecting the dropdown JSON as required.
- Header parameter to be added is SB-PKEY. Value can be found in the Admin Users List for Super Admin and Admin users.
The screenshots JSON API on settings and result are given here. Select raw to view the status code for JSON API.
##JSON API POSTMAN settings
Updated about 3 years ago