Cyware Threat Data API

Threat Data

OpenAPI Specification

cyware-threat-data-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Cyware Intel Exchange (CTIX) v3 Open Threat Data API
  version: 3.6.2
  description: 'Public Open API for Cyware Intel Exchange (formerly CTIX), Cyware''s threat intelligence platform for the ingestion, enrichment, analysis, correlation and bi-directional sharing of structured and unstructured threat intelligence using STIX 2.x and TAXII 2.x. The API covers threat data objects, intel creation and import, enrichment, rules, tags, watchlists, threat bulletins, threat investigation, dashboards, reports, PIR management, MITRE ATT&CK navigator data and platform administration.


    Intel Exchange is deployed per tenant, so the server host is the customer''s own Intel Exchange deployment; the API is mounted under `/ctixapi`.


    This document was assembled by API Evangelist from Cyware''s own published, structured API reference documents at https://ctixapiv3.cyware.com — each endpoint page is served as machine-readable markdown carrying a JSON endpoint model, and every page is indexed from that host''s llms.txt. Paths, methods, parameters, descriptions, enumerations and examples are reproduced from those documents; nothing is invented.'
  contact:
    name: Cyware
    url: https://www.cyware.com/contact-us
  termsOfService: https://www.cyware.com/legal/terms-of-use
  x-apievangelist-source: https://ctixapiv3.cyware.com/llms.txt
  x-apievangelist-method: generated
servers:
- url: https://{ctix_host}/ctixapi
  description: Tenant Intel Exchange deployment. Replace {ctix_host} with your own Intel Exchange host. Cyware documents the base URL form https://sample.domain.com/ctixapi in its authentication guide and uses https://demo.cyware.com/ctix/ as the example host in the config of its open-source MCP server.
  variables:
    ctix_host:
      default: demo.cyware.com
security:
- ctixOpenApiSignature: []
tags:
- name: Threat Data
  description: Threat Data
paths:
  /ingestion/file/{file_id}/:
    get:
      operationId: retrieveDownloadLink
      summary: Get Download Link
      tags:
      - Threat Data
      description: Retrieves a URL to download the export file. The URL includes the file ID and a token.
      externalDocs:
        description: Cyware Intel Exchange API reference
        url: https://ctixapiv3.cyware.com/threat-data/export/retrieve-download-link
      parameters:
      - name: page
        in: query
        required: false
        schema:
          type: string
          description: Pass the page number to retrieve records.
          default: '1'
        description: Pass the page number to retrieve records.
      - name: page_size
        in: query
        required: false
        schema:
          type: string
          description: Pass the number of records to retrieve on each page.
          maxLength: 100
          default: '10'
        description: Pass the number of records to retrieve on each page.
      - name: file_id
        in: path
        required: true
        schema:
          type: string
          description: Pass the file ID generated by the **Generate Export File API** endpoint.
          examples:
          - df21ff51-0d9e-4380-be78-b75889860702
        description: Pass the file ID generated by the **Generate Export File API** endpoint.
      responses:
        '200':
          description: HTTP 200 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  url:
                    type: string
                    description: You can use the token from this URL and use it in the **Download Export File API**.
                    examples:
                    - https://tenantname.com/ctixapi/ingestion/external_download/df21ff51-0d9e-4380-be78-b75889860702/?token=61973ea7-5387-4e4b-a221-970fc1dca4e0
              example:
                url: https://tenantname.com/ctixapi/ingestion/external_download/df21ff51-0d9e-4380-be78-b75889860702/?token=61973ea7-5387-4e4b-a221-970fc1dca4e0
      x-alternate-documents:
      - title: Get Token to Download File
        operationId: tokenToDownloadFile
        url: https://ctixapiv3.cyware.com/reports/token-to-download-file
  /ingestion/threat-data/ai-search/:
    post:
      operationId: aiAssistedSearch
      summary: AI-Assisted Search
      tags:
      - Threat Data
      description: 'Converts a natural language prompt into an Intel Exchange search query.


        ### Changelog


        <Accordion attributes=''{"style":{"width":"100%"}}''>

        <AccordionItem title="Release v3.7.7.0" iconUrl=""><p>Added a new endpoint for AI-assisted search in Threat Data.</p></AccordionItem>

        </Accordion>'
      externalDocs:
        description: Cyware Intel Exchange API reference
        url: https://ctixapiv3.cyware.com/threat-data/ai-assisted-search
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                prompt:
                  type: string
                  description: Pass the natural language query to convert into a search filter.
                  examples:
                  - Show IPv4 objects with risk score greater than 80 created in the last week
                timezone_offset:
                  type: number
                  description: Pass the timezone offset in minutes from UTC. For example, pass -330 for IST (UTC+5:30).
                  examples:
                  - -330
              required:
              - prompt
            example:
              prompt: Show IPv4 objects with risk score greater than 80 created in the last week
              timezone_offset: -330
      responses:
        '200':
          description: HTTP 200 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  query:
                    type: string
                    description: Returns the generated search query in Intel Exchange filter syntax.
                    examples:
                    - '''type'' = "indicator" AND ''ioc_type'' = "ipv4-addr" AND ''confidence_score'' > "80" AND ''ctix_created'' >= "1779185864000"'
              example:
                query: '''type'' = "indicator" AND ''ioc_type'' = "ipv4-addr" AND ''confidence_score'' > "80" AND ''ctix_created'' >= "1779185864000"'
  /ingestion/threat-data/bulk-action/analyst_score/:
    post:
      operationId: bulkAddAnalystScore
      summary: Bulk Add Analyst Score
      tags:
      - Threat Data
      description: Add the analyst Confidence Score to multiple threat data objects.
      externalDocs:
        description: Cyware Intel Exchange API reference
        url: https://ctixapiv3.cyware.com/threat-data/bulk-actions/bulk-add-analyst-score
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                object_type:
                  type: string
                  description: Pass the type of threat data objects. To get the list of supported object types, see **Supported SDO Types** in **Threat Data** > **Miscellaneous**.
                  examples:
                  - indicator
                object_ids:
                  type: array
                  description: Pass the list of threat data object IDs to perform the bulk action. To retrieve a list of object IDs, use the **List Threat Data API** under the Threat Data section.
                  items:
                    type: string
                    description: This is an example value.
                    examples:
                    - 49d5e95e-3889-42de-8280-1ebf5c7cb95a
                data:
                  type: object
                  description: Pass the relation data to pass with the request.
                  properties:
                    analyst_score:
                      type: number
                      description: Pass the analyst Confidence Score between 0 to 100 to be added the objects.
                      examples:
                      - '67'
            example:
              object_type: indicator
              object_ids:
              - 49d5e95e-3889-42de-8280-1ebf5c7cb95a
              data:
                analyst_score: '67'
      responses:
        '200':
          description: HTTP 200 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Returns a success or failure message.
                    examples:
                    - Action Successfully Executed
              example:
                message: Action Successfully Executed
  /ingestion/threat-data/bulk-action/add_relation/:
    post:
      operationId: bulkAddRelation
      summary: Bulk Add Relation
      tags:
      - Threat Data
      description: Add a relation to multiple threat data objects.
      externalDocs:
        description: Cyware Intel Exchange API reference
        url: https://ctixapiv3.cyware.com/threat-data/bulk-actions/bulk-add-relation
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                object_type:
                  type: string
                  description: Pass the type of threat data objects. To get the list of supported object types, see **Supported SDO Types** in **Threat Data** > **Miscellaneous**.
                  examples:
                  - indicator
                object_ids:
                  type: array
                  description: Pass the list of threat data object IDs to perform the bulk action. To retrieve a list of object IDs, use the **List Threat Data API** under the Threat Data section.
                  items:
                    type: string
                    description: This is an example value.
                    examples:
                    - 49d5e95e-3889-42de-8280-1ebf5c7cb95a
                data:
                  type: object
                  description: Pass the relation data to pass with the request.
                  properties:
                    target:
                      type: object
                      description: Pass the details of the threat data object to add as a relation.
                      properties:
                        id:
                          type: string
                          description: Pass the ID of an object to add as a relation.
                          examples:
                          - 85830a15-3ae2-49f1-987c-f52ccf40a0e3
                        name:
                          type: string
                          description: Pass the value of the object.
                          examples:
                          - 5.205.20.175
                        sub_type:
                          type: string
                          description: Pass the sub type of the object.
                          examples:
                          - ipv4-addr
                        type:
                          type: string
                          description: Pass the object type. To get the list of supported object types, see **Supported SDO Types** in **Threat Data** > **Miscellaneous**.
                          examples:
                          - indicator
                      required:
                      - id
                      - type
                    relationship_type:
                      type: string
                      description: Pass the relationship type.
                      enum:
                      - related-to
                  required:
                  - target
                  - relationship_type
              required:
              - object_type
              - object_ids
              - data
            example:
              object_type: indicator
              object_ids:
              - 49d5e95e-3889-42de-8280-1ebf5c7cb95a
              data:
                target:
                  id: 85830a15-3ae2-49f1-987c-f52ccf40a0e3
                  name: 5.205.20.175
                  sub_type: ipv4-addr
                  type: indicator
                relationship_type: ''
      responses:
        '200':
          description: HTTP 200 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Returns a success or failure message.
                    examples:
                    - Action Successfully Executed
              example:
                message: Action Successfully Executed
  /ingestion/threat-data/bulk-action/{action_type}/:
    post:
      operationId: bulkAddRemoveAllowedIndicators
      summary: Bulk Add/Remove Allowed Indicators
      tags:
      - Threat Data
      description: Add or remove multiple threat data objects from the Allowed Indicators list in the platform.
      externalDocs:
        description: Cyware Intel Exchange API reference
        url: https://ctixapiv3.cyware.com/threat-data/bulk-actions/bulk-add-remove-allowed-indicators
      parameters:
      - name: action_type
        in: path
        required: true
        schema:
          type: string
          description: Pass the action to be performed on the threat data objects.
          enum:
          - whitelist
          - un_whitelist
          examples:
          - whitelist
        description: Pass the action to be performed on the threat data objects.
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                object_type:
                  type: string
                  description: Pass the type of threat data objects. To get the list of supported object types, see **Supported SDO Types** in **Threat Data** > **Miscellaneous**.
                  examples:
                  - indicator
                object_ids:
                  type: array
                  description: Pass the list of threat data object IDs to perform the bulk action. To retrieve a list of object IDs, use the **List Threat Data API** under the Threat Data section.
                  items:
                    type: string
                    description: This is an example value.
                    examples:
                    - 49d5e95e-3889-42de-8280-1ebf5c7cb95a
            example:
              object_type: indicator
              object_ids:
              - 49d5e95e-3889-42de-8280-1ebf5c7cb95a
      responses:
        '200':
          description: HTTP 200 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Returns the success message.
                    examples:
                    - Action Successfully Executed
              example:
                message: Action Successfully Executed
      x-alternate-documents:
      - title: Bulk Add Tags
        operationId: bulkAddRemoveTags
        url: https://ctixapiv3.cyware.com/threat-data/bulk-actions/bulk-add-remove-tags/bulk-add-remove-tags
      - title: Bulk Remove Tags
        operationId: bulkRemoveTags
        url: https://ctixapiv3.cyware.com/threat-data/bulk-actions/bulk-add-remove-tags/bulk-remove-tags
      - title: Bulk Add/Remove Watchlist
        operationId: bulkAddRemoveWatchlist
        url: https://ctixapiv3.cyware.com/threat-data/bulk-actions/bulk-add-remove-watchlist
      - title: Bulk Deprecate/Undeprecate Objects
        operationId: bulkDeprecateUndeprecateObjects
        url: https://ctixapiv3.cyware.com/threat-data/bulk-actions/bulk-deprecate-undeprecate-objects
      - title: Bulk Manual Review
        operationId: bulkManualReview
        url: https://ctixapiv3.cyware.com/threat-data/bulk-actions/bulk-manual-review
      - title: Bulk Mark/Unmark False Positive
        operationId: bulkMarkUnmarkFalsePositive
        url: https://ctixapiv3.cyware.com/threat-data/bulk-actions/bulk-mark-unmark-false-positive
  /ingestion/threat-data/bulk-action/analyst_tlp/:
    post:
      operationId: bulkAddTlp
      summary: Bulk Add TLP
      tags:
      - Threat Data
      description: Add an analyst TLP to multiple threat data objects.
      externalDocs:
        description: Cyware Intel Exchange API reference
        url: https://ctixapiv3.cyware.com/threat-data/bulk-actions/bulk-add-tlp
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                object_type:
                  type: string
                  description: Pass the type of threat data objects. To get the list of supported object types, see **Supported SDO Types** in **Threat Data** > **Miscellaneous**.
                  examples:
                  - indicator
                object_ids:
                  type: array
                  description: Pass the list of threat data object IDs to perform the bulk action. To retrieve a list of object IDs, use the **List Threat Data API** under the Threat Data section.
                  items:
                    type: string
                    description: This is an example value.
                    examples:
                    - 49d5e95e-3889-42de-8280-1ebf5c7cb95a
                data:
                  type: object
                  description: Pass the TLP to be added to the specified threat data objects.
                  properties:
                    analyst_tlp:
                      type: string
                      description: Pass the analyst TLP value to be added to the threat data objects.
                      enum:
                      - WHITE
                      - GREEN
                      - AMBER
                      - ' RED'
                      examples:
                      - AMBER
            example:
              object_type: indicator
              object_ids:
              - 49d5e95e-3889-42de-8280-1ebf5c7cb95a
              data:
                analyst_tlp: AMBER
      responses:
        '200':
          description: HTTP 200 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Returns the success or failure message.
                    examples:
                    - Action Successfully Executed
              example:
                message: Action Successfully Executed
  /ingestion/openapi/bulk-lookup/{object_type}/:
    post:
      operationId: bulkIocLookupAdvanced
      summary: Bulk IOC Lookup (Advanced)
      tags:
      - Threat Data
      description: Performs a lookup for threat data objects in Intel Exchange and retrieves the details of the objects, such as basic details, enriched data, and relations.
      externalDocs:
        description: Cyware Intel Exchange API reference
        url: https://ctixapiv3.cyware.com/threat-data/bulk-actions/bulk-ioc-lookup-advanced
      parameters:
      - name: enrichment_data
        in: query
        required: false
        schema:
          type: boolean
          description: Pass true to retrieve the latest five enrichment data objects.
          default: 'false'
          examples:
          - 'true'
        description: Pass true to retrieve the latest five enrichment data objects.
      - name: relation_data
        in: query
        required: false
        schema:
          type: boolean
          description: Pass true to retrieve the latest 100 relations details.
          default: 'false'
          examples:
          - 'true'
        description: Pass true to retrieve the latest 100 relations details.
      - name: enrichment_tools
        in: query
        required: false
        schema:
          type: string
          description: Pass the name of up to five enrichment tools separated by a comma. To retrieve a list of enrichment tools, use the **GET Enrichment Tools API** under **Administration** > **Enrichment Management** > **Enrichment Tools**.
          examples:
          - AbuseIPDB
        description: Pass the name of up to five enrichment tools separated by a comma. To retrieve a list of enrichment tools, use the **GET Enrichment Tools API** under **Administration** > **Enrichment Management** > **Enrichment Tools**.
      - name: fields
        in: query
        required: false
        schema:
          type: string
          description: Pass a comma-separated list of field names to retrieve specific details of the objects. By default, all fields are retrieved.
          examples:
          - relations,enrichment_data
        description: Pass a comma-separated list of field names to retrieve specific details of the objects. By default, all fields are retrieved.
      - name: page
        in: query
        required: false
        schema:
          type: integer
          description: Pass the page number to retrieve details from.
          default: '1'
        description: Pass the page number to retrieve details from.
      - name: page_size
        in: query
        required: false
        schema:
          type: integer
          description: Pass the number of records to be retrieved per page.
          default: '10'
        description: Pass the number of records to be retrieved per page.
      - name: object_type
        in: path
        required: true
        schema:
          type: string
          description: Pass the object type to lookup. For the list of supported object types, see **Supported SDO Types** in **Threat Data** > **Miscellaneous**.
          examples:
          - indicator
        description: Pass the object type to lookup. For the list of supported object types, see **Supported SDO Types** in **Threat Data** > **Miscellaneous**.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                value:
                  type: array
                  description: Pass the values of the IOCs you want to lookup.
                  items:
                    type: string
                    description: This is an example value.
                    examples:
                    - 76.77.23.225
              required:
              - value
            example:
              value:
              - 76.77.23.225
      responses:
        '200':
          description: HTTP 200 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  next:
                    type: object
                    description: Returns the URL for the next page.
                  previous:
                    type: object
                    description: Returns the URL for the previous page. Returns null if the page parameter is 1.
                  total:
                    type: number
                    description: Returns the total number of valid IOCs in the payload.
                    examples:
                    - 1
                  results:
                    type: array
                    description: Returns the details of threat data objects.
                    items:
                      type: object
                      properties:
                        analyst_score:
                          type: object
                          description: Returns the score assigned to the threat data object by an analyst.
                        analyst_tlp:
                          type: object
                          description: Returns the TLP assigned to the threat data object by an analyst.
                        country:
                          type: string
                          description: Returns the country name where the threat data object was seen.
                          examples:
                          - China
                        created:
                          type: string
                          description: Returns the date and time of when the object was created in the source.
                          examples:
                          - '2023-05-29T09:30:51Z'
                        ctix_created:
                          type: string
                          description: Returns the date and time of when the object was created in Intel Exchange.
                          examples:
                          - '2023-05-29T09:38:35.482Z'
                        ctix_modified:
                          type: string
                          description: Returns the date and time of when the object was modified in Intel Exchange.
                          examples:
                          - '2023-05-29T09:38:35.482Z'
                        custom_attributes:
                          type: object
                          description: Returns custom attributes associated with the object.
                        confidence_score:
                          type: number
                          description: Returns the confidence score of the object.
                          examples:
                          - 81
                        description:
                          type: object
                          description: Returns the source description of the object.
                        enrichment_data:
                          type: array
                          description: Returns a list of enrichment objects retrieved from the enrichment tools.
                          items:
                            type: object
                            properties:
                              tool:
                                type: string
                                description: Returns the enrichment tool name.
                                examples:
                                - AbuseIPDB
                              tool_response:
                                type: string
                                description: Returns the enrichment details.
                                examples:
                                - '{"data": {"data": {"ipAddress": "47.92.78.238", "isPublic": "True", "ipVersion": "4", "isWhitelisted": null, "abuseConfidenceScore": "0", "countryCode": "CN", "usageType": "Data Center/Web Hosting/Transit", "isp": "Aliyun Computing Co. Ltd", "domain": "aliyun.com", "hostnames": [], "isTor": "False", "totalReports": "0", "numDistinctUsers": "0", "lastReportedAt": null}}, "execution_status": "SUCCESS", "updated": 1685528188}'
                        first_seen:
                          type: object
                          description: Returns the first seen date and time of the threat data object.
                        id:
                          type: string
                          description: Returns the ID of the threat data object.
                          examples:
                          - c39cbf92-1ae6-4952-958a-3f48a90d55f6
                        ioc_type:
                          type: string
                          description: 'Returns the IOC type.

                            Returns null if the threat data object is not an indicator.

                            Returns hash type for hashes and the indicator type key for other indicators.'
                          examples:
                          - ipv4-addr
                        is_deprecated:
                          type: boolean
                          description: Returns true if the IOC is marked as deprecated in Intel Exchange. Else, returns false.
                          examples:
                          - false
                        is_false_positive:
                          type: boolean
                          description: Returns true if the IOC is marked as a false positive in Intel Exchange. Else, returns false.
                          examples:
                          - false
                        is_reviewed:
                          type: boolean
                          description: Returns true if the threat data object is manually reviewed. Else, returns false.
                          examples:
                          - false
                        is_whitelisted:
                          type: boolean
                          description: Returns true if the IOC is marked as an allowed indicator. Else, returns false.
                          examples:
                          - false
                        last_seen:
                          type: object
                          description: Returns the last seen date and time of the threat data object.
                        modified:
                          type: string
                          description: Returns the source modified date and time of the threat data object.
                          examples:
                          - '2023-05-29T09:31:02Z'
                        name:
                          type: string
                          description: Returns the value of the threat data object.
                          examples:
                          - 47.92.78.238
                        object_type:
                          type: string
                          description: Returns the SDO type of the threat data object
                          examples:
                          - indicator
                        published_collections:
                          type: array
                          description: Returns a list of JSON objects for the collections in which the IOC is published.
                          items:
                            type: object
                            properties:
                              name:
                                type: string
                                description: Returns the name of the collection.
                                examples:
                                - default
                              id:
                                type: string
                                description: Returns the unique identifier of the collection.
                                examples:
                                - 8c9e459f-5164-4f56-9a65-6a3004977cef
                        relations:
                          type: object
                          description: Returns a list of related threat data objects.
                          properties:
                            malware:
                              type: array
                              description: Returns the details of the malware.
                              items:
                                type: string
                                description: This is an example value.
                                examples:
                                - Piccoload
                        sources:
                          type: array
                          description: Returns the list of sources that reported the threat data object.
                          items:
                            type: object
                            properties:
                              id:
                                type: string
                                description: Returns the unique identifier of the source.
                                examples:
                                - 99740a47-fb33-4610-90e5-155e1dece960
                              name:
                                type: string
                                description: Returns the name of the source.
                                examples:
                                - CrowdStrike
                              type:
                                type: string
                                description: Returns the type of the source.
                                examples:
                                - API_FEEDS
                        sub_type:
                          type: object
                          description: Returns the sub-type of an indicator. Returns null if the threat data object is not an indicator. Returns hash type for hashes and value for other indicators.
                        tags:
                          type: array
                          

# --- truncated at 32 KB (167 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cyware/refs/heads/main/openapi/cyware-threat-data-api-openapi.yml