OurPeople · Capability

OurPeople API

The OurPeople API uses common standards to allow easy read and write access to your data. OurPeople is a frontline communications platform that helps organizations communicate with deskless workers. The API is currently in closed beta.

Run with Naftiko OurpeopleAPI

What You Can Do

POST
Createtoken — Exchange client credentials for a token
/v1/auth
POST
Refreshtoken — Refresh an access token
/v1/auth/refresh
GET
Listdeliveries — List recent deliveries
/v1/broadcasts/deliveries
GET
Getbroadcast — Get broadcast details
/v1/broadcasts/{broadcastId}
GET
Listdeliveryrecipients — List delivery recipients
/v1/broadcasts/deliveries/{deliveryId}/recipients
GET
Listcontentrecipients — List content recipients
/v1/broadcasts/deliveries/{deliveryId}/contents/{contentId}/recipients

MCP Tools

createtoken

Exchange client credentials for a token

refreshtoken

Refresh an access token

listdeliveries

List recent deliveries

read-only idempotent
getbroadcast

Get broadcast details

read-only idempotent
listdeliveryrecipients

List delivery recipients

read-only idempotent
listcontentrecipients

List content recipients

read-only idempotent

Capability Spec

ourpeople-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: OurPeople API
  description: The OurPeople API uses common standards to allow easy read and write access to your data. OurPeople is a frontline
    communications platform that helps organizations communicate with deskless workers. The API is currently in closed beta.
  tags:
  - Ourpeople
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: ourpeople
    baseUri: https://example-api.ourpeople.co
    description: OurPeople API HTTP API.
    authentication:
      type: bearer
      token: '{{OURPEOPLE_TOKEN}}'
    resources:
    - name: v1-auth
      path: /v1/auth
      operations:
      - name: createtoken
        method: POST
        description: Exchange client credentials for a token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-auth-refresh
      path: /v1/auth/refresh
      operations:
      - name: refreshtoken
        method: POST
        description: Refresh an access token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-broadcasts-deliveries
      path: /v1/broadcasts/deliveries
      operations:
      - name: listdeliveries
        method: GET
        description: List recent deliveries
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-broadcasts-broadcastid
      path: /v1/broadcasts/{broadcastId}
      operations:
      - name: getbroadcast
        method: GET
        description: Get broadcast details
        inputParameters:
        - name: broadcastId
          in: path
          type: string
          required: true
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-broadcasts-deliveries-deliveryid-recipients
      path: /v1/broadcasts/deliveries/{deliveryId}/recipients
      operations:
      - name: listdeliveryrecipients
        method: GET
        description: List delivery recipients
        inputParameters:
        - name: deliveryId
          in: path
          type: string
          required: true
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-broadcasts-deliveries-deliveryid-contents-con
      path: /v1/broadcasts/deliveries/{deliveryId}/contents/{contentId}/recipients
      operations:
      - name: listcontentrecipients
        method: GET
        description: List content recipients
        inputParameters:
        - name: deliveryId
          in: path
          type: string
          required: true
        - name: contentId
          in: path
          type: string
          required: true
        - name: rating
          in: query
          type: integer
          description: Filter by rating value when the content type is a rating.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: ourpeople-rest
    description: REST adapter for OurPeople API.
    resources:
    - path: /v1/auth
      name: createtoken
      operations:
      - method: POST
        name: createtoken
        description: Exchange client credentials for a token
        call: ourpeople.createtoken
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/auth/refresh
      name: refreshtoken
      operations:
      - method: POST
        name: refreshtoken
        description: Refresh an access token
        call: ourpeople.refreshtoken
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/broadcasts/deliveries
      name: listdeliveries
      operations:
      - method: GET
        name: listdeliveries
        description: List recent deliveries
        call: ourpeople.listdeliveries
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/broadcasts/{broadcastId}
      name: getbroadcast
      operations:
      - method: GET
        name: getbroadcast
        description: Get broadcast details
        call: ourpeople.getbroadcast
        with:
          broadcastId: rest.broadcastId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/broadcasts/deliveries/{deliveryId}/recipients
      name: listdeliveryrecipients
      operations:
      - method: GET
        name: listdeliveryrecipients
        description: List delivery recipients
        call: ourpeople.listdeliveryrecipients
        with:
          deliveryId: rest.deliveryId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/broadcasts/deliveries/{deliveryId}/contents/{contentId}/recipients
      name: listcontentrecipients
      operations:
      - method: GET
        name: listcontentrecipients
        description: List content recipients
        call: ourpeople.listcontentrecipients
        with:
          deliveryId: rest.deliveryId
          contentId: rest.contentId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: ourpeople-mcp
    transport: http
    description: MCP adapter for OurPeople API for AI agent use.
    tools:
    - name: createtoken
      description: Exchange client credentials for a token
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: ourpeople.createtoken
      outputParameters:
      - type: object
        mapping: $.
    - name: refreshtoken
      description: Refresh an access token
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: ourpeople.refreshtoken
      outputParameters:
      - type: object
        mapping: $.
    - name: listdeliveries
      description: List recent deliveries
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: ourpeople.listdeliveries
      outputParameters:
      - type: object
        mapping: $.
    - name: getbroadcast
      description: Get broadcast details
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: ourpeople.getbroadcast
      with:
        broadcastId: tools.broadcastId
      inputParameters:
      - name: broadcastId
        type: string
        description: broadcastId
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: listdeliveryrecipients
      description: List delivery recipients
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: ourpeople.listdeliveryrecipients
      with:
        deliveryId: tools.deliveryId
      inputParameters:
      - name: deliveryId
        type: string
        description: deliveryId
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: listcontentrecipients
      description: List content recipients
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: ourpeople.listcontentrecipients
      with:
        deliveryId: tools.deliveryId
        contentId: tools.contentId
        rating: tools.rating
      inputParameters:
      - name: deliveryId
        type: string
        description: deliveryId
        required: true
      - name: contentId
        type: string
        description: contentId
        required: true
      - name: rating
        type: integer
        description: Filter by rating value when the content type is a rating.
      outputParameters:
      - type: object
        mapping: $.
binds:
- namespace: env
  keys:
    OURPEOPLE_TOKEN: OURPEOPLE_TOKEN