M3ter · Capability
m3ter API — BillJob
m3ter API — BillJob. 5 operations. Lead operation: List BillJobs. Self-contained Naftiko capability covering one M3ter business surface.
What You Can Do
GET
Listbilljobs
— List BillJobs
/v1/organizations/{orgid}/billjobs
POST
Createbilljob
— Create BillJob
/v1/organizations/{orgid}/billjobs
POST
Recalculatebilljob
— Create Recalculation BillJob
/v1/organizations/{orgid}/billjobs/recalculate
GET
Getbilljob
— Retrieve BillJob
/v1/organizations/{orgid}/billjobs/{id}
POST
Cancelbilljob
— Cancel BillJob
/v1/organizations/{orgid}/billjobs/{id}/cancel
MCP Tools
list-billjobs
List BillJobs
read-only
idempotent
create-billjob
Create BillJob
create-recalculation-billjob
Create Recalculation BillJob
retrieve-billjob
Retrieve BillJob
read-only
idempotent
cancel-billjob
Cancel BillJob
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: m3ter API — BillJob
description: 'm3ter API — BillJob. 5 operations. Lead operation: List BillJobs. Self-contained Naftiko capability covering
one M3ter business surface.'
tags:
- M3ter
- BillJob
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
M3TER_API_KEY: M3TER_API_KEY
capability:
consumes:
- type: http
namespace: m3ter-billjob
baseUri: https://api.m3ter.com
description: m3ter API — BillJob business capability. Self-contained, no shared references.
resources:
- name: organizations-orgId-billjobs
path: /organizations/{orgId}/billjobs
operations:
- name: listbilljobs
method: GET
description: List BillJobs
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) for your Organization. The Organization represents your company as a direct
customer of our service.
required: true
- name: pageSize
in: query
type: integer
description: Specifies the maximum number of BillJobs to retrieve per page.
- name: nextToken
in: query
type: string
description: The `nextToken` for multi-page retrievals. It is used to fetch the next page of BillJobs in a paginated
list.
- name: active
in: query
type: string
description: Boolean filter to retrieve only active BillJobs and exclude completed or cancelled BillJobs from the
results.
- name: status
in: query
type: string
description: Filter BillJobs by specific status. Allows for targeted retrieval of BillJobs based on their current
processing status.
- name: createbilljob
method: POST
description: Create BillJob
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) for your Organization. The Organization represents your company as a direct
customer of our service.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: organizations-orgId-billjobs-recalculate
path: /organizations/{orgId}/billjobs/recalculate
operations:
- name: recalculatebilljob
method: POST
description: Create Recalculation BillJob
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) for your Organization. The Organization represents your company as a direct
customer of our service.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: organizations-orgId-billjobs-id
path: /organizations/{orgId}/billjobs/{id}
operations:
- name: getbilljob
method: GET
description: Retrieve BillJob
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: UUID of the organization
required: true
- name: id
in: path
type: string
description: The UUID of the Bill Job to retrieve.
required: true
- name: organizations-orgId-billjobs-id-cancel
path: /organizations/{orgId}/billjobs/{id}/cancel
operations:
- name: cancelbilljob
method: POST
description: Cancel BillJob
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) for your Organization. The Organization represents your company as a direct
customer of our service.
required: true
- name: id
in: path
type: string
description: The unique identifier (UUID) of the BillJob to cancel.
required: true
authentication:
type: bearer
token: '{{env.M3TER_API_KEY}}'
exposes:
- type: rest
namespace: m3ter-billjob-rest
port: 8080
description: REST adapter for m3ter API — BillJob. One Spectral-compliant resource per consumed operation, prefixed with
/v1.
resources:
- path: /v1/organizations/{orgid}/billjobs
name: organizations-orgid-billjobs
description: REST surface for organizations-orgId-billjobs.
operations:
- method: GET
name: listbilljobs
description: List BillJobs
call: m3ter-billjob.listbilljobs
with:
orgId: rest.orgId
pageSize: rest.pageSize
nextToken: rest.nextToken
active: rest.active
status: rest.status
outputParameters:
- type: object
mapping: $.
- method: POST
name: createbilljob
description: Create BillJob
call: m3ter-billjob.createbilljob
with:
orgId: rest.orgId
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/organizations/{orgid}/billjobs/recalculate
name: organizations-orgid-billjobs-recalculate
description: REST surface for organizations-orgId-billjobs-recalculate.
operations:
- method: POST
name: recalculatebilljob
description: Create Recalculation BillJob
call: m3ter-billjob.recalculatebilljob
with:
orgId: rest.orgId
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/organizations/{orgid}/billjobs/{id}
name: organizations-orgid-billjobs-id
description: REST surface for organizations-orgId-billjobs-id.
operations:
- method: GET
name: getbilljob
description: Retrieve BillJob
call: m3ter-billjob.getbilljob
with:
orgId: rest.orgId
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/organizations/{orgid}/billjobs/{id}/cancel
name: organizations-orgid-billjobs-id-cancel
description: REST surface for organizations-orgId-billjobs-id-cancel.
operations:
- method: POST
name: cancelbilljob
description: Cancel BillJob
call: m3ter-billjob.cancelbilljob
with:
orgId: rest.orgId
id: rest.id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: m3ter-billjob-mcp
port: 9090
transport: http
description: MCP adapter for m3ter API — BillJob. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: list-billjobs
description: List BillJobs
hints:
readOnly: true
destructive: false
idempotent: true
call: m3ter-billjob.listbilljobs
with:
orgId: tools.orgId
pageSize: tools.pageSize
nextToken: tools.nextToken
active: tools.active
status: tools.status
outputParameters:
- type: object
mapping: $.
- name: create-billjob
description: Create BillJob
hints:
readOnly: false
destructive: false
idempotent: false
call: m3ter-billjob.createbilljob
with:
orgId: tools.orgId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: create-recalculation-billjob
description: Create Recalculation BillJob
hints:
readOnly: false
destructive: false
idempotent: false
call: m3ter-billjob.recalculatebilljob
with:
orgId: tools.orgId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: retrieve-billjob
description: Retrieve BillJob
hints:
readOnly: true
destructive: false
idempotent: true
call: m3ter-billjob.getbilljob
with:
orgId: tools.orgId
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: cancel-billjob
description: Cancel BillJob
hints:
readOnly: false
destructive: false
idempotent: false
call: m3ter-billjob.cancelbilljob
with:
orgId: tools.orgId
id: tools.id
outputParameters:
- type: object
mapping: $.