Unleash · Capability

Unleash Admin API — Service Accounts

Unleash Admin API — Service Accounts. 7 operations. Lead operation: List Service Accounts.. Self-contained Naftiko capability covering one Unleash business surface.

Run with Naftiko UnleashService Accounts

What You Can Do

GET
Getserviceaccounts — List Service Accounts.
/v1/api/admin/service-account
POST
Createserviceaccount — Create a Service Account.
/v1/api/admin/service-account
PUT
Updateserviceaccount — Update a Service Account.
/v1/api/admin/service-account/{id}
DELETE
Deleteserviceaccount — Delete a Service Account.
/v1/api/admin/service-account/{id}
GET
Getserviceaccounttokens — List All Tokens for a Service Account.
/v1/api/admin/service-account/{id}/token
POST
Createserviceaccounttoken — Create a Token for a Service Account.
/v1/api/admin/service-account/{id}/token
DELETE
Deleteserviceaccounttoken — Delete a Token for a Service Account.
/v1/api/admin/service-account/{id}/token/{tokenid}

MCP Tools

list-service-accounts

List Service Accounts.

read-only idempotent
create-service-account

Create a Service Account.

update-service-account

Update a Service Account.

idempotent
delete-service-account

Delete a Service Account.

idempotent
list-all-tokens-service-account

List All Tokens for a Service Account.

read-only idempotent
create-token-service-account

Create a Token for a Service Account.

delete-token-service-account

Delete a Token for a Service Account.

idempotent

Capability Spec

admin-service-accounts.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Unleash Admin API — Service Accounts
  description: 'Unleash Admin API — Service Accounts. 7 operations. Lead operation: List Service Accounts.. Self-contained
    Naftiko capability covering one Unleash business surface.'
  tags:
  - Unleash
  - Service Accounts
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    UNLEASH_API_KEY: UNLEASH_API_KEY
capability:
  consumes:
  - type: http
    namespace: admin-service-accounts
    baseUri: https://app.unleash-instance.example.com
    description: Unleash Admin API — Service Accounts business capability. Self-contained, no shared references.
    resources:
    - name: api-admin-service-account
      path: /api/admin/service-account
      operations:
      - name: getserviceaccounts
        method: GET
        description: List Service Accounts.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createserviceaccount
        method: POST
        description: Create a Service Account.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-admin-service-account-id
      path: /api/admin/service-account/{id}
      operations:
      - name: updateserviceaccount
        method: PUT
        description: Update a Service Account.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteserviceaccount
        method: DELETE
        description: Delete a Service Account.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
    - name: api-admin-service-account-id-token
      path: /api/admin/service-account/{id}/token
      operations:
      - name: getserviceaccounttokens
        method: GET
        description: List All Tokens for a Service Account.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
      - name: createserviceaccounttoken
        method: POST
        description: Create a Token for a Service Account.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-admin-service-account-id-token-tokenId
      path: /api/admin/service-account/{id}/token/{tokenId}
      operations:
      - name: deleteserviceaccounttoken
        method: DELETE
        description: Delete a Token for a Service Account.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: tokenId
          in: path
          type: string
          required: true
    authentication:
      type: bearer
      token: '{{env.UNLEASH_API_KEY}}'
  exposes:
  - type: rest
    namespace: admin-service-accounts-rest
    port: 8080
    description: REST adapter for Unleash Admin API — Service Accounts. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/api/admin/service-account
      name: api-admin-service-account
      description: REST surface for api-admin-service-account.
      operations:
      - method: GET
        name: getserviceaccounts
        description: List Service Accounts.
        call: admin-service-accounts.getserviceaccounts
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createserviceaccount
        description: Create a Service Account.
        call: admin-service-accounts.createserviceaccount
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/service-account/{id}
      name: api-admin-service-account-id
      description: REST surface for api-admin-service-account-id.
      operations:
      - method: PUT
        name: updateserviceaccount
        description: Update a Service Account.
        call: admin-service-accounts.updateserviceaccount
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteserviceaccount
        description: Delete a Service Account.
        call: admin-service-accounts.deleteserviceaccount
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/service-account/{id}/token
      name: api-admin-service-account-id-token
      description: REST surface for api-admin-service-account-id-token.
      operations:
      - method: GET
        name: getserviceaccounttokens
        description: List All Tokens for a Service Account.
        call: admin-service-accounts.getserviceaccounttokens
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createserviceaccounttoken
        description: Create a Token for a Service Account.
        call: admin-service-accounts.createserviceaccounttoken
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/service-account/{id}/token/{tokenid}
      name: api-admin-service-account-id-token-tokenid
      description: REST surface for api-admin-service-account-id-token-tokenId.
      operations:
      - method: DELETE
        name: deleteserviceaccounttoken
        description: Delete a Token for a Service Account.
        call: admin-service-accounts.deleteserviceaccounttoken
        with:
          id: rest.id
          tokenId: rest.tokenId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: admin-service-accounts-mcp
    port: 9090
    transport: http
    description: MCP adapter for Unleash Admin API — Service Accounts. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: list-service-accounts
      description: List Service Accounts.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: admin-service-accounts.getserviceaccounts
      outputParameters:
      - type: object
        mapping: $.
    - name: create-service-account
      description: Create a Service Account.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: admin-service-accounts.createserviceaccount
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: update-service-account
      description: Update a Service Account.
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: admin-service-accounts.updateserviceaccount
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-service-account
      description: Delete a Service Account.
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: admin-service-accounts.deleteserviceaccount
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: list-all-tokens-service-account
      description: List All Tokens for a Service Account.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: admin-service-accounts.getserviceaccounttokens
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: create-token-service-account
      description: Create a Token for a Service Account.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: admin-service-accounts.createserviceaccounttoken
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-token-service-account
      description: Delete a Token for a Service Account.
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: admin-service-accounts.deleteserviceaccounttoken
      with:
        id: tools.id
        tokenId: tools.tokenId
      outputParameters:
      - type: object
        mapping: $.