{
  "openapi": "3.0.1",
  "info": {
    "title": "Instagram Reels Analytics: Insights Export Analyzer",
    "description": "Analyze your own Instagram Reels insights export (CSV/JSON): top and weak posts versus your baseline, hook and format patterns, creative briefs and a 14-day test plan. Graph API token optional. Free demo mode. Works on accounts you own; no scraping.",
    "version": "0.1",
    "x-build-id": "6JBGnaceAdZ5ToIL9"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/privatex~instagram-reels-intelligence/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-privatex-instagram-reels-intelligence",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/privatex~instagram-reels-intelligence/runs": {
      "post": {
        "operationId": "runs-sync-privatex-instagram-reels-intelligence",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/privatex~instagram-reels-intelligence/run-sync": {
      "post": {
        "operationId": "run-sync-privatex-instagram-reels-intelligence",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "demoMode": {
            "title": "Demo mode (synthetic data)",
            "type": "boolean",
            "description": "Pre-ticked so the Actor works on first click with FABRICATED example data (every output row is labelled SYNTHETIC DEMO and is never charged). It is ignored as soon as you provide your own data or token, so you can leave it ticked."
          },
          "dataCsv": {
            "title": "Performance export (CSV text)",
            "type": "string",
            "description": "Paste the CSV exported from Meta Business Suite (Insights > Content > Export) or any table with columns like Publish time, Description, Post type, Views, Reach, Likes, Comments, Shares, Saves. Column names are matched flexibly."
          },
          "dataUrl": {
            "title": "Performance export URL",
            "type": "string",
            "description": "URL of a CSV or JSON file with your post performance (e.g. from your own storage)."
          },
          "dataRows": {
            "title": "Performance rows (JSON)",
            "type": "array",
            "description": "Alternative to CSV: array of row objects with the same columns.",
            "default": []
          },
          "accessToken": {
            "title": "Instagram Graph API access token (optional)",
            "type": "string",
            "description": "Optional. A token for YOUR professional account (or an account that authorised your Meta app) with the instagram_manage_insights permission. Used only for requests to graph.facebook.com, stored encrypted, never written to output. Without it, use an export. NOT VERIFIED WITH LIVE CREDENTIALS: this mode has only been tested with synthetic API-shaped responses, never with a real token. The export (CSV/JSON) path is the tested one."
          },
          "accountId": {
            "title": "Instagram professional account id",
            "type": "string",
            "description": "Numeric id of the Instagram professional account the token belongs to."
          },
          "accountName": {
            "title": "Account label",
            "type": "string",
            "description": "Name shown in the report."
          },
          "additionalAccounts": {
            "title": "Additional accounts (your own data)",
            "type": "array",
            "description": "Each item: {\"name\": \"Brand B\", \"csv\": \"<csv text>\"} or {\"name\": \"...\", \"url\": \"<csv/json url>\"}. Analysed and compared using only the data you give here.",
            "default": []
          },
          "maxPosts": {
            "title": "Max posts (API mode)",
            "minimum": 10,
            "maximum": 500,
            "type": "integer",
            "description": "Most recent posts fetched through the official API.",
            "default": 100
          },
          "timezoneOffsetMinutes": {
            "title": "Timezone offset (minutes from UTC)",
            "minimum": -840,
            "maximum": 840,
            "type": "integer",
            "description": "For weekday and hour patterns. UTC+3 = 180.",
            "default": 0
          },
          "asOf": {
            "title": "Analyse as of (ISO date-time)",
            "type": "string",
            "description": "Reference time. Empty = now. Set when analysing an older export."
          },
          "minAgeDays": {
            "title": "Ignore posts younger than (days)",
            "minimum": 0,
            "maximum": 30,
            "type": "integer",
            "description": "Fresh posts are still collecting views and are not scored. Platform insight data can lag up to 48h.",
            "default": 3
          },
          "reelsOnly": {
            "title": "Reels only",
            "type": "boolean",
            "description": "Analyse only Reels (rows whose post type contains \"reel\" in exports; REELS media in API mode).",
            "default": true
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}