Demisto Settings API

The Settings API from Demisto — 3 operation(s) for settings.

Operations 4

POST /settings/audits Get Audits #
GET /settings/docker-images Get Docker Images #
POST /settings/docker-images Create Image #
POST /settings/integration-conf/upload Upload an integration #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/demisto-settings-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

demisto-settings-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: 'This is the public REST API to integrate with the demisto server.

    HTTP request can be sent using any HTTP-client.


    For an example dedicated client take a look at: https://github.com/demisto/demisto-py.


    Requests must include API-key that can be generated in the Demisto web client under ''Settings'' -> ''Integrations'' -> ''API keys''



    Optimistic Locking and Versioning\:


    When using Demisto REST API, you will need to make sure to work on the latest version of the item (incident, entry, etc.), otherwise, you will get a DB version error (which not allow you to override a newer item).

    In addition, you can pass ''version\: -1'' to force data override (make sure that other users data might be lost).


    Assume that Alice and Bob both read the same data from Demisto server, then they both changed the data, and then both tried to write the new versions back to the server. Whose changes should be saved? Alice’s? Bob’s?

    To solve this, each data item in Demisto has a numeric incremental version.

    If Alice saved an item with version 4 and Bob trying to save the same item with version 3, Demisto will rollback Bob request and returns a DB version conflict error.

    Bob will need to get the latest item and work on it so Alice work will not get lost.


    Example request using ''curl''\:


    ```

    curl ''https://hostname:443/incidents/search'' -H ''content-type: application/json'' -H ''accept: application/json'' -H ''Authorization: <API Key goes here>'' --data-binary ''{"filter":{"query":"-status:closed -category:job","period":{"by":"day","fromValue":7}}}'' --compressed

    ```'
  title: Demisto Apikeys Settings API
  version: 2.0.0
servers:
- url: https://hostname:443
security:
- api_key: []
- csrf_token: []
- x-xdr-auth-id: []
tags:
- name: Settings
paths:
  /settings/audits:
    post:
      description: Get audits by filter
      summary: Get Audits
      operationId: getAudits
      responses:
        '200':
          description: auditResult
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/auditResult'
      tags:
      - Settings
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GenericStringDateFilter'
          application/xml:
            schema:
              $ref: '#/components/schemas/GenericStringDateFilter'
  /settings/docker-images:
    get:
      description: Get list of all available docker image names
      summary: Get Docker Images
      operationId: getDockerImages
      responses:
        '200':
          description: dockerImagesResult
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dockerImagesResult'
      tags:
      - Settings
    post:
      description: Create an image with a given list of dependencies
      summary: Create Image
      operationId: createDockerImage
      responses:
        '200':
          description: newDockerImageResult
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/newDockerImageResult'
      tags:
      - Settings
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/newDockerImage'
          application/xml:
            schema:
              $ref: '#/components/schemas/newDockerImage'
  /settings/integration-conf/upload:
    post:
      description: Upload an integration to Demisto
      summary: Upload an integration
      operationId: integrationUpload
      responses:
        '200':
          description: The saved configuration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModuleConfiguration'
      tags:
      - Settings
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  description: file
                  format: binary
              required:
              - file
components:
  schemas:
    Order:
      description: Order struct holds a sort field and the direction of sorting
      type: object
      properties:
        asc:
          type: boolean
          x-go-name: Asc
        field:
          type: string
          x-go-name: Field
        fieldType:
          type: string
          x-go-name: FieldType
      x-go-package: github.com/demisto/server/domain
    Command:
      description: Command supported by a module
      type: object
      properties:
        arguments:
          type: array
          items:
            $ref: '#/components/schemas/Argument'
          x-go-name: Arguments
        cartesian:
          type: boolean
          x-go-name: Cartesian
        deprecated:
          type: boolean
          x-go-name: Deprecated
        description:
          type: string
          x-go-name: Description
        execution:
          type: boolean
          x-go-name: Execution
        hidden:
          type: boolean
          x-go-name: Hidden
        important:
          type: array
          items:
            $ref: '#/components/schemas/Important'
          x-go-name: Important
        name:
          type: string
          x-go-name: Name
        outputs:
          type: array
          items:
            $ref: '#/components/schemas/Output'
          x-go-name: Outputs
        permitted:
          type: boolean
          x-go-name: Permitted
        sensitive:
          type: boolean
          x-go-name: Sensitive
        timeout:
          type: integer
          format: int64
          x-go-name: Timeout
      x-go-package: github.com/demisto/server/domain
    ScriptSubType:
      description: ScriptSubType holds the script type version
      type: string
      x-go-package: github.com/demisto/server/domain
    ConfigDataType:
      description: ConfigDataType holds the type of a configuration field or command argument
      type: number
      format: double
      x-go-package: github.com/demisto/server/domain
    auditResult:
      type: object
      properties:
        audits:
          type: array
          items:
            $ref: '#/components/schemas/Audit'
          x-go-name: Audits
        total:
          type: integer
          format: int64
          x-go-name: Total
      x-go-package: github.com/demisto/server/web
    Important:
      description: Important The important outputs of a given command
      type: object
      properties:
        contextPath:
          type: string
          x-go-name: ContextPath
        description:
          description: Description is either a string or a map from string to interface
          type: string
          x-go-name: Description
        related:
          description: To what other context path this output is related
          type: string
          x-go-name: Related
      x-go-package: github.com/demisto/server/domain
    ConfigField:
      description: ConfigField holds a configuration field
      type: object
      properties:
        defaultValue:
          type: string
          x-go-name: DefaultValue
        display:
          type: string
          x-go-name: Display
        hidden:
          type: boolean
          x-go-name: Hidden
        info:
          type: string
          x-go-name: AdditionalInfo
        name:
          type: string
          x-go-name: Name
        options:
          type: array
          items:
            type: string
          x-go-name: Options
        required:
          type: boolean
          x-go-name: Required
        type:
          $ref: '#/components/schemas/ConfigDataType'
      x-go-package: github.com/demisto/server/domain
    dockerImage:
      description: dockerImage details
      type: object
      properties:
        createdAt:
          type: string
          x-go-name: CreatedAt
        createdSince:
          type: string
          x-go-name: CreatedSince
        id:
          type: string
          x-go-name: ID
        repository:
          type: string
          x-go-name: Repository
        size:
          type: string
          x-go-name: Size
        tag:
          type: string
          x-go-name: Tag
      x-go-package: github.com/demisto/server/web
    ModuleConfiguration:
      description: ModuleConfiguration is the configuration parameters for a module
      type: object
      properties:
        beta:
          type: boolean
          x-go-name: Beta
        brand:
          type: string
          x-go-name: Brand
        canGetSamples:
          type: boolean
          x-go-name: CanGetSamples
        category:
          type: string
          x-go-name: Category
        cmdline:
          type: string
          x-go-name: Cmdline
        commitMessage:
          type: string
          x-go-name: CommitMessage
        configuration:
          type: array
          items:
            $ref: '#/components/schemas/ConfigField'
          x-go-name: Configuration
        deprecated:
          type: boolean
          x-go-name: Deprecated
        description:
          type: string
          x-go-name: Description
        detailedDescription:
          type: string
          x-go-name: DetailedDescription
        display:
          type: string
          x-go-name: Display
        executable:
          type: string
          x-go-name: Executable
        hidden:
          type: boolean
          x-go-name: Hidden
        hideEngines:
          type: boolean
          x-go-name: HideEngines
        icon:
          type: string
          x-go-name: Icon
        id:
          type: string
          x-go-name: ID
        image:
          type: string
          x-go-name: Image
        integrationScript:
          $ref: '#/components/schemas/IntegrationScript'
        isPasswordProtected:
          type: boolean
          x-go-name: IsPasswordProtected
        locked:
          type: boolean
          x-go-name: Locked
        modified:
          type: string
          format: date-time
          x-go-name: Modified
        name:
          type: string
          x-go-name: Name
        path:
          type: string
          x-go-name: Path
        prevName:
          type: string
          x-go-name: PrevName
        propagationLabels:
          type: array
          items:
            type: string
          x-go-name: PropagationLabels
        readonly:
          type: boolean
          x-go-name: ReadOnly
        scriptNotVisible:
          type: boolean
          x-go-name: ScriptNotVisible
        shouldCommit:
          type: boolean
          x-go-name: ShouldCommit
        sortValues:
          type: array
          items:
            type: string
          x-go-name: SortValues
        sourceModuleID:
          type: string
          x-go-name: SourceModuleID
        system:
          type: boolean
          x-go-name: System
        vcShouldIgnore:
          type: boolean
          x-go-name: VCShouldIgnore
        version:
          type: integer
          format: int64
          x-go-name: Versn
      x-go-package: github.com/demisto/server/domain
    dockerImagesResult:
      type: object
      properties:
        images:
          type: array
          items:
            $ref: '#/components/schemas/dockerImage'
          x-go-name: Images
      x-go-package: github.com/demisto/server/web
    GenericStringDateFilter:
      description: GenericStringDateFilter is a general filter that will fetch entities using the Query value and a date filter
      type: object
      properties:
        Cache:
          description: Cache of join functions
          type: object
          additionalProperties:
            type: array
            items:
              type: string
        fromDate:
          type: string
          format: date-time
          x-go-name: FromDate
        fromDateLicense:
          type: string
          format: date-time
          x-go-name: FromDateLicenseVal
        page:
          description: 0-based page
          type: integer
          format: int64
          x-go-name: Page
        period:
          $ref: '#/components/schemas/Period'
        query:
          type: string
          x-go-name: Query
        searchAfter:
          description: Efficient next page, pass max sort value from previous page
          type: array
          items:
            type: string
          x-go-name: SearchAfter
        searchBefore:
          description: Efficient prev page, pass min sort value from next page
          type: array
          items:
            type: string
          x-go-name: SearchBefore
        size:
          description: Size is limited to 1000, if not passed it defaults to 0, and no results will return
          type: integer
          format: int64
          x-go-name: Size
        sort:
          description: The sort order
          type: array
          items:
            $ref: '#/components/schemas/Order'
          x-go-name: Sort
        timeFrame:
          $ref: '#/components/schemas/Duration'
        toDate:
          type: string
          format: date-time
          x-go-name: ToDate
      x-go-package: github.com/demisto/server/repo/entities
    ScriptType:
      description: ScriptType holds the type of a script
      type: string
      x-go-package: github.com/demisto/server/domain
    newDockerImage:
      type: object
      properties:
        base:
          type: string
          x-go-name: BaseImage
        dependencies:
          type: array
          items:
            type: string
          x-go-name: Dependencies
        name:
          type: string
          x-go-name: Name
        packages:
          type: array
          items:
            type: string
          x-go-name: Packages
      x-go-package: github.com/demisto/server/web
    OutputType:
      type: string
      title: OutputType ...
      x-go-package: github.com/demisto/server/domain
    Audit:
      description: 'Audit holds the auditing details. This includes all common fields, the action in a string blob and the user who

        performed the action in a user struct.'
      type: object
      properties:
        action:
          type: object
          additionalProperties:
            type: object
          x-go-name: Action
        id:
          type: string
          x-go-name: ID
        identifier:
          type: string
          x-go-name: Identifier
        modified:
          type: string
          format: date-time
          x-go-name: Modified
        object:
          type: string
          x-go-name: Object
        sortValues:
          type: array
          items:
            type: string
          x-go-name: SortValues
        type:
          type: string
          x-go-name: Type
        user:
          type: string
          x-go-name: User
        version:
          type: integer
          format: int64
          x-go-name: Versn
      x-go-package: github.com/demisto/server/domain
    Period:
      type: object
      title: Period holds the 'Period' query, such as last 3 days, last 6 hours, between 6 days from now until 3 days from now.
      properties:
        by:
          description: By is used for legacty, and if exists it will override ByTo and ByFrom
          type: string
          x-go-name: By
        byFrom:
          type: string
          x-go-name: ByFrom
        byTo:
          type: string
          x-go-name: ByTo
        field:
          type: string
          x-go-name: Field
        fromValue:
          type: string
          format: duration
          x-go-name: FromValue
        toValue:
          type: string
          format: duration
          x-go-name: ToValue
      x-go-package: github.com/demisto/server/domain
    Argument:
      description: Argument to a module command
      type: object
      properties:
        auto:
          type: string
          x-go-name: Auto
        default:
          type: boolean
          x-go-name: Default
        defaultValue:
          type: string
          x-go-name: DefaultValue
        deprecated:
          type: boolean
          x-go-name: Deprecated
        description:
          type: string
          x-go-name: Description
        isArray:
          type: boolean
          x-go-name: IsArray
        name:
          type: string
          x-go-name: Name
        predefined:
          type: array
          items:
            type: string
          x-go-name: Predefined
        required:
          type: boolean
          x-go-name: Required
        secret:
          type: boolean
          x-go-name: Secret
      x-go-package: github.com/demisto/server/domain
    Duration:
      description: 'A Duration represents the elapsed time between two instants

        as an int64 nanosecond count. The representation limits the

        largest representable duration to approximately 290 years.'
      type: integer
      format: int64
      x-go-package: time
    newDockerImageResult:
      type: object
      properties:
        output:
          type: string
          x-go-name: Output
      x-go-package: github.com/demisto/server/web
    IntegrationScript:
      type: object
      title: IntegrationScript ...
      properties:
        commands:
          type: array
          items:
            $ref: '#/components/schemas/Command'
          x-go-name: Commands
        dockerImage:
          type: string
          x-go-name: DockerImage
        feed:
          type: boolean
          x-go-name: Feed
        isFetch:
          type: boolean
          x-go-name: IsFetch
        isFetchCredentials:
          type: boolean
          x-go-name: IsFetchCredentials
        longRunning:
          type: boolean
          x-go-name: LongRunning
        longRunningPortMapping:
          type: boolean
          x-go-name: LongRunningPort
        runOnce:
          type: boolean
          x-go-name: RunOnce
        script:
          type: string
          x-go-name: Script
        subtype:
          $ref: '#/components/schemas/ScriptSubType'
        type:
          $ref: '#/components/schemas/ScriptType'
      x-go-package: github.com/demisto/server/domain
    Output:
      description: Output of a module command
      type: object
      properties:
        contentPath:
          type: string
          x-go-name: ContentPath
        contextPath:
          type: string
          x-go-name: ContextPath
        description:
          description: Description is either a string or a map from string to interface
          type: object
          x-go-name: Description
        type:
          $ref: '#/components/schemas/OutputType'
      x-go-package: github.com/demisto/server/domain
  securitySchemes:
    api_key:
      type: apiKey
      name: Authorization
      in: header
    csrf_token:
      type: apiKey
      name: X-XSRF-TOKEN
      in: header
    x-xdr-auth-id:
      type: apiKey
      name: x-xdr-auth-id
      in: header