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 API — Contact Activity
  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 emails.'
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 (login, signup, custom events). Empty for a contact
        with no product activity, and for an unknown contact id.
      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 paged change log of the contact''s record: updates to contact properties and to
        the properties of the underlying product-user record. For engagement and events, use the product-activity
        and marketing-activity endpoints instead.'
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Paged log of record property changes.
          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:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Personal Access Token or OAuth 2.1 access token, sent as a bearer credential. READ
        permission for GET, WRITE for POST/PATCH/DELETE.
  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