Skip to content

Get latest analysis

GET
/invoices/{invoiceId}/analysis/latest
curl --request GET \
--url https://api.invogi.com/v1/invoices/example/analysis/latest \
--header 'Authorization: Bearer <token>'
invoiceId
required
string

Analysis

Media typeapplication/json
object
decision
required
string
Allowed values: PASS REVIEW BLOCK
risk_score
required
integer
<= 100
findings
required
Array<object>
object
id
required
string
invoiceId

Null for payment-only findings

string | null format: uuid
invoiceNumber
string | null
supplierId
string | null format: uuid
supplierName
string | null
scanId

Source historical scan; null for real-time invoices

string | null format: uuid
type
required
string
severity
required
string
Allowed values: INFO LOW MEDIUM HIGH CRITICAL
summary
required
string
recommendedAction
string | null
confidence
number
<= 1
evidence
object
key
additional properties
any
relatedInvoiceIds
Array<string>
disposition
string
Allowed values: OPEN CONFIRMED FALSE_POSITIVE ACCEPTED_RISK
versions
required
object
riskEngine
required
string
policy
required
string
compliance
string

Example

{
"decision": "PASS",
"findings": [
{
"severity": "INFO",
"disposition": "OPEN"
}
]
}

Missing or invalid API key

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: NOT_FOUND UNAUTHORIZED FORBIDDEN INVALID_REQUEST CONFLICT RATE_LIMITED USAGE_LIMIT_EXCEEDED PROCESSING_FAILED
message
required
string
request_id
required
string

Example

{
"error": {
"code": "NOT_FOUND"
}
}

Resource not found

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: NOT_FOUND UNAUTHORIZED FORBIDDEN INVALID_REQUEST CONFLICT RATE_LIMITED USAGE_LIMIT_EXCEEDED PROCESSING_FAILED
message
required
string
request_id
required
string

Example

{
"error": {
"code": "NOT_FOUND"
}
}