Mavrck Workflow API

The Workflow API from Mavrck — 8 operation(s) for workflow.

OpenAPI Specification

mavrck-workflow-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.0.0
  description: Identify your most influential customers and activate them to drive more conversions on social.
  title: MAVRCK.IO Workflow API
servers:
- url: http://app.splashscore.com/v1
- url: https://app.splashscore.com/v1
security:
- apiKey: []
tags:
- name: Workflow
paths:
  /workflow/{actionGroupId}/workflow-performance-forecast:
    get:
      tags:
      - Workflow
      operationId: getWorkflowActionGroupPerformanceForecast
      x-handler: workflow/workflow_action_group_forecast_controller.js
      x-access:
      - administrator
      - root
      summary: Retrieve performance forecast for an action group.
      parameters:
      - name: actionGroupId
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: Workflow Performance forecast.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      candidates:
                        $ref: '#/components/schemas/WorkflowActionGroupPerformanceForecast'
                      participants:
                        $ref: '#/components/schemas/WorkflowActionGroupPerformanceForecast'
                      complete:
                        $ref: '#/components/schemas/WorkflowActionGroupPerformanceForecast'
                      forecast:
                        $ref: '#/components/schemas/WorkflowActionGroupPerformanceForecast'
        '400':
          description: Invalid or missing parameter.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Session expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Access forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Global user or resource not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /workflow/promote-initial:
    post:
      x-handler: workflow/workflow_controller.js
      summary: Promote global userIds to list members and set their status to the initial workflow stage
      x-access:
      - administrator
      operationId: promoteToInitialWorkflowStage
      tags:
      - Workflow
      responses:
        '200':
          description: Initial workflow stage with Conversation Templates
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyObject'
        '400':
          description: Invalid parameter.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Session expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Invalid API Key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Action group not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                globalUserIds:
                  type: array
                  items:
                    type:
                    - string
                    - integer
                actionGroupId:
                  type: integer
                  description: Unique identifier of the actionGroup
                fromActionGroupId:
                  type: integer
                  description: Unique identifier of the actionGroup which you are promoting from.
                queryFilter:
                  type: object
                  description: Filter for the query.
                searchState:
                  type: object
                  description: Capture Search State for analytics
                useSearchWithOpenAI:
                  type: boolean
                  description: Flag to detect if search was done with OpenAI
                openAISearchResults:
                  type: string
                  description: OpenAI Search Results JSON
        required: true
  /workflow/{listMemberId}/promote:
    put:
      x-handler: workflow/workflow_controller.js
      summary: Promote a List Member to their next status.
      x-access:
      - administrator
      operationId: promoteListMember
      tags:
      - Workflow
      parameters:
      - name: listMemberId
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: Successfully added globalUserIds to list and moved to first workflow stage
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyObject'
        '400':
          description: Invalid parameter.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Session expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Invalid API Key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Action group not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '412':
          description: Invalid custom status id.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                currentCustomStatusId:
                  type: integer
  /workflow/{activityId}/get-initial-status-automation-rules:
    get:
      x-handler: workflow/workflow_controller.js
      summary: Get intial workflow status with automation rules
      x-access:
      - administrator
      operationId: getInitialWorkflowStatusAutomationRules
      tags:
      - Workflow
      parameters:
      - name: activityId
        in: path
        required: true
        schema:
          type: integer
      - name: expectedNumberOfInfluencers
        in: query
        required: false
        schema:
          type: integer
      responses:
        '200':
          description: Initial workflow status with automation rules
          content:
            application/json:
              schema:
                type: object
                items:
                  $ref: '#/components/schemas/ListCustomStatusDeprecated'
        '400':
          description: Invalid parameter.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Session expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Invalid API Key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Action group not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /workflow/bulk-promote:
    put:
      x-handler: workflow/workflow_controller.js
      summary: Promote many List Members to their next status.
      x-access:
      - administrator
      operationId: bulkPromote
      tags:
      - Workflow
      responses:
        '200':
          description: Successfully added globalUserIds to list and moved to first workflow stage
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyObject'
        '400':
          description: Invalid parameter.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Session expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Invalid API Key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Action group not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                globalUserIds:
                  type: array
                  items:
                    type: integer
                actionGroupId:
                  type: integer
                  description: Unique identifier of the actionGroup
                currentStageSlug:
                  type: string
                  description: The stage that we are promoting from.
                queryFilter:
                  $ref: '#/components/schemas/ActionGroupCandidateQueryFilter'
        required: true
  /workflow/{listMemberId}/drop:
    put:
      x-handler: workflow/workflow_controller.js
      summary: Drop a List Member.
      x-access:
      - administrator
      operationId: dropListMember
      tags:
      - Workflow
      parameters:
      - name: listMemberId
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: Successfully added globalUserIds to list and moved to first workflow stage
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyObject'
        '400':
          description: Invalid parameter.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Session expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Invalid API Key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Action group not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /workflow/bulk-drop:
    put:
      x-handler: workflow/workflow_controller.js
      summary: Drop many List Members.
      x-access:
      - administrator
      operationId: bulkDrop
      tags:
      - Workflow
      responses:
        '200':
          description: Successfully added globalUserIds to list and moved to first workflow stage
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyObject'
        '400':
          description: Invalid parameter.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Session expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Invalid API Key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Action group not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                globalUserIds:
                  type: array
                  items:
                    type: integer
                actionGroupId:
                  type: integer
                  description: Unique identifier of the actionGroup
                queryFilter:
                  $ref: '#/components/schemas/ActionGroupCandidateQueryFilter'
        required: true
  /workflow/{id}/status-summary:
    get:
      x-handler: workflow/workflow_status_summary_controller.js
      summary: Retrieve workflow status summary.
      x-access:
      - administrator
      tags:
      - Workflow
      operationId: getWorkflowStatusSummary
      parameters:
      - name: id
        in: path
        description: ID of Worklfow/List
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: Summary of workflow statuses and counts of influencers.
          content:
            application/json:
              schema:
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/WorkflowStatusSummary'
        '400':
          description: Invalid parameter.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Session expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Invalid API Key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Action group not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Error:
      type: object
      properties:
        type:
          type: string
          description: A key representing the type of error that has occurred.
        error:
          type: string
          description: A static description of the type of error.
        params:
          type: array
          description: For errors invovling parameters, this is an array containing the invalid parameters.
          items:
            type: string
        keys:
          type: array
          items:
            type:
            - string
            - object
        artifactLinks:
          $ref: '#/components/schemas/LinksDeprecated'
        parent:
          type: object
          properties:
            type:
              type: string
              description: A key representing the type of error generated by a request to an external API.
            error:
              type: string
              description: A static description of the parent error.
    WorkflowActionGroupPerformanceForecast:
      type: object
      properties:
        count:
          type: integer
        forecastedImpressions:
          type: integer
        forecastedEngagements:
          type: integer
        forecastedFollowers:
          type: integer
        forecastedImpressionEngagementRate:
          type: number
        forecastedFollowerEngagementRate:
          type: number
        forecastedCost:
          type: number
        forecastedCPE:
          type: number
        forecastedCPM:
          type: number
    WorkflowStatusSummary:
      type: object
      properties:
        slug:
          type: string
        ctaLabel:
          type: string
        auxiliaryLabel:
          type: string
        label:
          type: string
        enabled:
          type: string
        count:
          type: integer
        sortOrder:
          type: integer
        statusId:
          type: integer
        phase:
          type: string
    WorkflowStatusRequirementDeprecated:
      type: object
      properties:
        satisfied:
          type: boolean
        incentiveId:
          type: number
        name:
          type: string
    UserSearch:
      type: object
      additionalProperties: false
      properties:
        DemographicsPro_Audience_Data_Analysis:
          type: object
          additionalProperties: false
          properties:
            DemographicsPro_Audience_Gender_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_MaritalStatus_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_ParentalStatus_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_Age_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_Race_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_Language_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_Country_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_State_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_City_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_EducationStatus_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_PersonalIncome_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_Occupation_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_Industry_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_Employer_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_EducationOrganization_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_LikesAndInterests_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_PeopleInfluences_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_MediaInfluences_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_BrandInfluences_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_Favorite_MusicGenre_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_Favorite_MusicSoloArtist_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_Favorite_MusicBands_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_SportsFollowed_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_SportTeamSupported_Max:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                quantifier:
                  type: string
                  enum:
                  - any
                  - all
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
            DemographicsPro_Audience_BrandInfluences_All:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
                range:
                  type: object
                  additionalProperties: false
                  properties:
                    $gte:
                      type: number
                    $lte:
                      type: number
            DemographicsPro_Audience_Country_All:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
                range:
                  type: object
                  additionalProperties: false
                  properties:
                    $gte:
                      type: number
                    $lte:
                      type: number
            DemographicsPro_Audience_Gender_All:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
                range:
                  type: object
                  additionalProperties: false
                  properties:
                    $gte:
                      type: number
                    $lte:
                      type: number
            DemographicsPro_Audience_Age_All:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
                range:
                  type: object
                  additionalProperties: false
                  properties:
                    $gte:
                      type: number
                    $lte:
                      type: number
            DemographicsPro_Audience_Race_All:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
                range:
                  type: object
                  additionalProperties: false
                  properties:
                    $gte:
                      type: number
                    $lte:
                      type: number
            DemographicsPro_Audience_Language_All:
              type: object
              additionalProperties: false
              x-filter-type: multiTerm
              properties:
                ids:
                  type: array
                  items:
                    type:
                    - integer
                    - string
                range:
                  type: object
                  additionalProperties: false
                  properties:
                    $gte:
                      type: number
                    $lte:
                      type: number
        DemographicsPro_Audience_Data_Analysis_Facebook:
          type: object
          additionalProperties: false
          properties:
            DemographicsPro_Audience_Gender_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_Country_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_City_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_Age_Max:
              type: array
              x-filter-type: term
              items:
                type: string
        DemographicsPro_Audience_Data_Analysis_TikTok:
          type: object
          additionalProperties: false
          properties:
            DemographicsPro_Audience_Gender_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_MaritalStatus_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_ParentalStatus_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_Age_Max:
              type: array
              x-filter-type: term
              items:
                type: string
            DemographicsPro_Audience_Race_Max:
 

# --- truncated at 32 KB (82 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mavrck/refs/heads/main/openapi/mavrck-workflow-api-openapi.yml