/// <summary> /// Removes container-level permission from specified User API client. Requires Backend API key with Admin permission role. /// <remarks>The collection_id/collection_key parameter means that one can use either one of them - collection_id or collection_key.</remarks> /// </summary> /// <param name="apiClientId">User API client id.</param> /// <param name="permission">User API client's permission to add.</param> /// <param name="projectId">Defines project containing specified container.</param> /// <param name="collectionId">Collection id defining collection that permission will be added to.</param> /// <param name="collectionKey">Collection key defining collection that permission will be added to.</param> /// <returns>Boolen value indicating success of method.</returns> public Task <bool> Deauthorize(string apiClientId, Permissions permission, string projectId, string collectionId = null, string collectionKey = null) { if (collectionId == null && collectionKey == null) { throw new ArgumentNullException(); } if (apiClientId == null || projectId == null) { throw new ArgumentNullException(); } string permissionString = PermissionsParser.GetString(permission); return(_syncanoClient.GetAsync("collection.deauthorize", new { api_client_id = apiClientId, permission = permissionString, project_id = projectId, collection_id = collectionId, collection_key = collectionKey })); }
/// <summary> /// Adds container-level permission to specified User API client. Requires Backend API key with Admin permission role. /// </summary> /// <param name="apiClientId">User API client id.</param> /// <param name="permission">User API client's permission to add.</param> /// <param name="projectId">Project id defining project that permission will be added to.</param> /// <returns>Boolen value indicating success of method.</returns> public Task <bool> Authorize(string apiClientId, Permissions permission, string projectId) { if (apiClientId == null || projectId == null) { throw new ArgumentNullException(); } string permissionString = PermissionsParser.GetString(permission); return(_syncanoClient.GetAsync("project.authorize", new { api_client_id = apiClientId, permission = permissionString, project_id = projectId })); }