ProRata.ai Threads API
The Threads API from ProRata.ai — 2 operation(s) for threads.
The Threads API from ProRata.ai — 2 operation(s) for threads.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/prorataai-threads-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Prorata API Service Threads API
version: 1.0.0
description: API for chat, threads, questions, and publisher management
servers:
- url: /v1
description: API v1
tags:
- name: Threads
paths:
/v1/threads:
get:
summary: List all chat threads (Advanced)
description: '**Authentication Required**: This endpoint requires a valid API key.
Returns a list of chat threads with optional pagination.
**Rate Limiting**: This endpoint is subject to rate limiting based on your organization''s settings.
The response headers will include:
- `X-RateLimit-Limit`: Maximum requests allowed in the current time window
- `X-RateLimit-Remaining`: Number of requests remaining
- `X-RateLimit-Reset`: Unix timestamp when the rate limit resets
'
tags:
- Threads
security:
- apiKeyAuth: []
parameters:
- in: header
name: X-User-ID
required: true
schema:
type: string
description: Unique identifier for the user making the request
- in: query
name: startAt
schema:
type: integer
minimum: 0
description: Starting index for pagination
- in: query
name: maxResults
schema:
type: integer
minimum: 0
description: Maximum number of results to return
responses:
'200':
description: List of threads
headers:
X-RateLimit-Limit:
$ref: '#/components/headers/X-RateLimit-Limit'
X-RateLimit-Remaining:
$ref: '#/components/headers/X-RateLimit-Remaining'
X-RateLimit-Reset:
$ref: '#/components/headers/X-RateLimit-Reset'
content:
application/json:
schema:
type: object
properties:
threads:
type: array
items:
type: object
properties:
threadId:
type: string
description: Unique thread identifier
threadTitle:
type: string
description: Title of the thread
lastInteraction:
type: number
description: Timestamp of last interaction
turns:
type: array
items:
type: object
properties:
turnId:
type: string
description: Turn identifier
userPrompt:
type: string
description: User's question/prompt
response:
type: string
description: AI's response
total:
type: number
description: Total number of threads
'401':
description: Unauthorized - Invalid or missing API key
'429':
description: Too Many Requests - Your request was rejected due to rate limit restrictions
headers:
X-RateLimit-Limit:
$ref: '#/components/headers/X-RateLimit-Limit'
X-RateLimit-Remaining:
$ref: '#/components/headers/X-RateLimit-Remaining'
X-RateLimit-Reset:
$ref: '#/components/headers/X-RateLimit-Reset'
content:
application/json:
schema:
type: object
properties:
error:
type: string
example: Too Many Requests
message:
type: string
example: Rate limit exceeded
statusCode:
type: integer
example: 429
'500':
description: Internal server error
/v1/threads/{threadId}:
get:
summary: Get a specific thread (Advanced)
description: '**Authentication Required**: This endpoint requires a valid API key.
Returns detailed information about a specific chat thread.
**Rate Limiting**: This endpoint is subject to rate limiting based on your organization''s settings.
The response headers will include:
- `X-RateLimit-Limit`: Maximum requests allowed in the current time window
- `X-RateLimit-Remaining`: Number of requests remaining
- `X-RateLimit-Reset`: Unix timestamp when the rate limit resets
'
tags:
- Threads
security:
- apiKeyAuth: []
parameters:
- in: header
name: X-User-ID
required: true
schema:
type: string
description: Unique identifier for the user making the request
- in: path
name: threadId
required: true
schema:
type: string
description: Thread ID to retrieve
responses:
'200':
description: Thread details
headers:
X-RateLimit-Limit:
$ref: '#/components/headers/X-RateLimit-Limit'
X-RateLimit-Remaining:
$ref: '#/components/headers/X-RateLimit-Remaining'
X-RateLimit-Reset:
$ref: '#/components/headers/X-RateLimit-Reset'
content:
application/json:
schema:
type: object
properties:
threadId:
type: string
description: Unique thread identifier
threadTitle:
type: string
description: Title of the thread
lastInteraction:
type: number
description: Timestamp of last interaction
turns:
type: array
items:
type: object
properties:
turnId:
type: string
description: Turn identifier
userPrompt:
type: string
description: User's question/prompt
response:
type: string
description: AI's response
citations:
type: object
description: Citation information
attributions:
type: object
description: Attribution information
responseTime:
type: number
description: Response generation time in ms
'401':
description: Unauthorized - Invalid or missing API key
'404':
description: Thread not found
'429':
description: Too Many Requests - Your request was rejected due to rate limit restrictions
headers:
X-RateLimit-Limit:
$ref: '#/components/headers/X-RateLimit-Limit'
X-RateLimit-Remaining:
$ref: '#/components/headers/X-RateLimit-Remaining'
X-RateLimit-Reset:
$ref: '#/components/headers/X-RateLimit-Reset'
content:
application/json:
schema:
type: object
properties:
error:
type: string
example: Too Many Requests
message:
type: string
example: Rate limit exceeded
statusCode:
type: integer
example: 429
'500':
description: Internal server error
delete:
summary: Delete a thread (Advanced)
description: '**Authentication Required**: This endpoint requires a valid API key.
Permanently deletes a chat thread and all its associated turns.
**Rate Limiting**: This endpoint is subject to rate limiting based on your organization''s settings.
The response headers will include:
- `X-RateLimit-Limit`: Maximum requests allowed in the current time window
- `X-RateLimit-Remaining`: Number of requests remaining
- `X-RateLimit-Reset`: Unix timestamp when the rate limit resets
'
tags:
- Threads
security:
- apiKeyAuth: []
parameters:
- in: header
name: X-User-ID
required: true
schema:
type: string
description: Unique identifier for the user making the request
- in: path
name: threadId
required: true
schema:
type: string
description: Thread ID to delete
responses:
'204':
description: Thread successfully deleted
headers:
X-RateLimit-Limit:
$ref: '#/components/headers/X-RateLimit-Limit'
X-RateLimit-Remaining:
$ref: '#/components/headers/X-RateLimit-Remaining'
X-RateLimit-Reset:
$ref: '#/components/headers/X-RateLimit-Reset'
'401':
description: Unauthorized - Invalid or missing API key
'404':
description: Thread not found
'429':
description: Too Many Requests - Your request was rejected due to rate limit restrictions
headers:
X-RateLimit-Limit:
$ref: '#/components/headers/X-RateLimit-Limit'
X-RateLimit-Remaining:
$ref: '#/components/headers/X-RateLimit-Remaining'
X-RateLimit-Reset:
$ref: '#/components/headers/X-RateLimit-Reset'
content:
application/json:
schema:
type: object
properties:
error:
type: string
example: Too Many Requests
message:
type: string
example: Rate limit exceeded
statusCode:
type: integer
example: 429
'500':
description: Internal server error
components:
headers:
X-RateLimit-Remaining:
description: Number of requests remaining in the current time window
schema:
type: integer
X-RateLimit-Limit:
description: Maximum requests allowed in the current time window
schema:
type: integer
X-RateLimit-Reset:
description: Unix timestamp when the rate limit resets
schema:
type: integer
securitySchemes:
apiKeyAuth:
type: apiKey
in: header
name: Authorization
description: Add your API key with the Bearer prefix (e.g., "Bearer YOUR-API-KEY")