Later Referral Program API

The ReferralProgram API from Later — 1 operation(s) for referralprogram.

Operations 2

GET /referral-program Retrieve a community's referral program activity #
PUT /referral-program Update a community's referral program incentives #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/later-referralprogram-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

later-referralprogram-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 Referral Program API
servers:
- url: http://app.splashscore.com/v1
- url: https://app.splashscore.com/v1
security:
- apiKey: []
tags:
- name: ReferralProgram
paths:
  /referral-program:
    get:
      tags:
      - ReferralProgram
      operationId: getPrimaryReferralActivity
      x-handler: referral_programs/referral_program_controller.js
      x-access:
      - administrator
      - influencer
      summary: Retrieve a community's referral program activity
      parameters:
      - name: communityId
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Referral program activity returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionGroupDeprecated'
        '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'
    put:
      tags:
      - ReferralProgram
      operationId: updateReferralProgram
      x-handler: referral_programs/referral_program_controller.js
      x-access:
      - administrator
      summary: Update a community's referral program incentives
      responses:
        '200':
          description: Referral program activity returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyObject'
        '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'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                sharingDescription:
                  type: string
                referrerId:
                  type: integer
                refereeId:
                  type: integer
        required: true
components:
  schemas:
    WorkflowStatusRequirementDeprecated:
      type: object
      properties:
        satisfied:
          type: boolean
        incentiveId:
          type: number
        name:
          type: string
    MetaInformationDeprecated:
      type: object
      description: This information is pulled when an external network parses the link for meta tags.
      properties:
        title:
          type: string
        description:
          type: string
        image:
          type: string
        ftcHashtag:
          type: string
    ConversionTagDeprecated:
      type: object
      x-access:
      - administrator
      - root
      properties:
        id:
          type: string
          description: Unique identifier for the conversion tag.
        name:
          type: string
          description: Human-readable name for the conversion tag.
        code:
          type: string
          description: Code to embed in the Clickmeter JavaScript snippet to conduct conversion tracking.
        type:
          type: string
          description: The category this conversion belongs. One of the set {"purchase", "app_download", "sign_up"}.
        isActive:
          type: boolean
          description: Determines if a conversion tag is active or inactive
        isConversionValueEnabled:
          type: boolean
          description: Determines if a conversion tag is active or inactive
    IncentiveTermsAndConditionsDeprecated:
      type: object
      properties:
        template:
          x-access:
          - administrator
          - root
          type: string
        preview:
          type: string
        params:
          x-access:
          - administrator
          - root
          type: object
    ListDeliverable:
      properties:
        contentType:
          $ref: '#/components/schemas/NetworkSlug'
        contentTypeName:
          $ref: '#/components/schemas/NetworkName'
        count:
          type: number
          format: double
        id:
          type: number
          format: double
        listId:
          type: number
          format: double
        updatedBy:
          type: number
          format: double
      required:
      - contentType
      - contentTypeName
      - count
      - id
      - listId
      type: object
      additionalProperties: false
    BazaarVoiceAppProductDeprecated:
      type: object
      properties:
        reviewProductId:
          type: integer
          description: Product id assigned by Mavrck
        externalBazaarProductId:
          type: string
          description: Product id assigned by BazaarVoice
    PowerReviewsAppDeprecated:
      type: object
      properties:
        id:
          type: integer
          description: id of the power reviews app
        apiKey:
          type: string
          description: the power reviews api key
        environment:
          type: string
          description: the environment of the power reviews app
        merchantId:
          type: string
          description: the merchant id of the power reviews app
        name:
          type: string
          description: the name of the brand that belongs to the power reviews app
        locale:
          type: string
          description: the locale of the power reviews app
        communityId:
          type: string
          description: the community id of the power reviews app
    EmptyObject:
      type: object
      properties: {}
    BrandDeprecated:
      type: object
      properties:
        id:
          type: integer
          description: Unique identifier for a brand.
        name:
          type: string
          description: Name of the brand.
        logo:
          type: string
        accentColor:
          type: string
        buttonColor:
          type: string
        associatedWithCampaign:
          type: boolean
          description: A flag indicating whether this brand has been associated with a campaign. If this is true, then this brand cannot be deleted.
    ConversationTemplateDeprecated:
      type: object
      properties:
        id:
          type: integer
        category:
          type: string
        title:
          type: string
        subject:
          type: string
        html:
          type: string
        createdBy:
          $ref: '#/components/schemas/AdministratorDeprecated'
        lastModifiedBy:
          $ref: '#/components/schemas/AdministratorDeprecated'
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        deliveryMethod:
          type: string
        sendOnEvent:
          type: string
        sendOnDays:
          type: integer
        sendOnTimeframe:
          type: string
        sendOnStatusId:
          type:
          - integer
          - 'null'
        sendOnDate:
          type: string
        slug:
          type: string
        isArchived:
          type: boolean
    AudienceDeprecated:
      type: object
      x-access:
      - root
      - administrator
      properties:
        id:
          type: integer
          description: Unique identifier representing a single audience.
        name:
          type: string
          description: Human-readable description of the audience displayed to administrators.
        criteria:
          type: array
          items:
            $ref: '#/components/schemas/InfluencerDataPointCriteriaDeprecated'
    PendingActivationURI:
      type: object
      properties:
        id:
          type: integer
    ActionGroupDeprecated:
      type: object
      properties:
        id:
          type: integer
          description: Unique identifier representing a single action group.
        communityId:
          type: string
        communityName:
          type: string
        communityImage:
          type: string
        type:
          type: string
        mainType:
          type: string
          description: First action in the group type
        name:
          type: string
          description: Human-readable description of the action group displayed for administrators.
          x-access:
          - root
          - administrator
        title:
          type: string
        description:
          type: string
        image:
          type: string
        contentType:
          type: string
          description: For content action groups, this provides the type of content, which either matches og:image or is derived from internal heuristics.
        url:
          type: string
          description: For content action groups, this contains the url input upon creation.
        status:
          type: string
          description: The state of the action group. One of the set {"LIVE", "PAUSED", "PENDING", "EXPIRED"}.
          x-access:
          - root
          - administrator
        startDate:
          format: date-time
          type: string
          description: The scheduled time in which the action group will become available to influencers.
        endDate:
          format: date-time
          type:
          - 'null'
          - string
          description: The scheduled time in which the action group will no longer be available to influencers.
        createdAt:
          format: date-time
          type:
          - 'null'
          - string
        notInCommunity:
          type: boolean
          x-access:
          - root
          - administrator
          description: Filter this action group if the client specifies channel=community.
        isAutoCreated:
          type: boolean
        isPrimaryReferralActivity:
          type: boolean
        multipleActivations:
          type: boolean
          description: Indicates whether this action group can be completed multiple times. Only available for photoChallenge.
        campaign:
          type: object
          x-access:
          - root
          - administrator
          properties:
            id:
              type: integer
              description: Unique identifier representing a single campaign.
            name:
              type: string
              description: Name of campaign.
            description:
              type: string
              description: Name of campaign.
            brand:
              $ref: '#/components/schemas/BrandDeprecated'
            hasActivations:
              type: boolean
              description: Flag that indicates whether this campaign is associated with any activations.
            createdAt:
              format: date-time
              type: string
              description: The date and time that the campaign was created.
        audience:
          $ref: '#/components/schemas/AudienceDeprecated'
        incentive:
          $ref: '#/components/schemas/IncentiveDeprecated'
        incentives:
          items:
            $ref: '#/components/schemas/IncentiveDeprecated'
          type: array
        actions:
          items:
            $ref: '#/components/schemas/ActionDeprecated'
          type: array
        points:
          type: object
          properties:
            min:
              type: integer
            max:
              type: integer
        hasScheduledNotifications:
          type: boolean
          description: Indicates whether the action group is tied to any scheduled notifications. The audience cannot be modified if this is the case.
        listId:
          type: integer
        listDeliverables:
          type: array
          items:
            $ref: '#/components/schemas/ListDeliverable'
        influencerReviewDeliverable:
          type: object
          properties:
            id:
              type: integer
            count:
              type: integer
            listId:
              type: integer
        workflowStatuses:
          type: array
          items:
            $ref: '#/components/schemas/ListCustomStatusDeprecated'
        locale:
          type: string
          description: Formatted according to language codes (https://www.w3schools.com/tags/ref_language_codes.asp)
        activatedUsersMetrics:
          type: integer
        clicksMetrics:
          type: integer
        engagementsMetrics:
          type: integer
        impressionsMetrics:
          type: integer
        conversionsCountMetrics:
          type: integer
        conversionsValueMetrics:
          type: number
        posts:
          type: integer
        engagements:
          type: integer
        impressions:
          type: integer
        cpe:
          type: number
        cpp:
          type: number
        cpm:
          type: number
        cpa:
          type: number
        committedAmount:
          type: number
        paidAmount:
          type: number
        readyAmount:
          type: number
        cost:
          type: number
        roiValue:
          type: number
        workflowSummary:
          type: object
          properties:
            accepted:
              type: integer
            rejected:
              type: integer
            candidates:
              type: integer
            applicants:
              type: integer
            participants:
              type: integer
            completed:
              type: integer
        requiredHashtag:
          type: string
          description: Hashtag for action group (required)
        ftcHashtag:
          type: string
          description: FTC hashtag for an action group.
        youtubeHashtag:
          type: string
          description: YouTube hashtag for an action group.
        internalDescription:
          type: string
          description: Internal description on an action group.
        activityBudget:
          type:
          - 'null'
          - number
          description: Total budget for all actions under an action group.
        numberOfInfluencers:
          type:
          - 'null'
          - integer
          description: Target number of influencers for all actions under an action group.
        cpeGoal:
          type:
          - number
          - 'null'
          description: Cost per engagement goal for a single action group
        cpmGoal:
          type:
          - number
          - 'null'
          description: Cost per 1000 impressions goal for a single action group
        impressionsGoal:
          type:
          - number
          - 'null'
          description: Impressions goal for a single action group
        engagementsGoal:
          type:
          - number
          - 'null'
          description: Engagements goal for a single action group
        engagementRateGoal:
          type:
          - number
          - 'null'
          description: Engagement rate goal for a single action group
        contentDueDate:
          type:
          - string
          - 'null'
          description: Due date for content on an action group.
        draftDueDate:
          type:
          - string
          - 'null'
          description: Due date for drafts on an action group.
        conceptDueDate:
          type:
          - string
          - 'null'
          description: Due date for concepts on an action group.
        primaryNetwork:
          type: string
        hasPointsEnabled:
          type: boolean
        shareableReportLink:
          type: string
        termsOfServiceLink:
          type: string
        autoAcceptApplicant:
          type: boolean
        globalUserListDefinitionId:
          type:
          - integer
          - 'null'
        ready:
          type: number
        pending:
          type: number
        fulfilled:
          type: number
        brief:
          type: string
        hideOnIcm:
          type: boolean
        application:
          type: object
          properties:
            requestBrandedContentPermission:
              type: boolean
        community:
          type: object
          properties:
            instagramHandle:
              type: string
        isSetupEnabled:
          type: boolean
        isCopied:
          type: boolean
        hideTemplateUpdateCTA:
          type: boolean
        isLaterCreatorExperienceEnabled:
          type: boolean
        isMavelyCreatorExperienceEnabled:
          type: boolean
        budgetReferenceId:
          type:
          - string
          - 'null'
        budgetReferenceIdType:
          type:
          - string
          - 'null'
          enum:
          - IROF
          - OPPORTUNITY
          - null
        brandSuitabilityGuidelines:
          type:
          - string
          - 'null'
        publicSummary:
          type:
          - string
          - 'null'
        version:
          type: integer
          description: Version of the action group.
        lastPolledAt:
          type:
          - string
          - 'null'
          format: date-time
          description: The last time the action group was manually polled for updates.
    MembershipDeprecated:
      type: object
      properties:
        id:
          description: id and membershipId are equivalent.
          type: integer
        membershipId:
          description: id and membershipId are equivalent.
          type: integer
        status:
          type: string
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        membershipType:
          type: string
        blacklisted:
          type: boolean
        utmContent:
          type: string
        utmCampaign:
          type: string
        contactInfo:
          $ref: '#/components/schemas/MembershipContactInfoDeprecated'
        pointsCurrentBalance:
          type: object
          properties:
            amount:
              type: integer
        totalPoints:
          type: integer
        mostRecentActivationDate:
          type: string
          format: date
        totalImpressions:
          type: number
        imageUrl:
          type: string
        lifetimeClicks:
          type: integer
        lifetimeConversions:
          type: integer
        lifetimeConversionsValue:
          type: number
    ActionDeprecated:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier representing a single action.
        type:
          type: string
          description: A key to specify the type of action.
        title:
          type: string
          description: A concise call to action, grabbing the influencer's attention.
        label:
          type: string
          description: Internal label for action.
        description:
          type: string
          description: An elaboration on the title.
        image:
          type: string
          description: An image to associate with the action.
        instructions:
          type: string
          description: Instructions on how to complete the action
        linkReference:
          type: string
          description: Reference to Link
        actionGroupId:
          type: integer
          x-access:
          - administrator
          - root
          - influencer
          description: ID of the parent action group.
        actionGroupType:
          type: string
          x-access:
          - administrator
          - root
          description: Type of the parent action group.
        actionGroupTitle:
          type: string
        brandSuitabilityGuidelines:
          type:
          - 'null'
          - string
          description: Optional guidelines from the parent action group to customize the brand suitability review for this action's campaign.
        ActionGroup:
          type: object
          properties:
            id:
              type: integer
              description: Unique identifier representing a single action group.
            communityId:
              type: string
            communityName:
              type: string
            communityImage:
              type: string
            type:
              type: string
            mainType:
              type: string
              description: First action in the group type
            name:
              type: string
              description: Human-readable description of the action group displayed for administrators.
              x-access:
              - root
              - administrator
            title:
              type: string
            description:
              type: string
            image:
              type: string
            contentType:
              type: string
              description: For content action groups, this provides the type of content, which either matches og:image or is derived from internal heuristics.
            url:
              type: string
              description: For content action groups, this contains the url input upon creation.
            status:
              type: string
              description: The state of the action group. One of the set {"LIVE", "PAUSED", "PENDING", "EXPIRED"}.
              x-access:
              - root
              - administrator
            startDate:
              format: date-time
              type: string
              description: The scheduled time in which the action group will become available to influencers.
            endDate:
              format: date-time
              type:
              - 'null'
              - string
              description: The scheduled time in which the action group will no longer be available to influencers.
            createdAt:
              format: date-time
              type:
              - 'null'
              - string
            notInCommunity:
              type: boolean
              x-access:
              - root
              - administrator
              description: Filter this action group if the client specifies channel=community.
            isAutoCreated:
              type: boolean
            isPrimaryReferralActivity:
              type: boolean
            multipleActivations:
              type: boolean
              description: Indicates whether this action group can be completed multiple times. Only available for photoChallenge.
            campaign:
              type: object
              x-access:
              - root
              - administrator
              properties:
                id:
                  type: integer
                  description: Unique identifier representing a single campaign.
                name:
                  type: string
                  description: Name of campaign.
                description:
                  type: string
                  description: Name of campaign.
                brand:
                  $ref: '#/components/schemas/BrandDeprecated'
                hasActivations:
                  type: boolean
                  description: Flag that indicates whether this campaign is associated with any activations.
                createdAt:
                  format: date-time
                  type: string
                  description: The date and time that the campaign was created.
            audience:
              $ref: '#/components/schemas/AudienceDeprecated'
            incentive:
              $ref: '#/components/schemas/IncentiveDeprecated'
            incentives:
              items:
                $ref: '#/components/schemas/IncentiveDeprecated'
              type: array
            points:
              type: object
              properties:
                min:
                  type: integer
                max:
                  type: integer
            hasScheduledNotifications:
              type: boolean
              description: Indicates whether the action group is tied to any scheduled notifications. The audience cannot be modified if this is the case.
            listId:
              type: integer
            listDeliverables:
              type: array
              items:
                $ref: '#/components/schemas/ListDeliverable'
            influencerReviewDeliverable:
              type: object
              properties:
                id:
                  type: integer
                count:
                  type: integer
                listId:
                  type: integer
            workflowStatuses:
              type: array
              items:
                $ref: '#/components/schemas/ListCustomStatusDeprecated'
            locale:
              type: string
              description: Formatted according to language codes (https://www.w3schools.com/tags/ref_language_codes.asp)
            activatedUsersMetrics:
              type: integer
            clicksMetrics:
              type: integer
            engagementsMetrics:
              type: integer
            impressionsMetrics:
              type: integer
            conversionsCountMetrics:
              type: integer
            conversionsValueMetrics:
              type: number
            posts:
              type: integer
            engagements:
              type: integer
            impressions:
              type: integer
            cpe:
              type: number
            cpp:
              type: number
            cpm:
              type: number
            cpa:
              type: number
            committedAmount:
              type: number
            paidAmount:
              type: number
            readyAmount:
              type: number
            cost:
              type: number
            roiValue:
              type: number
            workflowSummary:
              type: object
              properties:
                accepted:
                  type: integer
                rejected:
                  type: integer
                candidates:
                  type: integer
                applicants:
                  type: integer
                participants:
                  type: integer
                completed:
                  type: integer
            requiredHashtag:
              type: string
              description: Hashtag for action group (required)
            ftcHashtag:
              type: string
              description: FTC hashtag for an action group.
            youtubeHashtag:
              type: string
              description: YouTube hashtag for an action group.
            internalDescription:
              type: string
              description: Internal description on an action group.
            activityBudget:
              type:
              - 'null'
              - number
              description: Total budget for all actions under an action group.
            numberOfInfluencers:
              type:
              - 'null'
              - integer
              description: Target number of influencers for all actions under an action group.
            cpeGoal:
              type:
              - number
              - 'null'
              description: Cost per engagement goal for a single action group
            cpmGoal:
              type:
              - number
              - 'null'
              description: Cost per 1000 impressions goal for a single action group
            impressionsGoal:
              type:
              - number
              - 'null'
              description: Impressions goal for a single action group
            engagementsGoal:
              type:
              - number
              - 'null'
              description: Engagements goal for a single action group
            engagementRateGoal:
              type:
              - number
              - 'null'
              description: Engagement rate goal for a single action group
            contentDueDate:
              type:
              - string
              - 'null'
              description: Due date for content on an action group.
            draftDueDate:
              type:
              - string
              - 'null'
              description: Due date for drafts on an action group.
            conceptDueDate:
              type:
              - string
              - 'null'
              description: Due date for concepts on an action group.
            primaryNetwork:
              type: string
            hasPointsEnabled:
              type: boolean
            shareableReportLink:
              type: string
            termsOfServiceLink:
              type: string
            autoAcceptApplicant:
              type: boolean
            globalUserListDefinitionId:
              type:
              - integer
              - 'null'
            ready:
              type: number
            pending:
              type: number
            fulfilled:
              type: number
            brief:
              type: string
            hideOnIcm:
              type: boolean
            application:
              type: object
              properties:
                requestBrandedContentPermission:
                  type: boolean
            community:
              type: object
              properties:
                instagramHandle:
                  type: string
            isSetupEnabled:
              type: boolean
            isCopied:
              type: boolean
            hideTemplateUpdateCTA:
              type: boolean
            isLaterCreatorExperienceEnabled:
              type: boolean
            isMavelyCreatorExperienceEnabled:
              type: boolean
            budgetReferenceId:
              type:
              - string
              - 'null'
            budgetReferenceIdType:
              type:
              - string
              - 'null'
              enum:
              - IROF
              - OPPORTUNITY
              - null
            brandSuitabilityGuidelines:
              type:
              - string
              - 'null'
            publicSummary:
              type:
              - string
              - 'null'
            version:
              type: integer
              description: Version of the action group.
            lastPolledAt:
              type:
              - string
              - 'null'
              format: date-time
              description: The last time the action group was manually polled for updates.
        routing:
          $ref: '#/components/schemas/RoutingDeprecated'
        survey:
          type: object
          required:
          - questions
          properties:
            id:
              type: integer
              description: id of form
            reviewProductId:
              type: integer
            product:
              $ref: '#/components/schemas/ProductDeprecated'
            questions:
              type: array
              description: Array of form questions
              items:
                $ref: '#/components/schemas/QuestionDeprecated'
            title:
              type: string
            description:
              type: string
            url:
              type: string
            incentivized:
              x-access:
              - administrator
              - root
              type: boolean
              

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