Skip to main content
Endpoint
POST /search/v1/search
curl -X POST https://api.case.dev/search/v1/search \
  -H "Authorization: Bearer sk_case_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "medical malpractice statute of limitations California",
    "numResults": 20,
    "includeText": true
  }'
casedev search:v1 search \
  --query "search query" \
  --num-results 20 --include-text
import Casedev from 'casedev';

const client = new Casedev({ apiKey: 'sk_case_YOUR_API_KEY' });

const results = await client.search.v1.search({
  query: 'medical malpractice statute of limitations California',
  numResults: 20,
  includeText: true
});

for (const result of results.results) {
  console.log(result.title, result.url);
}
import casedev

client = casedev.Casedev(api_key='sk_case_YOUR_API_KEY')

results = client.search.v1.search(
    query='medical malpractice statute of limitations California',
    num_results=20,
    include_text=True
)

for result in results.results:
    print(result.title, result.url)
results, _ := client.Search.V1.Search(ctx, casedev.SearchV1SearchParams{
	Query:      casedev.F("search query"),
	NumResults: casedev.F(int64(20)),
	IncludeText: casedev.F(true),
})
for _, r := range results.Results {
	fmt.Println(r.Title, r.URL)
}
Response
{
  "results": [
    {
      "title": "California Medical Malpractice Laws",
      "url": "https://law.cornell.edu/california/medical-malpractice",
      "publishedDate": "2024-03-15",
      "score": 0.95,
      "text": "California Code of Civil Procedure Section 340.5..."
    }
  ]
}

Parameters

ParameterTypeDefaultDescription
querystringRequiredSearch query
numResultsnumber10Number of results (max 100)
typestringautoauto, keyword, or neural
includeDomainsarrayOnly include these domains
excludeDomainsarrayExclude these domains
startPublishedDatestringPublished after (ISO date)
endPublishedDatestringPublished before (ISO date)
includeTextbooleanfalseInclude page text in results

Examples

casedev search:v1 search \
  --query "HIPAA compliance requirements" \
  --include-domain law.cornell.edu \
  --include-domain hhs.gov \
  --include-domain findlaw.com \
  --num-results 20 --include-text
const results = await client.search.v1.search({
  query: 'HIPAA compliance requirements',
  includeDomains: ['law.cornell.edu', 'hhs.gov', 'findlaw.com'],
  numResults: 20,
  includeText: true
});
results = client.search.v1.search(
    query='HIPAA compliance requirements',
    include_domains=['law.cornell.edu', 'hhs.gov', 'findlaw.com'],
    num_results=20,
    include_text=True
)
results, _ := client.Search.V1.Search(ctx, casedev.SearchV1SearchParams{
    Query:          casedev.F("HIPAA compliance requirements"),
    IncludeDomains: casedev.F([]string{"law.cornell.edu", "hhs.gov", "findlaw.com"}),
    NumResults:     casedev.F(int64(20)),
    IncludeText:    casedev.F(true),
})

News search with date range

casedev search:v1 search \
  --query "SEC cryptocurrency enforcement" \
  --start-published-date 2024-01-01 \
  --exclude-domain reddit.com \
  --exclude-domain twitter.com \
  --type keyword
const results = await client.search.v1.search({
  query: 'SEC cryptocurrency enforcement',
  startPublishedDate: '2024-01-01',
  excludeDomains: ['reddit.com', 'twitter.com'],
  type: 'keyword'
});
results = client.search.v1.search(
    query='SEC cryptocurrency enforcement',
    start_published_date='2024-01-01',
    exclude_domains=['reddit.com', 'twitter.com'],
    type='keyword'
)
results, _ := client.Search.V1.Search(ctx, casedev.SearchV1SearchParams{
    Query:              casedev.F("SEC cryptocurrency enforcement"),
    StartPublishedDate: casedev.F("2024-01-01"),
    ExcludeDomains:     casedev.F([]string{"reddit.com", "twitter.com"}),
    Type:               casedev.F(casedev.SearchV1SearchParamsTypeKeyword),
})

Company research

casedev search:v1 search \
  --query "Acme Corporation lawsuit settlement" \
  --include-domain reuters.com \
  --include-domain bloomberg.com \
  --include-domain wsj.com \
  --start-published-date 2023-01-01 \
  --include-text
const results = await client.search.v1.search({
  query: 'Acme Corporation lawsuit settlement',
  includeDomains: ['reuters.com', 'bloomberg.com', 'wsj.com'],
  startPublishedDate: '2023-01-01',
  includeText: true
});
results = client.search.v1.search(
    query='Acme Corporation lawsuit settlement',
    include_domains=['reuters.com', 'bloomberg.com', 'wsj.com'],
    start_published_date='2023-01-01',
    include_text=True
)
results, _ := client.Search.V1.Search(ctx, casedev.SearchV1SearchParams{
    Query:              casedev.F("Acme Corporation lawsuit settlement"),
    IncludeDomains:     casedev.F([]string{"reuters.com", "bloomberg.com", "wsj.com"}),
    StartPublishedDate: casedev.F("2023-01-01"),
    IncludeText:        casedev.F(true),
})
Tip: Use includeDomains to restrict results to authoritative sources.