Factset · Capability

Factset PA Engine API — Templates

Factset PA Engine API — Templates. 12 operations. Lead operation: Factset Create a Linked Pa Template. Self-contained Naftiko capability covering one Factset business surface.

Run with Naftiko FactsetTemplates

What You Can Do

POST
Createlinkedpatemplates — Factset Create a Linked Pa Template
/v1/analytics/engines/pa/v3/linked-templates
GET
Getlinkedpatemplates — Factset Get Linked Pa Templates
/v1/analytics/engines/pa/v3/linked-templates
PUT
Updatelinkedpatemplates — Factset Update a Linked Pa Template
/v1/analytics/engines/pa/v3/linked-templates/{id}
DELETE
Deletelinkedpatemplates — Factset Delete a Linked Pa Template.
/v1/analytics/engines/pa/v3/linked-templates/{id}
GET
Getlinkedpatemplatesbyid — Factset Get Linked Pa Template by Id
/v1/analytics/engines/pa/v3/linked-templates/{id}
POST
Createunlinkedpatemplates — Factset Create Unlinked Pa Template
/v1/analytics/engines/pa/v3/unlinked-templates
GET
Getunlinkedpatemplates — Factset Get Unlinked Pa Templates
/v1/analytics/engines/pa/v3/unlinked-templates
GET
Getdefaultunlinkedpatemplatetypes — Factset Get Default Unlinked Pa Template Types.
/v1/analytics/engines/pa/v3/unlinked-templates/template-types
GET
Getdetailstype — Factset Get Unlinked Pa Template Type Details by Id.
/v1/analytics/engines/pa/v3/unlinked-templates/template-types/{id}
PUT
Updateunlinkedpatemplates — Factset Update Unlinked Pa Template
/v1/analytics/engines/pa/v3/unlinked-templates/{id}
DELETE
Deleteunlinkedpatemplates — Factset Delete Unlinked Pa Template
/v1/analytics/engines/pa/v3/unlinked-templates/{id}
GET
Getunlinkedpatemplatesbyid — Factset Get Unlinked Pa Template Details by Id
/v1/analytics/engines/pa/v3/unlinked-templates/{id}

MCP Tools

factset-create-linked-pa-template

Factset Create a Linked Pa Template

factset-get-linked-pa-templates

Factset Get Linked Pa Templates

read-only idempotent
factset-update-linked-pa-template

Factset Update a Linked Pa Template

idempotent
factset-delete-linked-pa-template

Factset Delete a Linked Pa Template.

idempotent
factset-get-linked-pa-template

Factset Get Linked Pa Template by Id

read-only idempotent
factset-create-unlinked-pa-template

Factset Create Unlinked Pa Template

factset-get-unlinked-pa-templates

Factset Get Unlinked Pa Templates

read-only idempotent
factset-get-default-unlinked-pa

Factset Get Default Unlinked Pa Template Types.

read-only idempotent
factset-get-unlinked-pa-template

Factset Get Unlinked Pa Template Type Details by Id.

read-only idempotent
factset-update-unlinked-pa-template

Factset Update Unlinked Pa Template

idempotent
factset-delete-unlinked-pa-template

Factset Delete Unlinked Pa Template

idempotent
factset-get-unlinked-pa-template-2

Factset Get Unlinked Pa Template Details by Id

read-only idempotent

Capability Spec

pa-engine-templates.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Factset PA Engine API — Templates
  description: 'Factset PA Engine API — Templates. 12 operations. Lead operation: Factset Create a Linked Pa Template. Self-contained
    Naftiko capability covering one Factset business surface.'
  tags:
  - Factset
  - Templates
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    FACTSET_API_KEY: FACTSET_API_KEY
capability:
  consumes:
  - type: http
    namespace: pa-engine-templates
    baseUri: https://api.factset.com
    description: Factset PA Engine API — Templates business capability. Self-contained, no shared references.
    resources:
    - name: analytics-engines-pa-v3-linked-templates
      path: /analytics/engines/pa/v3/linked-templates
      operations:
      - name: createlinkedpatemplates
        method: POST
        description: Factset Create a Linked Pa Template
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: getlinkedpatemplates
        method: GET
        description: Factset Get Linked Pa Templates
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: directory
          in: query
          type: string
          description: Get linked PA templates in path.
        - name: documentDirectory
          in: query
          type: string
          description: Get linked PA templates for documents in document path
        - name: documentName
          in: query
          type: string
          description: Get linked PA templates for documents by document name
    - name: analytics-engines-pa-v3-linked-templates-id
      path: /analytics/engines/pa/v3/linked-templates/{id}
      operations:
      - name: updatelinkedpatemplates
        method: PUT
        description: Factset Update a Linked Pa Template
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Unique identifier for a linked PA template
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletelinkedpatemplates
        method: DELETE
        description: Factset Delete a Linked Pa Template.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Unique identifier for a linked PA template
          required: true
      - name: getlinkedpatemplatesbyid
        method: GET
        description: Factset Get Linked Pa Template by Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Unique identifier for a linked PA template
          required: true
    - name: analytics-engines-pa-v3-unlinked-templates
      path: /analytics/engines/pa/v3/unlinked-templates
      operations:
      - name: createunlinkedpatemplates
        method: POST
        description: Factset Create Unlinked Pa Template
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: getunlinkedpatemplates
        method: GET
        description: Factset Get Unlinked Pa Templates
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: directory
          in: query
          type: string
          description: Get unlinked PA templates in path.
        - name: category
          in: query
          type: string
          description: Get unlinked PA templates by category.
    - name: analytics-engines-pa-v3-unlinked-templates-template-types
      path: /analytics/engines/pa/v3/unlinked-templates/template-types
      operations:
      - name: getdefaultunlinkedpatemplatetypes
        method: GET
        description: Factset Get Default Unlinked Pa Template Types.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: analytics-engines-pa-v3-unlinked-templates-template-types-id
      path: /analytics/engines/pa/v3/unlinked-templates/template-types/{id}
      operations:
      - name: getdetailstype
        method: GET
        description: Factset Get Unlinked Pa Template Type Details by Id.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Unique identifier for an unlinked PA template type
          required: true
    - name: analytics-engines-pa-v3-unlinked-templates-id
      path: /analytics/engines/pa/v3/unlinked-templates/{id}
      operations:
      - name: updateunlinkedpatemplates
        method: PUT
        description: Factset Update Unlinked Pa Template
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Unique identifier for an unlinked PA template
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteunlinkedpatemplates
        method: DELETE
        description: Factset Delete Unlinked Pa Template
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Unique identifier for an unlinked PA template
          required: true
      - name: getunlinkedpatemplatesbyid
        method: GET
        description: Factset Get Unlinked Pa Template Details by Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Unique identifier for an unlinked PA template
          required: true
    authentication:
      type: bearer
      token: '{{env.FACTSET_API_KEY}}'
  exposes:
  - type: rest
    namespace: pa-engine-templates-rest
    port: 8080
    description: REST adapter for Factset PA Engine API — Templates. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/analytics/engines/pa/v3/linked-templates
      name: analytics-engines-pa-v3-linked-templates
      description: REST surface for analytics-engines-pa-v3-linked-templates.
      operations:
      - method: POST
        name: createlinkedpatemplates
        description: Factset Create a Linked Pa Template
        call: pa-engine-templates.createlinkedpatemplates
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getlinkedpatemplates
        description: Factset Get Linked Pa Templates
        call: pa-engine-templates.getlinkedpatemplates
        with:
          directory: rest.directory
          documentDirectory: rest.documentDirectory
          documentName: rest.documentName
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/analytics/engines/pa/v3/linked-templates/{id}
      name: analytics-engines-pa-v3-linked-templates-id
      description: REST surface for analytics-engines-pa-v3-linked-templates-id.
      operations:
      - method: PUT
        name: updatelinkedpatemplates
        description: Factset Update a Linked Pa Template
        call: pa-engine-templates.updatelinkedpatemplates
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletelinkedpatemplates
        description: Factset Delete a Linked Pa Template.
        call: pa-engine-templates.deletelinkedpatemplates
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getlinkedpatemplatesbyid
        description: Factset Get Linked Pa Template by Id
        call: pa-engine-templates.getlinkedpatemplatesbyid
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/analytics/engines/pa/v3/unlinked-templates
      name: analytics-engines-pa-v3-unlinked-templates
      description: REST surface for analytics-engines-pa-v3-unlinked-templates.
      operations:
      - method: POST
        name: createunlinkedpatemplates
        description: Factset Create Unlinked Pa Template
        call: pa-engine-templates.createunlinkedpatemplates
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getunlinkedpatemplates
        description: Factset Get Unlinked Pa Templates
        call: pa-engine-templates.getunlinkedpatemplates
        with:
          directory: rest.directory
          category: rest.category
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/analytics/engines/pa/v3/unlinked-templates/template-types
      name: analytics-engines-pa-v3-unlinked-templates-template-types
      description: REST surface for analytics-engines-pa-v3-unlinked-templates-template-types.
      operations:
      - method: GET
        name: getdefaultunlinkedpatemplatetypes
        description: Factset Get Default Unlinked Pa Template Types.
        call: pa-engine-templates.getdefaultunlinkedpatemplatetypes
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/analytics/engines/pa/v3/unlinked-templates/template-types/{id}
      name: analytics-engines-pa-v3-unlinked-templates-template-types-id
      description: REST surface for analytics-engines-pa-v3-unlinked-templates-template-types-id.
      operations:
      - method: GET
        name: getdetailstype
        description: Factset Get Unlinked Pa Template Type Details by Id.
        call: pa-engine-templates.getdetailstype
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/analytics/engines/pa/v3/unlinked-templates/{id}
      name: analytics-engines-pa-v3-unlinked-templates-id
      description: REST surface for analytics-engines-pa-v3-unlinked-templates-id.
      operations:
      - method: PUT
        name: updateunlinkedpatemplates
        description: Factset Update Unlinked Pa Template
        call: pa-engine-templates.updateunlinkedpatemplates
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteunlinkedpatemplates
        description: Factset Delete Unlinked Pa Template
        call: pa-engine-templates.deleteunlinkedpatemplates
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getunlinkedpatemplatesbyid
        description: Factset Get Unlinked Pa Template Details by Id
        call: pa-engine-templates.getunlinkedpatemplatesbyid
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: pa-engine-templates-mcp
    port: 9090
    transport: http
    description: MCP adapter for Factset PA Engine API — Templates. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: factset-create-linked-pa-template
      description: Factset Create a Linked Pa Template
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: pa-engine-templates.createlinkedpatemplates
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: factset-get-linked-pa-templates
      description: Factset Get Linked Pa Templates
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pa-engine-templates.getlinkedpatemplates
      with:
        directory: tools.directory
        documentDirectory: tools.documentDirectory
        documentName: tools.documentName
      outputParameters:
      - type: object
        mapping: $.
    - name: factset-update-linked-pa-template
      description: Factset Update a Linked Pa Template
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: pa-engine-templates.updatelinkedpatemplates
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: factset-delete-linked-pa-template
      description: Factset Delete a Linked Pa Template.
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: pa-engine-templates.deletelinkedpatemplates
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: factset-get-linked-pa-template
      description: Factset Get Linked Pa Template by Id
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pa-engine-templates.getlinkedpatemplatesbyid
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: factset-create-unlinked-pa-template
      description: Factset Create Unlinked Pa Template
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: pa-engine-templates.createunlinkedpatemplates
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: factset-get-unlinked-pa-templates
      description: Factset Get Unlinked Pa Templates
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pa-engine-templates.getunlinkedpatemplates
      with:
        directory: tools.directory
        category: tools.category
      outputParameters:
      - type: object
        mapping: $.
    - name: factset-get-default-unlinked-pa
      description: Factset Get Default Unlinked Pa Template Types.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pa-engine-templates.getdefaultunlinkedpatemplatetypes
      outputParameters:
      - type: object
        mapping: $.
    - name: factset-get-unlinked-pa-template
      description: Factset Get Unlinked Pa Template Type Details by Id.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pa-engine-templates.getdetailstype
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: factset-update-unlinked-pa-template
      description: Factset Update Unlinked Pa Template
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: pa-engine-templates.updateunlinkedpatemplates
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: factset-delete-unlinked-pa-template
      description: Factset Delete Unlinked Pa Template
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: pa-engine-templates.deleteunlinkedpatemplates
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: factset-get-unlinked-pa-template-2
      description: Factset Get Unlinked Pa Template Details by Id
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pa-engine-templates.getunlinkedpatemplatesbyid
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.