This page provides links to convenient ways to access the
SDM API.

## SDM API client libraries

The SDM API is built on HTTP and JSON, so any standard HTTP client can
send requests to it and parse the responses.

However, instead of creating HTTP requests and parsing responses manually, you
may want to use the Google APIs client libraries. The client libraries provide
better language integration, improved security, and support for making calls
that require user authorization.

### Dart

Get the latest [SDM API client library for Dart](https://pub.dev/packages/googleapis). Read the
client library's [developer's guide](https://pub.dev/documentation/googleapis/latest/).

### Go

Get the latest [SDM API client library for Go](https://github.com/google/google-api-go-client). Read the
client library's [developer's guide](https://github.com/google/google-api-go-client).

### Java

<br />


This page contains information about getting started with the Smart Device Management API by using
the Google API Client Library for Java. For more information, see the following documentation:

- Browse the [Javadoc reference for the Smart Device Management API](https://googleapis.dev/java/google-api-services-smartdevicemanagement/latest/).
- Read the [Developer's Guide for the Google API Client Library for Java](https://github.com/googleapis/google-api-java-client/).

## Add the client library to your project

Select your build environment (Maven or Gradle) from the following tabs:


Maven

Add the following to your `pom.xml` file:
<iframe src="https://developers.devsite.google/frame/nest/device-access/api/libraries_2cc5ccc0a75d9d3429dcf37c6da9b56d6f21c60c86af764464ef91cbeb4efca4.frame" class="framebox inherit-locale " allow="clipboard-write https://developers.devsite.google" allowfullscreen is-upgraded></iframe>

See [all versions available on the Maven Central Repository](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22com.google.apis%22%20AND%20a%3A%22google-api-services-smartdevicemanagement%22).
Gradle

Add the following to your `build.gradle` file:
<iframe src="https://developers.devsite.google/frame/nest/device-access/api/libraries_6304b3e885c036389c0d7da3b9aff5aac5f7cdcd3f7d7a2cdb8c795e66eecd56.frame" class="framebox inherit-locale " allow="clipboard-write https://developers.devsite.google" allowfullscreen is-upgraded></iframe>

See [all versions available on the Maven Central Repository](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22com.google.apis%22%20AND%20a%3A%22google-api-services-smartdevicemanagement%22).

### JavaScript

Read the client library's [developer's guide](https://developers.google.com/api-client-library/javascript/start/start-js).

### .NET


This page contains information about getting started with the Smart Device Management API by using
the Google API Client Library for .NET. For more information, see the following documentation:

- Browse the [.NET reference documentation for the Smart Device Management API](https://googleapis.dev/dotnet/Google.Apis/latest/api/Google.Apis.html).
- Read the [Developer's guide for the Google API Client Library for .NET](https://developers.google.com/api-client-library/dotnet/get_started).

## Downloading the library

Install the NuGet package:
[Google.Apis](https://www.nuget.org/packages/Google.Apis).

### Node.js

Get the latest [SDM API client library for Node.js](https://github.com/google/google-api-nodejs-client/). Read the
client library's [developer's guide](https://github.com/google/google-api-nodejs-client/).

### Obj-C

Get the latest [SDM API client library for Objective-C](https://github.com/google/google-api-objectivec-client-for-rest). Read the
client library's [developer's guide](https://github.com/google/google-api-objectivec-client-for-rest/wiki).

### PHP

Get the latest [SDM API client library for PHP](https://github.com/google/google-api-php-client). Read the
client library's [developer's guide](https://developers.google.com/api-client-library/php).

### Python


This page contains information about getting started with the Smart Device Management API by using
the Google API Client Library for Python (v1/v2). For more information, see the following documentation:

- Browse the [PyDoc reference for the Smart Device Management API](https://googleapis.github.io/google-api-python-client/docs/dyn/smartdevicemanagement_v1.html).
- Read the [Developer's guide for the Google API Client Library for Python (v1/v2)](https://developers.google.com/api-client-library/python).

## System requirements

- Operating systems:
  - Linux
  - macOS X
  - Windows
- [The v1 client library requires Python 2.7 or higher. The v2 client library requires 3.7 or higher.](http://python.org/download/)

## Install the client library

You can either use a package manager or manually download and install the Python client library:

### Managed install

Use pip or setuptools to manage your installation. You might
need to run `sudo` first.

- [pip](http://pypi.python.org/pypi/pip) (preferred):

  ```
  pip install --upgrade google-api-python-client
  ```
- [Setuptools](http://pypi.python.org/pypi/setuptools):

  ```
  easy_install --upgrade google-api-python-client
  ```

### Manual install

1. [Download the latest client
   library for Python](https://pypi.python.org/pypi/google-api-python-client/).
2. Unpack the code.
3. Install:

   ```
   python setup.py install
   ```

### App Engine

Because the Python client libraries aren't installed in the
[App Engine Python runtime environment](https://cloud.google.com/appengine/docs/python/),
you must [copy them into your application](https://cloud.google.com/appengine/docs/python/tools/libraries27#vendoring) just like third-party libraries.

<br />

### Ruby


This page contains information about getting started with the Smart Device Management API by using
the Google API Client Library for Ruby. For more information, see the following documentation:

- Read the [Get started guide for the Google API Client Library for Ruby](https://developers.google.com/api-client-library/ruby/start/get_started).

## Install the `google-api-client` gem


Depending on your system, you might need to prepend these commands with `sudo`.


If you haven't installed the Google API Client Library for Ruby before, install by using `RubyGems`:

```
gem install google-api-client
```

<br />


If you already have the gem installed, update to the latest version:

```
gem update -y google-api-client
```

<br />

## Get started with the Google API Client Library for Ruby


To learn how to make your first request, see the
[Get started guide](https://developers.google.com/api-client-library/ruby/start/get_started).

<br />