Giờ Làm Việc 09:00 - 21:00

Trang chủ Đơn hàng Thông tin

Tài Liệu API Đọc Mail Oauth2

API đọc thư chính chủ Microsoft Graph API

--- Lấy hộp thư đến
http
GET https://graph.microsoft.com/v1.0/me/mailFolders/Inbox/messages
Authorization: Bearer {token}

--- Lấy hộp thư rác
http
GET https://graph.microsoft.com/v1.0/me/mailFolders/Spam/messages
Authorization: Bearer {token}

--- Lấy token (Access Token) mới bằng cách sử dụng client_id và refresh_token.

--- Phản hồi
Nếu thành công, Microsoft Graph sẽ trả về danh sách các tin nhắn trong hộp thư đến hoặc hộp thư rác.

--- Bạn có thể tùy chỉnh thêm các tham số để lọc, sắp xếp hoặc kiểm tra các tin nhắn theo nhu cầu của mình. Nếu bạn cần thêm chi tiết, bạn có thể tham khảo tài liệu chính thức của Microsoft Graph API tại đây: https://learn.microsoft.com/en-us/graph/api/resources/mail-api-overview?view=graph-rest-1.0

-- Ví dụ sử dụng Python và Microsoft Graph API để đọc hộp thư đến và hộp thư rác
--------------------------------------------------------------------------------------------------------------------------------
import requests
import json

def get_new_token(client_id, refresh_token):
    url = "https://login.microsoftonline.com/common/oauth2/v2.0/token"
    payload = {
        'client_id': client_id,
        'refresh_token': refresh_token,
        'grant_type': 'refresh_token',
        'scope': 'offline_access https://graph.microsoft.com/Mail.ReadWrite'
    }
    response = requests.post(url, data=payload)
    return response.json()

def get_messages(token, folder='inbox'):
    url = f"https://graph.microsoft.com/v1.0/me/mailFolders/{folder}/messages"
    headers = {
        'Authorization': f'Bearer {token}'
    }
    response = requests.get(url, headers=headers)
    messages = response.json()
    
    # Loại bỏ phần '@odata.context' nếu có
    if '@odata.context' in messages:
        del messages['@odata.context']
    
    return messages

if __name__ == "__main__":
    # Thay thế giá trị này bằng thông tin của bạn
    client_id = 'your_client_id'
    refresh_token = 'your_refresh_token'

    # Lấy Access Token mới
    token_response = get_new_token(client_id, refresh_token)
    access_token = token_response.get('access_token')

    if access_token:
        # Lấy hộp thư đến
        inbox_messages = get_messages(access_token, 'inbox')
        print("Inbox Messages:", json.dumps(inbox_messages, indent=2))
        
        # Lấy hộp thư rác
        spam_messages = get_messages(access_token, 'junkemail')
        print("Spam Messages:", json.dumps(spam_messages, indent=2))
    else:
        print("Error getting access token:", token_response)
----------------------------------------------------------------------------------------------------------------------------------------

--- Giải thích các bước
+ Lấy Access Token mới: Hàm get_new_token sẽ gửi yêu cầu tới Microsoft để lấy Access Token mới bằng cách sử dụng client_id và refresh_token.

+ Lấy các email: Hàm get_messages sẽ lấy các email từ thư mục được chỉ định (hộp thư đến hoặc hộp thư rác).

--- Thay thế thông tin cá nhân
Thay thế your_client_id và your_refresh_token bằng giá trị client_id và refresh_token thực tế của bạn trong mã nguồn.

Bằng cách làm theo hướng dẫn này, bạn có thể dễ dàng sử dụng Microsoft Graph API để đọc hộp thư đến và hộp thư rác của mình

Bài viết phổ biến

Chat hỗ trợ
Chat ngay