openapi: 3.0.3 info: title: Factset Analytics Datastore About Notes 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: Notes paths: /v1/notes: get: tags: - Notes summary: Factset Get All the Notes in the Specified Date Range Filtered on the Given Identifiers operationId: GetNotes parameters: - name: start in: query description: StartDate schema: type: string - name: end in: query description: EndDate schema: type: string - name: identifiers in: query description: Set of identifiers to filter on schema: type: array items: type: string - name: authors in: query description: Set of authors to filter on schema: type: array items: type: string format: uuid - name: subjects in: query description: Set of subjects to filter on schema: type: array items: type: string format: uuid - name: recommendations in: query description: Set of recommendations to filter on schema: type: array items: type: string format: uuid - name: sentiments in: query description: Set of sentiments to filter on schema: type: array items: type: string format: uuid - name: limit in: query description: Limit on the number of notes retrieved schema: type: integer format: int32 - name: offset in: query description: Fetch notes after the offset schema: type: integer format: int32 - name: modifiedSince in: query description: Only return notes which have been modified or created since a particular time schema: type: string - name: states in: query description: Set of states to filter on schema: type: array items: type: string - name: filterOnRelatedSymbols in: query description: Include notes whose related symbols match the identifier filter schema: type: boolean default: false - name: includeRelatedEntities in: query description: When set to true fetches notes tagged with all the entities related to identifiers param schema: type: boolean default: false - name: X-IRN-Include-Deleted in: header description: '' schema: type: boolean default: false responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/NoteSummaryDto' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Notes summary: Factset Create a Note operationId: CreateNote parameters: - name: X-IRN-Contributor-Username in: header schema: maxLength: 30 minLength: 0 type: string - name: X-IRN-Contributor-Serial in: header schema: maxLength: 8 minLength: 0 type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/CreateNoteDto' application/json: schema: $ref: '#/components/schemas/CreateNoteDto' text/json: schema: $ref: '#/components/schemas/CreateNoteDto' application/*+json: schema: $ref: '#/components/schemas/CreateNoteDto' required: true responses: '201': description: Success - Returns unique identifier of the note created content: application/json: schema: $ref: '#/components/schemas/NewItemDto' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK /v1/notes/{noteId}: get: tags: - Notes summary: Factset Get Details of a Note operationId: GetNote parameters: - name: noteId in: path description: Note Id required: true schema: type: string format: uuid responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/NoteDto' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Notes summary: Factset Update a Note operationId: UpdateNote parameters: - name: noteId in: path description: Note Id required: true schema: type: string format: uuid requestBody: description: Note details to update content: application/json-patch+json: schema: $ref: '#/components/schemas/UpdateNoteDto' application/json: schema: $ref: '#/components/schemas/UpdateNoteDto' text/json: schema: $ref: '#/components/schemas/UpdateNoteDto' application/*+json: schema: $ref: '#/components/schemas/UpdateNoteDto' responses: '200': description: Success '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Notes summary: Factset Delete a Note operationId: DeleteNote parameters: - name: noteId in: path required: true schema: type: string format: uuid responses: '200': description: Success '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK /v1/notes/{noteId}/attachments: get: tags: - Notes summary: Factset Get All the Attachments Belonging to a Note operationId: GetAttachments parameters: - name: noteId in: path description: Note Id required: true schema: type: string format: uuid responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/AttachmentSummaryDto' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Notes summary: Factset Create an Attachment for an Existing Note operationId: CreateAttachment parameters: - name: noteId in: path required: true schema: type: string format: uuid requestBody: content: multipart/form-data: schema: required: - file type: object properties: file: type: string format: binary responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/NewItemDto' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK /v1/notes/{noteId}/attachments/{attachmentId}/download: get: tags: - Notes summary: Factset Download an Attachment From a Note operationId: DownloadAttachment parameters: - name: noteId in: path required: true schema: type: string format: uuid - name: attachmentId in: path required: true schema: type: string format: uuid responses: '200': description: Success '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK /v1/notes/{noteId}/comments: get: tags: - Notes summary: Factset Get All Comments for a Note operationId: GetComments parameters: - name: noteId in: path required: true schema: type: string format: uuid responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/CommentSummaryDto' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Notes summary: Factset Create a Comment to a Note operationId: CreateComment parameters: - name: noteId in: path required: true schema: type: string format: uuid requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/CreateCommentDto' application/json: schema: $ref: '#/components/schemas/CreateCommentDto' text/json: schema: $ref: '#/components/schemas/CreateCommentDto' application/*+json: schema: $ref: '#/components/schemas/CreateCommentDto' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/NewItemDto' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '500': description: Server Error x-microcks-operation: delay: 0 dispatcher: FALLBACK /v1/notes/{noteId}/comments/{commentId}: get: tags: - Notes summary: Factset Get Details of a Comment Belonging to a Note operationId: GetComment parameters: - name: noteId in: path required: true schema: type: string format: uuid - name: commentId in: path required: true schema: type: string format: uuid responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/CommentDto' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK patch: tags: - Notes summary: Factset Edit a Comment for a Note operationId: PatchComment parameters: - name: noteId in: path required: true schema: type: string format: uuid - name: commentId in: path required: true schema: type: string format: uuid requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' responses: '200': description: Success '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Notes summary: Factset Delete a Comment From a Note operationId: DeleteComment parameters: - name: noteId in: path required: true schema: type: string format: uuid - name: commentId in: path required: true schema: type: string format: uuid responses: '200': description: Success '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '500': description: Server Error x-microcks-operation: delay: 0 dispatcher: FALLBACK /v1/notes/{noteId}/comments/{commentId}/attachments: get: tags: - Notes summary: Factset Get Attachments Summary of a Comment Belonging to a Note operationId: GetCommentAttachments parameters: - name: noteId in: path required: true schema: type: string format: uuid - name: commentId in: path required: true schema: type: string format: uuid responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/AttachmentSummaryDto' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Notes summary: Factset Create a Comment Attachment to a Note operationId: CreateCommentAttachment parameters: - name: noteId in: path required: true schema: type: string format: uuid - name: commentId in: path required: true schema: type: string format: uuid requestBody: content: multipart/form-data: schema: required: - file type: object properties: file: type: string format: binary responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/NewItemDto' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '500': description: Server Error x-microcks-operation: delay: 0 dispatcher: FALLBACK /v1/notes/{noteId}/comments/{commentId}/attachments/{attachmentId}/download: get: tags: - Notes summary: Factset Download Single Attachment Detail of a Comment Belonging to a Note operationId: DownloadCommentAttachmentForComment parameters: - name: noteId in: path required: true schema: type: string format: uuid - name: commentId in: path required: true schema: type: string format: uuid - name: attachmentId in: path required: true schema: type: string format: uuid responses: '200': description: Success '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK /v1/notes/{noteId}/events: get: tags: - Notes summary: Factset Get All the Record Events That Belong to a Note operationId: GetEvents parameters: - name: noteId in: path description: Note Id required: true schema: type: string format: uuid responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/RecordEventSummaryDto' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK /v1/notes/{noteId}/events/{recordEventId}: get: tags: - Notes summary: Factset Get Details of a Record Event of a Note operationId: GetRecordEvent parameters: - name: noteId in: path description: Note Id required: true schema: type: string format: uuid - name: recordEventId in: path description: Record Event Id required: true schema: type: string format: uuid responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/NoteEventDto' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK /v1/notes/{noteId}/attachments/{attachmentId}: delete: tags: - Notes summary: Factset Delete Attachment From Note operationId: SoftDeleteNoteAttachment parameters: - name: noteId in: path description: Note Id required: true schema: type: string format: uuid - name: attachmentId in: path description: Attachment Id required: true schema: type: string format: uuid responses: '200': description: Success '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: NoteSummaryDto: type: object properties: id: type: string format: uuid example: abc123 date: type: string nullable: true example: example_value createdAt: type: string nullable: true example: example_value authorId: type: string format: uuid example: '500123' contributorId: type: string format: uuid example: '500123' title: type: string nullable: true example: Example Title identifier: type: string nullable: true example: example_value subjectId: type: string format: uuid example: '500123' isPersonal: type: boolean example: true state: type: string nullable: true example: example_value approvalStatus: type: string nullable: true example: example_value attachmentIds: type: array items: type: string format: uuid nullable: true example: [] relatedSymbols: type: array items: type: string nullable: true example: [] recommendationId: type: string format: uuid example: '500123' sentimentId: type: string format: uuid example: '500123' customFields: type: array items: $ref: '#/components/schemas/CustomFieldValueDto' nullable: true example: [] additionalProperties: false CreateBodyDto: type: object properties: content: type: string nullable: true example: example_value additionalProperties: false UpdateNoteDto: type: object properties: author: $ref: '#/components/schemas/UserSerialDto' title: maxLength: 255 minLength: 0 type: string nullable: true example: Example Title subjectId: type: string format: uuid example: '500123' noteDate: type: string nullable: true example: example_value recommendationId: type: string format: uuid nullable: true example: '500123' sentimentId: type: string format: uuid nullable: true example: '500123' body: $ref: '#/components/schemas/CreateBodyDto' source: type: string nullable: true example: example_value link: maxLength: 255 minLength: 0 type: string nullable: true example: example_value relatedSymbols: maxItems: 100 type: array items: type: string nullable: true example: [] relatedContacts: type: array items: type: string format: uuid nullable: true example: [] relatedRecords: $ref: '#/components/schemas/RelatedRecordsDto' customFieldValues: type: array items: $ref: '#/components/schemas/CreateCustomFieldValueDto' nullable: true example: [] isPersonal: type: boolean nullable: true example: true identifier: type: string nullable: true example: example_value additionalProperties: false Operation: type: object properties: operationType: $ref: '#/components/schemas/OperationType' path: type: string nullable: true example: example_value op: type: string nullable: true example: example_value from: type: string nullable: true example: example_value value: nullable: true example: example_value additionalProperties: false CommentDto: type: object properties: id: type: string format: uuid example: abc123 authorId: type: string format: uuid example: '500123' parentCommentId: type: string format: uuid nullable: true example: '500123' body: type: string nullable: true example: example_value createdAt: type: string nullable: true example: example_value attachments: type: array items: $ref: '#/components/schemas/AttachmentSummaryDto' nullable: true example: [] subcomments: type: array items: $ref: '#/components/schemas/SubcommentSummaryDto' nullable: true example: [] additionalProperties: false CreateCommentDto: type: object properties: authorId: type: string format: uuid example: '500123' parentCommentId: type: string format: uuid nullable: true example: '500123' body: type: string nullable: true example: example_value additionalProperties: false CommentSummaryDto: type: object properties: id: type: string format: uuid example: abc123 userId: type: string format: uuid example: '500123' createdAt: type: string nullable: true example: example_value subcomments: type: array items: $ref: '#/components/schemas/SubcommentSummaryDto' nullable: true example: [] additionalProperties: false NewItemDto: type: object properties: id: type: string format: uuid example: abc123 additionalProperties: false UserSerialDto: required: - serialNumber - username type: object properties: username: maxLength: 30 minLength: 0 type: string example: example_value serialNumber: maxLength: 8 minLength: 0 type: string example: example_value additionalProperties: false NoteDto: type: object properties: id: type: string format: uuid example: abc123 date: type: string nullable: true example: example_value createdAt: type: string nullable: true example: example_value authorId: type: string format: uuid example: '500123' contributorId: type: string format: uuid example: '500123' title: type: string nullable: true example: Example Title identifier: type: string nullable: true example: example_value relatedSymbols: type: array items: type: string nullable: true example: [] subjectId: type: string format: uuid example: '500123' recommendationId: type: string format: uuid nullable: true example: '500123' sentimentId: type: string format: uuid nullable: true example: '500123' source: type: string nullable: true example: example_value link: type: string nullable: true example: example_value body: type: string nullable: true example: example_value isPersonal: type: boolean example: true state: type: string nullable: true example: example_value approvalStatus: type: string nullable: true example: example_value averageRating: type: integer format: int32 nullable: true example: 10 relatedRecords: $ref: '#/components/schemas/RelatedRecordsDto' relatedContacts: type: array items: type: string format: uuid nullable: true example: [] customFields: type: array items: $ref: '#/components/schemas/CustomFieldValueDto' nullable: true example: [] additionalProperties: false CustomFieldValueDto: type: object properties: code: type: string nullable: true example: example_value value: type: string nullable: true example: example_value options: type: array items: type: string nullable: true example: [] contactValues: type: array items: type: string format: uuid nullable: true example: [] additionalProperties: false CreateCustomFieldValueDto: required: - code type: object properties: code: type: string example: example_value integerValue: type: integer format: int32 nullable: true example: 10 textValue: type: string nullable: true example: example_value filePathValue: type: string nullable: true example: example_value numericValue: type: number format: double nullable: true example: 42.5 dateValue: type: string nullable: true example: example_value extendedTextValue: type: string nullable: true example: example_value contactLookupValues: type: array items: type: string format: uuid nullable: true example: [] optionValue: type: string nullable: true example: example_value optionValues: type: array items: type: string nullable: true example: [] additionalProperties: false description: "Set a value or values for a custom field identified by the field 'Code'. Only one of the fields (IntegerValue / TextValue / FilePathValue etc) will be used,\r\ndepending on the data type of the custom field corresponding to the 'Code' provided" AttachmentSummaryDto: type: object properties: id: type: string format: uuid example: abc123 fileName: type: string nullable: true example: example_value mimeType: type: string nullable: true example: example_value size: type: integer format: int64 nullable: true example: 10 additionalProperties: false OperationType: enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 type: integer format: int32 NoteEventDto: type: object properties: createdAt: type: string nullable: true example: example_value type: type: string nullable: true example: example_value user: type: string nullable: true example: example_value comment: type: string nullable: true example: example_value changeList: type: array items: $ref: '#/components/schemas/RecordChangeDto' nullable: true example: [] additionalProperties: false SubcommentSummaryDto: type: object properties: id: type: string format: uuid example: abc123 userId: type: string format: uuid example: '500123' createdAt: type: string nullable: true example: example_value additionalProperties: false CreateNoteDto: required: - author - date type: object properties: author: $ref: '#/components/schemas/UserSerialDto' title: maxLength: 255 minLength: 0 type: string nullable: true example: Example Title identifier: type: string nullable: true example: example_value date: type: string example: example_value subjectId: type: string format: uuid nullable: true example: '500123' recommendationId: type: string format: uuid nullable: true example: '500123' sentimentId: type: string format: uuid nullable: true example: '500123' body: $ref: '#/components/schemas/CreateBodyDto' source: type: string nullable: true example: example_value link: maxLength: 255 minLength: 0 type: string nullable: true example: example_value relatedSymbols: maxItems: 100 type: array items: type: string nullable: true example: [] relatedContacts: type: array items: type: string format: uuid nullable: true example: [] relatedRecords: $ref: '#/components/schemas/RelatedRecordsDto' customFieldValues: type: array items: $ref: '#/components/schemas/CreateCustomFieldValueDto' nullable: true example: [] isPersonal: type: boolean default: false example: true additionalProperties: false RelatedRecordsDto: type: object properties: noteIds: type: array items: type: string format: uuid nullable: true example: [] meetingIds: type: array items: type: string format: uuid nullable: true example: [] additionalProperties: false ProblemDetails: type: object properties: type: type: string nullable: true example: example_value title: type: string nullable: true example: Example Title status: type: integer format: int32 nullable: true example: 10 detail: type: string nullable: true example: example_value instance: type: string nullable: true example: example_value additionalProperties: {} RecordEventSummaryDto: type: object properties: id: type: string format: uuid example: abc123 type: type: string nullable: true example: example_value createdAt: type: string nullable: true example: example_value additionalProperties: false RecordChangeDto: type: object properties: field: type: string nullable: true example: example_value operation: type: string nullable: true example: example_value oldValue: type: string nullable: true example: example_value newValue: type: string nullable: true example: example_value oldList: type: array items: type: string nullable: true example: [] newList: type: array items: type: string nullable: true example: [] additionalProperties: false securitySchemes: basicAuth: type: http scheme: basic externalDocs: url: https://developer.factset.com/api-catalog/analytics-datastore-api description: API Documentation