Core functionalities for the Microsoft Graph JavaScript SDK
npm install @microsoft/msgraph-sdk-coreGet started with the Microsoft Graph SDK for Typescript by integrating the Microsoft Graph API into your Typescript application!
> Note: this package contains the core feature of the TypeScript SDK. To get the full experience checkout the v1 SDK and the beta SDK.
>
> Note: the Microsoft Graph Typescript SDK is currently in Pre-Release.
``shell`this will install the core package
npm install @microsoft/msgraph-sdk-core
> Note: we are working to add the getting started information for Typescript to our public documentation, in the meantime the following sample should help you getting started.
Register your application by following the steps at Register your app with the Microsoft Identity Platform.
An instance of the FetchClient class handles making requests to the service. To create a new instance of this class, you need to provide an instance of AuthenticationProvider, which can authenticate requests to Microsoft Graph.
#### 2.2.1 Authorization Code Provider
`TypeScript
// @azure/identity
const credential = new AuthorizationCodeCredential(
'YOUR_TENANT_ID',
'YOUR_CLIENT_ID',
'YOUR_CLIENT_SECRET',
'AUTHORIZATION_CODE',
'REDIRECT_URL',
);
// @microsoft/kiota-authentication-azure
const authProvider = new AzureIdentityAuthenticationProvider(credential, ["User.Read"]);
`
#### 2.2.2 Client Credentials Provider
##### With a certificate
`TypeScript
// @azure/identity
const credential = new ClientCertificateCredential(
'YOUR_TENANT_ID',
'YOUR_CLIENT_ID',
'YOUR_CERTIFICATE_PATH',
);
// @microsoft/kiota-authentication-azure
const authProvider = new AzureIdentityAuthenticationProvider(credential, ["https://graph.microsoft.com/.default"]);
`
##### With a secret
`TypeScript
// @azure/identity
const credential = new ClientSecretCredential(
'YOUR_TENANT_ID',
'YOUR_CLIENT_ID',
'YOUR_CLIENT_SECRET',
);
// @microsoft/kiota-authentication-azure
const authProvider = new AzureIdentityAuthenticationProvider(credential, ["https://graph.microsoft.com/.default"]);
`
#### 2.2.3 On-behalf-of provider
`TypeScript
// @azure/identity
const credential = new OnBehalfOfCredential({
tenantId: 'YOUR_TENANT_ID',
clientId: 'YOUR_CLIENT_ID',
clientSecret: 'YOUR_CLIENT_SECRET',
userAssertionToken: 'JWT_TOKEN_TO_EXCHANGE',
});
// @microsoft/kiota-authentication-azure
const authProvider = new AzureIdentityAuthenticationProvider(credential, ["https://graph.microsoft.com/.default"]);
`
#### 2.2.4 Device code provider
`TypeScript
// @azure/identity
const credential = new DeviceCodeCredential({
tenantId: 'YOUR_TENANT_ID',
clientId: 'YOUR_CLIENT_ID',
userPromptCallback: (info) => {
console.log(info.message);
},
});
// @microsoft/kiota-authentication-azure
const authProvider = new AzureIdentityAuthenticationProvider(credential, ["User.Read"]);
`
#### 2.2.5 Interactive provider
`TypeScript
// @azure/identity
const credential = new InteractiveBrowserCredential({
tenantId: 'YOUR_TENANT_ID',
clientId: 'YOUR_CLIENT_ID',
redirectUri: 'http://localhost',
});
// @microsoft/kiota-authentication-azure
const authProvider = new AzureIdentityAuthenticationProvider(credential, ["User.Read"]);
`
#### 2.2.6 Username/password provider
`TypeScript
// @azure/identity
const credential = new UsernamePasswordCredential(
'YOUR_TENANT_ID',
'YOUR_CLIENT_ID',
'YOUR_USER_NAME',
'YOUR_PASSWORD',
);
// @microsoft/kiota-authentication-azure
const authProvider = new AzureIdentityAuthenticationProvider(credential, ["User.Read"]);
``
TODO: document how the fetch client augmented with middleware handlers can be used to make arbitrary requests.
For more detailed documentation, see:
* Overview
* Collections
* Making requests
* Known issues
* Contributions
For known issues, see issues.
The Microsoft Graph SDK is open for contribution. To contribute to this project, see Contributing.
Copyright (c) Microsoft Corporation. All Rights Reserved. Licensed under the MIT license.