Microsoft Graph API: set general channel settings - microsoft-graph-api

Seems like there isn't a way to set primary channel settings using Graph API
I need to set Primary Channel ModerationSettngs.UserNewMessageRestriction = UserNewMessageRestriction.Moderators but:
If I add this setting to the Team creation (await graphClient.Teams.Request().AddAsync(team)) it's ignored
If i try to change this settings after I created the Team using await graphClient.Teams[myTeamId].Channels[myChannelId].Request().UpdateAsync(channel) I get an error that tell me that "Primary channel cannot be patched"
I'm using Microsoft Graph API beta version

Currently there no API to edit the settings of a primary channel. When you create a team the primary channel will be automatically created. If you want to set settings you can create a new channel and you can add settings to that using .

Related

How to get Youtube channel page id for creating Google BQ DTS

How to get YouTube channel page id for creating Google BigQuery Data Transfer Service YouTube Channel as data source.
Trying to create transfer service from BQ console and CLI. Getting the following error from console and CLI.
Now I am using the pageId from this YouTube Channel URL: https://www.youtube.com/channel/XXXXXXXXXYYYYYYYYYY
From CLI:
bq mk --transfer_config --project_id=test-dts --target_dataset=YTChannelDTS --display_name='YTChannelTest' --params='{"page_id":"XXXXXXXXXYYYYYYYYYY","table_suffix":"MT","configure_jobs":"true"}' --data_source='youtube_channel'
BigQuery error in mk operation: Request contains an invalid argument.
From Console: refer the below image(error marked in red colour).
Navigate to https://www.youtube.com/account_advanced in order to see your YouTube account settings. You will then see a value for YouTube Channel ID. This is what you pass to BigQuery.
Update: After trying to replicate the above steps on a project that I was the Owner on, I encountered the same error message. The workaround was to:
Go to the IAM admin page
Select the project that will be housing your data transfer BigQuery dataset
Find your account
Add the BigQuery Admin privilege to your account
Retry the steps to set up your data transfer
Besides "Channel page ID", the help button says that it needs "The page ID of the Google+ page associated with the channel."
You can get it by visiting Google plus and then clicking on profile. The pageID will get appended to the URL:
https://plus.google.com/< pageID >
I cannot fully test this because I have just set up a reporting job and it can take up to 48 hours to get created so, for me, right now it fails with a "No reporting jobs found - please ensure that reporting jobs exist." but it looks that the transfer itself was created correctly.
On a side note, Gplus will soon be discontinued for personal accounts so, for such transfers to still work after April 2 on such accounts, I think you'll probably need to "Move channel to Brand Account". This option can be found under Account settings

How to use appRoleAssignment in Graph Api

I'm trying to leverage the beta api for assigning azure users to applications.
I looked at the documentation and tried a variety of attempts in a C# console app using HttpClient and WebClient and couldn't succeed. I then went to the Microsoft graph explorer https://developer.microsoft.com/en-us/graph/graph-explorer . I couldn't get it to work.
I looked at the documentation
https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/api/approleassignment_get
The document's actual documentation of the HTTP request which doesn't match the Example. The Graph Explorer seems to hint that the example is correct, but through various attempts, I can only get a response of
{
"error": {
"code": "Request_UnsupportedQuery",
"message": "Direct queries to this resource type are not supported.",
...
}
}
My essential url is
https://graph.microsoft.com/beta/appRoleAssignments/
The example says {id} but I have no idea what to put in. I put in several guids, user ids, object ids, resource ids, and none worked.
It isn't saying any access denied messages so I assume it has nothing to do with Scopes (all though the documentation is a little empty regarding that as well).
Ideally, I'd be able to see if for a given Guest Azure User has access to a particular App, then I'd be able to go and Update the assignment. I'll probably also need to delete the assignment as well.
[Edit (2021-07-06): Use Microsoft Graph v1.0 for all of this.]
It looks like the Microsoft Graph API's beta endpoint doesn't currently allow you to list AppRoleAssignments.
[Edit (2018-10-11): The Microsoft Graph beta endpoint now supports the ability to list AppRoleAssignments, though you should still use Azure AD Graph for any production application, until it gets to v1.0.] Fortunately, the Azure AD Graph API does work for this (plus, it's not a beta endpoint, so it's more likely to be stable).
To list all app roles a user is assigned with Microsoft Graph:
https://graph.microsoft.com/v1.0/users/{id}/appRoleAssignments
To list all app roles a group is assigned:
https://graph.microsoft.com/v1.0/groups/{id}/appRoleAssignments
To do the reverse, and list all users or groups assigned to an app:
https://graph.microsoft.com/v1.0/servicePrincipals/{id}/appRoleAssignedTo
Azure AD Graph is deprecated and all support for it will cease in June 2022. The equivalent requests were (in the same order as above):
https://graph.windows.net/{tenant-id}/users/{id}/appRoleAssignments?api-version=1.6
https://graph.windows.net/{tenant-id}/groups/{id}/appRoleAssignments?api-version=1.6
https://graph.windows.net/{tenant-id}/servicePrincipals/{id}/appRoleAssignedTo?api-version=1.6
In the new Azure portal, under "Enterprise applications" > (your app) > "Users and groups", you'll see the list of users who are assigned to the application, as well as the app role they are assigned to. After testing , you could do the equivalent thing using Microsoft Graph API request :
https://graph.microsoft.com/beta/servicePrincipals/d0790296-0a14-4ab1-8f6c-4e4d3eb03036/appRoleAssignments
Your could get the service principal under "Enterprise applications" > (your app) >Properties>Object ID .Here is sample of the response :
id is the role id , In your scenario ,you could check whether record exists when the principalId matches the object id of the specific user , and principalType is user .

Where to find the youtube API Key?

I followed all the steps. I selected my desired API (YouTube Data API) and created a project.
I am searching now for about 20 minutes but I can't find the API Key?
My user interface is in german, is it possible that it is named to something else than API Key? Maybe Clientschlüssel (Client Key) ?
This is all I found:
There is also a JSON object, but no API Key:
var myInfos = {
"web":{
"client_id":"censored",
"project_id":"censored",
"auth_uri":"https://accounts.google.com/o/oauth2/auth",
"token_uri":"https://accounts.google.com/o/oauth2/token",
"auth_provider_x509_cert_url":"censored",
"client_secret":"censored",
"redirect_uris":["https://localhost/ex/YouTube/index.html"],
"javascript_origins":["http://localhost"]
}
}
Just to walk through this again to make sure you have done it properly.
Make sure you have a Google account.
Log into the developer console at: https://console.developers.google.com/
Create a project
THEN, select YouTube data API
Click create credentials on the right hand side of the screen.
Choose where you will call the API from
Pick public or User.
Obtain your API Key.
Optional: restrict your key.
I just walked though all of this and have been given a key myself.
sign into https://developers.google.com
https://console.developers.google.com/project - Create Project - enter Project Name - Create
select newly created project
Go to APIs Overview
click + Enable APIS AND SERVICES
type "YouTube" - select Youtube API v3 - click Enable
click Credentials - "Create Credentials" - API key
Copy and paste API key to text editor, e.g. notepad (save)
I finally found it!
You have to go to Zugangsdaten (Credentials) and then click on Anmeldedaten erstellen (create credentials), now you can select API Key!

AWSMobileHubHelper DynamoDB AccessDeniedException

I'm using the Swift AWS Mobile Hub Helper to build my iOS app and connect to my DynamoDB database. I can see that after logging in using a Facebook SignInProvider I'm getting an assumed role arn for an authorized role for the table I'm trying to connect to, but when I try to use the load method on my DynamoDBObjectMapper I get an error telling like this:
is not authorized to perform: dynamodb:GetItem on resource
I tried downloading a new base app from the mobile hub page and making no other alterations but to point it to the new table but it had the same error. My colleague is building an android version of our app and he is able to connect to the database and he says that he made no changes to how he connects so I'm unsure as to what is causing the error.
EDIT: I've been looking at the federated identity pool that I'm ostensibly being assigned and the identity id that cognito is assigning my device (the simulator) is appearing there if I search for it with the dataset that my code is creating.
For each table in your Mobile Hub app, Hub creates an IAM role policy, and attaches it to the policy your users assume. If you look under your auth/unauth roles for the app (it will have the Mobile Hub project name in it). You should see a list of attached policies. One of those policies will be for the table you created in Hub. If you want that policy to have expanded capabilities, or in your case give access to a different table. You will either need to edit the policy or create a new policy.

Failed to create cloud account while adding an Object Storage Service

I am Trying to create a new free Object Storage Service for testing - and I am getting error:
Service broker error: {"description"=>"Failed to create cloud account."}
I have other Bluxmix services created, and can remove/create other services.
I am only receiving this error while trying to add the IBM Object Storage
The object storage service has some issue. You can see the service's status on status page here: http://ibm.biz/bluemixstatus
You can also be alerted of any notifications by subscribing to the RSS feed for the Bluemix Status page. This approach provides a way for you to get updates without having to regularly consult the status page.
Use the Support Widget to open a ticket. It is available from the user avatar in the upper right corner of the main Bluemix UI. After opening the support widget panel, select Get Help > Get In Touch, select the type of assistance you need, and then fill out the support form.
Use the Support Site 'Get Help' form. This form is available on a separate site that is made available for ticket submission when you cannot log into Bluemix and access the Support Widget. Go to http://ibm.biz/bluemixsupport and fill in the support request form.
I was seeing the same error with Object Storage. I contacted Bluemix support and they told me this error was occurring because "my name had raised a false flag against the U.S. debarred parties list." They said this is very rare, and the only way to fix the problem is to contact support with a request.
To contact support:
Login to Bluemix
Open the account tray by clicking the avatar in the top right
Click “Get Help”
Click “Get In Touch”
I'm now able to provision Object Storage.

Resources