Inflection.io Contact Activity API

The Contact Activity API from Inflection.io — 4 operation(s) for contact activity.

OpenAPI Specification

inflectionio-contact-activity-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Inflection Developer Contact Activity API
  version: '1.0'
  description: A REST API for reading and writing the people in your Inflection workspace — their profiles, product and marketing activity, static lists, and email templates.
servers:
- url: https://api.inflection.io
  description: Production
security:
- bearerAuth: []
tags:
- name: Contact Activity
paths:
  /v1/contacts/{id}/product-activity:
    get:
      operationId: getProductActivity
      summary: Get product activity
      tags:
      - Contact Activity
      description: A paged list of in-app product events (page views, clicks, custom events). Empty for a contact with no activity.
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: page_number
        in: query
        schema:
          type: integer
          default: 1
      - name: page_size
        in: query
        schema:
          type: integer
          default: 20
          maximum: 200
      - name: start_time
        in: query
        schema:
          type: string
          format: date-time
      - name: end_time
        in: query
        schema:
          type: string
          format: date-time
      responses:
        '200':
          description: Paged product activity.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Envelope'
  /v1/contacts/{id}/marketing-activity:
    get:
      operationId: getMarketingActivity
      summary: Get marketing activity
      tags:
      - Contact Activity
      description: A paged list of marketing touches for the contact — email sends, opens, clicks, and journey activity.
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Marketing activity.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Envelope'
  /v1/contacts/{id}/activity-log:
    get:
      operationId: getActivityLog
      summary: Get activity log
      tags:
      - Contact Activity
      description: A combined, paged log of the contact's product and marketing activity in one stream.
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Combined activity log.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Envelope'
  /v1/contacts/{id}/salesforce:
    get:
      operationId: getSalesforceRecord
      summary: Get Salesforce record
      tags:
      - Contact Activity
      description: Returns the contact's mapped Salesforce record as a free-form object. If the contact exists but has no Salesforce record, `data` is omitted (still `200`). A bogus contact id returns `404`.
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Salesforce record, or no data if unmapped.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Envelope'
        '404':
          description: Contact id does not exist.
components:
  schemas:
    Envelope:
      type: object
      properties:
        data:
          description: Payload — object or array, shape depends on the endpoint.
        pagination:
          type: object
          description: Present only on paged list endpoints.
          properties:
            pageNumber:
              type: integer
              example: 1
            pageSize:
              type: integer
              example: 20
            totalElements:
              type: integer
              example: 151
            totalPages:
              type: integer
              example: 8
        errors:
          type: array
          items:
            type: object
            properties:
              errorCode:
                type: string
              message:
                type: string
              detail:
                type: string
        meta:
          type: object
          properties:
            status:
              type: string
              enum:
              - SUCCESS
              - FAILURE
            timestamp:
              type: string
              format: date-time
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Personal Access Token. READ scope for GET, WRITE scope for POST/PATCH/DELETE.