Context Endpoint

Context Endpoint

Retrieve context-aware responses from your connected knowledge sources.

Quick reference

Property Value
Endpoint GET /api/v1/context
Authentication API key via Authorization header
Rate limit 5 requests per 10 seconds
Response format JSON
Cache duration 1 hour per unique query

Parameters

Parameter Type Required Description
query string Yes The question or search query. Dashes and underscores are converted to spaces.

Status codes

Code Description
200 Query successful
400 Query parameter is missing
401 API key is missing or subscription required
404 API key is invalid
429 Rate limit exceeded

Examples

Basic usage

Query your connected knowledge sources with a simple GET request:

curl -X GET "https://context-link.ai/api/v1/context?query=what-is-RAG" \
     -H "Authorization: your-api-key-here"

Response:

{
    "message": "RAG (Retrieval-Augmented Generation) is...",
    "format": "markdown"
}

Query formatting

Dashes and underscores in queries are automatically converted to spaces:

# These queries are equivalent:
?query=hello-world
?query=hello_world
?query=hello%20world

# All become: "hello world"

Python example

import requests

api_key = "your-api-key-here"
query = "what is context link"

response = requests.get(
    "https://context-link.ai/api/v1/context",
    params={"query": query},
    headers={"Authorization": api_key}
)

data = response.json()
print(data["message"])

JavaScript example

const axios = require('axios');

const apiKey = 'your-api-key-here';
const query = 'what is context link';

axios.get('https://context-link.ai/api/v1/context', {
    params: { query },
    headers: { 'Authorization': apiKey }
})
.then(response => {
    console.log(response.data.message);
})
.catch(error => {
    console.error('Error:', error.response.data);
});

Ruby example

require 'net/http'
require 'json'
require 'uri'

api_key = 'your-api-key-here'
query = 'what is context link'

uri = URI('https://context-link.ai/api/v1/context')
uri.query = URI.encode_www_form(query: query)

request = Net::HTTP::Get.new(uri)
request['Authorization'] = api_key

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
    http.request(request)
end

data = JSON.parse(response.body)
puts data['message']

Response format

All successful responses return JSON with this structure:

{
    "message": "The response content in Markdown format",
    "format": "markdown"
}

The message field contains the context-aware response generated from your connected knowledge sources. It's formatted as Markdown and may include:

  • Headings and paragraphs
  • Lists (bulleted and numbered)
  • Code blocks
  • Links to source material
  • Emphasis and formatting

Error responses

Errors follow this format:

{
    "message": "Error description"
}

Common errors:

// 400 Bad Request - Missing query
{
    "message": "A query is required"
}

// 401 Unauthorized - Missing API key
{
    "message": "API key required"
}

// 401 Unauthorized - Subscription required
{
    "message": "You need to be subscribed to access that page"
}

// 404 Not Found - Invalid API key
{
    "message": "Not found"
}