openapi: 3.0.3 info: title: Factset Analytics Datastore About Data Sources 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: Data Sources paths: /v1/{tenant}/data-sources: get: operationId: getAllDataSources tags: - Data Sources summary: Factset Lists all datasources description: List all datasources the user has permission to see parameters: - in: path name: tenant description: The code of the tenancy schema: type: string required: true - in: query name: _sort description: The column to sort on. Append - to sort in descending order. If parameter is not given, no sorting will be done required: false style: form explode: false schema: type: array maxItems: 1 items: type: string examples: name: value: - name description: The name of the datasource to sort type: value: - type description: The type of the datasource to sort outputRecordSet: value: - outputRecordSet description: The output recordset of the datasource to sort code: value: - code description: The code of the datasource to sort releaseTag: value: - releaseTag description: The release tag of the datasource to sort lastUpdatedBy: value: - lastUpdatedBy description: The last updated by user of the datasource to sort lastUpdated: value: - lastUpdated description: The last updated by date of the datasource to sort - in: query name: _paginationLimit description: Non-negative maximum number of entries to return. Default is 25 schema: type: integer examples: pageSize: value: 25 description: Non-negative maximum number of entries to return - in: query name: _paginationOffset description: Non-negative number of entries to skip. Default is 0 schema: type: integer examples: startIndex: value: 0 description: Non-negative number of entries to skip responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/DataSourceList' '401': description: Unauthorised content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: notAuthenticated title: User is not authenticated '403': description: No permissions to view datasources in VRS content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: notAuthorized title: No permissions to view this item '406': description: Unsupported Accept header. Header needs to be set to application/json. content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: notAcceptable title: Unsupported Accept header. Header needs to be set to application/json /v1/{tenant}/data-sources/{dataSourceCode}: get: operationId: getDataSourceByCode tags: - Data Sources summary: Factset Gets a datasource description: Gets a datasource based on the code passed parameters: - in: path name: tenant description: The code of the tenancy schema: type: string required: true - in: path name: dataSourceCode description: The code of the datasource schema: type: string required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/DataSourceData' '401': description: Unauthorised content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: notAuthenticated title: User is not authenticated '403': description: No permissions to view datasources in VRS content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: notAuthorized title: No permissions to view this item '404': description: The supplied datasource code was not found content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: notFound title: The datasource code passed was not found '406': description: Unsupported Accept header. Header needs to be set to application/json. content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: notAcceptable title: Unsupported Accept header. Header needs to be set to application/json /v1/{tenant}/data-sources/{dataSourceCode}/data: get: operationId: getDataSourceData tags: - Data Sources summary: Factset Gets the data for the datasource description: Gets the data for the datasource. There are optional query parameters to filter the data parameters: - in: path name: tenant description: The code of the tenancy schema: type: string required: true - in: path name: dataSourceCode description: The code of the datasource schema: type: string required: true - in: query name: entityCodes description: 'A series of query parameter used to filter the data for a datasource. This represents the entities for the datasource. E.g.: entityCodes=ACCOUNT&entityCodes=FUNDS' schema: type: string - in: query name: entityKeys description: 'A series of query parameter used to filter the data for a datasource. This is the entity key value for an entity selection. E.g.: entityKeys=1&entityKeys=Test2' schema: type: string - in: query name: _paginationLimit description: Non-negative maximum number of entries to return. Default is 25 schema: type: integer examples: pageSize: value: 25 description: Non-negative maximum number of entries to return - in: query name: _paginationOffset description: Non-negative number of entries to skip. Default is 0 schema: type: integer examples: startIndex: value: 0 description: Non-negative number of entries to skip responses: '200': description: Successful operation - returns data for the datasource content: application/json: schema: $ref: '#/components/schemas/DataSourceDataInstance' '400': description: The supplied datasource code was either missing or invalid, or the query parameters are invalid content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: parameterError title: The datasource code passed was invalid '401': description: Unauthorised content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: notAuthenticated title: User is not authenticated '403': description: No permissions to view datasources in VRS content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: notAuthorized title: No permissions to view this item '404': description: The supplied datasource code was not found content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: notFound title: The datasource code passed was not found '406': description: Unsupported Accept header. Header needs to be set to application/json. content: application/json: schema: $ref: '#/components/schemas/ErrorList' example: errors: - id: ID of the error code: notAcceptable title: Unsupported Accept header. Header needs to be set to application/json components: schemas: EntityDTO: type: object properties: entityId: type: integer format: int32 name: type: string code: type: string DataSourceDTO: type: object properties: dataSourceId: type: integer format: int32 name: type: string code: type: string dsType: type: string enum: - AUTOMATIC - MANUAL - FILTER entities: type: array items: $ref: '#/components/schemas/EntityDTO' outputRecordSet: type: string releaseTag: type: string defaultDataSourceName: type: string dataPreview: type: string lastUpdatedBy: type: string lastUpdated: type: number DataSourceDataInstance: type: object properties: data: $ref: '#/components/schemas/DataSourceAllData' DataSourceAllData: type: object properties: fields: type: array items: $ref: '#/components/schemas/RecordSetFields' dstInstance: $ref: '#/components/schemas/DataSourceInstance' ErrorList: type: object properties: errors: type: array items: $ref: '#/components/schemas/Error' Error: type: object properties: id: type: string code: type: string title: type: string DataSourceList: type: object properties: meta: type: object properties: pagination: type: object properties: total: type: integer isEstimatedTotal: type: boolean sort: type: array items: type: string data: type: array items: $ref: '#/components/schemas/DataSourceDTO' DataSourceInstance: type: object properties: dstInstanceId: type: integer dstInstanceType: type: integer rows: type: array items: $ref: '#/components/schemas/DataSourceInstanceRows' DataSourceData: type: object properties: data: $ref: '#/components/schemas/DataSourceDTO' DataSourceInstanceRows: type: object properties: rowId: type: integer order: type: integer fields: type: array items: $ref: '#/components/schemas/RecordSetFieldValues' RecordSetFields: type: object properties: fieldType: type: string enum: - BOOLEAN - DATETIME - DECIMAL - HTML - INTEGER - TEXT format: type: string id: type: integer hide: type: string name: type: string RecordSetFieldValues: type: object properties: fieldId: type: integer fieldType: type: string enum: - BOOLEAN - DATETIME - DECIMAL - HTML - INTEGER - TEXT fieldValue: type: string securitySchemes: basicAuth: type: http scheme: basic externalDocs: url: https://developer.factset.com/api-catalog/analytics-datastore-api description: API Documentation