Scalar · Capability

Core — workspace

Core — workspace. 8 operations. Lead operation: Check availability for workspace namespace and slug. Self-contained Naftiko capability covering one business surface.

Core — workspace is a Naftiko capability published by Scalar, one of 22 capabilities the APIs.io network indexes for this provider. It bundles 8 operations across the POST, DELETE, PATCH, and GET methods rooted at /v1/workspaces/{…}.

The capability includes 1 read-only operation and 7 state-changing operations. Lead operation: Creates a new workspace. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Scalar and workspace.

Run with Naftiko Scalarworkspace

What You Can Do

POST
Postworkspacesnamespace — Creates a new workspace
/v1/workspaces/{namespace}
PATCH
Patchworkspacesnamespaceslug — Update team workspace metadata
/v1/workspaces/{namespace}/{slug}
DELETE
Deleteworkspacesnamespaceslug — Delete a team workspace
/v1/workspaces/{namespace}/{slug}
POST
Postworkspacesnamespaceslugversion — Create or update a workspace JSON version
/v1/workspaces/{namespace}/{slug}/version
POST
Postworkspacesnamespaceslugaccessgroup — Adds an access group to a workspace
/v1/workspaces/{namespace}/{slug}/access/{group}
DELETE
Deleteworkspacesnamespaceslugaccessgroup — Removes an access group from a workspace
/v1/workspaces/{namespace}/{slug}/access/{group}
GET
Getworkspacesnamespaceslugavailable — Check availability for workspace namespace and slug
/v1/workspaces/{namespace}/{slug}/available
DELETE
Deleteworkspacesnamespaceslugversionversion — Delete a team workspace version
/v1/workspaces/{namespace}/{slug}/version/{version}

MCP Tools

scalar-postworkspacesnamespace

Creates a new workspace

scalar-patchworkspacesnamespaceslug

Update team workspace metadata

scalar-deleteworkspacesnamespaceslug

Delete a team workspace

idempotent
scalar-postworkspacesnamespaceslugversion

Create or update a workspace JSON version

scalar-postworkspacesnamespaceslugaccessgroup

Adds an access group to a workspace

scalar-deleteworkspacesnamespaceslugaccessgroup

Removes an access group from a workspace

idempotent
scalar-getworkspacesnamespaceslugavailable

Check availability for workspace namespace and slug

read-only idempotent
scalar-deleteworkspacesnamespaceslugversionversion

Delete a team workspace version

idempotent

Capability Spec

core-workspace.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Core — workspace
  description: 'Core — workspace. 8 operations. Lead operation: Check availability for workspace namespace and slug. Self-contained Naftiko capability covering one business surface.'
  tags:
  - Scalar
  - workspace
  created: '2026-05-20'
  modified: '2026-05-20'
binds:
- namespace: env
  keys:
    SCALAR_API_KEY: SCALAR_API_KEY
capability:
  consumes:
  - type: http
    namespace: core-workspace
    baseUri: https://example.com
    description: Core — workspace business capability. Self-contained, no shared references.
    resources:
    - name: workspaces-namespace
      path: /workspaces/{namespace}
      operations:
      - name: postworkspacesnamespace
        method: POST
        description: Creates a new workspace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: namespace
          in: path
          type: string
          description: path parameter namespace.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: workspaces-namespace-slug
      path: /workspaces/{namespace}/{slug}
      operations:
      - name: patchworkspacesnamespaceslug
        method: PATCH
        description: Update team workspace metadata
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: namespace
          in: path
          type: string
          description: path parameter namespace.
          required: true
        - name: slug
          in: path
          type: string
          description: path parameter slug.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteworkspacesnamespaceslug
        method: DELETE
        description: Delete a team workspace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: namespace
          in: path
          type: string
          description: path parameter namespace.
          required: true
        - name: slug
          in: path
          type: string
          description: path parameter slug.
          required: true
    - name: workspaces-namespace-slug-version
      path: /workspaces/{namespace}/{slug}/version
      operations:
      - name: postworkspacesnamespaceslugversion
        method: POST
        description: Create or update a workspace JSON version
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: namespace
          in: path
          type: string
          description: path parameter namespace.
          required: true
        - name: slug
          in: path
          type: string
          description: path parameter slug.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: workspaces-namespace-slug-access-group
      path: /workspaces/{namespace}/{slug}/access/{group}
      operations:
      - name: postworkspacesnamespaceslugaccessgroup
        method: POST
        description: Adds an access group to a workspace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: namespace
          in: path
          type: string
          description: path parameter namespace.
          required: true
        - name: slug
          in: path
          type: string
          description: path parameter slug.
          required: true
        - name: group
          in: path
          type: string
          description: path parameter group.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteworkspacesnamespaceslugaccessgroup
        method: DELETE
        description: Removes an access group from a workspace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: namespace
          in: path
          type: string
          description: path parameter namespace.
          required: true
        - name: slug
          in: path
          type: string
          description: path parameter slug.
          required: true
        - name: group
          in: path
          type: string
          description: path parameter group.
          required: true
    - name: workspaces-namespace-slug-available
      path: /workspaces/{namespace}/{slug}/available
      operations:
      - name: getworkspacesnamespaceslugavailable
        method: GET
        description: Check availability for workspace namespace and slug
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: namespace
          in: path
          type: string
          description: path parameter namespace.
          required: true
        - name: slug
          in: path
          type: string
          description: path parameter slug.
          required: true
    - name: workspaces-namespace-slug-version-version
      path: /workspaces/{namespace}/{slug}/version/{version}
      operations:
      - name: deleteworkspacesnamespaceslugversionversion
        method: DELETE
        description: Delete a team workspace version
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: namespace
          in: path
          type: string
          description: path parameter namespace.
          required: true
        - name: slug
          in: path
          type: string
          description: path parameter slug.
          required: true
        - name: version
          in: path
          type: string
          description: path parameter version.
          required: true
  exposes:
  - type: rest
    namespace: core-workspace-rest
    port: 8080
    description: REST adapter for Core — workspace. One resource per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/workspaces/{namespace}
      name: workspaces-namespace
      description: REST surface for workspaces-namespace.
      operations:
      - method: POST
        name: postworkspacesnamespace
        description: Creates a new workspace
        call: core-workspace.postworkspacesnamespace
        with:
          namespace: rest.namespace
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workspaces/{namespace}/{slug}
      name: workspaces-namespace-slug
      description: REST surface for workspaces-namespace-slug.
      operations:
      - method: PATCH
        name: patchworkspacesnamespaceslug
        description: Update team workspace metadata
        call: core-workspace.patchworkspacesnamespaceslug
        with:
          namespace: rest.namespace
          slug: rest.slug
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteworkspacesnamespaceslug
        description: Delete a team workspace
        call: core-workspace.deleteworkspacesnamespaceslug
        with:
          namespace: rest.namespace
          slug: rest.slug
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workspaces/{namespace}/{slug}/version
      name: workspaces-namespace-slug-version
      description: REST surface for workspaces-namespace-slug-version.
      operations:
      - method: POST
        name: postworkspacesnamespaceslugversion
        description: Create or update a workspace JSON version
        call: core-workspace.postworkspacesnamespaceslugversion
        with:
          namespace: rest.namespace
          slug: rest.slug
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workspaces/{namespace}/{slug}/access/{group}
      name: workspaces-namespace-slug-access-group
      description: REST surface for workspaces-namespace-slug-access-group.
      operations:
      - method: POST
        name: postworkspacesnamespaceslugaccessgroup
        description: Adds an access group to a workspace
        call: core-workspace.postworkspacesnamespaceslugaccessgroup
        with:
          namespace: rest.namespace
          slug: rest.slug
          group: rest.group
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteworkspacesnamespaceslugaccessgroup
        description: Removes an access group from a workspace
        call: core-workspace.deleteworkspacesnamespaceslugaccessgroup
        with:
          namespace: rest.namespace
          slug: rest.slug
          group: rest.group
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workspaces/{namespace}/{slug}/available
      name: workspaces-namespace-slug-available
      description: REST surface for workspaces-namespace-slug-available.
      operations:
      - method: GET
        name: getworkspacesnamespaceslugavailable
        description: Check availability for workspace namespace and slug
        call: core-workspace.getworkspacesnamespaceslugavailable
        with:
          namespace: rest.namespace
          slug: rest.slug
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workspaces/{namespace}/{slug}/version/{version}
      name: workspaces-namespace-slug-version-version
      description: REST surface for workspaces-namespace-slug-version-version.
      operations:
      - method: DELETE
        name: deleteworkspacesnamespaceslugversionversion
        description: Delete a team workspace version
        call: core-workspace.deleteworkspacesnamespaceslugversionversion
        with:
          namespace: rest.namespace
          slug: rest.slug
          version: rest.version
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: core-workspace-mcp
    port: 9090
    transport: http
    description: MCP adapter for Core — workspace. One tool per consumed operation, routed inline through this capability's consumes block.
    tools:
    - name: scalar-postworkspacesnamespace
      description: Creates a new workspace
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: core-workspace.postworkspacesnamespace
      with:
        namespace: tools.namespace
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: scalar-patchworkspacesnamespaceslug
      description: Update team workspace metadata
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: core-workspace.patchworkspacesnamespaceslug
      with:
        namespace: tools.namespace
        slug: tools.slug
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: scalar-deleteworkspacesnamespaceslug
      description: Delete a team workspace
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: core-workspace.deleteworkspacesnamespaceslug
      with:
        namespace: tools.namespace
        slug: tools.slug
      outputParameters:
      - type: object
        mapping: $.
    - name: scalar-postworkspacesnamespaceslugversion
      description: Create or update a workspace JSON version
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: core-workspace.postworkspacesnamespaceslugversion
      with:
        namespace: tools.namespace
        slug: tools.slug
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: scalar-postworkspacesnamespaceslugaccessgroup
      description: Adds an access group to a workspace
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: core-workspace.postworkspacesnamespaceslugaccessgroup
      with:
        namespace: tools.namespace
        slug: tools.slug
        group: tools.group
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: scalar-deleteworkspacesnamespaceslugaccessgroup
      description: Removes an access group from a workspace
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: core-workspace.deleteworkspacesnamespaceslugaccessgroup
      with:
        namespace: tools.namespace
        slug: tools.slug
        group: tools.group
      outputParameters:
      - type: object
        mapping: $.
    - name: scalar-getworkspacesnamespaceslugavailable
      description: Check availability for workspace namespace and slug
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: core-workspace.getworkspacesnamespaceslugavailable
      with:
        namespace: tools.namespace
        slug: tools.slug
      outputParameters:
      - type: object
        mapping: $.
    - name: scalar-deleteworkspacesnamespaceslugversionversion
      description: Delete a team workspace version
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: core-workspace.deleteworkspacesnamespaceslugversionversion
      with:
        namespace: tools.namespace
        slug: tools.slug
        version: tools.version
      outputParameters:
      - type: object
        mapping: $.