Front · Capability

Core API — Views

Core API — Views. 6 operations. Lead operation: List team views. Self-contained Naftiko capability covering one Front business surface.

Run with Naftiko FrontViews

What You Can Do

GET
Listteamviews — List team views
/v1/teams/{team-id}/views
POST
Createteamview — Create team view
/v1/teams/{team-id}/views
GET
Listviews — List views
/v1/views
GET
Getview — Get view
/v1/views/{view-id}
PATCH
Updateview — Update view
/v1/views/{view-id}
POST
Addviewteammates — Add view to teammate sidebars
/v1/views/{view-id}/teammates

MCP Tools

list-team-views

List team views

read-only idempotent
create-team-view

Create team view

list-views

List views

read-only idempotent
get-view

Get view

read-only idempotent
update-view

Update view

idempotent
add-view-teammate-sidebars

Add view to teammate sidebars

Capability Spec

core-views.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Core API — Views
  description: 'Core API — Views. 6 operations. Lead operation: List team views. Self-contained Naftiko capability covering
    one Front business surface.'
  tags:
  - Front
  - Views
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    FRONT_API_KEY: FRONT_API_KEY
capability:
  consumes:
  - type: http
    namespace: core-views
    baseUri: https://api2.frontapp.com
    description: Core API — Views business capability. Self-contained, no shared references.
    resources:
    - name: teams-team_id-views
      path: /teams/{team_id}/views
      operations:
      - name: listteamviews
        method: GET
        description: List team views
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: team_id
          in: path
          type: string
          description: The team ID
          required: true
      - name: createteamview
        method: POST
        description: Create team view
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: team_id
          in: path
          type: string
          description: The team ID
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: views
      path: /views
      operations:
      - name: listviews
        method: GET
        description: List views
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: views-view_id
      path: /views/{view_id}
      operations:
      - name: getview
        method: GET
        description: Get view
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: view_id
          in: path
          type: string
          description: The view ID
          required: true
      - name: updateview
        method: PATCH
        description: Update view
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: view_id
          in: path
          type: string
          description: The view ID
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: views-view_id-teammates
      path: /views/{view_id}/teammates
      operations:
      - name: addviewteammates
        method: POST
        description: Add view to teammate sidebars
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: view_id
          in: path
          type: string
          description: The view ID
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    authentication:
      type: bearer
      token: '{{env.FRONT_API_KEY}}'
  exposes:
  - type: rest
    namespace: core-views-rest
    port: 8080
    description: REST adapter for Core API — Views. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/teams/{team-id}/views
      name: teams-team-id-views
      description: REST surface for teams-team_id-views.
      operations:
      - method: GET
        name: listteamviews
        description: List team views
        call: core-views.listteamviews
        with:
          team_id: rest.team_id
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createteamview
        description: Create team view
        call: core-views.createteamview
        with:
          team_id: rest.team_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/views
      name: views
      description: REST surface for views.
      operations:
      - method: GET
        name: listviews
        description: List views
        call: core-views.listviews
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/views/{view-id}
      name: views-view-id
      description: REST surface for views-view_id.
      operations:
      - method: GET
        name: getview
        description: Get view
        call: core-views.getview
        with:
          view_id: rest.view_id
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updateview
        description: Update view
        call: core-views.updateview
        with:
          view_id: rest.view_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/views/{view-id}/teammates
      name: views-view-id-teammates
      description: REST surface for views-view_id-teammates.
      operations:
      - method: POST
        name: addviewteammates
        description: Add view to teammate sidebars
        call: core-views.addviewteammates
        with:
          view_id: rest.view_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: core-views-mcp
    port: 9090
    transport: http
    description: MCP adapter for Core API — Views. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: list-team-views
      description: List team views
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: core-views.listteamviews
      with:
        team_id: tools.team_id
      outputParameters:
      - type: object
        mapping: $.
    - name: create-team-view
      description: Create team view
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: core-views.createteamview
      with:
        team_id: tools.team_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-views
      description: List views
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: core-views.listviews
      outputParameters:
      - type: object
        mapping: $.
    - name: get-view
      description: Get view
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: core-views.getview
      with:
        view_id: tools.view_id
      outputParameters:
      - type: object
        mapping: $.
    - name: update-view
      description: Update view
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: core-views.updateview
      with:
        view_id: tools.view_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: add-view-teammate-sidebars
      description: Add view to teammate sidebars
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: core-views.addviewteammates
      with:
        view_id: tools.view_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.