introduction to the cloud solution provider platform & apis

Download Introduction to the Cloud Solution Provider platform & APIs

If you can't read please download the document

Upload: mae-burke

Post on 08-Jan-2018

217 views

Category:

Documents


1 download

DESCRIPTION

Cloud Solution Provider program overview

TRANSCRIPT

Introduction to the Cloud Solution Provider platform & APIs
4/26/2017 2:33 PM ITPro10 Introduction to theCloud Solution Provider platform & APIs Speaker Title 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. Cloud Solution Provider program overview In a Cloud First world, partners want to
Own the customer relationship Service the complete customer lifecycle Attach partner services CSP enables partners to
Set the price, the terms and directly bill customers Directly provision andmanage subscriptions Be the first point of contactfor customer support Create cloud subscription + partner offer 1 Set packageprice and sellto customers 2 Place orderfor MicrosoftCloud Services 3 Offer single packagedsolution 4 Services available in CSP
131 markets Office 365, Windows Azure, Dynamics CRM Online, Enterprise Mobility Suite Continuous expansion Office 365 Own and Control the Billing Provision, Manage and Support Sell Integrated Offers and Services EnterpriseMobility Suite Microsoft Azure Dynamics CRM Online CSP business models Customer 1-Tier Direct Cloud Solution Provider
Microsoft 2-Tier Indirect Customer Reseller Microsoft Cloud Solution Provider Distributor CSP business models which is right for you?
1-Tier (Direct) 1-Tier Direct 2-Tier Indirect Partners self-select based on criteria and business opportunity Partners managed by Microsoft: PSE, Tele, Programmatic 2-Tier reseller option provided partners that don't meet criteria Drives net new customers via differentiated offers & services MSFT MSFT Cloud Solution Provider 2T Cloud Solution Provider Reseller 2-Tier (Indirect) Customer Customer Selective recruitment; stringent criteria assessment Indirect sales via reseller partners Partners fill scalability, capacity and capability opportunity Drives net new customers via differentiated offers & services Drive new partner recruitment Similar to our traditional channel, we expectthe majority of partners to be servicedthrough the 2-Tier model as resellers //aka.ms/cloudsolutionprovider CSP platform overview CSP platform core elements
CSP Platform Components Partner Center portal Provision Customers & Subscriptions Admin-on-behalf-of customers Office 365, Intune, EMS, Azure, CRM Online CSP API Multi-channel &Multi-CSP Partner Billing & Reconciliation CSP Content & Resources Partner Center can be accessed at Find more information about the CSP API on MSDN Tools to manage the customer lifecycle
Ordering & Provisioning Subscription Management Customer Administration Billing Support Create customers Order subscriptions Multi-channel Multi-Partner Add seats Reduce seats Order add-ons Suspend subs Admin-on-behalf Admin roles Configure services Manage users Edit customer info Monthly invoice Reconciliation file Invoice history Service requests Service health Choice of provisioning & admin tools
Portal Experiences APIs PowerShell Partner Center for provisioning, ordering Service admin portals for service configuration Programmatic access CSP API Azure AD GRAPH API Automate and customize via scripting User and license management Not for ordering or commerce functions Partner Center capabilities
Provision new customers Subscription provisioning seat based services Subscription provisioning consumption services Office, EMS, Intune, Azure and CRM Online available for order Admin-on-behalf-of (AOBO) Multi-Channel Multi-CSP Partner View your bill, past invoices, download .csv 2-tier add a Reseller-of-record Service request via link to service admin portals Service health via link to service admin portals User and delegated admin role management Easy access to CSP content & resources CSP CREST API access Advisor Partners can create DAP requests Partner Center demo Multi-channel capabilities in CSP
Customer Tenant Direct Open Advisor EA CSP Enables partners toprovision CSPsubscriptions for acustomer that has anexisting tenant Enables CSP subscriptionsto co-exist with othersubscriptions on the sametenant (e.g. purchaseddirectly from Microsoft,via Open, EA) Customer retains fullcontrol over their existingsubscriptions Multi-CSP Partner capabilities in CSP
Customer Tenant CSP #1 CSP #2 CSP #n A customer has anexisting CSP Partner thatsold it Office 365 and thenestablishes a relationshipwith a second CSP Partnerthat specializes inMicrosoft Azure. A customer has anexisting CSP Partner thatsold it Exchange Online,and then establishes arelationship with a secondCSP Partner thatspecializes in SharePointOnline. A customer has anexisting CSP Partner thatspecializes in DynamicsCRM Online, and thenestablishes a relationshipwith a second CSP Partnerthat specializes inMicrosoft Azure. CSP APIs overview What are the CSP APIs? Partner Center API All Approved CSP Partners
Same capabilities as Partner Center but for ordering system integration. Get App ID keys from Partner Center Partner Center API Any approved CSP Partner can use API integration as an alternative to the Partner Center All Approved CSP Partners Simple APIs based on REST, JSON, & OAuth. Similar to Azure AD Graph and Office 365 APIs. Simple REST APIs Available for ordering Office 356, Azure, Dynamics CRM Online, and Enterprise Mobility Suite All Microsoft Commercial Cloud Services APIs for working with your customers and for processing orders Customers and Orders Generally available since July 13, 2015 Available now Options for CSP partner integration
Hire third party developer Code against CSP APIs Use Partner Center web site Panel providers prebuilt portal Use a distributors portal Onboarding development sizing
Customers Microsoft CSP REST APIs Customers Your customer portal Your ordering system Your billing system Customer invoice Your REST interface module Developer skills required: REST, JSON, Azure Active Directory OAuth, HTTP Network Trace What support can I get from Microsoft?
Online (links in references) MSDN API documentation. Sample code in C# and Java. First time CSP API video walkthrough. MSDN Forums for CSP APIs. MSDN Forums FAQ. Onboarding Help MPN support benefits and incidents can be used to get help. Premier contract support hours can be used to get help. Advanced Support for Partners. Break/Fix Support In which something was working in production, you changed nothing, and it stopped working. Available from the Office Portal. Choose Partner Center. Foundational concepts REST and JSON?
JWT This is what you send to Microsoft for the create customer API Method URL REST Headers JSON Request Body POST https://api.cp.microsoft.com/86fd35b9-38a2-413c-a9b1-33bb75f3bd4f/customers/create-reseller-customer HTTP/1.1 Content-Type: application/json Accept: application/json api-version: x-ms-correlation-id: 1fad6fc5-f2d3-4b13-a295-1a98d792e6e9 x-ms-tracking-id: 842b fc-48f6-a169-00a8d3aa4c47 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ijd3YzlFTnVyWGZaRWt5VkxfZkM5cTZpeHNMRSJ9.eyJpc3MiOiJ1cm46Y3BzdHMiLCJhdWQiOiJ1cm46Y3BzdmM6Y2E6ODZmZDM1YjktMzhhMi00MTNjLWE5YjEtMzNiYjc1ZjNiZDRmIiwibmJmIjoxNDM4MTAzMjI4LCJleHAiOjE0MzgxMDQxMjgsIm5hbWVpZCI6IjkwNDg1QTVFLUQyRTMtNDU5RC04NzFFLUM1OTVBQzhBMEUzNiIsInVuaXF1ZV9uYW1lIjoiVGhpcmRQYXJ0eUFwcCIsIklkZW50aWZpZXJJZCI6Ijg2ZmQzNWI5LTM4YTItNDEzYy1hOWIxLTMzYmI3NWYzYmQ0ZiIsImFwcGlkIjoiNGIzZGFkOWMtZTUxNi00NzZmLTlmOTItMmQ3OWRhOWZjYmNmIiwiQ2FpZCI6Ijg2ZmQzNWI5LTM4YTItNDEzYy1hOWIxLTMzYmI3NWYzYmQ0ZiIsIklzVGVzdCI6IlRydWUiLCJyb2xlIjoiU2FsZXNBZ2VudCIsImFjdG9ydCI6ImV5SjBlWEFpT2lKS1YxUWlMQ0poYkdjaU9pSnViMjVsSW4wLmV5SmhkV1FpT2lKb2RIUndjem92TDJkeVlYQm9MbmRwYm1SdmQzTXVibVYwSWl3aWFYTnpJam9pYUhSMGNITTZMeTl6ZEhNdWQybHVaRzkzY3k1dVpYUXZPRFptWkRNMVlqa3RNemhoTWkwME1UTmpMV0U1WWpFdE16TmlZamMxWmpOaVpEUm1MeUlzSW1saGRDSTZJakUwTXpneE1ESTRNalFpTENKdVltWWlPaUl4TkRNNE1UQXlPREkwSWl3aVpYaHdJam9pTVRRek9ERXdOamN5TkNJc0luWmxjaUk2SWpFdU1DSXNJblJwWkNJNklqZzJabVF6TldJNUxUTTRZVEl0TkRFell5MWhPV0l4TFRNelltSTNOV1l6WW1RMFppSXNJbTlwWkNJNklqTm1ZekUzT1Rsa0xXWTNZalV0TkRsaFl5MDVZekl3TFdGbU1qVTVNRGt4WkRnNU9DSXNJbWxrY0NJNkltaDBkSEJ6T2k4dmMzUnpMbmRwYm1SdmQzTXVibVYwTHpnMlptUXpOV0k1TFRNNFlUSXROREV6WXkxaE9XSXhMVE16WW1JM05XWXpZbVEwWmk4aUxDSmhjSEJwWkdGamNpSTZJakVpTENKdVlXMWxhV1FpT2lJNU1EUTROVUUxUlMxRU1rVXpMVFExT1VRdE9EY3hSUzFETlRrMVFVTTRRVEJGTXpZaUxDSjFibWx4ZFdWZmJtRnRaU0k2SWxSb2FYSmtVR0Z5ZEhsQmNIQWlMQ0poY0hCcFpDSTZJalJpTTJSaFpEbGpMV1UxTVRZdE5EYzJaaTA1WmpreUxUSmtOemxrWVRsbVkySmpaaUlzSWtsa1pXNTBhV1pwWlhKSlpDSTZJamcyWm1Rek5XSTVMVE00WVRJdE5ERXpZeTFoT1dJeExUTXpZbUkzTldZelltUTBaaUlzSW5KdmJHVWlPaUpCWTNSUGJsSmxjMlZzYkdWeVEyaGhibTVsYkNKOS4ifQ.DB8R9-3tZf-0mCFYdUOw7by58FEql0i39SE5pay4A_3E7Oe40JjPRYztBDdyhV3JX6y4w2r0JLlMr0Re4_dtznEQ7RnzPly2JRGlLzeZi-t56KGw_RKfR4QfgsU5WzbGz3QkQMmEME4K-XDkEEe2hYxjZYTQWgNoIV8x8L18peQD8FTV0g__3TDviMcKM5rG9d4VGUFf_-1UrQ8Eu_PiiNrBYz2oiuU2vAtS47_Tfbr6qixYKhlZy8F_6OV3PbbZoGfO-e6XBm5kimnFA91pAy_9dNaBkVwNslhVRsDwWjFW2n8376umrtZyH44q4LAHNCP7QouLNg2i1Xw73sFwMg Host: api.cp.microsoft.com Content-Length: 394 Expect: 100-continue Microsoft Way","address_line2":"","city":"Redmond","region":"WA","postal_code":"98052","country":"US"}}} OAUTH Bearer Token JSON Request Body What is a REST response This is what you get back from Microsoft for that same API JSON Response Body HTTP Headers HTTP/ Created Cache-Control: no-cache Content-Length: 1747 Content-Type: application/json; charset=utf-8 Server: Microsoft-IIS/7.5 api-version: Access-Control-Allow-Methods: GET, POST, PUT X-AspNet-Version: X-Powered-By: ASP.NET x-ms-correlation-id: 1fad6fc5-f2d3-4b13-a295-1a98d792e6e9 x-ms-session-id: b7c64d5c-063d-47c cfc3c4116f12 X-Server: DM2OS1OMSQUEW01 Strict-Transport-Security: max-age= ; includeSubDomains Date: Tue, 28 Jul :08:18 GMT Microsoft Way","address_line2":"","address_line3":"","postal_code":"98052","first_name":"Paul","last_name":"Andrew","links":{"self":{"href":" e2-ad8d-c9a213755c29/addresses/7b3b5c23-374d-4a31-b163-c87b52296ed3","method":"GET"}},"object_type":"Address"},"etag":" ","links":{"self":{"href":" e2-ad8d-c9a213755c29/profiles/b28b75a6-cccf-42b2-98a0-caca0b9e9182","method":"GET"},"snapshot":{"href":" e2-ad8d-c9a213755c29/profiles/b28b75a6-cccf-42b2-98a0-caca0b9e9182/1","method":"GET"},"update":{"href":" e2-ad8d-c9a213755c29/profiles/b28b75a6-cccf-42b2-98a0-caca0b9e9182","method":"PUT"}},"object_type":"OrganizationProfile"}} HTTP Response JSON Response Foundational concepts sign-in accounts
Work or School Account (Org ID) Microsoft Account (MSA, Live ID) Application Identifier Identified by User Principal Name. Customer owns whole directory and can sync. Used for partner tenant and customer tenant. Consumer account (no directory). Used for Azure subscription which can manage multiple Org ID directories. App ID and Client Secret Used for an application to sign-in Not associated with a user. Can have Admin group memberships Commonly obtainedthrough an Office 365subscription. Also a separate account forthe CSP to sign-in to thePartner Center web site foraccess to their integrationsandbox. Not used to sign-in usingthe CSP APIs. Used to sign-in to Azureportal (RDFE). Cannot be used to sign-into the PartnerCenter website. Used in code to sign-in asan application. Foundational concepts tenants and tokens
Identified by long 1,982 character tokens. Your code signs-in with an App Id, part of the Org ID directory with permissions. Azure AD authentication token Identified by Tenant ID (tid) GUIDs. EG: 86fd35b9-38a2-413c-a9b1-33bb75f3bd4f Get this from Graph API calls or the Partner Center portal. The Customer Account ID is also a GUID. The partner tenant and the customer tenant Sign in with an App Id (a GUID) and ClientSecret (48 characters) to get the sign-in token The sign-in token needs replaced with a tokenthat has sales agent permissions Also need a token with specific customeraccount permissions to access those Review the MSDN docs for which token to usewhen Each Azure AD tenant has a tenant id (tid) Your reseller account, your TIP account,each customer, any 2 tier resellers Each Azure AD tenant id has acorresponding Customer Account ID (cid) This is used for commerce activities This doesnt change so can be cached DEMO: Setup Sandbox and App ID First sign-in as an accredited CSP partner
https://partnercenter.microsoft.com Go to Account settings Get the reseller Microsoft ID Create the Integration Sandbox
Test in Production (TIP) Create the API App ID and Client Secret Integration Sandbox (TIP)
Purpose You get 1 integration sandbox account per CSP reseller Create it from Account Settings in your production tenant on Partner Center For testing of your API integration Not for load testing, acceptance testing, unit testing Limitations 25 customers, create 25 subscriptions, up to 25 seats Each Azure subscription can have up to $200 per month You can delete TIP customers to avoid the 25 limit Can create a new customer immediately The deleted customer will exist for a further 3 days You cannot takeover a production customer with TIP APIs for CSPs: Crest and Graph
CREST (CSP) APIs Customer Order Azure AD Graph APIs User management Group management Authentication Manage customer accounts Create orders for a customer Get list of customers subscriptions Convert subscriptions Suspend of reactivate subscriptions Monitor stream of subscription events Lookup a customers Azure usage For looking up directory dataincluding customer contracts in adirectory, users in a directory andadmin groups. APIs for CSPs: Usage and ARM
Azure Resource Usage & Rate Card Individual customermetered usage Retail prices per DC, percurrency Aggregate in CREST API Azure Resource Manager (ARM) Provision services in bulk Provides near real time dataabout usage per Azure meter.Multiplying the meter usage bythe rate card cost for that metershows the cost. Enables programmaticprovisioning of a group of Azureresources in one operation. Whichcan then be repeated. APIs for CSPs: Service Management
Azure Service Management Office 365 Service Management Manage services Edit mailbox properties Create SharePoint sites Service incident reporting REST and PowerShell APIs toprovision resources in an Azuresubscription REST APIs for access to ExchangeOnline, SharePoint Online andSkype for Business at Next Steps & Resources How to join CSP If you are interested in participating in the Cloud Solution Provider Program, please use the following guidance: For 1Tier and 2Tier level participation: please reviewthe resources provided on the CSP MPN Resource Portal or reach out to your local Microsoft representative For 2Tier reseller: please reach out to one of the approved 2Tier partners on the list provided viathe link on this page to understand requirements After evaluating the above, you can also go toto express your interest in joining the program. Partner Center resources
Partner Center Overview Presentation Partner Center Overview Video Partner Center FAQs Multi-Channel FAQs Multi-CSP Partner FAQs Partner Center Roles Descriptions CSP Invoice Operations Guide CSP API resources CREST Commerce APIs
Intro onboarding video: https://youtu.be/8RRssasC2Ys MSDN Documentation: MSDN Forums: https://social.msdn.microsoft.com/Forums/en-US/home?forum=partnercenterapi Code samples: https://github.com/PartnerCenterSamples/Commerce-API-DotNet/ FAQ: https://www.microsoft.com/en-us/download/details.aspx?id=48218 Azure AD Graph APIs Documentation: https://msdn.microsoft.com/en-us/library/azure/hh aspx Forums: https://social.msdn.microsoft.com/Forums/azure/en-US/home?forum=WindowsAzureAD Code samples: https://github.com/AzureADSamples/ConsoleApp-GraphAPI-DotNet Office 365 tenant administration APIs Documentation: Azure Rate card and Usage APIs Documentation: https://msdn.microsoft.com/en-us/library/azure/mt aspx Sample code: https://github.com/Azure/BillingCodeSamples Azure service provisioning APIs Documentation: https://msdn.microsoft.com/en-us/library/azure/dn aspx Network monitoring tools Microsoft Message Analyzer https://technet.microsoft.com/en-us/library/jj aspx Telerik Fiddler POSTMAN https://www.getpostman.com 4/26/2017 2:33 PM 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.