> ## Documentation Index
> Fetch the complete documentation index at: https://docs.konbiniapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get post details

> Returns details for a single post by its shortcode, including media, captions, and engagement counts. Supports photos, videos, and carousels.



## OpenAPI

````yaml /openapi.json get /v1/instagram/posts/{postId}
openapi: 3.1.0
info:
  title: KonbiniAPI
  version: 1.0.0
  description: >-
    Social media API that normalizes Instagram, TikTok, X, and Reddit data into
    a consistent ActivityStreams 2.0 format.


    Every authenticated response includes `X-Credits-Remaining` and
    `X-Credits-Used` headers. Each successful request costs 1 credit. Requests
    that fail with 400, 5xx, or upstream errors are refunded (X-Credits-Used:
    0).
  contact:
    name: KonbiniAPI
    email: hello@konbiniapi.com
    url: https://konbiniapi.com
servers:
  - url: https://api.konbiniapi.com
    description: Production
security:
  - apiKey: []
tags:
  - name: Instagram
    description: Instagram data endpoints
  - name: TikTok
    description: TikTok data endpoints
  - name: X
    description: X data endpoints
  - name: Reddit
    description: Reddit data endpoints
paths:
  /v1/instagram/posts/{postId}:
    get:
      tags:
        - Instagram
      summary: Get post details
      description: >-
        Returns details for a single post by its shortcode, including media,
        captions, and engagement counts. Supports photos, videos, and carousels.
      operationId: instagramGetPost
      parameters:
        - schema:
            type: string
            description: Post shortcode (from instagram.com/p/{shortcode}/)
            example: DVRYDo-Cjw3
          required: true
          description: Post shortcode (from instagram.com/p/{shortcode}/)
          name: postId
          in: path
      responses:
        '200':
          description: Returns the Instagram post
          headers:
            X-Credits-Remaining:
              schema:
                type: integer
              description: Credits remaining after this request
            X-Credits-Used:
              schema:
                type: integer
              description: Credits consumed (1 if charged, 0 if refunded on error)
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      '@context':
                        type: array
                        prefixItems:
                          - type: string
                            enum:
                              - https://www.w3.org/ns/activitystreams#
                          - type: string
                            enum:
                              - https://konbiniapi.com/ns/social#
                        description: ActivityStreams JSON-LD context
                        example:
                          - https://www.w3.org/ns/activitystreams#
                          - https://konbiniapi.com/ns/social#
                      type:
                        type: string
                        description: ActivityStreams object type
                        example: Video
                      id:
                        type: string
                        format: uri
                        description: Post permalink
                        example: https://www.instagram.com/p/CybWViruta1/
                      url:
                        type: string
                        format: uri
                        description: Post URL
                        example: https://www.instagram.com/p/CybWViruta1/
                      entityId:
                        type: string
                        description: Post shortcode (used as lookup key)
                        example: CybWViruta1
                      content:
                        type: string
                        description: Caption or description
                        example: >-
                          When you realize there is a simpler way
                          #learnfromkhaby
                      published:
                        type: string
                        format: date-time
                        description: Publication date in ISO 8601 format
                        example: '2026-02-27T18:36:42.000Z'
                      likeCount:
                        type: integer
                        description: Number of likes
                        example: 2800000
                      commentCount:
                        type: integer
                        description: Number of comments
                        example: 29200
                      attributedTo:
                        anyOf:
                          - $ref: '#/components/schemas/InstagramEmbeddedUser'
                          - type: array
                            items:
                              $ref: '#/components/schemas/InstagramEmbeddedUser'
                        description: Post author or collaborators
                      location:
                        $ref: '#/components/schemas/InstagramLocation'
                        description: Post location tag
                      tag:
                        type: array
                        items:
                          $ref: '#/components/schemas/InstagramTag'
                        description: Tagged users or hashtags
                      language:
                        type: string
                        description: Content language (BCP47 code)
                        example: en
                      isEdited:
                        type: boolean
                        description: Whether the caption has been edited
                        example: false
                      isSponsored:
                        type: boolean
                        description: Whether post is a paid partnership
                        example: false
                      viewCount:
                        type: integer
                        description: Number of views
                        example: 42600000
                      duration:
                        type: number
                        description: Duration in seconds
                        example: 23
                      contentFormat:
                        type: string
                        description: Content format (e.g. video, reel, igtv)
                        example: reel
                      attachment:
                        type: array
                        items:
                          $ref: '#/components/schemas/InstagramAttachment'
                        description: Media files
                      image:
                        type: array
                        items:
                          $ref: '#/components/schemas/InstagramImageWithDimensions'
                        description: Post images
                      audio:
                        $ref: '#/components/schemas/InstagramAudio'
                        description: Post audio track
                      name:
                        type: string
                        description: Alt text or accessibility caption
                        example: Photo of Khabane Lame
                      totalItems:
                        type: integer
                        description: Number of carousel items
                        example: 5
                      items:
                        type: array
                        items:
                          $ref: '#/components/schemas/InstagramCarouselItem'
                        description: Carousel slides
                    required:
                      - '@context'
                      - type
                      - id
                      - url
                      - entityId
                required:
                  - data
        '400':
          description: Bad Request — Invalid parameters
          headers:
            X-Credits-Remaining:
              schema:
                type: integer
              description: Credits remaining after this request
            X-Credits-Used:
              schema:
                type: integer
              description: Credits consumed (1 if charged, 0 if refunded on error)
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                            - validation_error
                          description: Machine-readable error code
                        message:
                          type: string
                          example: Validation error
                          description: Human-readable error message
                      required:
                        - code
                        - message
                    description: List of errors
                  data:
                    type: 'null'
                    description: Always null for error responses
                required:
                  - errors
                  - data
        '401':
          description: Unauthorized — Missing or invalid API key
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                            - missing_api_key
                            - invalid_api_key
                          description: Machine-readable error code
                        message:
                          type: string
                          example: Invalid API key
                          description: Human-readable error message
                      required:
                        - code
                        - message
                    description: List of errors
                  data:
                    type: 'null'
                    description: Always null for error responses
                required:
                  - errors
                  - data
        '402':
          description: Payment Required — Credits exhausted
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                            - credits_exhausted
                          description: Machine-readable error code
                        message:
                          type: string
                          example: >-
                            Credits exhausted. Upgrade your plan at
                            konbiniapi.com
                          description: Human-readable error message
                      required:
                        - code
                        - message
                    description: List of errors
                  data:
                    type: 'null'
                    description: Always null for error responses
                required:
                  - errors
                  - data
        '403':
          description: Forbidden — API key disabled or expired
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                            - api_key_disabled
                            - api_key_expired
                          description: Machine-readable error code
                        message:
                          type: string
                          example: API key is disabled
                          description: Human-readable error message
                      required:
                        - code
                        - message
                    description: List of errors
                  data:
                    type: 'null'
                    description: Always null for error responses
                required:
                  - errors
                  - data
        '404':
          description: Not Found
          headers:
            X-Credits-Remaining:
              schema:
                type: integer
              description: Credits remaining after this request
            X-Credits-Used:
              schema:
                type: integer
              description: Credits consumed (1 if charged, 0 if refunded on error)
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                            - not_found
                            - route_not_found
                          description: Machine-readable error code
                        message:
                          type: string
                          example: Not found
                          description: Human-readable error message
                      required:
                        - code
                        - message
                    description: List of errors
                  data:
                    type: 'null'
                    description: Always null for error responses
                required:
                  - errors
                  - data
        '413':
          description: Content Too Large — Request body exceeds 1 MB
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                            - validation_error
                          description: Machine-readable error code
                        message:
                          type: string
                          example: Request body too large
                          description: Human-readable error message
                      required:
                        - code
                        - message
                    description: List of errors
                  data:
                    type: 'null'
                    description: Always null for error responses
                required:
                  - errors
                  - data
        '500':
          description: Internal Server Error
          headers:
            X-Credits-Remaining:
              schema:
                type: integer
              description: Credits remaining after this request
            X-Credits-Used:
              schema:
                type: integer
              description: Credits consumed (1 if charged, 0 if refunded on error)
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                            - internal_error
                          description: Machine-readable error code
                        message:
                          type: string
                          example: Internal error
                          description: Human-readable error message
                      required:
                        - code
                        - message
                    description: List of errors
                  data:
                    type: 'null'
                    description: Always null for error responses
                required:
                  - errors
                  - data
        '502':
          description: Bad Gateway — Upstream platform error
          headers:
            X-Credits-Remaining:
              schema:
                type: integer
              description: Credits remaining after this request
            X-Credits-Used:
              schema:
                type: integer
              description: Credits consumed (1 if charged, 0 if refunded on error)
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                            - platform_error
                          description: Machine-readable error code
                        message:
                          type: string
                          example: Platform error
                          description: Human-readable error message
                      required:
                        - code
                        - message
                    description: List of errors
                  data:
                    type: 'null'
                    description: Always null for error responses
                required:
                  - errors
                  - data
        '503':
          description: Service Unavailable
          headers:
            X-Credits-Remaining:
              schema:
                type: integer
              description: Credits remaining after this request
            X-Credits-Used:
              schema:
                type: integer
              description: Credits consumed (1 if charged, 0 if refunded on error)
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                            - service_unavailable
                          description: Machine-readable error code
                        message:
                          type: string
                          example: Service unavailable
                          description: Human-readable error message
                      required:
                        - code
                        - message
                    description: List of errors
                  data:
                    type: 'null'
                    description: Always null for error responses
                required:
                  - errors
                  - data
        '504':
          description: Gateway Timeout — Upstream platform timed out
          headers:
            X-Credits-Remaining:
              schema:
                type: integer
              description: Credits remaining after this request
            X-Credits-Used:
              schema:
                type: integer
              description: Credits consumed (1 if charged, 0 if refunded on error)
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                            - platform_error
                          description: Machine-readable error code
                        message:
                          type: string
                          example: Platform error
                          description: Human-readable error message
                      required:
                        - code
                        - message
                    description: List of errors
                  data:
                    type: 'null'
                    description: Always null for error responses
                required:
                  - errors
                  - data
components:
  schemas:
    InstagramEmbeddedUser:
      type: object
      properties:
        type:
          type: string
          description: ActivityStreams object type
          example: Person
        id:
          type: string
          format: uri
          description: Profile URL
          example: https://www.instagram.com/khaby00/
        url:
          type: string
          format: uri
          description: Profile URL
          example: https://www.instagram.com/khaby00/
        entityId:
          type: string
          description: Platform-specific entity ID
          example: '779085683'
        preferredUsername:
          type: string
          description: Username or handle
          example: khaby00
        name:
          type: string
          description: Display name
          example: Khabane Lame
        icon:
          allOf:
            - $ref: '#/components/schemas/InstagramImage'
            - description: Author avatar
        role:
          type: string
          description: Role label (e.g. collaborator)
          example: collaborator
      required:
        - type
        - id
        - url
        - entityId
        - preferredUsername
      description: Compact user profile for embedded contexts
    InstagramLocation:
      type: object
      properties:
        type:
          type: string
          description: ActivityStreams object type
          example: Place
        id:
          type: string
          description: Location ID
          example: '213385402'
        name:
          type: string
          description: Location name or country code
          example: Los Angeles, California
        url:
          type: string
          format: uri
          description: Location page URL
          example: https://www.instagram.com/explore/locations/213385402/
        latitude:
          type: number
          description: Geographic latitude
          example: 34.0522
        longitude:
          type: number
          description: Geographic longitude
          example: -118.2437
      required:
        - type
        - name
      description: Geographic location
    InstagramTag:
      type: object
      properties:
        type:
          type: string
          description: ActivityStreams object type
          example: Tag
        name:
          type: string
          description: Tag name
          example: learnfromkhaby
        href:
          type: string
          format: uri
          description: Tag URL
          example: https://www.instagram.com/explore/tags/learnfromkhaby/
      required:
        - type
        - name
        - href
      description: Hashtag or user mention
    InstagramAttachment:
      type: object
      properties:
        type:
          type: string
          description: ActivityStreams object type
          example: Video
        url:
          type: array
          items:
            type: string
            format: uri
          description: Media download URLs
          example:
            - https://scontent.cdninstagram.com/v/t50.2886-16/video.mp4
        mediaType:
          type: string
          description: MIME type
          example: video/mp4
        width:
          type: integer
          description: Width in pixels
          example: 576
        height:
          type: integer
          description: Height in pixels
          example: 1024
      required:
        - type
        - url
      description: Media file attachment
    InstagramImageWithDimensions:
      allOf:
        - $ref: '#/components/schemas/InstagramImage'
        - type: object
          properties:
            width:
              type: integer
              description: Width in pixels
              example: 1080
            height:
              type: integer
              description: Height in pixels
              example: 1920
      description: Image resource with optional dimensions
    InstagramAudio:
      type: object
      properties:
        type:
          type: string
          description: ActivityStreams object type
          example: Audio
        id:
          type: string
          format: uri
          description: Audio permalink
          example: https://www.instagram.com/reels/audio/293394603591002/
        entityId:
          type: string
          description: Platform-specific audio ID
          example: '293394603591002'
        name:
          type: string
          description: Track name
          example: Original audio
        artist:
          type: string
          description: Artist name
          example: khaby00
        isOriginal:
          type: boolean
          description: Whether audio is user-created vs a licensed track
          example: true
        duration:
          type: number
          description: Duration in seconds
          example: 85.216
      required:
        - type
        - entityId
        - name
        - artist
        - isOriginal
      description: Audio track metadata
    InstagramCarouselItem:
      type: object
      properties:
        type:
          type: string
          description: ActivityStreams object type
          example: Image
        entityId:
          type: string
          description: Instagram internal media ID
          example: '3214260996432123574'
        image:
          type: array
          items:
            $ref: '#/components/schemas/InstagramImageWithDimensions'
          description: Item thumbnails
        attachment:
          type: array
          items:
            $ref: '#/components/schemas/InstagramAttachment'
          description: Media files
        name:
          type: string
          description: Alt text
          example: Photo of Khabane Lame
      required:
        - type
        - entityId
      description: Individual slide in a carousel post
    InstagramImage:
      type: object
      properties:
        type:
          type: string
          description: ActivityStreams object type
          example: Image
        url:
          type: string
          format: uri
          description: Image URL
          example: https://scontent.cdninstagram.com/v/t51.2885-19/avatar.jpg
      required:
        - type
        - url
      description: Image resource
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      description: |-
        Send your API key in the Authorization header as a Bearer token.
        Example: `Authorization: Bearer <your-api-key>`

````