Acl: insert

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

בקשה

בקשת HTTP

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

פרמטרים

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

אישור

הבקשה הזו דורשת הרשאה עם לפחות אחד מההיקפים הבאים:

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

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

גוף הבקשה

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

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

תשובה

אם הפעולה בוצעה ללא שגיאות, ה-method מחזיר משאב 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

נסה בעצמך!

אפשר להשתמש ב-API Explorer שבהמשך כדי להפעיל את השיטה הזו על נתונים פעילים ולראות את התגובה.