---
title: "POST /speakers"
method: POST
path: "/speakers"
tags: ["Speakers"]
---

# POST /speakers

`POST /speakers`

By using this endpoint you can create a speaker.

## Request body

- ApiAddSpeaker — Device specific settings that can be configured on the speakers. This is accessible for shared speakers?
  - `mainCredentials` object — The credentials that will used for communicating with the devices with the main API of the device, which generally is its ONVIF API.
    - `username` string, required — Username to use when authenticating with the device
    - `password` string — Password to use when authenticating with the device. Password will not be returned in the GET apis. However, POST and PATCH will take the password field.
  - `adminCredentials` AdminCredentials — Credentials that allow the bearer to access the camera's internal UI. This UI, available via the [tunneling endpoint](https://developer.eagleeyenetworks.com/reference/putcameratunnel), can be used to apply certain advanced configurations.
    - `username` string — Username to use when authenticating with the device
    - `password` string — Password to use when authenticating with the device
  - `sipCredentials` object — The credentials that will be used to authenticate SIP sessions.
    - `username` string, required — Username to use when authenticating with the device
    - `password` string — Password to use when authenticating with the device. Password will not be returned in the GET apis. However, POST and PATCH will take the password field.
  - `sipPort` integer — Port to which SIP requests should be sent from the bridge. Applicable for sip speakers and defaults to 5060
  - `registrationStrategy` 'discoveredSip', required — Indicates how the speaker was added to the system
  - `name` string, required — User-defined name for the device.
  - `tags` string[]
  - `bridgeId` string, required
  - `guid` string, uuid, required
  - `locationId` string, nullable — ID Of the location.

## Response `201`

Speaker added

- ApiSpeakerMain
  - `id` string, required
  - `accountId` string, required
  - `name` string, required — User-defined name for the device.
  - `bridgeId` string, required
  - `locationId` string, nullable — ID Of the location.
  - `isShared` boolean

## Other responses

- `400` — The supplied object is invalid. Error detail will contain the validation error.
- `401` — You are not authenticated. Please authenticate and try again.
- `403` — You have no permission to access the specified resource.
- `404` — Referenced resource could not be found.
- `409` — There was a conflict while trying to perform your request. See error details for more information.
- `500` — Something went wrong in the server. Please try again.

---

[API](https://skmtc.net/eagleeyenetworks/apis/devices.md) · [All operations](https://skmtc.net/eagleeyenetworks/apis/devices/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/eagleeyenetworks/devices/revisions/df57313de545/schema)
