Every API here is available over the APIs.io API and to AI agents over MCP.
{
"swagger": "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"
},
"paths": {
"/anonymous-incentive-claim": {
"post": {
"tags": [
"AnonymousIncentiveClaim"
],
"operationId": "claimIncentiveForAnonymousUser",
"x-handler": "anonymous_incentive_claim/anonymous_incentive_claim_controller.js",
"x-access": [
"anonymous",
"influencer"
],
"summary": "Claim an incentive anonymously",
"parameters": [
{
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"required": [
"fingerprint",
"referralProgramId"
],
"properties": {
"fingerprint": {
"type": "string"
},
"referralProgramId": {
"type": "number"
}
}
}
}
],
"responses": {
"200": {
"description": "Claimed code",
"schema": {
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"dynamicPromoCode": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Invalid or missing parameter.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Access forbidden.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Global user or resource not found.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error.",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/influencers/{membershipId}/points-history": {
"get": {
"tags": [
"Points"
],
"operationId": "getInfluencerPointsHistory",
"x-handler": "points/influencer_points_history_controller.js",
"x-access": [
"administrator"
],
"summary": "Retrieve the points history for an influencer.",
"parameters": [
{
"$ref": "#/parameters/orderByParam"
},
{
"$ref": "#/parameters/limitParam"
},
{
"$ref": "#/parameters/offsetParam"
},
{
"name": "membershipId",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Collection of point transactions.",
"schema": {
"type": "object",
"properties": {
"meta": {
"$ref": "#/definitions/ResponseMetadata"
},
"data": {
"items": {
"$ref": "#/definitions/PointTransaction"
},
"type": "array"
}
}
}
},
"400": {
"description": "Invalid parameter.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Action not found.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error.",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
},
"post": {
"tags": [
"Points"
],
"operationId": "grantPointToInfluencer",
"x-handler": "points/influencer_points_history_controller.js",
"x-access": [
"administrator"
],
"summary": "Grant points for an influencer in a manual entry.",
"parameters": [
{
"name": "data",
"in": "body",
"schema": {
"type": "object",
"required": [
"amount",
"reason"
],
"properties": {
"amount": {
"type": "integer"
},
"reason": {
"type": "string"
}
}
}
},
{
"name": "membershipId",
"in": "path",
"required": true,
"type": "integer"
}
],
"responses": {
"200": {
"description": "Point Grant URI",
"schema": {
"$ref": "#/definitions/PointGrantURI"
}
},
"400": {
"description": "Point grant not completed.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Point grant already completed for this influencer.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Point grant not found.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/action/{actionId}/activation": {
"post": {
"tags": [
"Activations"
],
"x-handler": "activations/action_activation_controller.js",
"x-access": [
"influencer"
],
"summary": "Create an activation when an action is completed by a user.",
"parameters": [
{
"name": "data",
"in": "body",
"schema": {
"type": "object"
}
},
{
"name": "actionId",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "productExperience",
"in": "query",
"required": false,
"type": "string",
"description": "Tag this activation with a key denoting the experience/channel in which the user created the activation."
},
{
"name": "utmSource",
"in": "query",
"type": "string",
"required": false
},
{
"name": "utmMedium",
"in": "query",
"type": "string",
"required": false
},
{
"name": "utmTerm",
"in": "query",
"type": "string",
"required": false
},
{
"name": "utmContent",
"in": "query",
"type": "string",
"required": false
},
{
"name": "utmCampaign",
"in": "query",
"type": "string",
"required": false
},
{
"name": "iovationIdentifier",
"in": "query",
"type": "string",
"required": false
}
],
"responses": {
"200": {
"description": "Activation URIs",
"schema": {
"type": "object",
"properties": {
"meta": {
"$ref": "#/definitions/ResponseMetadata"
},
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/ActivationURI"
}
}
}
}
},
"400": {
"description": "Action not completed.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Action already completed by this influencer.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Action not found.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/action/{actionId}/activations": {
"get": {
"tags": [
"Activations"
],
"operationId": "getActionActivations",
"x-handler": "activations/action_activation_controller.js",
"x-access": [
"administrator",
"root",
"influencer"
],
"summary": "Retrieve activations for an action.",
"parameters": [
{
"$ref": "#/parameters/orderByParam"
},
{
"$ref": "#/parameters/limitParam"
},
{
"$ref": "#/parameters/offsetParam"
},
{
"$ref": "#/parameters/approvalStatus"
},
{
"name": "actionId",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "minStars",
"in": "query",
"required": false,
"type": "integer",
"description": "Filter on minimum stars."
},
{
"name": "myActivations",
"in": "query",
"default": false,
"type": "boolean",
"description": "As an influencer, select only my activations associated with the action."
}
],
"responses": {
"200": {
"description": "Collection of activations.",
"schema": {
"type": "object",
"properties": {
"meta": {
"$ref": "#/definitions/ResponseMetadata"
},
"data": {
"items": {
"$ref": "#/definitions/ActivationDeprecated"
},
"type": "array"
}
}
}
},
"400": {
"description": "Invalid parameter.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Action not found.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error.",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/communities": {
"get": {
"tags": [
"Communities"
],
"x-handler": "community/community_controller.js",
"x-access": [
"administrator"
],
"operationId": "getCommunities",
"summary": "Query Mavrck communities available to the authenticated administrator.",
"parameters": [
{
"name": "omitCurrent",
"in": "query",
"required": false,
"type": "boolean",
"description": "Omit the community that the administrator is currently authenticated into."
},
{
"name": "name",
"in": "query",
"type": "string",
"description": "Community name"
},
{
"name": "id",
"in": "query",
"type": "string",
"description": "Community Id"
},
{
"name": "accountId",
"in": "query",
"type": "string",
"description": "Administrator account id that can be used to filter the list down to only instances they have access to."
},
{
"name": "includeAll",
"in": "query",
"type": "string",
"description": "Root only parameter for requesting all communities beyond normal access"
},
{
"$ref": "#/parameters/limitParam"
},
{
"$ref": "#/parameters/offsetParam"
},
{
"$ref": "#/parameters/orderByParam"
}
],
"responses": {
"200": {
"description": "An array of Mavrck communities.",
"schema": {
"properties": {
"meta": {
"$ref": "#/definitions/ResponseMetadata"
},
"data": {
"items": {
"$ref": "#/definitions/Community"
},
"type": "array"
}
}
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Communities not found.",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
},
"post": {
"tags": [
"Communities"
],
"x-handler": "community/community_controller.js",
"x-access": [
"root"
],
"summary": "Creates a community.",
"operationId": "createCommunity",
"parameters": [
{
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"required": [
"communityId",
"features"
],
"properties": {
"communityId": {
"type": "string"
},
"name": {
"type": "string"
},
"features": {
"type": "array",
"items": {
"$ref": "#/definitions/UpdateEntitlementFields"
}
}
}
}
}
],
"responses": {
"200": {
"description": "URI.",
"schema": {
"type": "object",
"properties": {
"id": {
"type": "integer"
}
}
}
},
"400": {
"description": "Error",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Error",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Error, community failed to create",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error.",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/communities/{id}": {
"get": {
"tags": [
"Communities"
],
"operationId": "getCommunity",
"x-handler": "community/community_controller.js",
"x-access": [
"root"
],
"summary": "Retrieve a single community.",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "A single community.",
"schema": {
"$ref": "#/definitions/Community"
}
},
"400": {
"description": "Invalid parameter.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Access forbidden.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Community not found.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error.",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/action-groups/{actionGroupId}/actions": {
"post": {
"tags": [
"Actions"
],
"x-handler": "actions/action_controller.js",
"x-access": [
"administrator"
],
"summary": "Create an action.",
"operationId": "createAction",
"parameters": [
{
"name": "data",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/ActionDeprecated"
}
},
{
"name": "actionGroupId",
"in": "path",
"required": true,
"type": "integer"
}
],
"responses": {
"200": {
"description": "Action URI.",
"schema": {
"$ref": "#/definitions/ActionURI"
}
},
"400": {
"description": "Invalid input.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Action group not found.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/action-groups/{id}/re-order-actions": {
"put": {
"tags": [
"ActionGroups"
],
"x-handler": "actions/action_group_controller.js",
"x-access": [
"administrator"
],
"summary": "Create an action.",
"operationId": "reOrderActions",
"description": "Accepts an ordered list of action ids",
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of action group",
"required": true,
"type": "integer"
},
{
"name": "data",
"in": "body",
"schema": {
"type": "object",
"properties": {
"actionIds": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
],
"responses": {
"200": {
"description": "Empty object",
"schema": {
"$ref": "#/definitions/EmptyObject"
}
},
"400": {
"description": "Invalid input.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Action group not found.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/action/{id}": {
"get": {
"x-handler": "actions/action_controller.js",
"x-access": [
"administrator",
"root",
"influencer"
],
"summary": "Retrieve an individual action.",
"operationId": "getActionById",
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of the action.",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "An individual action",
"schema": {
"$ref": "#/definitions/ActionDeprecated"
}
},
"400": {
"description": "Invalid parameter.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Invalid API Key",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Action not found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error",
"schema": {
"$ref": "#/definitions/Error"
}
},
"default": {
"description": "Unexpected error",
"schema": {
"$ref": "#/definitions/Error"
}
}
},
"tags": [
"Actions"
]
},
"put": {
"x-handler": "actions/action_controller.js",
"x-access": [
"administrator"
],
"summary": "Update an action.",
"operationId": "update",
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of action",
"required": true,
"type": "string"
},
{
"name": "data",
"in": "body",
"schema": {
"$ref": "#/definitions/ActionDeprecated"
}
}
],
"responses": {
"200": {
"description": "Empty object",
"schema": {
"$ref": "#/definitions/EmptyObject"
}
},
"400": {
"description": "Invalid parameter.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Invalid API Key",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Action not found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error",
"schema": {
"$ref": "#/definitions/Error"
}
},
"default": {
"description": "Unexpected error",
"schema": {
"$ref": "#/definitions/Error"
}
}
},
"tags": [
"Actions"
]
},
"delete": {
"x-handler": "actions/action_controller.js",
"x-access": [
"administrator"
],
"operationId": "delete",
"summary": "Delete an action.",
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of action",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Empty object",
"schema": {
"$ref": "#/definitions/EmptyObject"
}
},
"400": {
"description": "Invalid parameter.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Invalid API Key",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Action not found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error",
"schema": {
"$ref": "#/definitions/Error"
}
},
"default": {
"description": "Unexpected error",
"schema": {
"$ref": "#/definitions/Error"
}
}
},
"tags": [
"Actions"
]
}
},
"/action/{id}/link": {
"get": {
"x-handler": "tracking_links/tracking_link_controller.js",
"x-access": [
"influencer"
],
"summary": "Retrieve a tracking link for an action.",
"operationId": "getActionTrackingLink",
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of the action.",
"required": true,
"type": "string"
},
{
"name": "photo",
"in": "query",
"description": "A link to user's photo",
"required": false,
"type": "string"
},
{
"name": "referrer",
"in": "query",
"description": "Referrer",
"required": false,
"type": "string"
},
{
"name": "^utm_.+$",
"in": "query",
"required": false,
"type": "string",
"description": "Utm variables"
}
],
"responses": {
"200": {
"description": "A tracking link",
"schema": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"url": {
"type": "string"
},
"conversionCount": {
"type": "integer"
}
}
}
},
"400": {
"description": "Invalid parameter.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Invalid API Key",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Action not found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error",
"schema": {
"$ref": "#/definitions/Error"
}
}
},
"tags": [
"Tracking Link"
]
}
},
"/action-groups/{id}": {
"get": {
"x-handler": "actions/action_group_controller.js",
"x-access": [
"administrator",
"anonymous",
"root",
"influencer",
"shared-cipher"
],
"summary": "Retrieve an individual action group.",
"operationId": "getActionGroupById",
"x-sharedCipherParameters": {
"actionGroupId": "id"
},
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of action group",
"required": true,
"type": "integer"
},
{
"name": "hasActivated",
"in": "query",
"type": "boolean",
"description": "Whether to return already activated actions in the action group."
},
{
"name": "simple",
"in": "query",
"type": "boolean",
"description": "If true, then do not include associated data."
}
],
"responses": {
"200": {
"description": "An individual action group",
"schema": {
"$ref": "#/definitions/ActionGroupDeprecated"
}
},
"400": {
"description": "Invalid parameter.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Invalid API Key",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Action group not found.",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Server error",
"schema": {
"$ref": "#/definitions/Error"
}
},
"default": {
"description": "Unexpected error",
"schema": {
"$ref": "#/definitions/Error"
}
}
},
"tags": [
"ActionGroups"
]
},
"put": {
"x-handler": "actions/action_group_controller.js",
"x-access": [
"administrator",
"root"
],
"summary": "Update an action group.",
"operationId": "updateActionGroup",
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of action group",
"required": true,
"type": "integer"
},
{
"name": "data",
"in": "body",
"schema": {
"$ref": "#/definitions/ActionGroupDeprecated"
}
}
],
"responses": {
"200": {
"description": "Empty object",
"schema": {
"$ref": "#/definitions/EmptyObject"
}
},
"400": {
"description": "Bad request",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Session expired.",
# --- truncated at 32 KB (2148 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/later/refs/heads/main/openapi/later-influence-api-openapi.json