{
  "openapi": "3.0.1",
  "info": {
    "title": "Instagram Auto Commenter: Comment Bot for Posts & Reels",
    "description": "Instagram auto commenter and comment bot. Automatically comment on the newest posts and reels of any usernames, or on exact post URLs, from your own account. Rotating comments, human-like typing and delays, action-block protection. Only verified comments are charged. Pay per comment.",
    "version": "0.0",
    "x-build-id": "k4gCCo992tHQVmQDJ"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/am_production~instagram-auto-commenter/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-am_production-instagram-auto-commenter",
        "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/am_production~instagram-auto-commenter/runs": {
      "post": {
        "operationId": "runs-sync-am_production-instagram-auto-commenter",
        "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/am_production~instagram-auto-commenter/run-sync": {
      "post": {
        "operationId": "run-sync-am_production-instagram-auto-commenter",
        "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",
        "required": [
          "comments"
        ],
        "properties": {
          "instagram_cookies": {
            "title": "Instagram cookies",
            "type": "array",
            "description": "Cookies exported from a browser where you are logged in to Instagram (JSON array from the \"Export Cookie JSON file for Puppeteer\", \"EditThisCookie\" or \"Cookie-Editor\" extensions). Only the sessionid, csrftoken and ds_user_id cookies are needed. Alternatively leave this empty and fill in Session ID below."
          },
          "session_id": {
            "title": "Session ID or cookie export (alternative)",
            "type": "string",
            "description": "Paste either the value of your Instagram sessionid cookie, or the whole exported cookie file in any format (JSON array, Cookie-Editor JSON with a cookies list, or a name=value; cookie header string). Use this if the JSON field above rejects your export."
          },
          "comments": {
            "title": "Comments to post",
            "type": "array",
            "description": "One comment per line. A random one is picked for each post, and the same text is not reused on the same account while other options remain. Use {username} to insert the target account name, for example: Love this, @{username}!",
            "items": {
              "type": "string"
            }
          },
          "usernames": {
            "title": "Target usernames",
            "type": "array",
            "description": "Instagram usernames whose newest posts and reels should get a comment. One per line, with or without the @. Profile URLs are accepted too.",
            "items": {
              "type": "string"
            }
          },
          "post_urls": {
            "title": "Post or reel URLs",
            "type": "array",
            "description": "Exact Instagram post or reel URLs to comment on, one per line, for example https://www.instagram.com/p/C9xxxxxxxxx/ or https://www.instagram.com/reel/C9yyyyyyyyy/.",
            "items": {
              "type": "string"
            }
          },
          "posts_per_user": {
            "title": "Posts to comment on per account",
            "minimum": 0,
            "maximum": 500,
            "type": "integer",
            "description": "How many of the most recent posts or reels to comment on for each username. The actor scrolls the profile as far as needed. Set 0 to go through all posts (the run still stops at Max comments per run). Posts you already commented on are skipped and not charged.",
            "default": 1
          },
          "comments_per_post": {
            "title": "Comments per post",
            "minimum": 1,
            "maximum": 5,
            "type": "integer",
            "description": "How many comments to leave on each post. Each one uses a different text from your list, so add at least that many comments. More than one comment on the same post looks unnatural fast, keep it at 1 or 2.",
            "default": 1
          },
          "max_comments_per_run": {
            "title": "Max comments per run",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Safety cap on the total number of comments in one run. Instagram tolerates far fewer comments than likes, roughly 20 to 50 per day on an established account. Keep runs small and schedule them.",
            "default": 20
          },
          "skip_already_commented": {
            "title": "Skip posts I already commented on",
            "type": "boolean",
            "description": "Before the first comment on a post, checks the visible comments for your own username and skips the post if it finds one. Skipped posts are free. Turn this off if you want to comment on posts you already commented on.",
            "default": true
          },
          "min_delay_seconds": {
            "title": "Min delay between comments (s)",
            "minimum": 3,
            "maximum": 300,
            "type": "integer",
            "description": "Shortest pause between posting one comment and opening the next post. Comments are watched much more closely than likes, so keep this at 10 seconds or more.",
            "default": 10
          },
          "max_delay_seconds": {
            "title": "Max delay between comments (s)",
            "minimum": 3,
            "maximum": 600,
            "type": "integer",
            "description": "Longest pause between comments. A random delay between min and max is used, and typing itself is slowed to a human pace.",
            "default": 25
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Optional. Instagram sometimes challenges logins from datacenter IPs. Residential proxies from the country of your account reduce that. Off by default because most users do not need it."
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}