Skip to main content

SDK for interacting with the Microsoft Partner Center

Project description

MS Partner Tools

SonarCloud

PyPI

Wrapper for the Microsoft Partner Center REST API.

Supports Python 3.8+.

Currently, only a few Partner Center interactions are supported:

  • Enrolling devices in Autopilot on your customers tenant
  • Listing customers
  • Listing devices in a batch group

Installation

pip install ms-partner-tools

or clone the repo and run python setup.py install.

App Registration

In the Azure AD portal, create a new App registration.

Under API permissions, add the Microsoft Partner Center user_impersonation permission. You can search for it under "APIs my organization uses". Please note that this only supports delegated permissions, not application permissions.

The device code flow requires the "Allow public client flows" option to be turned on. This needs a client secret.

If the interactive auth flow is used, you must add the "Mobile and desktop applications" platform and set the "Redirect URI" to http://localhost:8400.

Sample Usage

CLI

You must first run partnertools-cli configure to set up the authentication details (from the app registration).

Registering a device

$ partnertools-cli register-device
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code <CODE> to authenticate.
? Please select a customer: Test Customer - (00000000-0000-0000-0000-000000000000)
? Please select a device type: Surface Laptop 4 - Microsoft Corporation
? Please enter the serial number: 000000 

Device was added

SDK

Listing customers

import os
from partner_tools.auth import DeviceCode
from partner_tools import PartnerTools

client = PartnerTools(auth_info=DeviceCode(
    client_id=os.getenv('CLIENT_ID'),
    client_secret=os.getenv('CLIENT_SECRET'),
    tenant_id=os.getenv('TENANT_ID')
))

customers = client.customer.get_customers()

for customer in customers:
    print(f'Customer: {customer["companyProfile"]["companyName"]}, Tenant ID: {customer["id"]}')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

ms_partner_tools-0.1.1-py3.8.egg (31.9 kB view details)

Uploaded Source

ms_partner_tools-0.1.1-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

Details for the file ms_partner_tools-0.1.1-py3.8.egg.

File metadata

  • Download URL: ms_partner_tools-0.1.1-py3.8.egg
  • Upload date:
  • Size: 31.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for ms_partner_tools-0.1.1-py3.8.egg
Algorithm Hash digest
SHA256 8fd7fcadd8c1c26ed3f41be34e2e903195606e21c34141b520221ad18f0585fc
MD5 b4525f0dfcda7b20320c86fc71424bf2
BLAKE2b-256 99127ce8c91e4672bf4026f9ff3dac197153a3d51d88aff6f0444a6448032ab3

See more details on using hashes here.

File details

Details for the file ms_partner_tools-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for ms_partner_tools-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 56c0162bb78ae1b2ebef4f67f57c6f7656ae200a4d41a1a4187f3a9cfebd11a9
MD5 deb5a714a7c18a7c173321ba336da647
BLAKE2b-256 11891a74f28a905767835afcbd5ad16d7bd45045340fdab9a882e690eb9f172d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page