ArthurAI Inferences API
Endpoints for querying past inferences
Endpoints for querying past inferences
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/arthurai-inferences-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.1.0
info:
title: Arthur GenAI Engine Agent Discovery Inferences API
version: 2.1.688
description: Endpoints for querying past inferences
tags:
- name: Inferences
description: Endpoints for querying past inferences
paths:
/api/v2/inferences/query:
get:
tags:
- Inferences
summary: Query Inferences
description: Paginated inference querying. See parameters for available filters. Includes inferences from archived tasks and rules.
operationId: query_inferences_api_v2_inferences_query_get
security:
- API Key: []
parameters:
- name: task_ids
in: query
required: false
schema:
type: array
items:
type: string
description: Task ID to filter on.
default: []
title: Task Ids
description: Task ID to filter on.
- name: task_name
in: query
required: false
schema:
type: string
description: Task name to filter on.
title: Task Name
description: Task name to filter on.
- name: conversation_id
in: query
required: false
schema:
type: string
description: Conversation ID to filter on.
title: Conversation Id
description: Conversation ID to filter on.
- name: inference_id
in: query
required: false
schema:
type: string
description: Inference ID to filter on.
title: Inference Id
description: Inference ID to filter on.
- name: user_id
in: query
required: false
schema:
type: string
description: User ID to filter on.
title: User Id
description: User ID to filter on.
- name: start_time
in: query
required: false
schema:
type: string
format: date-time
description: Inclusive start date in ISO8601 string format.
title: Start Time
description: Inclusive start date in ISO8601 string format.
- name: end_time
in: query
required: false
schema:
type: string
format: date-time
description: Exclusive end date in ISO8601 string format.
title: End Time
description: Exclusive end date in ISO8601 string format.
- name: rule_types
in: query
required: false
schema:
type: array
items:
$ref: '#/components/schemas/RuleType'
description: List of RuleType to query for. Any inference that ran any rule in the list will be returned. Defaults to all statuses. If used in conjunction with with rule_statuses, will return inferences with rules in the intersection of rule_types and rule_statuses.
default: []
title: Rule Types
description: List of RuleType to query for. Any inference that ran any rule in the list will be returned. Defaults to all statuses. If used in conjunction with with rule_statuses, will return inferences with rules in the intersection of rule_types and rule_statuses.
- name: rule_statuses
in: query
required: false
schema:
type: array
items:
$ref: '#/components/schemas/RuleResultEnum'
description: List of RuleResultEnum to query for. Any inference with any rule status in the list will be returned. Defaults to all statuses. If used in conjunction with with rule_types, will return inferences with rules in the intersection of rule_statuses and rule_types.
default: []
title: Rule Statuses
description: List of RuleResultEnum to query for. Any inference with any rule status in the list will be returned. Defaults to all statuses. If used in conjunction with with rule_types, will return inferences with rules in the intersection of rule_statuses and rule_types.
- name: prompt_statuses
in: query
required: false
schema:
type: array
items:
$ref: '#/components/schemas/RuleResultEnum'
description: List of RuleResultEnum to query for at inference prompt stage level. Must be 'Pass' / 'Fail'. Defaults to both.
default: []
title: Prompt Statuses
description: List of RuleResultEnum to query for at inference prompt stage level. Must be 'Pass' / 'Fail'. Defaults to both.
- name: response_statuses
in: query
required: false
schema:
type: array
items:
$ref: '#/components/schemas/RuleResultEnum'
description: List of RuleResultEnum to query for at inference response stage level. Must be 'Pass' / 'Fail'. Defaults to both. Inferences missing responses will not be affected by this filter.
default: []
title: Response Statuses
description: List of RuleResultEnum to query for at inference response stage level. Must be 'Pass' / 'Fail'. Defaults to both. Inferences missing responses will not be affected by this filter.
- name: include_count
in: query
required: false
schema:
type: boolean
description: Whether to include the total count of matching inferences. Set to False to improve query performance for large datasets. Count will be returned as -1 if set to False.
default: true
title: Include Count
description: Whether to include the total count of matching inferences. Set to False to improve query performance for large datasets. Count will be returned as -1 if set to False.
- name: sort
in: query
required: false
schema:
$ref: '#/components/schemas/PaginationSortMethod'
description: Sort the results (asc/desc)
default: desc
description: Sort the results (asc/desc)
- name: page_size
in: query
required: false
schema:
type: integer
description: Page size. Default is 10. Must be greater than 0 and less than 5000.
default: 10
title: Page Size
description: Page size. Default is 10. Must be greater than 0 and less than 5000.
- name: page
in: query
required: false
schema:
type: integer
description: Page number
default: 0
title: Page
description: Page number
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/QueryInferencesResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
HallucinationClaimResponse:
properties:
claim:
type: string
title: Claim
valid:
type: boolean
title: Valid
reason:
type: string
title: Reason
order_number:
anyOf:
- type: integer
- type: 'null'
title: Order Number
description: This field is a helper for ordering the claims
default: -1
type: object
required:
- claim
- valid
- reason
title: HallucinationClaimResponse
KeywordDetailsResponse:
properties:
score:
anyOf:
- type: boolean
- type: 'null'
title: Score
message:
anyOf:
- type: string
- type: 'null'
title: Message
keyword_matches:
items:
$ref: '#/components/schemas/KeywordSpanResponse'
type: array
title: Keyword Matches
description: Each keyword in this list corresponds to a keyword that was both configured in the rule that was run and found in the input text.
default: []
additionalProperties: false
type: object
title: KeywordDetailsResponse
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
QueryInferencesResponse:
properties:
count:
type: integer
title: Count
description: The total number of inferences matching the query parameters
inferences:
items:
$ref: '#/components/schemas/ExternalInference'
type: array
title: Inferences
description: List of inferences matching the search filters. Length is less than or equal to page_size parameter
type: object
required:
- count
- inferences
title: QueryInferencesResponse
example:
count: 1
inferences:
- conversation_id: 957df309-c907-4b77-abe5-15dd00c08112
created_at: 1723204737120
id: 957df309-c907-4b77-abe5-15dd00c081f7
inference_feedback:
- created_at: '2024-08-09T12:08:34.847381'
id: 0d602e5c-4ae6-4fc9-a610-68a1d8928ad7
inference_id: 957df309-c907-4b77-abe5-15dd00c081f7
reason: Perfect answer.
score: 100
target: context
updated_at: '2024-08-09T12:08:34.847386'
user_id: 957df309-2137-4b77-abe5-15dd00c081f8
inference_prompt:
created_at: 1723204737121
id: 834f7ebd-cd6b-4691-9473-8bc350f8922c
inference_id: 957df309-c907-4b77-abe5-15dd00c081f7
message: How many stars are in the solar system?
prompt_rule_results:
- id: bc599a56-2e31-4cb7-910d-9e5ed6455db2
latency_ms: 73
name: My_PII_Rule
result: Pass
rule_type: PIIDataRule
scope: default
result: Pass
tokens: 100
updated_at: 1723204737121
inference_response:
context: Solar system contains one star.
created_at: 1723204786599
id: ec765a75-1479-4938-8e1c-6334b7deb8ce
inference_id: 957df309-c907-4b77-abe5-15dd00c081f7
message: There is one star in solar system.
response_rule_results:
- id: a45267c5-96d9-4de2-a871-debf2c8fdb86
latency_ms: 107
name: My_another_PII_Rule
result: Pass
rule_type: PIIDataRule
scope: default
- details:
claims:
- claim: There is one star in solar system.
order_number: 0
reason: No hallucination detected!
valid: true
message: All claims were supported by the context!
pii_entities: []
pii_results: []
score: true
id: 92b7b46e-eaf2-4226-82d4-be12ceb3e4b7
latency_ms: 700
name: My_Hallucination_Rule
result: Pass
rule_type: ModelHallucinationRuleV2
scope: default
result: Pass
tokens: 100
updated_at: 1723204786599
result: Pass
task_id: 957df309-c907-4b77-abe5-15dd00c081f8
task_name: My task name
updated_at: 1723204787050
user_id: 957df309-2137-4b77-abe5-15dd00c081f8
ExternalInference:
properties:
id:
type: string
title: Id
result:
$ref: '#/components/schemas/RuleResultEnum'
created_at:
type: integer
title: Created At
updated_at:
type: integer
title: Updated At
task_id:
anyOf:
- type: string
- type: 'null'
title: Task Id
task_name:
anyOf:
- type: string
- type: 'null'
title: Task Name
conversation_id:
anyOf:
- type: string
- type: 'null'
title: Conversation Id
inference_prompt:
$ref: '#/components/schemas/ExternalInferencePrompt'
inference_response:
anyOf:
- $ref: '#/components/schemas/ExternalInferenceResponse'
- type: 'null'
inference_feedback:
items:
$ref: '#/components/schemas/InferenceFeedbackResponse'
type: array
title: Inference Feedback
user_id:
anyOf:
- type: string
- type: 'null'
title: User Id
model_name:
anyOf:
- type: string
- type: 'null'
title: Model Name
description: The model name and version used for this inference (e.g., 'gpt-4', 'gpt-3.5-turbo', 'claude-3-opus', 'gemini-pro').
type: object
required:
- id
- result
- created_at
- updated_at
- inference_prompt
- inference_feedback
title: ExternalInference
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
RuleType:
type: string
enum:
- KeywordRule
- ModelHallucinationRuleV2
- ModelSensitiveDataRule
- PIIDataRule
- PromptInjectionRule
- RegexRule
- ToxicityRule
title: RuleType
ExternalInferencePrompt:
properties:
id:
type: string
title: Id
inference_id:
type: string
title: Inference Id
result:
$ref: '#/components/schemas/RuleResultEnum'
created_at:
type: integer
title: Created At
updated_at:
type: integer
title: Updated At
message:
type: string
title: Message
prompt_rule_results:
items:
$ref: '#/components/schemas/ExternalRuleResult'
type: array
title: Prompt Rule Results
tokens:
anyOf:
- type: integer
- type: 'null'
title: Tokens
type: object
required:
- id
- inference_id
- result
- created_at
- updated_at
- message
- prompt_rule_results
title: ExternalInferencePrompt
RuleScope:
type: string
enum:
- default
- task
title: RuleScope
HallucinationDetailsResponse:
properties:
score:
anyOf:
- type: boolean
- type: 'null'
title: Score
message:
anyOf:
- type: string
- type: 'null'
title: Message
claims:
items:
$ref: '#/components/schemas/HallucinationClaimResponse'
type: array
title: Claims
type: object
required:
- claims
title: HallucinationDetailsResponse
InferenceFeedbackTarget:
type: string
enum:
- context
- response_results
- prompt_results
title: InferenceFeedbackTarget
RuleResultEnum:
type: string
enum:
- Pass
- Fail
- Skipped
- Unavailable
- Partially Unavailable
- Model Not Available
title: RuleResultEnum
BaseDetailsResponse:
properties:
score:
anyOf:
- type: boolean
- type: 'null'
title: Score
message:
anyOf:
- type: string
- type: 'null'
title: Message
type: object
title: BaseDetailsResponse
PaginationSortMethod:
type: string
enum:
- asc
- desc
title: PaginationSortMethod
PIIEntityTypes:
type: string
enum:
- CREDIT_CARD
- CRYPTO
- DATE_TIME
- EMAIL_ADDRESS
- IBAN_CODE
- IP_ADDRESS
- NRP
- LOCATION
- PERSON
- PHONE_NUMBER
- MEDICAL_LICENSE
- URL
- US_BANK_NUMBER
- US_DRIVER_LICENSE
- US_ITIN
- US_PASSPORT
- US_SSN
title: PIIEntityTypes
ToxicityViolationType:
type: string
enum:
- benign
- harmful_request
- toxic_content
- profanity
- unknown
title: ToxicityViolationType
RegexDetailsResponse:
properties:
score:
anyOf:
- type: boolean
- type: 'null'
title: Score
message:
anyOf:
- type: string
- type: 'null'
title: Message
regex_matches:
items:
$ref: '#/components/schemas/RegexSpanResponse'
type: array
title: Regex Matches
description: Each string in this list corresponds to a matching span from the input text that matches the configured regex rule.
default: []
additionalProperties: false
type: object
title: RegexDetailsResponse
KeywordSpanResponse:
properties:
keyword:
type: string
title: Keyword
description: The keyword from the rule that matched within the input string.
type: object
required:
- keyword
title: KeywordSpanResponse
ExternalRuleResult:
properties:
id:
type: string
title: Id
description: ' ID of the rule'
name:
type: string
title: Name
description: Name of the rule
rule_type:
$ref: '#/components/schemas/RuleType'
description: Type of the rule
scope:
$ref: '#/components/schemas/RuleScope'
description: Scope of the rule. The rule can be set at default level or task level.
result:
$ref: '#/components/schemas/RuleResultEnum'
description: Result if the rule
latency_ms:
type: integer
title: Latency Ms
description: Duration in millisesconds of rule execution
details:
anyOf:
- $ref: '#/components/schemas/KeywordDetailsResponse'
- $ref: '#/components/schemas/RegexDetailsResponse'
- $ref: '#/components/schemas/HallucinationDetailsResponse'
- $ref: '#/components/schemas/PIIDetailsResponse'
- $ref: '#/components/schemas/ToxicityDetailsResponse'
- $ref: '#/components/schemas/BaseDetailsResponse'
- type: 'null'
title: Details
description: Details of the rule output
type: object
required:
- id
- name
- rule_type
- scope
- result
- latency_ms
title: ExternalRuleResult
example:
id: 90f18c69-d793-4913-9bde-a0c7f3643de0
name: PII Rule
result: Pass
RegexSpanResponse:
properties:
matching_text:
type: string
title: Matching Text
description: The subtext within the input string that matched the regex rule.
pattern:
anyOf:
- type: string
- type: 'null'
title: Pattern
description: Pattern that yielded the match.
type: object
required:
- matching_text
title: RegexSpanResponse
PIIDetailsResponse:
properties:
score:
anyOf:
- type: boolean
- type: 'null'
title: Score
message:
anyOf:
- type: string
- type: 'null'
title: Message
pii_entities:
items:
$ref: '#/components/schemas/PIIEntitySpanResponse'
type: array
title: Pii Entities
type: object
required:
- pii_entities
title: PIIDetailsResponse
ToxicityDetailsResponse:
properties:
score:
anyOf:
- type: boolean
- type: 'null'
title: Score
message:
anyOf:
- type: string
- type: 'null'
title: Message
toxicity_score:
anyOf:
- type: number
- type: 'null'
title: Toxicity Score
toxicity_violation_type:
$ref: '#/components/schemas/ToxicityViolationType'
additionalProperties: false
type: object
required:
- toxicity_violation_type
title: ToxicityDetailsResponse
InferenceFeedbackResponse:
properties:
id:
type: string
title: Id
inference_id:
type: string
title: Inference Id
target:
$ref: '#/components/schemas/InferenceFeedbackTarget'
score:
type: integer
title: Score
reason:
anyOf:
- type: string
- type: 'null'
title: Reason
user_id:
anyOf:
- type: string
- type: 'null'
title: User Id
created_at:
type: string
format: date-time
title: Created At
updated_at:
type: string
format: date-time
title: Updated At
type: object
required:
- id
- inference_id
- target
- score
- created_at
- updated_at
title: InferenceFeedbackResponse
ExternalInferenceResponse:
properties:
id:
type: string
title: Id
inference_id:
type: string
title: Inference Id
result:
$ref: '#/components/schemas/RuleResultEnum'
created_at:
type: integer
title: Created At
updated_at:
type: integer
title: Updated At
message:
type: string
title: Message
context:
anyOf:
- type: string
- type: 'null'
title: Context
response_rule_results:
items:
$ref: '#/components/schemas/ExternalRuleResult'
type: array
title: Response Rule Results
tokens:
anyOf:
- type: integer
- type: 'null'
title: Tokens
model_name:
anyOf:
- type: string
- type: 'null'
title: Model Name
description: The model name and version used for this response (e.g., 'gpt-4', 'gpt-3.5-turbo', 'claude-3-opus', 'gemini-pro').
type: object
required:
- id
- inference_id
- result
- created_at
- updated_at
- message
- response_rule_results
title: ExternalInferenceResponse
PIIEntitySpanResponse:
properties:
entity:
$ref: '#/components/schemas/PIIEntityTypes'
span:
type: string
title: Span
description: The subtext within the input string that was identified as PII.
confidence:
anyOf:
- type: number
- type: 'null'
title: Confidence
description: Float value representing the confidence score of a given PII identification.
type: object
required:
- entity
- span
title: PIIEntitySpanResponse
securitySchemes:
API Key:
type: http
description: Bearer token authentication with an API key
scheme: bearer