搜尋此網誌

2022年9月27日 星期二

Instagram API 發佈貼文

緣起:


    接續這篇文章,拿到 user id 後,對於 Instagram 的操作就用 Faceboook API 的那套就行,重點就是 APP 的權杖跟 user id,你也可以把短期的使用者權杖按照之前文章講的,把它換成長期的權杖,方便之後的操作。

成功 po 的文

    這邊介紹了使用 API 在 Instagram PO 文的步驟,向 media endpoint 發送請求,附加圖片的 url,創造一個 container -> 取得 container id -> 用取得的 id 向 media_publish endpoint 發送請求 -> 完成。

    PS : 你的 APP 記得要加 instagram_content_publish 的權限

    使用 API 來 PO 東西有下面的限制


    不能送限時動態 (story)、不能傳到 Instagram TV (這啥?)、每個帳號每天最多只能用 API 傳 25 則貼文 (哭啊)


media 端點:


    media 的介紹,我們成功 po 文後,可以用 media id 來查詢貼文的資訊。我們要送的 endpoint 是下面這個,使用 POST

https://graph.facebook.com/v15.0/{user-id}/media?image_url={image-url}&caption=%23BronzFonz&access_token={access-token}


    需要填的部份有 user-id,access-token,然後 image-url 我是先把圖片上傳到 imgur,再取得那張圖片的網址,caption 可以用來附加對於圖片的描述,如果需要加 tag 的話,記得把 "#" 做 url 編碼 (%23)。

    送出請求後,沒意外的話,它會回傳一個 json,裡面有 container id。

用 POST Man 送請求

回應的 id


media_publish 端點:


    media container 的介紹,上面那個做完後,把那個 id 拿到下面這個 endpoint 使用,一樣用 POST,一樣需要 access-token 跟 user-id。

https://graph.facebook.com/v15.0/{user-id}/media_publish?creation_id={container-id}&access_token={access-token}


    成功後,它會回傳一個 json,裡面有 IG media id

用 POST Man 送請求

回應

    這時你就能在你的 Instagram 上看到你的 po 文


    它好像還能同時 PO 多張圖片,這部份就等有需要再研究好了,使用方法看起來跟上述差不多,一樣傳圖片 url 到 media,得到 id,然後再弄個 container 來 publish 之類的,不過那個 container 是 
carousel (旋轉木馬) container。



沒有留言:

張貼留言