Acl: insert

יוצר כלל בקרת גישה. אפשר לנסות עכשיו או לראות דוגמה.

בקשה

בקשת HTTP

POST https://www.googleapis.com/calendar/v3/calendars/calendarId/acl

פרמטרים

שם הפרמטר Value התיאור
פרמטרים של נתיב
calendarId string מזהה היומן. כדי לאחזר מזהי יומנים, צריך לקרוא לשיטה calendarList.list. כדי לגשת ליומן הראשי של המשתמש שמחובר כרגע, צריך להשתמש במילת המפתח "primary".
פרמטרים אופציונליים של שאילתה
sendNotifications boolean אם לשלוח התראות על שינוי השיתוף של היומן. אפשרות. ברירת המחדל היא True.

הרשאות

בקשה זו מחייבת הרשאה בהיקף הבא:

היקף
https://www.googleapis.com/auth/calendar

מידע נוסף זמין בדף אימות והרשאה.

גוף הבקשה

בגוף הבקשה, מספקים משאב Acl עם המאפיינים הבאים:

שם הנכס Value התיאור הערות
מאפיינים נדרשים
role string התפקיד שהוקצה להיקף. הערכים האפשריים הם:
  • 'none' – לא מספק גישה.
  • 'freeBusyReader' – מספקת גישת קריאה למידע פנוי/לא פנוי.
  • 'reader' – נותנת הרשאת קריאה ליומן. אירועים פרטיים יוצגו למשתמשים עם גישת קריאה, אבל פרטי האירועים יוסתרו.
  • 'writer' – מספקת גישת קריאה וכתיבה ליומן. אירועים פרטיים יוצגו למשתמשים עם גישת כתיבה ופרטי האירועים יהיו גלויים.
  • "owner" – הזנת בעלות על היומן. לתפקיד הזה יש את כל ההרשאות של תפקיד הכותב, וגם יכולת להציג רשימות ACL ולשנות אותן.
ניתן לכתיבה
scope object המידה שבה כלל ACL זה מעניק גישה ליומן.
scope.type string סוג ההיקף. הערכים האפשריים הם:
  • "default" - ההיקף הציבורי. זהו ערך ברירת המחדל.
  • 'user' - הגבלת ההיקף למשתמש יחיד.
  • "group" - הגבלת ההיקף לקבוצה.
  • 'domain' - מגביל את ההיקף לדומיין.
הערה: ההרשאות שמוענקות להיקף "default", או ציבורי, חלות על כל משתמש, מאומת או לא.
מאפיינים אופציונליים
scope.value string כתובת האימייל של משתמש או קבוצה או שם הדומיין, בהתאם לסוג ההיקף. הוסר בסוג "default". ניתן לכתיבה

תשובה

אם הפעולה בוצעה ללא שגיאות, השיטה הזו תחזיר משאב Acl בגוף התגובה.

דוגמאות

הערה: דוגמאות הקוד הזמינות לשיטה זו לא מייצגות את כל שפות התכנות הנתמכות (רשימת השפות הנתמכות זמינה בדף של ספריות המשתמשים).

Java

משתמש בספריית הלקוח של Java.

import com.google.api.services.calendar.Calendar;
import com.google.api.services.calendar.model.AclRule;

// ...

// Initialize Calendar service with valid OAuth credentials
Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credentials)
    .setApplicationName("applicationName").build();

// Create access rule with associated scope
AclRule rule = new AclRule();
Scope scope = new Scope();
scope.setType("scopeType").setValue("scopeValue");
rule.setScope(scope).setRole("role");

// Insert new access rule
AclRule createdRule = service.acl().insert('primary', rule).execute();
System.out.println(createdRule.getId());

Python

עושה שימוש בספריית הלקוח של Python.

rule = {
    'scope': {
        'type': 'scopeType',
        'value': 'scopeEmail',
    },
    'role': 'role'
}

created_rule = service.acl().insert(calendarId='primary', body=rule).execute()

print created_rule['id']

PHP

נעשה שימוש בספריית הלקוח של PHP.

$rule = new Google_Service_Calendar_AclRule();
$scope = new Google_Service_Calendar_AclRuleScope();

$scope->setType("scopeType");
$scope->setValue("scopeValue");
$rule->setScope($scope);
$rule->setRole("role");

$createdRule = $service->acl->insert('primary', $rule);
echo $createdRule->getId();

Ruby

נעשה שימוש בספריית הלקוח של Ruby.

rule = Google::Apis::CalendarV3::AclRule.new(
  scope: {
    type: 'scopeType',
    value: 'scopeEmail',
  },
  role: 'role'
)
result = client.insert_acl('primary', rule)
print result.id

רוצה לנסות?

ניתן להשתמש ב-APIs Explorer שבהמשך כדי לקרוא לשיטה הזו בנתונים בזמן אמת ולראות את התגובה.