API Documentation
Welcome to the Viesearch API. Our API allows developers to interact with our search index, fetch site statistics, and submit content programmatically.
The API is public and follows RESTful principles where applicable.
General Information
The base URL for all API requests is https://viesearch.com. All responses are returned in JSON format unless otherwise specified.
Authentication: All API endpoints require a valid API key. You can find or generate your unique API key in your Account Settings. Pass the key in the x-api-key HTTP header with every request.
For endpoints that support pagination, the results per page (limit) are fixed to match the standard Viesearch platform views to ensure consistency across all interfaces. Users can navigate through results using the p parameter.
Endpoints
The primary search endpoint for the Viesearch index. Supports full-text search, category filtering, and multiple sorting strategies. Returns up to 25 results per page.
| Parameter | Type | Description |
|---|---|---|
| q * | string | The search query string. |
| c | string | Optional category slug to filter results within a specific category and its descendants. |
| s | string | Sort strategy: r (most reciprocal), v (popular results), l (most liked), c (most commented), f (featured). Default: newest additions. |
| p | number | The page number to retrieve (default: 1). |
curl -X GET "https://viesearch.com/api/search?q=curated+content" \
-H "x-api-key: vs_YOUR_API_KEY_HERE"
Fetches the full details of a specific listing using its unique token identifier. Responses are cached for 60 seconds.
| Parameter | Type | Description |
|---|---|---|
| token * | string | The unique alphanumeric token of the listing. |
curl -X GET "https://viesearch.com/api/urls/abc123" \
-H "x-api-key: vs_YOUR_API_KEY_HERE"
Returns a minimized list of all active categories. This is ideal for building search dropdowns or index navigation. Responses are cached for 24 hours.
curl -X GET "https://viesearch.com/api/categories" \
-H "x-api-key: vs_YOUR_API_KEY_HERE"
Returns a paginated list of community activity, including editor registrations and community updates. Returns up to 25 items per page.
| Parameter | Type | Description |
|---|---|---|
| p | number | The page number to retrieve (default: 1). |
curl -X GET "https://viesearch.com/api/activity" \
-H "x-api-key: vs_YOUR_API_KEY_HERE"
Returns the latest additions to the Viesearch index. Returns up to 25 results per page.
| Parameter | Type | Description |
|---|---|---|
| p | number | The page number to retrieve (default: 1). |
| s | string | Sort strategy: r (recently reciprocal), l (recently liked), c (recently commented). Default: newest additions. |
curl -X GET "https://viesearch.com/api/newest" \
-H "x-api-key: vs_YOUR_API_KEY_HERE"
Returns the most engaged listings across the platform. Returns up to 25 results per page.
| Parameter | Type | Description |
|---|---|---|
| p | number | The page number to retrieve (default: 1). |
| s | string | Sort strategy: r (most reciprocal), l (most liked), c (most commented). Default: popular results. |
curl -X GET "https://viesearch.com/api/popular" \
-H "x-api-key: vs_YOUR_API_KEY_HERE"
Returns the current set of featured listings. Returns up to 25 results per page.
| Parameter | Type | Description |
|---|---|---|
| p | number | The page number to retrieve (default: 1). |
curl -X GET "https://viesearch.com/api/featured" \
-H "x-api-key: vs_YOUR_API_KEY_HERE"
Returns the top trending searches over the last 15 minutes, including trend direction (up, down, side) and hits. Returns up to 25 results per page.
| Parameter | Type | Description |
|---|---|---|
| p | number | The page number to retrieve (default: 1). |
curl -X GET "https://viesearch.com/api/trending" \
-H "x-api-key: vs_YOUR_API_KEY_HERE"
Returns live database statistics, including total searches, submissions, indexed sites, and category counts.
curl -X GET "https://viesearch.com/api/stats" \
-H "x-api-key: vs_YOUR_API_KEY_HERE"
Returns search suggestions based on a query or trending keywords if no query is provided.
| Parameter | Type | Description |
|---|---|---|
| q | string | The search term to get suggestions for. |
curl -X GET "https://viesearch.com/api/suggestions?q=web" \
-H "x-api-key: vs_YOUR_API_KEY_HERE"
Programmatically submit a support ticket or contact message. Requires a name, valid email, and message.
| Parameter | Type | Description |
|---|---|---|
| name * | string | Sender full name. |
| email * | string | Sender valid email address. |
| message * | string | The message content. |
curl -X POST "https://viesearch.com/api/contact" \
-H "x-api-key: vs_YOUR_API_KEY_HERE" \
-H "Content-Type: application/json" \
-d '{"name": "Jane Doe", "email": "jane@example.com", "message": "API inquiry"}'
Submit a new website resource to the Viesearch index. Submissions enter a manual review queue. If you are an agency submitting for a client, you may provide their email address. However, if the client is already a registered user, the submission will be rejected.
| Parameter | Type | Description |
|---|---|---|
| url * | string | Website URL (including http/https). |
| string | Optional. Submitter email address. If omitted, defaults to the email associated with your API key. | |
| category_slug | string | Target category slug (e.g., computers_and_technology). |
| title | string | Optional custom listing title. Prevents automatic metadata fetching. |
| description | string | Optional custom listing description. Prevents automatic metadata fetching. |
curl -X POST "https://viesearch.com/api/submit" \
-H "x-api-key: vs_YOUR_API_KEY_HERE" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com", "email": "webmaster@example.com", "category_slug": "computers_and_technology", "title": "Example", "description": "Custom description"}'
Propose a new category for the Viesearch index. Suggestions are manually reviewed by our editorial team.
| Parameter | Type | Description |
|---|---|---|
| title * | string | The name of the proposed category (3-100 chars, letters/spaces only). |
| parent_slug | string | The slug of the parent category (e.g., computers_and_technology). |
curl -X POST "https://viesearch.com/api/suggest" \
-H "x-api-key: vs_YOUR_API_KEY_HERE" \
-H "Content-Type: application/json" \
-d '{"title": "New Tech", "parent_slug": "computers_and_technology"}'