Person Article Search API

Try Playground View All Person APIs

Discover articles, publications, interviews, podcasts, and research papers about a person.

API Endpoint

https://api.nyne.ai/person/articlesearch

What This API Does

Search for publicly available content featuring or written by a specific person. Results include articles, podcasts, videos, research papers, and other published content.

Getting Started

The Person Article Search API helps you find published content about or by a person. Simply provide a person's name and their company, and get back a curated list of relevant articles, interviews, podcasts, and more.

Asynchronous Processing

This API uses asynchronous processing. When you submit a request, it is queued for processing and you receive a request_id. Use this request_id to check the status and retrieve results when processing is complete.

Quick Example

# Step 1: Submit a search request curl -X POST "https://api.nyne.ai/person/articlesearch" \ -H "X-API-Key: your_api_key_here" \ -H "X-API-Secret: your_api_secret_here" \ -H "Content-Type: application/json" \ -d '{ "name": "John Doe", "company": "Acme Corp", "sort": "recent", "limit": 5 }' # Step 2: Check status and get results curl -X GET "https://api.nyne.ai/person/articlesearch?request_id=YOUR_REQUEST_ID" \ -H "X-API-Key: your_api_key_here" \ -H "X-API-Secret: your_api_secret_here"

Authentication

All API requests require authentication using your API key and secret. Include them in the request headers:

X-API-Key: your_api_key_hereX-API-Secret: your_api_secret_here

You can obtain your API credentials from your account dashboard.

Rate Limits

API usage is controlled by rate limiting mechanisms to ensure fair usage and system stability:

  • Per Minute: 60 requests
  • Per Hour: 1000 requests
  • Monthly: Varies by plan

Cost: Each request uses 4 credits.

POST /person/articlesearch

Submit a request to search for articles, publications, interviews, podcasts, and research papers about a person. The request is queued for processing and returns a request_id that you can use to check status and retrieve results.

POST /person/articlesearch

Parameters

name (string, required)
The person's name to search for
Example: "John Doe"
company (string, required)
The company name or domain where the person works
Example: "Acme Corp" or "acme.com"
sort (string, optional)
Sort order for results
Values: "recent" (default) or "popular"
Default: "recent"
  • recent: Sort by publication date (most recent first)
  • popular: Sort by popularity and relevance
limit (integer, optional)
Maximum number of results to return
Default: 5
Maximum: 20
Example: 10
callback_url (string, optional)
HTTPS endpoint to receive results when processing is complete
Example: "https://yourapp.com/webhook/articlesearch"

Example Request

curl -X POST "https://api.nyne.ai/person/articlesearch" \ -H "X-API-Key: YOUR_API_KEY" \ -H "X-API-Secret: YOUR_API_SECRET" \ -H "Content-Type: application/json" \ -d '{ "name": "John Doe", "company": "Acme Corp", "sort": "recent", "limit": 5 }'

Example Response (Queued)

{ "success": true, "data": { "request_id": "abc123def456", "status": "queued", "message": "Article search request queued. Use GET /person/articlesearch?request_id=... to check status." } }

Content Types

The API returns the following content types:

  • article: News articles, blog posts, and written publications
  • podcast: Podcast appearances and interviews
  • youtube: Video content and interviews
  • research_paper: Academic papers and research publications

GET /person/articlesearch

Check the status of an article search request and retrieve results when processing is complete.

GET /person/articlesearch

Parameters

request_id (string, required)
The request ID returned from the POST request
Example: abc123def456

Example Request

curl -X GET "https://api.nyne.ai/person/articlesearch?request_id=abc123def456" \ -H "X-API-Key: YOUR_API_KEY" \ -H "X-API-Secret: YOUR_API_SECRET"

Example Response (Processing)

{ "success": true, "data": { "request_id": "abc123def456", "status": "processing", "completed": false, "data": null, "error": null, "created_on": "2024-01-15T10:30:00Z", "completed_on": null } }

Example Response (Completed)

{ "success": true, "data": { "request_id": "abc123def456", "status": "completed", "completed": true, "data": { "articles": [ { "link": "https://example.com/article", "summary": "Brief summary of the content", "title": "Title of the page or content", "type": "article", "keywords": ["keyword1", "keyword2", "keyword3"], "date": { "year": 2024, "month": 1, "day": 15 }, "sortrank": 1, "ranktype": "recent" } ], "count": 1 }, "error": null, "created_on": "2024-01-15T10:30:00Z", "completed_on": "2024-01-15T10:35:00Z" } }

Status Values

  • pending: Request is queued and waiting to be processed
  • processing: Request is currently being processed
  • completed: Request completed successfully and results are available
  • failed: Request failed (check the error field for details)

Response Format

All API responses follow a consistent JSON format:

POST Response (Queued)

{ "success": true, "data": { "request_id": "abc123def456", "status": "queued", "message": "Article search request queued. Use GET /person/articlesearch?request_id=... to check status." } }

GET Response (Completed)

{ "success": true, "data": { "request_id": "abc123def456", "status": "completed", "completed": true, "data": { "articles": [ { "link": "https://example.com/article", "summary": "Brief summary", "title": "Article Title", "type": "article", "keywords": ["keyword1", "keyword2"], "date": { "year": 2024, "month": 1, "day": 15 }, "sortrank": 1, "ranktype": "recent" } ], "count": 1 }, "error": null, "created_on": "2024-01-15T10:30:00Z", "completed_on": "2024-01-15T10:35:00Z" } }

Error Response

{ "success": false, "error": { "code": "missing_parameters", "message": "name parameter is required" } }

Callback System

When you provide a callback_url, the API will send the article search results to your endpoint via HTTP POST when processing is complete.

Callback Request Format

{ "request_id": "abc123def456", "status": "completed", "completed": true, "data": { "articles": [ { "link": "https://example.com/article", "summary": "Brief summary", "title": "Article Title", "type": "article", "keywords": ["keyword1", "keyword2"], "date": { "year": 2024, "month": 1, "day": 15 } } ], "count": 1 }, "error": null, "timestamp": "2024-01-15T10:35:00Z" }

Callback Retry Policy

  • Maximum 5 retry attempts
  • Exponential backoff: 1s, 5s, 15s, 1m, 5m
  • 30-second timeout per request
  • Your endpoint should return HTTP 2xx for success
Important: Your callback endpoint should respond with HTTP 200-299 to indicate successful receipt. Any other response code will trigger a retry.

Error Codes

Error Code HTTP Status Description
missing_parameters 400 Required parameters are missing (name or company)
invalid_parameters 400 Invalid parameter values (e.g., invalid sort value)
missing_credentials 401 API key or secret is missing
invalid_credentials 401 API key or secret is invalid
rate_limit_exceeded 429 Rate limit has been exceeded
insufficient_credits 403 Insufficient credits to complete the request
internal_error 500 An internal server error occurred

Try EZ Tool for a no-code interface | Open Playground