---
title: "POST /v1/{+parent}/discoveryClients"
method: POST
path: "/v1/{+parent}/discoveryClients"
tags: ["projects"]
---

# POST /v1/{+parent}/discoveryClients

`POST /v1/{+parent}/discoveryClients`

Creates a new discovery client.

## Path parameters

- `parent` string, required

## Query parameters

- `discoveryClientId` string
- `requestId` string

## Request body

- DiscoveryClient — Represents an installed Migration Center Discovery Client instance.
  - `updateTime` string, google-datetime — Output only. Time when the discovery client was last updated. This value is not updated by heartbeats, to view the last heartbeat time please refer to the `heartbeat_time` field.
  - `displayName` string — Optional. Free text display name. Maximum length is 63 characters.
  - `serviceAccount` string — Required. Service account used by the discovery client for various operation.
  - `heartbeatTime` string, google-datetime — Output only. Last heartbeat time. Healthy clients are expected to send heartbeats regularly (normally every few minutes).
  - `state` 'STATE_UNSPECIFIED' | 'ACTIVE' | 'OFFLINE' | 'DEGRADED' | 'EXPIRED' — Output only. Current state of the discovery client.
  - `createTime` string, google-datetime — Output only. Time when the discovery client was first created.
  - `signalsEndpoint` string — Output only. This field is intended for internal use.
  - `source` string — Required. Immutable. Full name of the source object associated with this discovery client.
  - `description` string — Optional. Free text description. Maximum length is 1000 characters.
  - `ttl` string, google-duration — Optional. Input only. Client time-to-live. If specified, the backend will not accept new frames after this time. This field is input only. The derived expiration time is provided as output through the `expire_time` field.
  - `name` string — Output only. Identifier. Full name of this discovery client.
  - `version` string — Output only. Client version, as reported in recent heartbeat.
  - `errors` Status[] — Output only. Errors affecting client functionality.
    - `code` integer — The status code, which should be an enum value of google.rpc.Code.
    - `message` string — A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
    - `details` object[] — A list of messages that carry the error details. There is a common set of message types for APIs to use.
  - `expireTime` string, google-datetime — Optional. Client expiration time in UTC. If specified, the backend will not accept new frames after this time.
  - `labels` object — Optional. Labels as key value pairs.

## Response `200`

Successful response

---

[API](https://skmtc.dev/google/apis/migrationcenter.md) · [All operations](https://skmtc.dev/google/apis/migrationcenter/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/google/migrationcenter/revisions/2a8b4eea0432/schema)
