Schematic · Capability
Schematic API — accounts
Schematic API — accounts. 18 operations. Lead operation: List account members. Self-contained Naftiko capability covering one Schematic business surface.
What You Can Do
GET
Listaccountmembers
— List account members
/v1/account-members
GET
Getaccountmember
— Get account member
/v1/account-members/{account-member-id}
GET
Listapikeys
— List api keys
/v1/api-keys
POST
Createapikey
— Create api key
/v1/api-keys
GET
Countapikeys
— Count api keys
/v1/api-keys/count
GET
Getapikey
— Get api key
/v1/api-keys/{api-key-id}
PUT
Updateapikey
— Update api key
/v1/api-keys/{api-key-id}
DELETE
Deleteapikey
— Delete api key
/v1/api-keys/{api-key-id}
GET
Listauditlogs
— List audit logs
/v1/audit-log
GET
Countauditlogs
— Count audit logs
/v1/audit-log/count
GET
Getauditlog
— Get audit log
/v1/audit-log/{audit-log-id}
GET
Listenvironments
— List environments
/v1/environments
POST
Createenvironment
— Create environment
/v1/environments
GET
Getenvironment
— Get environment
/v1/environments/{environment-id}
PUT
Updateenvironment
— Update environment
/v1/environments/{environment-id}
DELETE
Deleteenvironment
— Delete environment
/v1/environments/{environment-id}
POST
Quickstart
— Quickstart
/v1/quickstart
GET
Getwhoami
— Get who am I
/v1/whoami
MCP Tools
list-account-members
List account members
read-only
idempotent
get-account-member
Get account member
read-only
idempotent
list-api-keys
List api keys
read-only
idempotent
create-api-key
Create api key
count-api-keys
Count api keys
read-only
idempotent
get-api-key
Get api key
read-only
idempotent
update-api-key
Update api key
idempotent
delete-api-key
Delete api key
idempotent
list-audit-logs
List audit logs
read-only
idempotent
count-audit-logs
Count audit logs
read-only
idempotent
get-audit-log
Get audit log
read-only
idempotent
list-environments
List environments
read-only
idempotent
create-environment
Create environment
get-environment
Get environment
read-only
idempotent
update-environment
Update environment
idempotent
delete-environment
Delete environment
idempotent
quickstart
Quickstart
get-who-am-i
Get who am I
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Schematic API — accounts
description: 'Schematic API — accounts. 18 operations. Lead operation: List account members. Self-contained Naftiko capability
covering one Schematic business surface.'
tags:
- Schematic
- accounts
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
SCHEMATIC_API_KEY: SCHEMATIC_API_KEY
capability:
consumes:
- type: http
namespace: schematic-accounts
baseUri: https://api.schematichq.com
description: Schematic API — accounts business capability. Self-contained, no shared references.
resources:
- name: account-members
path: /account-members
operations:
- name: listaccountmembers
method: GET
description: List account members
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: ids
in: query
type: array
- name: q
in: query
type: string
description: Search filter
- name: limit
in: query
type: integer
description: Page limit (default 100)
- name: offset
in: query
type: integer
description: Page offset (default 0)
- name: account-members-account_member_id
path: /account-members/{account_member_id}
operations:
- name: getaccountmember
method: GET
description: Get account member
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: account_member_id
in: path
type: string
description: account_member_id
required: true
- name: api-keys
path: /api-keys
operations:
- name: listapikeys
method: GET
description: List api keys
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: environment_id
in: query
type: string
- name: require_environment
in: query
type: boolean
required: true
- name: limit
in: query
type: integer
description: Page limit (default 100)
- name: offset
in: query
type: integer
description: Page offset (default 0)
- name: createapikey
method: POST
description: Create api key
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: api-keys-count
path: /api-keys/count
operations:
- name: countapikeys
method: GET
description: Count api keys
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: environment_id
in: query
type: string
- name: require_environment
in: query
type: boolean
required: true
- name: limit
in: query
type: integer
description: Page limit (default 100)
- name: offset
in: query
type: integer
description: Page offset (default 0)
- name: api-keys-api_key_id
path: /api-keys/{api_key_id}
operations:
- name: getapikey
method: GET
description: Get api key
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: api_key_id
in: path
type: string
description: api_key_id
required: true
- name: updateapikey
method: PUT
description: Update api key
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: api_key_id
in: path
type: string
description: api_key_id
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: deleteapikey
method: DELETE
description: Delete api key
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: api_key_id
in: path
type: string
description: api_key_id
required: true
- name: audit-log
path: /audit-log
operations:
- name: listauditlogs
method: GET
description: List audit logs
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: actor_type
in: query
type: string
- name: end_time
in: query
type: string
- name: environment_id
in: query
type: string
- name: q
in: query
type: string
- name: start_time
in: query
type: string
- name: limit
in: query
type: integer
description: Page limit (default 100)
- name: offset
in: query
type: integer
description: Page offset (default 0)
- name: audit-log-count
path: /audit-log/count
operations:
- name: countauditlogs
method: GET
description: Count audit logs
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: actor_type
in: query
type: string
- name: end_time
in: query
type: string
- name: environment_id
in: query
type: string
- name: q
in: query
type: string
- name: start_time
in: query
type: string
- name: limit
in: query
type: integer
description: Page limit (default 100)
- name: offset
in: query
type: integer
description: Page offset (default 0)
- name: audit-log-audit_log_id
path: /audit-log/{audit_log_id}
operations:
- name: getauditlog
method: GET
description: Get audit log
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: audit_log_id
in: path
type: string
description: audit_log_id
required: true
- name: environments
path: /environments
operations:
- name: listenvironments
method: GET
description: List environments
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: ids
in: query
type: array
- name: limit
in: query
type: integer
description: Page limit (default 100)
- name: offset
in: query
type: integer
description: Page offset (default 0)
- name: createenvironment
method: POST
description: Create environment
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: environments-environment_id
path: /environments/{environment_id}
operations:
- name: getenvironment
method: GET
description: Get environment
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: environment_id
in: path
type: string
description: environment_id
required: true
- name: updateenvironment
method: PUT
description: Update environment
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: environment_id
in: path
type: string
description: environment_id
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: deleteenvironment
method: DELETE
description: Delete environment
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: environment_id
in: path
type: string
description: environment_id
required: true
- name: quickstart
path: /quickstart
operations:
- name: quickstart
method: POST
description: Quickstart
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: whoami
path: /whoami
operations:
- name: getwhoami
method: GET
description: Get who am I
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
authentication:
type: apikey
key: X-Schematic-Api-Key
value: '{{env.SCHEMATIC_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: schematic-accounts-rest
port: 8080
description: REST adapter for Schematic API — accounts. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/account-members
name: account-members
description: REST surface for account-members.
operations:
- method: GET
name: listaccountmembers
description: List account members
call: schematic-accounts.listaccountmembers
with:
ids: rest.ids
q: rest.q
limit: rest.limit
offset: rest.offset
outputParameters:
- type: object
mapping: $.
- path: /v1/account-members/{account-member-id}
name: account-members-account-member-id
description: REST surface for account-members-account_member_id.
operations:
- method: GET
name: getaccountmember
description: Get account member
call: schematic-accounts.getaccountmember
with:
account_member_id: rest.account_member_id
outputParameters:
- type: object
mapping: $.
- path: /v1/api-keys
name: api-keys
description: REST surface for api-keys.
operations:
- method: GET
name: listapikeys
description: List api keys
call: schematic-accounts.listapikeys
with:
environment_id: rest.environment_id
require_environment: rest.require_environment
limit: rest.limit
offset: rest.offset
outputParameters:
- type: object
mapping: $.
- method: POST
name: createapikey
description: Create api key
call: schematic-accounts.createapikey
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api-keys/count
name: api-keys-count
description: REST surface for api-keys-count.
operations:
- method: GET
name: countapikeys
description: Count api keys
call: schematic-accounts.countapikeys
with:
environment_id: rest.environment_id
require_environment: rest.require_environment
limit: rest.limit
offset: rest.offset
outputParameters:
- type: object
mapping: $.
- path: /v1/api-keys/{api-key-id}
name: api-keys-api-key-id
description: REST surface for api-keys-api_key_id.
operations:
- method: GET
name: getapikey
description: Get api key
call: schematic-accounts.getapikey
with:
api_key_id: rest.api_key_id
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updateapikey
description: Update api key
call: schematic-accounts.updateapikey
with:
api_key_id: rest.api_key_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deleteapikey
description: Delete api key
call: schematic-accounts.deleteapikey
with:
api_key_id: rest.api_key_id
outputParameters:
- type: object
mapping: $.
- path: /v1/audit-log
name: audit-log
description: REST surface for audit-log.
operations:
- method: GET
name: listauditlogs
description: List audit logs
call: schematic-accounts.listauditlogs
with:
actor_type: rest.actor_type
end_time: rest.end_time
environment_id: rest.environment_id
q: rest.q
start_time: rest.start_time
limit: rest.limit
offset: rest.offset
outputParameters:
- type: object
mapping: $.
- path: /v1/audit-log/count
name: audit-log-count
description: REST surface for audit-log-count.
operations:
- method: GET
name: countauditlogs
description: Count audit logs
call: schematic-accounts.countauditlogs
with:
actor_type: rest.actor_type
end_time: rest.end_time
environment_id: rest.environment_id
q: rest.q
start_time: rest.start_time
limit: rest.limit
offset: rest.offset
outputParameters:
- type: object
mapping: $.
- path: /v1/audit-log/{audit-log-id}
name: audit-log-audit-log-id
description: REST surface for audit-log-audit_log_id.
operations:
- method: GET
name: getauditlog
description: Get audit log
call: schematic-accounts.getauditlog
with:
audit_log_id: rest.audit_log_id
outputParameters:
- type: object
mapping: $.
- path: /v1/environments
name: environments
description: REST surface for environments.
operations:
- method: GET
name: listenvironments
description: List environments
call: schematic-accounts.listenvironments
with:
ids: rest.ids
limit: rest.limit
offset: rest.offset
outputParameters:
- type: object
mapping: $.
- method: POST
name: createenvironment
description: Create environment
call: schematic-accounts.createenvironment
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/environments/{environment-id}
name: environments-environment-id
description: REST surface for environments-environment_id.
operations:
- method: GET
name: getenvironment
description: Get environment
call: schematic-accounts.getenvironment
with:
environment_id: rest.environment_id
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updateenvironment
description: Update environment
call: schematic-accounts.updateenvironment
with:
environment_id: rest.environment_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deleteenvironment
description: Delete environment
call: schematic-accounts.deleteenvironment
with:
environment_id: rest.environment_id
outputParameters:
- type: object
mapping: $.
- path: /v1/quickstart
name: quickstart
description: REST surface for quickstart.
operations:
- method: POST
name: quickstart
description: Quickstart
call: schematic-accounts.quickstart
outputParameters:
- type: object
mapping: $.
- path: /v1/whoami
name: whoami
description: REST surface for whoami.
operations:
- method: GET
name: getwhoami
description: Get who am I
call: schematic-accounts.getwhoami
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: schematic-accounts-mcp
port: 9090
transport: http
description: MCP adapter for Schematic API — accounts. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: list-account-members
description: List account members
hints:
readOnly: true
destructive: false
idempotent: true
call: schematic-accounts.listaccountmembers
with:
ids: tools.ids
q: tools.q
limit: tools.limit
offset: tools.offset
outputParameters:
- type: object
mapping: $.
- name: get-account-member
description: Get account member
hints:
readOnly: true
destructive: false
idempotent: true
call: schematic-accounts.getaccountmember
with:
account_member_id: tools.account_member_id
outputParameters:
- type: object
mapping: $.
- name: list-api-keys
description: List api keys
hints:
readOnly: true
destructive: false
idempotent: true
call: schematic-accounts.listapikeys
with:
environment_id: tools.environment_id
require_environment: tools.require_environment
limit: tools.limit
offset: tools.offset
outputParameters:
- type: object
mapping: $.
- name: create-api-key
description: Create api key
hints:
readOnly: false
destructive: false
idempotent: false
call: schematic-accounts.createapikey
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: count-api-keys
description: Count api keys
hints:
readOnly: true
destructive: false
idempotent: true
call: schematic-accounts.countapikeys
with:
environment_id: tools.environment_id
require_environment: tools.require_environment
limit: tools.limit
offset: tools.offset
outputParameters:
- type: object
mapping: $.
- name: get-api-key
description: Get api key
hints:
readOnly: true
destructive: false
idempotent: true
call: schematic-accounts.getapikey
with:
api_key_id: tools.api_key_id
outputParameters:
- type: object
mapping: $.
- name: update-api-key
description: Update api key
hints:
readOnly: false
destructive: false
idempotent: true
call: schematic-accounts.updateapikey
with:
api_key_id: tools.api_key_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: delete-api-key
description: Delete api key
hints:
readOnly: false
destructive: true
idempotent: true
call: schematic-accounts.deleteapikey
with:
api_key_id: tools.api_key_id
outputParameters:
- type: object
mapping: $.
- name: list-audit-logs
description: List audit logs
hints:
readOnly: true
destructive: false
idempotent: true
call: schematic-accounts.listauditlogs
with:
actor_type: tools.actor_type
end_time: tools.end_time
environment_id: tools.environment_id
q: tools.q
start_time: tools.start_time
limit: tools.limit
offset: tools.offset
outputParameters:
- type: object
mapping: $.
- name: count-audit-logs
description: Count audit logs
hints:
readOnly: true
destructive: false
idempotent: true
call: schematic-accounts.countauditlogs
with:
actor_type: tools.actor_type
end_time: tools.end_time
environment_id: tools.environment_id
q: tools.q
start_time: tools.start_time
limit: tools.limit
offset: tools.offset
outputParameters:
- type: object
mapping: $.
- name: get-audit-log
description: Get audit log
hints:
readOnly: true
destructive: false
idempotent: true
call: schematic-accounts.getauditlog
with:
audit_log_id: tools.audit_log_id
outputParameters:
- type: object
mapping: $.
- name: list-environments
description: List environments
hints:
readOnly: true
destructive: false
idempotent: true
call: schematic-accounts.listenvironments
with:
ids: tools.ids
limit: tools.limit
offset: tools.offset
outputParameters:
- type: object
mapping: $.
- name: create-environment
description: Create environment
hints:
readOnly: false
destructive: false
idempotent: false
call: schematic-accounts.createenvironment
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-environment
description: Get environment
hints:
readOnly: true
destructive: false
idempotent: true
call: schematic-accounts.getenvironment
with:
environment_id: tools.environment_id
outputParameters:
- type: object
mapping: $.
- name: update-environment
description: Update environment
hints:
readOnly: false
destructive: false
idempotent: true
call: schematic-accounts.updateenvironment
with:
environment_id: tools.environment_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: delete-environment
description: Delete environment
hints:
readOnly: false
destructive: true
idempotent: true
call: schematic-accounts.deleteenvironment
with:
environment_id: tools.environment_id
outputParameters:
- type: object
mapping: $.
- name: quickstart
description: Quickstart
hints:
readOnly: false
destructive: false
idempotent: false
call: schematic-accounts.quickstart
outputParameters:
- type: object
mapping: $.
- name: get-who-am-i
description: Get who am I
hints:
readOnly: true
destructive: false
idempotent: true
call: schematic-accounts.getwhoami
outputParameters:
- type: object
mapping: $.