M3ter · Capability
m3ter API — External Mapping
m3ter API — External Mapping. 10 operations. Lead operation: Retrieve External Mapping Configuration. Self-contained Naftiko capability covering one M3ter business surface.
What You Can Do
GET
Getexternalmappingconfiguration
— Retrieve External Mapping Configuration
/v1/organizations/{orgid}/externalmappingconfiguration
GET
Getexternalmappingoptionsfordestination
— Retrieve External Entities from Destination
/v1/organizations/{orgid}/externalmappingconfiguration/values/{destination}/{entitytype}
GET
Getexternalmappingoptionsfordestinationforcredentialsid
— Retrieve a list of external entities from the destination system for a particular credential
/v1/organizations/{orgid}/externalmappingconfiguration/values/{destination}/{entitytype}/{integrationcredentialsid}
GET
Listexternalmappings
— List External Mappings
/v1/organizations/{orgid}/externalmappings
POST
Createexternalmapping
— Create an External Mapping
/v1/organizations/{orgid}/externalmappings
GET
Listexternalmappingsform3terentity
— List External Mappings for a m3ter Entity
/v1/organizations/{orgid}/externalmappings/external/{entity}/{m3terid}
GET
Listexternalmappingsforexternalsystemandentity
— List External Mappings for External Entity
/v1/organizations/{orgid}/externalmappings/externalid/{system}/{externaltable}/{externalid}
GET
Getexternalmapping
— Retrieve External Mapping
/v1/organizations/{orgid}/externalmappings/{id}
PUT
Updateexternalmapping
— Update External Mapping
/v1/organizations/{orgid}/externalmappings/{id}
DELETE
Deleteexternalmapping
— Delete an External Mapping
/v1/organizations/{orgid}/externalmappings/{id}
MCP Tools
retrieve-external-mapping-configuration
Retrieve External Mapping Configuration
read-only
idempotent
retrieve-external-entities-destination
Retrieve External Entities from Destination
read-only
idempotent
retrieve-list-external-entities-destination
Retrieve a list of external entities from the destination system for a particular credential
read-only
idempotent
list-external-mappings
List External Mappings
read-only
idempotent
create-external-mapping
Create an External Mapping
list-external-mappings-m3ter-entity
List External Mappings for a m3ter Entity
read-only
idempotent
list-external-mappings-external-entity
List External Mappings for External Entity
read-only
idempotent
retrieve-external-mapping
Retrieve External Mapping
read-only
idempotent
update-external-mapping
Update External Mapping
idempotent
delete-external-mapping
Delete an External Mapping
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: m3ter API — External Mapping
description: 'm3ter API — External Mapping. 10 operations. Lead operation: Retrieve External Mapping Configuration. Self-contained
Naftiko capability covering one M3ter business surface.'
tags:
- M3ter
- External Mapping
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
M3TER_API_KEY: M3TER_API_KEY
capability:
consumes:
- type: http
namespace: m3ter-external-mapping
baseUri: https://api.m3ter.com
description: m3ter API — External Mapping business capability. Self-contained, no shared references.
resources:
- name: organizations-orgId-externalmappingconfiguration
path: /organizations/{orgId}/externalmappingconfiguration
operations:
- name: getexternalmappingconfiguration
method: GET
description: Retrieve External Mapping Configuration
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) of your Organization. The Organization represents your company as a direct
customer of our service.
required: true
- name: organizations-orgId-externalmappingconfiguration-values-destination-entityType
path: /organizations/{orgId}/externalmappingconfiguration/values/{destination}/{entityType}
operations:
- name: getexternalmappingoptionsfordestination
method: GET
description: Retrieve External Entities from Destination
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) of your Organization. The Organization represents your company as a direct
customer of our service.
required: true
- name: destination
in: path
type: string
description: The name of the destination system from where the external entities are to be retrieved.
required: true
- name: entityType
in: path
type: string
description: The m3ter entity type.
required: true
- name: externalTable
in: query
type: string
description: Name of the target externalTable
- name: organizations-orgId-externalmappingconfiguration-values-destination-entityType-i
path: /organizations/{orgId}/externalmappingconfiguration/values/{destination}/{entityType}/{integrationCredentialsId}
operations:
- name: getexternalmappingoptionsfordestinationforcredentialsid
method: GET
description: Retrieve a list of external entities from the destination system for a particular credential
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: UUID of the organization
required: true
- name: destination
in: path
type: string
description: Name of the destination system
required: true
- name: entityType
in: path
type: string
description: The m3ter entity type.
required: true
- name: integrationCredentialsId
in: path
type: string
description: The UUID of the credentials to use.
required: true
- name: externalTable
in: query
type: string
description: Name of the target externalTable
- name: organizations-orgId-externalmappings
path: /organizations/{orgId}/externalmappings
operations:
- name: listexternalmappings
method: GET
description: List External Mappings
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) of 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 External Mappings 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 External Mappings in
a paginated list.
- name: externalSystemId
in: query
type: string
description: The name of the external system to use as a filter.
- name: m3terIds
in: query
type: array
description: IDs for m3ter entities
- name: integrationConfigId
in: query
type: string
description: ID of the integration config
- name: createexternalmapping
method: POST
description: Create an External Mapping
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) of 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-externalmappings-external-entity-m3terId
path: /organizations/{orgId}/externalmappings/external/{entity}/{m3terId}
operations:
- name: listexternalmappingsform3terentity
method: GET
description: List External Mappings for a m3ter Entity
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) of your Organization. The Organization represents your company as a direct
customer of our service.
required: true
- name: entity
in: path
type: string
description: The entity type.
required: true
- name: m3terId
in: path
type: string
description: The unique identifer (UUID) of the m3ter entity.
required: true
- name: pageSize
in: query
type: integer
description: Specifies the maximum number of External Mappings 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 External Mappings in
a paginated list.
- name: organizations-orgId-externalmappings-externalid-system-externalTable-externalId
path: /organizations/{orgId}/externalmappings/externalid/{system}/{externalTable}/{externalId}
operations:
- name: listexternalmappingsforexternalsystemandentity
method: GET
description: List External Mappings for External Entity
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) of your Organization. The Organization represents your company as a direct
customer of our service.
required: true
- name: system
in: path
type: string
description: The identifier for the external system.
required: true
- name: externalTable
in: path
type: string
description: The identifier for the external table.
required: true
- name: externalId
in: path
type: string
description: The unique identifier (UUID) for the external entity.
required: true
- name: pageSize
in: query
type: integer
description: Specifies the maximum number of External Mappings 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 External Mappings in
a paginated list.
- name: organizations-orgId-externalmappings-id
path: /organizations/{orgId}/externalmappings/{id}
operations:
- name: getexternalmapping
method: GET
description: Retrieve External Mapping
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) of 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 External Mapping to retrieve.
required: true
- name: updateexternalmapping
method: PUT
description: Update External Mapping
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) of 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 External Mapping to retrieve.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: deleteexternalmapping
method: DELETE
description: Delete an External Mapping
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: orgId
in: path
type: string
description: The unique identifier (UUID) of 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 External Mapping to retrieve.
required: true
authentication:
type: bearer
token: '{{env.M3TER_API_KEY}}'
exposes:
- type: rest
namespace: m3ter-external-mapping-rest
port: 8080
description: REST adapter for m3ter API — External Mapping. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/organizations/{orgid}/externalmappingconfiguration
name: organizations-orgid-externalmappingconfiguration
description: REST surface for organizations-orgId-externalmappingconfiguration.
operations:
- method: GET
name: getexternalmappingconfiguration
description: Retrieve External Mapping Configuration
call: m3ter-external-mapping.getexternalmappingconfiguration
with:
orgId: rest.orgId
outputParameters:
- type: object
mapping: $.
- path: /v1/organizations/{orgid}/externalmappingconfiguration/values/{destination}/{entitytype}
name: organizations-orgid-externalmappingconfiguration-values-destination-entitytype
description: REST surface for organizations-orgId-externalmappingconfiguration-values-destination-entityType.
operations:
- method: GET
name: getexternalmappingoptionsfordestination
description: Retrieve External Entities from Destination
call: m3ter-external-mapping.getexternalmappingoptionsfordestination
with:
orgId: rest.orgId
destination: rest.destination
entityType: rest.entityType
externalTable: rest.externalTable
outputParameters:
- type: object
mapping: $.
- path: /v1/organizations/{orgid}/externalmappingconfiguration/values/{destination}/{entitytype}/{integrationcredentialsid}
name: organizations-orgid-externalmappingconfiguration-values-destination-entitytype-i
description: REST surface for organizations-orgId-externalmappingconfiguration-values-destination-entityType-i.
operations:
- method: GET
name: getexternalmappingoptionsfordestinationforcredentialsid
description: Retrieve a list of external entities from the destination system for a particular credential
call: m3ter-external-mapping.getexternalmappingoptionsfordestinationforcredentialsid
with:
orgId: rest.orgId
destination: rest.destination
entityType: rest.entityType
integrationCredentialsId: rest.integrationCredentialsId
externalTable: rest.externalTable
outputParameters:
- type: object
mapping: $.
- path: /v1/organizations/{orgid}/externalmappings
name: organizations-orgid-externalmappings
description: REST surface for organizations-orgId-externalmappings.
operations:
- method: GET
name: listexternalmappings
description: List External Mappings
call: m3ter-external-mapping.listexternalmappings
with:
orgId: rest.orgId
pageSize: rest.pageSize
nextToken: rest.nextToken
externalSystemId: rest.externalSystemId
m3terIds: rest.m3terIds
integrationConfigId: rest.integrationConfigId
outputParameters:
- type: object
mapping: $.
- method: POST
name: createexternalmapping
description: Create an External Mapping
call: m3ter-external-mapping.createexternalmapping
with:
orgId: rest.orgId
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/organizations/{orgid}/externalmappings/external/{entity}/{m3terid}
name: organizations-orgid-externalmappings-external-entity-m3terid
description: REST surface for organizations-orgId-externalmappings-external-entity-m3terId.
operations:
- method: GET
name: listexternalmappingsform3terentity
description: List External Mappings for a m3ter Entity
call: m3ter-external-mapping.listexternalmappingsform3terentity
with:
orgId: rest.orgId
entity: rest.entity
m3terId: rest.m3terId
pageSize: rest.pageSize
nextToken: rest.nextToken
outputParameters:
- type: object
mapping: $.
- path: /v1/organizations/{orgid}/externalmappings/externalid/{system}/{externaltable}/{externalid}
name: organizations-orgid-externalmappings-externalid-system-externaltable-externalid
description: REST surface for organizations-orgId-externalmappings-externalid-system-externalTable-externalId.
operations:
- method: GET
name: listexternalmappingsforexternalsystemandentity
description: List External Mappings for External Entity
call: m3ter-external-mapping.listexternalmappingsforexternalsystemandentity
with:
orgId: rest.orgId
system: rest.system
externalTable: rest.externalTable
externalId: rest.externalId
pageSize: rest.pageSize
nextToken: rest.nextToken
outputParameters:
- type: object
mapping: $.
- path: /v1/organizations/{orgid}/externalmappings/{id}
name: organizations-orgid-externalmappings-id
description: REST surface for organizations-orgId-externalmappings-id.
operations:
- method: GET
name: getexternalmapping
description: Retrieve External Mapping
call: m3ter-external-mapping.getexternalmapping
with:
orgId: rest.orgId
id: rest.id
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updateexternalmapping
description: Update External Mapping
call: m3ter-external-mapping.updateexternalmapping
with:
orgId: rest.orgId
id: rest.id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deleteexternalmapping
description: Delete an External Mapping
call: m3ter-external-mapping.deleteexternalmapping
with:
orgId: rest.orgId
id: rest.id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: m3ter-external-mapping-mcp
port: 9090
transport: http
description: MCP adapter for m3ter API — External Mapping. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: retrieve-external-mapping-configuration
description: Retrieve External Mapping Configuration
hints:
readOnly: true
destructive: false
idempotent: true
call: m3ter-external-mapping.getexternalmappingconfiguration
with:
orgId: tools.orgId
outputParameters:
- type: object
mapping: $.
- name: retrieve-external-entities-destination
description: Retrieve External Entities from Destination
hints:
readOnly: true
destructive: false
idempotent: true
call: m3ter-external-mapping.getexternalmappingoptionsfordestination
with:
orgId: tools.orgId
destination: tools.destination
entityType: tools.entityType
externalTable: tools.externalTable
outputParameters:
- type: object
mapping: $.
- name: retrieve-list-external-entities-destination
description: Retrieve a list of external entities from the destination system for a particular credential
hints:
readOnly: true
destructive: false
idempotent: true
call: m3ter-external-mapping.getexternalmappingoptionsfordestinationforcredentialsid
with:
orgId: tools.orgId
destination: tools.destination
entityType: tools.entityType
integrationCredentialsId: tools.integrationCredentialsId
externalTable: tools.externalTable
outputParameters:
- type: object
mapping: $.
- name: list-external-mappings
description: List External Mappings
hints:
readOnly: true
destructive: false
idempotent: true
call: m3ter-external-mapping.listexternalmappings
with:
orgId: tools.orgId
pageSize: tools.pageSize
nextToken: tools.nextToken
externalSystemId: tools.externalSystemId
m3terIds: tools.m3terIds
integrationConfigId: tools.integrationConfigId
outputParameters:
- type: object
mapping: $.
- name: create-external-mapping
description: Create an External Mapping
hints:
readOnly: false
destructive: false
idempotent: false
call: m3ter-external-mapping.createexternalmapping
with:
orgId: tools.orgId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: list-external-mappings-m3ter-entity
description: List External Mappings for a m3ter Entity
hints:
readOnly: true
destructive: false
idempotent: true
call: m3ter-external-mapping.listexternalmappingsform3terentity
with:
orgId: tools.orgId
entity: tools.entity
m3terId: tools.m3terId
pageSize: tools.pageSize
nextToken: tools.nextToken
outputParameters:
- type: object
mapping: $.
- name: list-external-mappings-external-entity
description: List External Mappings for External Entity
hints:
readOnly: true
destructive: false
idempotent: true
call: m3ter-external-mapping.listexternalmappingsforexternalsystemandentity
with:
orgId: tools.orgId
system: tools.system
externalTable: tools.externalTable
externalId: tools.externalId
pageSize: tools.pageSize
nextToken: tools.nextToken
outputParameters:
- type: object
mapping: $.
- name: retrieve-external-mapping
description: Retrieve External Mapping
hints:
readOnly: true
destructive: false
idempotent: true
call: m3ter-external-mapping.getexternalmapping
with:
orgId: tools.orgId
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: update-external-mapping
description: Update External Mapping
hints:
readOnly: false
destructive: false
idempotent: true
call: m3ter-external-mapping.updateexternalmapping
with:
orgId: tools.orgId
id: tools.id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: delete-external-mapping
description: Delete an External Mapping
hints:
readOnly: false
destructive: true
idempotent: true
call: m3ter-external-mapping.deleteexternalmapping
with:
orgId: tools.orgId
id: tools.id
outputParameters:
- type: object
mapping: $.