{
 "openapi": "3.1.0",
 "info": {
  "title": "FastSocial Instagram Data API",
  "version": "1.1.0",
  "description": "A read-only REST API for public Instagram data: profiles, posts, reels, stories, highlights, comments, likes, followers, hashtags, locations, audio and search, plus engagement insights and a handle check. One key, one header, clean JSON. Public data only; nothing logs in or posts."
 },
 "servers": [
  {
   "url": "https://data.fastsocial.co"
  }
 ],
 "security": [
  {
   "ApiKey": []
  }
 ],
 "tags": [
  {
   "name": "Profiles",
   "description": "Accounts, ids and handle checks."
  },
  {
   "name": "Posts & reels",
   "description": "Timelines, reels, tagged posts, single posts and downloadable media."
  },
  {
   "name": "Engagement",
   "description": "Comments, replies, likes and engagement insights."
  },
  {
   "name": "Network",
   "description": "Followers, following and similar accounts."
  },
  {
   "name": "Stories & highlights",
   "description": "Active stories and saved highlights."
  },
  {
   "name": "Discovery",
   "description": "Search, hashtags, locations and audio."
  },
  {
   "name": "Account",
   "description": "Your key and usage."
  }
 ],
 "paths": {
  "/v1/profile": {
   "get": {
    "operationId": "profile",
    "summary": "Get an Instagram profile",
    "tags": [
     "Profiles"
    ],
    "description": "Follower, following and post counts, bio, links, category, verification and the HD profile picture of any public account.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id."
     },
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/Profile"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/user-id": {
   "get": {
    "operationId": "user-id",
    "summary": "Instagram username to user id",
    "tags": [
     "Profiles"
    ],
    "description": "The numeric user id for a handle. Every endpoint also accepts either one directly, so you rarely need this.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id."
     },
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/UserRef"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/username": {
   "get": {
    "operationId": "username",
    "summary": "Instagram user id to username",
    "tags": [
     "Profiles"
    ],
    "description": "The current handle for a numeric user id, which still works after the account renames itself.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username.",
      "required": true,
      "example": "528817151"
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/UserRef"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/check": {
   "get": {
    "operationId": "check",
    "summary": "Check if an Instagram handle exists and is public",
    "tags": [
     "Profiles"
    ],
    "description": "Does this handle exist, and is it public? States: ok, not_found, private, deactivated, memorialized, age_restricted, restricted_minor. Exact match only, so a typo never resolves to someone else.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id.",
      "required": true
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/Check"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/posts": {
   "get": {
    "operationId": "posts",
    "summary": "Get recent Instagram posts",
    "tags": [
     "Posts & reels"
    ],
    "description": "12 posts per page, newest first, with likes, comments, views, caption and media URLs. Page with cursor.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id."
     },
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username."
     },
     {
      "name": "cursor",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "next_cursor from the previous page of the same request."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/PostPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/reels": {
   "get": {
    "operationId": "reels",
    "summary": "Get an account's Instagram reels",
    "tags": [
     "Posts & reels"
    ],
    "description": "The reels tab of a public account: play counts, likes, comments, captions and video URLs. Page with cursor.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id."
     },
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username."
     },
     {
      "name": "cursor",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "next_cursor from the previous page of the same request."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/PostPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/tagged": {
   "get": {
    "operationId": "tagged",
    "summary": "Get posts an account is tagged in",
    "tags": [
     "Posts & reels"
    ],
    "description": "Public posts by other accounts that tag this account. Useful for UGC, brand mentions and influencer tracking.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id."
     },
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username."
     },
     {
      "name": "cursor",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "next_cursor from the previous page of the same request."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/PostPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/post": {
   "get": {
    "operationId": "post",
    "summary": "Get one Instagram post or reel",
    "tags": [
     "Posts & reels"
    ],
    "description": "Likes, comments, views, caption, owner and media URLs for a single post, reel or IGTV video.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "url",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "example": "https://www.instagram.com/reel/DdhFkS7KGkZ/",
      "description": "Post, reel or IGTV URL. Pass this or shortcode."
     },
     {
      "name": "shortcode",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "The code in the post URL (instagram.com/p/<code>/)."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/Post"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/media": {
   "get": {
    "operationId": "media",
    "summary": "Download URLs for a post, reel or carousel",
    "tags": [
     "Posts & reels"
    ],
    "description": "Direct image and video file URLs for every slide of a post, in the best quality available. URLs are signed Instagram CDN links that expire after a few hours.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "url",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "example": "https://www.instagram.com/reel/DdhFkS7KGkZ/",
      "description": "Post, reel or IGTV URL. Pass this or shortcode."
     },
     {
      "name": "shortcode",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "The code in the post URL (instagram.com/p/<code>/)."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/MediaFiles"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/comments": {
   "get": {
    "operationId": "comments",
    "summary": "Get comments on an Instagram post",
    "tags": [
     "Engagement"
    ],
    "description": "The top comments on a post with author, text, time, likes and reply count, plus the total comment count.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "url",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "example": "https://www.instagram.com/reel/DdhFkS7KGkZ/",
      "description": "Post, reel or IGTV URL. Pass this or shortcode."
     },
     {
      "name": "shortcode",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "The code in the post URL (instagram.com/p/<code>/)."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/CommentPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/comment-replies": {
   "get": {
    "operationId": "comment-replies",
    "summary": "Get replies to an Instagram comment",
    "tags": [
     "Engagement"
    ],
    "description": "Replies under one comment. Page with cursor.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "url",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "example": "https://www.instagram.com/reel/DdhFkS7KGkZ/",
      "description": "Post, reel or IGTV URL. Pass this or shortcode."
     },
     {
      "name": "shortcode",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "The code in the post URL (instagram.com/p/<code>/)."
     },
     {
      "name": "comment_id",
      "in": "query",
      "required": true,
      "schema": {
       "type": "string"
      },
      "example": "17935912383123296",
      "description": "id of a comment from /v1/comments."
     },
     {
      "name": "cursor",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "next_cursor from the previous page of the same request."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/CommentPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/likers": {
   "get": {
    "operationId": "likers",
    "summary": "Get accounts that liked an Instagram post",
    "tags": [
     "Engagement"
    ],
    "description": "A sample of accounts that liked a post, plus the total like count.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "url",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "example": "https://www.instagram.com/reel/DdhFkS7KGkZ/",
      "description": "Post, reel or IGTV URL. Pass this or shortcode."
     },
     {
      "name": "shortcode",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "The code in the post URL (instagram.com/p/<code>/)."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/UserPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/insights": {
   "get": {
    "operationId": "insights",
    "summary": "Instagram engagement rate calculator",
    "tags": [
     "Engagement"
    ],
    "description": "Engagement rate (mean and median), posting cadence, format mix, best posting hours (UTC) and a percentile against the Instagram Benchmarks report, from the latest 12 posts. Pinned posts are excluded.\n\nCost: **2 credits**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id."
     },
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/Insights"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/followers": {
   "get": {
    "operationId": "followers",
    "summary": "Get an account's followers",
    "tags": [
     "Network"
    ],
    "description": "Public follower list of a public account, with the total follower count. Page with cursor where available.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id."
     },
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username."
     },
     {
      "name": "cursor",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "next_cursor from the previous page of the same request."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/UserPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/following": {
   "get": {
    "operationId": "following",
    "summary": "Get accounts an account follows",
    "tags": [
     "Network"
    ],
    "description": "Who a public account follows, with the total. Page with cursor.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id."
     },
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username."
     },
     {
      "name": "cursor",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "next_cursor from the previous page of the same request."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/UserPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/similar": {
   "get": {
    "operationId": "similar",
    "summary": "Find similar Instagram accounts",
    "tags": [
     "Network"
    ],
    "description": "Accounts Instagram considers related to this one. Handy for competitor research and influencer discovery.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id."
     },
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/UserPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/stories": {
   "get": {
    "operationId": "stories",
    "summary": "View Instagram stories anonymously",
    "tags": [
     "Stories & highlights"
    ],
    "description": "Stories posted in the last 24 hours by a public account, with image and video URLs. Signed CDN links that expire after a few hours.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id."
     },
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/Stories"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/highlights": {
   "get": {
    "operationId": "highlights",
    "summary": "Get Instagram story highlights",
    "tags": [
     "Stories & highlights"
    ],
    "description": "Title, cover image and item count for each highlight. Pass an id to /v1/highlight for its items.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "username",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^@?[A-Za-z0-9._]{1,30}$"
      },
      "example": "nasa",
      "description": "Instagram handle, with or without @. A profile URL also works. Pass this or user_id."
     },
     {
      "name": "user_id",
      "in": "query",
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "description": "Numeric Instagram user id. Pass this or username."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/Highlights"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/highlight": {
   "get": {
    "operationId": "highlight",
    "summary": "Get the items in one highlight",
    "tags": [
     "Stories & highlights"
    ],
    "description": "Every photo and video inside one highlight, with signed CDN URLs.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "id",
      "in": "query",
      "required": true,
      "schema": {
       "type": "string"
      },
      "example": "highlight:17960293069066406"
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/HighlightItems"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/search": {
   "get": {
    "operationId": "search",
    "summary": "Search Instagram accounts, hashtags and places",
    "tags": [
     "Discovery"
    ],
    "description": "One search box, three result types: matching accounts, hashtags (with post counts) and places (with location ids).\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "q",
      "in": "query",
      "required": true,
      "schema": {
       "type": "string",
       "maxLength": 80
      },
      "example": "nasa",
      "description": "Search text."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/SearchResults"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/hashtag": {
   "get": {
    "operationId": "hashtag",
    "summary": "Get posts for an Instagram hashtag",
    "tags": [
     "Discovery"
    ],
    "description": "Recent posts under a hashtag and its total post count. Page with cursor.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "tag",
      "in": "query",
      "required": true,
      "schema": {
       "type": "string"
      },
      "example": "space",
      "description": "Hashtag, with or without #."
     },
     {
      "name": "cursor",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "next_cursor from the previous page of the same request."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/HashtagPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/place": {
   "get": {
    "operationId": "place",
    "summary": "Get an Instagram location",
    "tags": [
     "Discovery"
    ],
    "description": "Name, category, address, city, phone, website and post count of a location page. Find ids with /v1/search.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "id",
      "in": "query",
      "required": true,
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "example": "311693088",
      "description": "Numeric location id."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/Place"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/place-posts": {
   "get": {
    "operationId": "place-posts",
    "summary": "Get posts tagged at an Instagram location",
    "tags": [
     "Discovery"
    ],
    "description": "Recent posts geotagged at a location. Page with cursor.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "id",
      "in": "query",
      "required": true,
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "example": "311693088",
      "description": "Numeric location id."
     },
     {
      "name": "cursor",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "next_cursor from the previous page of the same request."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/PostPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/audio": {
   "get": {
    "operationId": "audio",
    "summary": "Get an Instagram audio track and the reels using it",
    "tags": [
     "Discovery"
    ],
    "description": "Title, artist, duration and a preview URL for an original sound or song, plus reels that use it. Audio ids come from reels.\n\nCost: **1 credit**.",
    "parameters": [
     {
      "name": "id",
      "in": "query",
      "required": true,
      "schema": {
       "type": "string",
       "pattern": "^[0-9]{3,25}$"
      },
      "example": "28784844067777520",
      "description": "Numeric audio id."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/AudioPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/audio-search": {
   "get": {
    "operationId": "audio-search",
    "summary": "Search Instagram music and sounds",
    "tags": [
     "Discovery"
    ],
    "description": "Find songs and sounds by title or artist, with ids you can pass to /v1/audio.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "q",
      "in": "query",
      "required": true,
      "schema": {
       "type": "string",
       "maxLength": 80
      },
      "example": "believer",
      "description": "Search text."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/AudioSearch"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/reels-search": {
   "get": {
    "operationId": "reels-search",
    "summary": "Search Instagram reels by keyword",
    "tags": [
     "Discovery"
    ],
    "description": "Reels matching a keyword. Page with cursor.\n\nCost: **3 credits**.",
    "parameters": [
     {
      "name": "q",
      "in": "query",
      "required": true,
      "schema": {
       "type": "string",
       "maxLength": 80
      },
      "example": "space",
      "description": "Search text."
     },
     {
      "name": "cursor",
      "in": "query",
      "schema": {
       "type": "string"
      },
      "description": "next_cursor from the previous page of the same request."
     }
    ],
    "responses": {
     "200": {
      "description": "OK",
      "headers": {
       "X-Cache": {
        "schema": {
         "type": "string",
         "enum": [
          "HIT",
          "MISS",
          "STALE"
         ]
        }
       },
       "X-Credits-Used": {
        "schema": {
         "type": "integer"
        }
       },
       "X-Credits-Remaining": {
        "schema": {
         "type": "integer"
        }
       }
      },
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "required": [
          "ok",
          "data",
          "meta"
         ],
         "properties": {
          "ok": {
           "const": true
          },
          "data": {
           "$ref": "#/components/schemas/PostPage"
          },
          "meta": {
           "$ref": "#/components/schemas/Meta"
          }
         }
        }
       }
      }
     },
     "400": {
      "$ref": "#/components/responses/Error"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     },
     "404": {
      "$ref": "#/components/responses/Error"
     },
     "422": {
      "$ref": "#/components/responses/Error"
     },
     "429": {
      "$ref": "#/components/responses/Error"
     },
     "451": {
      "$ref": "#/components/responses/Error"
     },
     "502": {
      "$ref": "#/components/responses/Error"
     },
     "503": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  },
  "/v1/usage": {
   "get": {
    "operationId": "usage",
    "summary": "Your usage this month",
    "tags": [
     "Account"
    ],
    "description": "Free (0 credits).",
    "responses": {
     "200": {
      "description": "OK"
     },
     "401": {
      "$ref": "#/components/responses/Error"
     }
    }
   }
  }
 },
 "components": {
  "securitySchemes": {
   "ApiKey": {
    "type": "apiKey",
    "in": "header",
    "name": "X-API-Key"
   }
  },
  "responses": {
   "Error": {
    "description": "Error",
    "content": {
     "application/json": {
      "schema": {
       "type": "object",
       "properties": {
        "ok": {
         "const": false
        },
        "error": {
         "type": "object",
         "properties": {
          "code": {
           "type": "string"
          },
          "message": {
           "type": "string"
          }
         }
        }
       }
      }
     }
    }
   }
  },
  "schemas": {
   "Meta": {
    "type": "object",
    "properties": {
     "cache": {
      "type": "string",
      "enum": [
       "hit",
       "miss",
       "stale"
      ]
     },
     "age_seconds": {
      "type": "integer"
     },
     "stale": {
      "type": "boolean"
     },
     "credits": {
      "type": "integer"
     },
     "credits_remaining": {
      "type": [
       "integer",
       "null"
      ]
     }
    }
   },
   "UserRef": {
    "type": "object",
    "properties": {
     "id": {
      "type": "string"
     },
     "username": {
      "type": "string"
     }
    }
   },
   "UserSummary": {
    "type": "object",
    "properties": {
     "id": {
      "type": [
       "string",
       "null"
      ]
     },
     "username": {
      "type": "string"
     },
     "full_name": {
      "type": "string"
     },
     "is_private": {
      "type": "boolean"
     },
     "is_verified": {
      "type": "boolean"
     },
     "avatar_url": {
      "type": [
       "string",
       "null"
      ]
     }
    }
   },
   "Profile": {
    "type": "object",
    "properties": {
     "id": {
      "type": "string"
     },
     "username": {
      "type": "string"
     },
     "full_name": {
      "type": "string"
     },
     "biography": {
      "type": "string"
     },
     "external_url": {
      "type": [
       "string",
       "null"
      ]
     },
     "bio_links": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "followers": {
      "type": [
       "integer",
       "null"
      ]
     },
     "following": {
      "type": [
       "integer",
       "null"
      ]
     },
     "posts_count": {
      "type": [
       "integer",
       "null"
      ]
     },
     "is_private": {
      "type": "boolean"
     },
     "is_verified": {
      "type": "boolean"
     },
     "is_business": {
      "type": "boolean"
     },
     "category": {
      "type": [
       "string",
       "null"
      ]
     },
     "avatar_url": {
      "type": [
       "string",
       "null"
      ]
     }
    }
   },
   "Post": {
    "type": "object",
    "properties": {
     "shortcode": {
      "type": "string"
     },
     "url": {
      "type": "string"
     },
     "taken_at": {
      "type": [
       "integer",
       "null"
      ],
      "description": "Unix seconds, UTC"
     },
     "format": {
      "type": "string",
      "enum": [
       "image",
       "video",
       "reel",
       "carousel"
      ]
     },
     "likes": {
      "type": [
       "integer",
       "null"
      ]
     },
     "comments": {
      "type": [
       "integer",
       "null"
      ]
     },
     "views": {
      "type": [
       "integer",
       "null"
      ]
     },
     "caption": {
      "type": "string"
     },
     "image_url": {
      "type": [
       "string",
       "null"
      ]
     },
     "video_url": {
      "type": [
       "string",
       "null"
      ]
     },
     "pinned": {
      "type": "boolean"
     },
     "owner_username": {
      "type": [
       "string",
       "null"
      ]
     },
     "owner_id": {
      "type": [
       "string",
       "null"
      ]
     }
    }
   },
   "PostPage": {
    "type": "object",
    "properties": {
     "username": {
      "type": "string"
     },
     "user_id": {
      "type": "string"
     },
     "posts": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/Post"
      }
     },
     "next_cursor": {
      "type": [
       "string",
       "null"
      ]
     },
     "is_private": {
      "type": "boolean"
     }
    }
   },
   "MediaFiles": {
    "type": "object",
    "properties": {
     "shortcode": {
      "type": "string"
     },
     "owner_username": {
      "type": [
       "string",
       "null"
      ]
     },
     "files": {
      "type": "array",
      "items": {
       "type": "object",
       "properties": {
        "type": {
         "type": "string",
         "enum": [
          "image",
          "video"
         ]
        },
        "url": {
         "type": "string"
        },
        "thumbnail_url": {
         "type": [
          "string",
          "null"
         ]
        }
       }
      }
     }
    }
   },
   "Comment": {
    "type": "object",
    "properties": {
     "id": {
      "type": "string"
     },
     "text": {
      "type": "string"
     },
     "created_at": {
      "type": [
       "integer",
       "null"
      ]
     },
     "likes": {
      "type": [
       "integer",
       "null"
      ]
     },
     "replies": {
      "type": [
       "integer",
       "null"
      ]
     },
     "user": {
      "$ref": "#/components/schemas/UserSummary"
     }
    }
   },
   "CommentPage": {
    "type": "object",
    "properties": {
     "shortcode": {
      "type": "string"
     },
     "total": {
      "type": [
       "integer",
       "null"
      ]
     },
     "comments": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/Comment"
      }
     },
     "next_cursor": {
      "type": [
       "string",
       "null"
      ]
     }
    }
   },
   "UserPage": {
    "type": "object",
    "properties": {
     "username": {
      "type": "string"
     },
     "user_id": {
      "type": "string"
     },
     "total": {
      "type": [
       "integer",
       "null"
      ]
     },
     "users": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/UserSummary"
      }
     },
     "next_cursor": {
      "type": [
       "string",
       "null"
      ]
     }
    }
   },
   "Check": {
    "type": "object",
    "properties": {
     "username": {
      "type": "string"
     },
     "exists": {
      "type": "boolean"
     },
     "public": {
      "type": "boolean"
     },
     "state": {
      "type": "string",
      "enum": [
       "ok",
       "not_found",
       "private",
       "deactivated",
       "memorialized",
       "age_restricted",
       "restricted_minor"
      ]
     },
     "followers": {
      "type": [
       "integer",
       "null"
      ]
     }
    }
   },
   "Insights": {
    "type": "object",
    "properties": {
     "username": {
      "type": "string"
     },
     "followers": {
      "type": "integer"
     },
     "follower_bucket": {
      "type": "string"
     },
     "sample_size": {
      "type": "integer"
     },
     "confidence": {
      "type": "string",
      "enum": [
       "good",
       "low",
       "insufficient"
      ]
     },
     "avg_likes": {
      "type": [
       "number",
       "null"
      ]
     },
     "avg_comments": {
      "type": [
       "number",
       "null"
      ]
     },
     "engagement_rate_pct": {
      "type": [
       "number",
       "null"
      ]
     },
     "engagement_rate_median_pct": {
      "type": [
       "number",
       "null"
      ]
     },
     "posts_per_week": {
      "type": [
       "number",
       "null"
      ]
     },
     "format_share": {
      "type": "object",
      "additionalProperties": {
       "type": "number"
      }
     },
     "best_hours_utc": {
      "type": [
       "array",
       "null"
      ],
      "items": {
       "type": "object",
       "properties": {
        "hour_utc": {
         "type": "integer"
        },
        "posts": {
         "type": "integer"
        },
        "score": {
         "type": "number"
        }
       }
      }
     },
     "last_post_at": {
      "type": [
       "integer",
       "null"
      ]
     },
     "benchmark_percentile": {
      "type": [
       "integer",
       "null"
      ]
     },
     "benchmark_month": {
      "type": [
       "string",
       "null"
      ]
     }
    }
   },
   "MediaItem": {
    "type": "object",
    "properties": {
     "id": {
      "type": "string"
     },
     "is_video": {
      "type": "boolean"
     },
     "image_url": {
      "type": [
       "string",
       "null"
      ]
     },
     "video_url": {
      "type": [
       "string",
       "null"
      ]
     },
     "taken_at": {
      "type": [
       "integer",
       "null"
      ]
     },
     "expires_at": {
      "type": [
       "integer",
       "null"
      ]
     },
     "width": {
      "type": [
       "integer",
       "null"
      ]
     },
     "height": {
      "type": [
       "integer",
       "null"
      ]
     }
    }
   },
   "Stories": {
    "type": "object",
    "properties": {
     "username": {
      "type": "string"
     },
     "count": {
      "type": "integer"
     },
     "stories": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/MediaItem"
      }
     }
    }
   },
   "Highlights": {
    "type": "object",
    "properties": {
     "username": {
      "type": "string"
     },
     "count": {
      "type": "integer"
     },
     "highlights": {
      "type": "array",
      "items": {
       "type": "object",
       "properties": {
        "id": {
         "type": "string"
        },
        "title": {
         "type": "string"
        },
        "cover_url": {
         "type": [
          "string",
          "null"
         ]
        },
        "item_count": {
         "type": [
          "integer",
          "null"
         ]
        }
       }
      }
     }
    }
   },
   "HighlightItems": {
    "type": "object",
    "properties": {
     "id": {
      "type": "string"
     },
     "count": {
      "type": "integer"
     },
     "items": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/MediaItem"
      }
     }
    }
   },
   "Hashtag": {
    "type": "object",
    "properties": {
     "id": {
      "type": [
       "string",
       "null"
      ]
     },
     "name": {
      "type": "string"
     },
     "media_count": {
      "type": [
       "integer",
       "null"
      ]
     }
    }
   },
   "PlaceSummary": {
    "type": "object",
    "properties": {
     "id": {
      "type": "string"
     },
     "name": {
      "type": "string"
     },
     "address": {
      "type": [
       "string",
       "null"
      ]
     },
     "city": {
      "type": [
       "string",
       "null"
      ]
     },
     "lat": {
      "type": [
       "number",
       "null"
      ]
     },
     "lng": {
      "type": [
       "number",
       "null"
      ]
     }
    }
   },
   "Place": {
    "type": "object",
    "properties": {
     "id": {
      "type": "string"
     },
     "name": {
      "type": "string"
     },
     "category": {
      "type": [
       "string",
       "null"
      ]
     },
     "address": {
      "type": [
       "string",
       "null"
      ]
     },
     "city": {
      "type": [
       "string",
       "null"
      ]
     },
     "zip": {
      "type": [
       "string",
       "null"
      ]
     },
     "lat": {
      "type": [
       "number",
       "null"
      ]
     },
     "lng": {
      "type": [
       "number",
       "null"
      ]
     },
     "phone": {
      "type": [
       "string",
       "null"
      ]
     },
     "website": {
      "type": [
       "string",
       "null"
      ]
     },
     "media_count": {
      "type": [
       "integer",
       "null"
      ]
     }
    }
   },
   "SearchResults": {
    "type": "object",
    "properties": {
     "query": {
      "type": "string"
     },
     "users": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/UserSummary"
      }
     },
     "hashtags": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/Hashtag"
      }
     },
     "places": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/PlaceSummary"
      }
     }
    }
   },
   "HashtagPage": {
    "type": "object",
    "properties": {
     "tag": {
      "type": "string"
     },
     "hashtag": {
      "$ref": "#/components/schemas/Hashtag"
     },
     "posts": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/Post"
      }
     },
     "next_cursor": {
      "type": [
       "string",
       "null"
      ]
     }
    }
   },
   "Audio": {
    "type": "object",
    "properties": {
     "id": {
      "type": "string"
     },
     "title": {
      "type": "string"
     },
     "artist": {
      "type": [
       "string",
       "null"
      ]
     },
     "duration_ms": {
      "type": [
       "integer",
       "null"
      ]
     },
     "is_original": {
      "type": "boolean"
     },
     "is_explicit": {
      "type": "boolean"
     },
     "cover_url": {
      "type": [
       "string",
       "null"
      ]
     },
     "audio_url": {
      "type": [
       "string",
       "null"
      ]
     }
    }
   },
   "AudioPage": {
    "type": "object",
    "properties": {
     "audio": {
      "$ref": "#/components/schemas/Audio"
     },
     "posts": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/Post"
      }
     }
    }
   },
   "AudioSearch": {
    "type": "object",
    "properties": {
     "query": {
      "type": "string"
     },
     "tracks": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/Audio"
      }
     }
    }
   }
  }
 },
 "externalDocs": {
  "description": "Docs",
  "url": "https://fastsocial.co/instagram-api/docs"
 }
}