openapi: 3.0.3
info:
title: Factset Analytics Datastore About Schedules API
description: Allow clients to fetch precalculated Analytics through predeterministic URLs.
contact:
name: FactSet Research Systems
url: https://developer.factset.com/contact
email: api@factset.com
license:
name: Apache License, Version 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
version: 1.0.0
servers:
- url: https://api.factset.com
description: Production
- url: https://api-sandbox.factset.com
description: Sandbox
security:
- basicAuth: []
tags:
- name: Schedules
paths:
/prices/tradingSchedule/event/list:
post:
tags:
- Schedules
operationId: post/prices/tradingSchedule/event/list
x-supportsOffsetBasedPaging: false
x-supportsOffsetBasedPagingWithoutTotal: false
x-supportsCursorBasedPaging: false
x-supportsCursorBasedPagingWithoutTotal: true
x-supportsPush: false
x-requiresUser: false
x-requiresInternalClient: false
x-disallowUser: false
x-no-merge: false
x-maxSortParameterCount: 10
x-supportsPermissionDeniedResponse: false
summary: Factset Sequence of Market-related Events.
description: Sequence of market-related events like the opening time or closing time of a market of a specific notation.
Pagination to a previous page is not supported and `pagination.previous` is always `null`.
requestBody:
description: Request Body
content:
application/json:
schema:
$ref: '#/components/schemas/PostPricesTradingScheduleEventListRequest'
required: true
responses:
'200':
$ref: '#/components/responses/PostPricesTradingScheduleEventList200Response'
parameters: []
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/prices/tradingSchedule/event/type/list:
get:
tags:
- Schedules
operationId: get/prices/tradingSchedule/event/type/list
x-supportsOffsetBasedPaging: false
x-supportsOffsetBasedPagingWithoutTotal: false
x-supportsCursorBasedPaging: false
x-supportsCursorBasedPagingWithoutTotal: false
x-supportsPush: false
x-requiresUser: false
x-requiresInternalClient: false
x-disallowUser: false
x-no-merge: false
x-maxSortParameterCount: 10
x-supportsPermissionDeniedResponse: false
summary: Factset Trading Schedule Event Types.
description: Trading schedule event types define the events which may occur during any period of trading. Types of trading schedule events are for instance OPEN, CLOSE, END_OF_DAY.
responses:
'200':
$ref: '#/components/responses/GetPricesTradingScheduleEventTypeList200Response'
parameters:
- name: _attributes
in: query
schema:
type: array
items:
type: string
maxLength: 100
exclusiveMaximum: false
uniqueItems: true
maxItems: 50
style: form
explode: false
description: Limit the attributes returned in the response to the specified set.
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/factset-terms-and-conditions/v1/coupon-schedules:
get:
summary: Factset Return Coupon Sechedules for a Fixed Income Security.
description: 'Returns Coupon Schedules information for the Fixed Income security.
'
tags:
- Schedules
operationId: getCouponSchedules
parameters:
- $ref: '#/components/parameters/ids'
responses:
'200':
description: Coupon Schedules Response
content:
application/json:
schema:
$ref: '#/components/schemas/couponSchedulesResponse'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'415':
$ref: '#/components/responses/415'
'500':
$ref: '#/components/responses/500'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
summary: Factset Return Coupon Schedules Information for a List of Fixed Income Securities.
description: 'Returns historical Coupon Schedules information for a list of Fixed Income securities.
'
tags:
- Schedules
operationId: getCouponSchedulesForList
requestBody:
description: Request object for Fixed Income Coupon Schedules.
content:
application/json:
schema:
$ref: '#/components/schemas/termsAndConditionsScalarRequest'
required: true
responses:
'200':
description: Coupon Schedules Response
content:
application/json:
schema:
$ref: '#/components/schemas/couponSchedulesResponse'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'415':
$ref: '#/components/responses/415'
'500':
$ref: '#/components/responses/500'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
examples:
badRequestInvalidParameters:
summary: Bad Request - Invalid Parameters
description: This error message occurs when a request parameter is used in which is not recognized by the service. Please revise your request to include only the parameters listed in the specification. Typical causes are spelling mistakes and use of improper casing.
value:
status: Bad Request
timestamp: '2020-06-12 15:58:54.068'
path: /factset-terms-and-conditions/v1/{endpoint}
message: 'Invalid Parameter (s): fakeParameterName1 fakeParameterName2. Please modify your request to use parameters outlined in the specification for this endpoint.'
subErrors: null
notWritable:
summary: Internal Server Error - Not Writable
description: This error may be returned when the server encounters an error writing the JSON response.
value:
status: Internal Server Error
timestamp: '2019-11-05 09:48:29.18'
path: /factset-terms-and-conditions/v1/{endpoint}
message: Error writing JSON output
subErrors: null
unsupportedMediaType:
summary: Unsupported Media Type
description: This bad request occurs when the media type passed in the request is not supported. Currently the APIs only support 'application/json'.
value:
status: Unsupported Media Type
timestamp: '2019-11-05 09:42:27.237'
path: /factset-terms-and-conditions/v1/{endpoint}
message: text/html media type is not supported. Supported media types are application/json
subErrors: null
generalException:
summary: Internal Server Error - General Exception
description: This is the most general error that can be returned to by the service. Please `Report Issue` to FactSet.
value:
status: Internal Server Error
timestamp: '2019-11-01 10:36:01.944'
path: /factset-terms-and-conditions/v1/{endpoint}
message: Unexpected error
subErrors: null
badRequestReadTimeout:
summary: Bad Request - Read Timeout
description: This error may be returned if it takes more than 29 seconds to hear back from the data fetch service.
value:
status: Bad Request
timestamp: '2019-11-04 16:18:38.949'
path: /factset-terms-and-conditions/v1/{endpoint}
message: The request took too long. Try again with a smaller request.
subErrors: null
forbidden:
summary: Forbidden
description: The USERNAME-SERIAL attempted to request the endpoint is not authorized to access. The request was a legal request, but the server is refusing to respond. Please reach out to FactSet Account Team for assistance with authorization.
value:
status: Forbidden
timestamp: '2020-06-12 16:08:51.731'
path: /factset-terms-and-conditions/v1/{endpoint}
message: USERNAME-SERIAL does not have permission to use /factset-terms-and-conditions/v1/{endpoint}
subErrors: null
unauthenticated:
summary: User Authentication Failed
description: This occurs when a user is not properly authenticated or recognized by the service. Please double check the USERNAME-SERIAL and API-Key used to request and ensure you are within the IP range specified for the Key. Report Issue under 401 error for help with troubleshooting.
value:
status: User Authentication Failed
timestamp: '2019-10-31 16:08:07.945'
path: /factset-terms-and-conditions/v1/{endpoint}
message: User Authentication Failed.
subErrors: null
badRequestMalformedJSON:
summary: Bad Request - Malformed JSON Request
description: This error may be returned when the request body is specified as JSON, but is not in proper JSON format.
value:
status: Bad Request
timestamp: '2019-11-05 09:48:29.18'
path: /factset-terms-and-conditions/v1/{endpoint}
message: Malformed JSON Request
subErrors: null
badRequestRequiredParameter:
summary: Bad Request - Required Parameter Missing
description: This error message occurs when the request does not include the required parameters. Required parameters are indicated with a red asterisks symbol in the specification file.
value:
status: Bad Request
timestamp: '2020-06-12 15:48:42.016'
path: /factset-terms-and-conditions/v1/{endpoint}
message: The parameter 'ids' is required and may not be empty.
subErrors: null
parameters:
ids:
name: ids
description: 'List of Fixed Income Security identifiers. Supported symbol types include CUSIP, SEDOL, ISIN, and FactSet Security Permanent Identifier (-S).
**ID LIMIT = 250** *per request*.
'
in: query
schema:
type: array
items:
type: string
minItems: 1
maxItems: 250
required: true
explode: false
example:
- 30231GBJ
- 88579EAA
responses:
'401':
description: Unauthenticated USERNAME-SERIAL. Ensure you are logged in and have successfully generated an API KEY for the IP range you are connecting from. For more help, select the **Report Issue** in the top right corner of this Developer Portal specification card and choose Connectivity 401 or 403 Responses.
content:
application/json:
schema:
$ref: '#/components/schemas/errorResponse'
examples:
Bad Request - Date Format:
$ref: '#/components/examples/unauthenticated'
'415':
description: Unsupported Media Type. This error may be returned when the caller sends a resource in a format that is not accepted by the server. This can be fixed by ensuring that Content-Type header is set to the correct value. In this instance, "application/json" would be the appropriate value.
content:
application/json:
schema:
$ref: '#/components/schemas/errorResponse'
examples:
Bad Request - Date Format:
$ref: '#/components/examples/unsupportedMediaType'
'403':
description: The USERNAME-SERIAL attempted to request the endpoint is not authorized to access. The request was a legal request, but the server is refusing to respond. Please reach out to FactSet Account Team for assistance with authorization.
content:
application/json:
schema:
$ref: '#/components/schemas/errorResponse'
examples:
Bad Request - Date Format:
$ref: '#/components/examples/forbidden'
GetPricesTradingScheduleEventTypeList200Response:
description: Successful Response
content:
application/json:
schema:
type: object
properties:
data:
type: array
description: List of trading schedule event types.
nullable: false
items:
type: object
nullable: false
x-property-sort:
- id
- code
- description
properties:
id:
nullable: true
type: number
format: id32
x-positive: true
description: Identifier of the type.
code:
nullable: true
type: string
description: Code of the type.
description:
nullable: true
type: string
description: Description of the type in english language.
meta:
type: object
description: The meta member contains the meta information of the response.
properties:
status:
$ref: '#/components/schemas/StatusObject'
x-property-sort:
- status
x-property-sort:
- data
- meta
PostPricesTradingScheduleEventList200Response:
description: Successful Response
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
idNotation:
nullable: true
type: string
format: id64
x-positive: true
description: MDG identifier of the listing.
sourceIdentifier:
nullable: true
type: string
description: Identifier used in the request.
range:
nullable: true
type: object
format: timeRange
properties:
start:
nullable: true
type: string
format: datetime
description: The starting point of the time range (inclusive).
end:
nullable: true
type: string
format: datetime
description: The ending point of the time range (exclusive).
x-property-sort:
- start
- end
required:
- start
- end
description: Time range for the returned trading schedule events.
events:
nullable: false
type: array
items:
type: object
nullable: false
x-property-sort:
- time
- type
properties:
time:
nullable: true
type: string
format: datetime
description: Date and time of the event.
type:
nullable: false
type: object
x-property-sort:
- id
- code
description: Trading schedule event type.
properties:
id:
nullable: true
type: number
format: id32
x-positive: true
description: Identifier of the event type.
code:
nullable: true
type: string
description: Code of the event type.
description: List of trading schedule events.
description: List of trading schedule events for a notation.
nullable: false
x-property-sort:
- idNotation
- sourceIdentifier
- range
- events
meta:
type: object
description: The meta member contains the meta information of the response.
properties:
status:
$ref: '#/components/schemas/StatusObject'
pagination:
$ref: '#/components/schemas/CursorBasedPaginationOutputObjectWithoutTotal'
x-property-sort:
- status
- pagination
x-property-sort:
- data
- meta
'500':
description: Internal Server Error.
content:
application/json:
schema:
$ref: '#/components/schemas/errorResponse'
examples:
Internal Server Error - Not Writable:
$ref: '#/components/examples/notWritable'
Internal Server Error - General Exception:
$ref: '#/components/examples/generalException'
'400':
description: Bad Request. This can occur for several reasons. Please review the "message" for more details.
content:
application/json:
schema:
$ref: '#/components/schemas/errorResponse'
examples:
Bad Request - Missing Required Parameter:
$ref: '#/components/examples/badRequestRequiredParameter'
Bad Request - Invalid Parameter:
$ref: '#/components/examples/badRequestInvalidParameters'
Bad Request - Malformed JSON:
$ref: '#/components/examples/badRequestMalformedJSON'
Bad Request - Read Timeout:
$ref: '#/components/examples/badRequestReadTimeout'
schemas:
couponSchedulesResponse:
title: Coupon Schedules Response
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/couponSchedules'
example: []
couponSchedules:
title: Coupon Schedules
type: object
description: Coupon Schedules for a Fixed Income security.
properties:
requestId:
description: Security identifier used in the request.
type: string
example: '500123'
fsymId:
description: FactSet Permanent Security Identifier.
type: string
example: '500123'
couponEffDate:
description: Coupon Effective Date
type: string
format: date
example: '2026-01-15'
couponRate:
description: Coupon Rate
type: number
format: double
example: 42.5
AttributesMember:
type: array
description: Limit the attributes returned in the response to the specified set.
items:
type: string
maxLength: 100
exclusiveMaximum: false
maxItems: 50
uniqueItems: true
StatusObject:
type: object
properties:
code:
type: number
format: int32
description: The HTTP status code of the response, mirroring the code from the Status-Line of the HTTP response message (see [RFC2616] section 6.1).
example: 42.5
description: The status member contains the status code of the response.
required:
- code
errorResponse:
type: object
title: Error Response
properties:
status:
description: status
type: string
example: Bad Request
timestamp:
description: timestamp in YYYY-MM-DD HH:MM:SS.SSS
type: string
example: '2019-11-01 11:09:41.918'
format: date-time
path:
description: The Endpoint path {package}/version/{endpoint}
type: string
example: /factset-georev/v1/superRegion
message:
description: The plain text error message
type: string
example: Validation Error
subErrors:
description: subErrors related to the error message. Null if not applicable.
type: object
properties:
object:
description: the operation ID
type: string
field:
description: Parameter Field Name
type: string
message:
description: Error message
type: string
rejectedValue:
description: Rejected Values in an Array
type: array
items:
type: string
example: example_value
PostPricesTradingScheduleEventListRequest:
x-property-sort:
- data
- meta
description: Request Body
required:
- data
type: object
properties:
data:
type: object
x-property-sort:
- identifier
- filter
description: The data member contains the request's primary data.
properties:
identifier:
type: object
x-property-sort:
- value
- type
description: Identifier and type.
properties:
value:
type: string
pattern: ^[B-DF-HJ-NP-TV-Z0-9]{6}-[LR]$|^[A-Z0-9.#&*+]{1,47}-[A-Z0-9]{2,4}$|^[0-9]{3,20}$
maxLength: 50
exclusiveMaximum: false
minLength: 3
exclusiveMinimum: false
description: Identifier to resolve.
type:
type: string
description: Type of the identifier.
x-enum-description:
- MDG identifier of a listing.
- FactSet market symbol of a listing.
- Regional FactSet ticker symbol, identifying the primary listing in the region.
- FactSet Permanent Identifier on listing level.
- Regional FactSet Permanent Identifier, identifying the primary listing in the region.
enum:
- idNotation
- tickerExchange
- tickerRegion
- fdsPermanentIdentifierListing
- fdsPermanentIdentifierRegional
required:
- value
- type
filter:
type: object
x-property-sort:
- types
- range
description: Criteria that filter the items in the response list; only items that match all of the criteria are returned.
properties:
types:
type: array
nullable: false
items:
type: number
format: id32
x-positive: true
minItems: 1
description: List of trading schedule event types to return. See endpoint `/prices/tradingSchedule/event/type/list` for valid values.
range:
type: object
format: timeRange
properties:
start:
type: string
format: datetime
description: The starting point of the time range (inclusive).
end:
type: string
format: datetime
description: The ending point of the time range (exclusive).
x-property-sort:
- start
- end
required:
- start
- end
description: Date and time range for the time series. A valid time range is between 1900-01-01 and 24 hours and 5 minutes into the future.
required:
- types
- range
required:
- identifier
example: example_value
meta:
type: object
description: The meta member contains the meta information of the request.
properties:
attributes:
$ref: '#/components/schemas/AttributesMember'
pagination:
type: object
description: Pagination attributes for the cursor-based pagination strategy.
properties:
cursor:
type: string
maxLength: 50
exclusiveMaximum: false
description: Starting point as returned in the attributes `pagination.next` or `pagination.previous` by a prior invocation of this endpoint, or undefined (default).
limit:
type: number
format: int32
minimum: 0
exclusiveMinimum: false
maximum: 500
exclusiveMaximum: false
default: 20
description: Non-negative maximum number of entries to return.
x-property-sort:
- cursor
- limit
x-property-sort:
- attributes
- pagination
example: example_value
CursorBasedPaginationOutputObjectWithoutTotal:
type: object
description: Pagination attributes for the cursor-based pagination strategy; a total element count is not supported.
properties:
next:
type: string
description: The next cursor position to use in the parameter `pagination.cursor` for an endpoint that supports cursor-based pagination, otherwise `null`.
example: example_value
previous:
type: string
description: The previous cursor position to use in the parameter `pagination.cursor` for an endpoint that supports cursor-based pagination. If a previous cursor position is not supported or available, `previous` is `null`.
example: example_value
required:
- next
- previous
x-property-sort:
- next
- previous
termsAndConditionsScalarRequest:
title: General Ids Request
type: object
properties:
ids:
description: 'List of Fixed Income Security identifiers. Supported symbol types include CUSIP, SEDOL, ISIN, and FactSet Security Permanent Identifier (-S).
**ID LIMIT = 250** *per request*.
'
type: array
items:
type: string
minItems: 1
maxItems: 250
example:
- 30231GBJ
- 88579EAA
required:
- ids
securitySchemes:
basicAuth:
type: http
scheme: basic
externalDocs:
url: https://developer.factset.com/api-catalog/analytics-datastore-api
description: API Documentation