Factset PA Engine API
Through the PA Engine API, request analytics for multi-asset class performance, attribution, and risk, including the flexibility of choosing your portfolio, benchmark, return period, and more.
Through the PA Engine API, request analytics for multi-asset class performance, attribution, and risk, including the flexibility of choosing your portfolio, benchmark, return period, and more.
openapi: 3.0.1
info:
title: Factset PA Engine API
description: Allow clients to fetch Analytics through APIs.
contact:
name: FactSet Research Systems
url: https://developer.factset.com/contact
email: [email protected]
license:
name: Apache License, Version 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
version: 3.14.1
servers:
- url: https://api.factset.com
paths:
/analytics/lookups/v3/accounts/{path}:
get:
tags:
- Analytics
summary: Factset Get accounts and sub-directories in a directory
description: >-
This endpoint looks up all ACCT and ACTM files and sub-directories in a
given directory.
operationId: getAccounts
parameters:
- name: path
in: path
description: The directory to get the accounts and sub-directories in
required: true
schema:
type: string
description: The directory to get the accounts and sub-directories in
example: 'Client:'
responses:
'200':
description: Expected response, returns a list of accounts and directories
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/AccountDirectoriesRoot'
'400':
description: Invalid query parameter or value provided
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/ClientErrorResponse'
'401':
description: Missing or invalid authentication
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
'403':
description: User is forbidden with current credentials
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
'404':
description: Path not found
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/ClientErrorResponse'
'406':
description: >-
Unsupported Accept header. Header needs to be set to
application/json
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
'429':
description: >-
Rate limit reached. Wait till the time specified in Retry-After
header value to make further requests.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
Retry-After:
description: >-
Time to wait in seconds before making a new request as the rate
limit has reached.
schema:
type: string
'500':
description: >-
Server error. Log the X-DataDirect-Request-Key header to assist in
troubleshooting
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
'503':
description: Request timed out. Retry the request in some time
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
/analytics/engines/pa/v3/columns:
get:
tags:
- Analytics
summary: Factset Get PA columns
description: >-
This endpoint lists all the PA columns that can be applied to a
calculation.
operationId: getPAColumns
parameters:
- name: name
in: query
description: Column name
schema:
type: string
description: Column name
default: ''
example: Security Name
- name: category
in: query
description: Column category
schema:
type: string
description: Column category
default: ''
- name: directory
in: query
description: The directory to get the columns in
schema:
type: string
description: The directory to get the columns in
default: ''
example: Client
responses:
'200':
description: Expected response, returns a list of PA columns
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
Age:
description: >-
Standard HTTP header. Header will specify the age of columns
list cached response.
schema:
type: integer
description: >-
Standard HTTP header. Header will specify the age of columns
list cached response.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/ColumnSummaryRoot'
'401':
description: Missing or invalid authentication.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
'403':
description: User is forbidden with current credentials
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
'406':
description: >-
Unsupported Accept header. Header needs to be set to
application/json.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
'429':
description: >-
Rate limit reached. Wait till the time specified in Retry-After
header value to make further requests.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
Retry-After:
description: >-
Time to wait in seconds before making a new request as the rate
limit has reached.
schema:
type: string
'500':
description: >-
Server error. Log the X-DataDirect-Request-Key header to assist in
troubleshooting
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
'503':
description: Request timed out. Retry the request in sometime.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
/analytics/engines/pa/v3/columns/{id}:
get:
tags:
- Analytics
summary: Factset Get PA column settings
description: This endpoint returns the default settings of a PA column.
operationId: getPAColumnById
parameters:
- name: id
in: path
description: Unique identifier for a column
required: true
schema:
type: string
description: Unique identifier for a column
example: 2DBD317E3C235BC96E2FF8CA36CE036AF2F7F55525479B524AE78FD7D6BBC4A7
responses:
'200':
description: Expected response, returns settings of a PA column.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
Age:
description: >-
Standard HTTP header. Header will specify the age of columns
list cached response.
schema:
type: integer
description: >-
Standard HTTP header. Header will specify the age of columns
list cached response.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/ColumnRoot'
'400':
description: Invalid column Id.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/ClientErrorResponse'
'401':
description: Missing or invalid authentication.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
'403':
description: User is forbidden with current credentials
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
'404':
description: Column not found.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/ClientErrorResponse'
'406':
description: >-
Unsupported Accept header. Header needs to be set to
application/json.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
'429':
description: >-
Rate limit reached. Wait till the time specified in Retry-After
header value to make further requests.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
Retry-After:
description: >-
Time to wait in seconds before making a new request as the rate
limit has reached.
schema:
type: string
'500':
description: >-
Server error. Log the X-DataDirect-Request-Key header to assist in
troubleshooting.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
'503':
description: Request timed out. Retry the request in sometime.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
/analytics/engines/pa/v3/columnstatistics:
get:
tags:
- Analytics
summary: Factset Get PA column statistics
description: >-
This endpoint lists all the column statistics that can be applied to a
PA column.
operationId: getPAColumnStatistics
responses:
'200':
description: Expected response, returns a list of PA column statistics
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
X-FactSet-Api-RateLimit-Limit:
description: Number of allowed requests for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Remaining:
description: Number of requests left for the time window.
schema:
type: string
X-FactSet-Api-RateLimit-Reset:
description: Number of seconds remaining till rate limit resets.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/ColumnStatisticRoot'
'401':
description: Missing or invalid authentication.
headers:
X-DataDirect-Request-Key:
description: FactSet's request key header.
schema:
type: string
description: FactSet's request key header.
X-FactSet-Api-Request-Key:
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
schema:
type: string
description: >-
Key to uniquely identify an Analytics API request. Only
available after successful authentication.
'403':
description: User is forbidden with current credentials
headers:
X-D
# --- truncated at 32 KB (424 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/factset/refs/heads/main/openapi/pa-engine-openapi-original.yml