创建的事件在 Google 日历 Google Api 客户端 Python 中不可见

问题描述 投票:0回答:1

我正在使用服务帐户 auth2client.service_account 和 googleapiclient 连接到 google 日历并创建事件,我的问题是我的事件正在创建,并且还使用列表事件进行确认,但这些事件在 google 日历中不可见。

from oauth2client.service_account import ServiceAccountCredentials
from googleapiclient.discovery import build
SERVICE_ACCOUNT_FILE = 'chat-json.json'
SCOPES = ['https://www.googleapis.com/auth/calendar']

@app.route('/add_event/', methods=['POST'])
def add_event():
    # Authenticate using service account credentials
    credentials = ServiceAccountCredentials.from_json_keyfile_name(
        SERVICE_ACCOUNT_FILE, scopes=SCOPES)

    service = build('calendar', 'v3', credentials=credentials)
    
    event = {
        'summary': 'Test Meeting',
        'location': 'Test Location',
        'description': 'Test Description',
        'start': {
            'dateTime': (datetime.utcnow() + timedelta(days=1)).isoformat(),
            'timeZone': 'America/Los_Angeles',
        },
        'end': {
            'dateTime': (datetime.utcnow() + timedelta(days=1, hours=1)).isoformat(),
            'timeZone': 'America/Los_Angeles',
        },
    }

    print(event)

    try:
        # Insert the event into the calendar
        event = service.events().insert(calendarId='primary', body=event).execute()
        print(event)
        return jsonify({'status': 'success', 'eventId': event['id']})
    except Exception as e:
        return jsonify({'status': 'error', 'message': str(e)})
Default guest permissions
Add invitations to my calendar
When I respond to the invitation in email

创建的事件之一的示例,当转到 html 链接时,它没有找到请求的事件

{'kind': 'calendar#event', 'etag': '"34578432000"', 'id': 'j4clmqbhch2d0k', 'status': 'confirmed', 'htmlLink': 'https://www.google.com/calendar/event?eid=ajRjbG1xYmhjZ2ZwZW01ODE3MzBraDJkMGsgY2hhdC1haUBwcm8tcGFyay00MTc2MDguaWFtLmdzZXJ2aWNlYWNjb3VudC5jb20', 'created': '2024-03-18T20:29:49.000Z', 'updated': '2024-03-18T20:29:49.216Z', 'summary': 'Python Meeting', 'description': 'A meeting to discuss Python projects.', 'location': '800 Howard St., San Francisco, CA 94103', 'creator': {'email': '[email protected]', 'self': True}, 'organizer': {'email': '[email protected]', 'self': True}, 'start': {'dateTime': '2024-03-20T03:29:47Z', 'timeZone': 'America/Los_Angeles'}, 'end': {'dateTime': '2024-03-20T04:29:47Z', 'timeZone': 'America/Los_Angeles'}, 'iCalUID': '[email protected]', 'sequence': 0, 'reminders': {'useDefault': True}, 'eventType': 'default'}

我找不到问题所在,是在配置还是权限中。

python-3.x google-api google-calendar-api google-api-python-client
1个回答
0
投票

我问了同样的问题,然后我意识到我正在查看 2015 年,因为谷歌日历文档是在 2015 年编写的,示例使用的是 2015 年,所以你可能想检查一下。

如果这不能解决您的问题,请确保显示您的日历(应选中日历左侧的小复选框)。

祝你好运。

© www.soinside.com 2019 - 2024. All rights reserved.