Conference bridges
Conference bridges are dial-in meeting rooms. You can manage bridges, see who is in a call and pull a bridge's call history.
In the Key Admin this is the Conference bridges switch. Read lets a key call the GET endpoints below. Write lets it call the ones that change data.
List conference bridges
/domains/~/conferencesReturns the conference bridges on the account.
Read Key Admin switch: Conference bridges, Read. Read only keys also work.
Example request
curl -X GET "https://api.noodlevoice.com/ns-api/v2/domains/~/conferences" \
-H "Authorization: Bearer $NOODLEVOICE_KEY"const res = await fetch("https://api.noodlevoice.com/ns-api/v2/domains/~/conferences", {
method: "GET",
headers: {
Authorization: "Bearer " + process.env.NOODLEVOICE_KEY,
},
});
const data = await res.json();import os, requests
r = requests.get(
"https://api.noodlevoice.com/ns-api/v2/domains/~/conferences",
headers={"Authorization": "Bearer " + os.environ["NOODLEVOICE_KEY"]},
)
print(r.status_code, r.json())Response 200
[
{
"aor": "string",
"owner_domain": "string",
"owner": "string",
"owner_uid": "string",
"leader_pin": "string",
"speaker_pin": "string",
"participants_pin": "string",
"num_participants": "string",
"...": "24 more fields"
}
]Response fields (32)
| Field | Type | Notes |
|---|---|---|
aor | string | |
owner_domain | string | |
owner | string | |
owner_uid | string | |
leader_pin | string | |
speaker_pin | string | |
participants_pin | string | |
num_participants | string | |
max_participants | string | |
time_begin | string | |
time_end | string | |
gmt_offset | string | |
activate | string | |
audio_dir | string | |
annc_join | string | |
annc_depart | string | |
dial_plan | string | |
name | string | |
save_participants | string | |
request_name | string | |
lock_part | string | |
annc_part | string | |
mute | string | |
trigger_by | string | |
leader_required | string | |
quorum | string | |
SipSipProxy | string | |
SipSipAuthUser | string | |
SipSipAuthKey | string | |
RegRequired | string | |
promptAudioId | string | |
confOptions | string |
Count conference bridges
/domains/~/conferences/countReturns how many conference bridges there are on the account, as {"total": n}.
Read Key Admin switch: Conference bridges, Read. Read only keys also work.
Example request
curl -X GET "https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/count" \
-H "Authorization: Bearer $NOODLEVOICE_KEY"const res = await fetch("https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/count", {
method: "GET",
headers: {
Authorization: "Bearer " + process.env.NOODLEVOICE_KEY,
},
});
const data = await res.json();import os, requests
r = requests.get(
"https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/count",
headers={"Authorization": "Bearer " + os.environ["NOODLEVOICE_KEY"]},
)
print(r.status_code, r.json())Response 200
{
"total": 1
}Response fields (1)
| Field | Type | Notes |
|---|---|---|
total | integer | How many items matched. |
Other responses: 400, 401, 403, 404. See errors.
Get a conference bridge
/domains/~/conferences/{conference}Returns one conference bridge by its ID.
Read Key Admin switch: Conference bridges, Read. Read only keys also work.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
conference required | path | string | The conference bridge ID. |
Example request
curl -X GET "https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000" \
-H "Authorization: Bearer $NOODLEVOICE_KEY"const res = await fetch("https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000", {
method: "GET",
headers: {
Authorization: "Bearer " + process.env.NOODLEVOICE_KEY,
},
});
const data = await res.json();import os, requests
r = requests.get(
"https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000",
headers={"Authorization": "Bearer " + os.environ["NOODLEVOICE_KEY"]},
)
print(r.status_code, r.json())Response 200
[
{
"aor": "string",
"owner_domain": "string",
"owner": "string",
"owner_uid": "string",
"leader_pin": "string",
"speaker_pin": "string",
"participants_pin": "string",
"num_participants": "string",
"...": "24 more fields"
}
]Response fields (32)
| Field | Type | Notes |
|---|---|---|
aor | string | |
owner_domain | string | |
owner | string | |
owner_uid | string | |
leader_pin | string | |
speaker_pin | string | |
participants_pin | string | |
num_participants | string | |
max_participants | string | |
time_begin | string | |
time_end | string | |
gmt_offset | string | |
activate | string | |
audio_dir | string | |
annc_join | string | |
annc_depart | string | |
dial_plan | string | |
name | string | |
save_participants | string | |
request_name | string | |
lock_part | string | |
annc_part | string | |
mute | string | |
trigger_by | string | |
leader_required | string | |
quorum | string | |
SipSipProxy | string | |
SipSipAuthUser | string | |
SipSipAuthKey | string | |
RegRequired | string | |
promptAudioId | string | |
confOptions | string |
Other responses: 400, 401, 404. See errors.
Get a conference's call history
/domains/~/conferences/{conference}/cdrReturns the call records for one conference bridge.
Read Key Admin switch: Conference bridges, Read. Read only keys also work.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
conference required | path | string | The conference bridge ID. |
from | query | string | Start of the range. |
to | query | string | End of the range. |
include_participants | query | string | Set to yes to include the people in each meeting. |
Example request
curl -X GET "https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/cdr" \
-H "Authorization: Bearer $NOODLEVOICE_KEY"const res = await fetch("https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/cdr", {
method: "GET",
headers: {
Authorization: "Bearer " + process.env.NOODLEVOICE_KEY,
},
});
const data = await res.json();import os, requests
r = requests.get(
"https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/cdr",
headers={"Authorization": "Bearer " + os.environ["NOODLEVOICE_KEY"]},
)
print(r.status_code, r.json())Response 200
{
"cdr_conference": [
{}
]
}Response fields (26)
| Field | Type | Notes |
|---|---|---|
cdr_conference | array of object | |
cdr_conference[].domain | string | The account the item belongs to. |
cdr_conference[].conference | string | |
cdr_conference[].conf_name | string | |
cdr_conference[].conf_id | string | |
cdr_conference[].time_begin | string | |
cdr_conference[].time_end | string | |
cdr_conference[].duration | string | |
cdr_conference[].participant_count | integer | |
cdr_conference[].participants | array of object | The people in it, as a list of numbers or user IDs. |
cdr_conference[].participants[].domain | string | The account the item belongs to. |
cdr_conference[].participants[].conference | string | |
cdr_conference[].participants[].conf_id | string | |
cdr_conference[].participants[].participant | string | |
cdr_conference[].participants[].name | string | |
cdr_conference[].participants[].user | string | The user ID (extension). |
cdr_conference[].participants[].host | string | |
cdr_conference[].participants[].contact | string | |
cdr_conference[].participants[].call_id | string | |
cdr_conference[].participants[].received_from | string | |
cdr_conference[].participants[].role | string | |
cdr_conference[].participants[].direction | string | |
cdr_conference[].participants[].time_begin | string | |
cdr_conference[].participants[].time_end | string | |
cdr_conference[].participants[].duration | string | |
cdr_conference[].url_session_report | string |
List participants in a conference bridge
/domains/~/conferences/{conference}/participantsReturns the participants in one conference bridge.
Read Key Admin switch: Conference bridges, Read. Read only keys also work.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
conference required | path | string | The conference bridge ID. |
Example request
curl -X GET "https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants" \
-H "Authorization: Bearer $NOODLEVOICE_KEY"const res = await fetch("https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants", {
method: "GET",
headers: {
Authorization: "Bearer " + process.env.NOODLEVOICE_KEY,
},
});
const data = await res.json();import os, requests
r = requests.get(
"https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants",
headers={"Authorization": "Bearer " + os.environ["NOODLEVOICE_KEY"]},
)
print(r.status_code, r.json())Response 200
[
{
"participant_match": "string",
"conference_match": "string",
"name": "Front Desk",
"aor_user": "string",
"aor_host": "string",
"contact": "string",
"received_from": "string",
"user_agent": "string",
"...": "16 more fields"
}
]Response fields (24)
| Field | Type | Notes |
|---|---|---|
participant_match | string | |
conference_match | string | |
name | string | |
aor_user | string | |
aor_host | string | |
contact | string | |
received_from | string | |
user_agent | string | |
hostname | string | |
pin | string | |
time_begin | string | |
leader | string | |
auto_ans | string | |
auto_con | string | |
auto_dsc | string | |
rcv_only | string | |
keep | string | |
mode | string | |
rate | string | |
gain_tx | string | |
gain_rx | string | |
audioId | string | |
media | string | |
ts | string |
Other responses: 400, 401, 404. See errors.
Create a conference bridge
/domains/~/conferencesAdds a new conference bridge on the account.
Write Key Admin switch: Conference bridges, Write.
Example request
curl -X POST "https://api.noodlevoice.com/ns-api/v2/domains/~/conferences" \
-H "Authorization: Bearer $NOODLEVOICE_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"aor": "string",
"owner_domain": "string",
"owner": "string"
}
]'const res = await fetch("https://api.noodlevoice.com/ns-api/v2/domains/~/conferences", {
method: "POST",
headers: {
Authorization: "Bearer " + process.env.NOODLEVOICE_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify([
{
"aor": "string",
"owner_domain": "string",
"owner": "string"
}
]),
});
const data = await res.json();import os, requests
r = requests.post(
"https://api.noodlevoice.com/ns-api/v2/domains/~/conferences",
headers={"Authorization": "Bearer " + os.environ["NOODLEVOICE_KEY"]},
json=[
{
"aor": "string",
"owner_domain": "string",
"owner": "string"
}
],
)
print(r.status_code, r.json())Response 202
Returns a status code with a short JSON message.
Other responses: 400, 401, 404. See errors.
Add a participant to a conference
/domains/~/conferences/{conference}/participantsInvites or dials a participant into a conference bridge.
Write Key Admin switch: Conference bridges, Write.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
conference required | path | string | The conference bridge ID. |
Example request
curl -X POST "https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants" \
-H "Authorization: Bearer $NOODLEVOICE_KEY"const res = await fetch("https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants", {
method: "POST",
headers: {
Authorization: "Bearer " + process.env.NOODLEVOICE_KEY,
},
});
const data = await res.json();import os, requests
r = requests.post(
"https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants",
headers={"Authorization": "Bearer " + os.environ["NOODLEVOICE_KEY"]},
)
print(r.status_code, r.json())Response 202
{
"code": 1,
"message": "Hello from NoodleVoice"
}Response fields (2)
| Field | Type | Notes |
|---|---|---|
code | integer | HTTP status code. |
message | string | What happened, in words. |
Update a conference bridge
/domains/~/conferences/{conference}Changes an existing conference bridge. Send the fields you want to set in the body.
Write Key Admin switch: Conference bridges, Write.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
conference required | path | string | The conference bridge ID. |
Example request
curl -X PUT "https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000" \
-H "Authorization: Bearer $NOODLEVOICE_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"aor": "string",
"owner_domain": "string",
"owner": "string"
}
]'const res = await fetch("https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000", {
method: "PUT",
headers: {
Authorization: "Bearer " + process.env.NOODLEVOICE_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify([
{
"aor": "string",
"owner_domain": "string",
"owner": "string"
}
]),
});
const data = await res.json();import os, requests
r = requests.put(
"https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000",
headers={"Authorization": "Bearer " + os.environ["NOODLEVOICE_KEY"]},
json=[
{
"aor": "string",
"owner_domain": "string",
"owner": "string"
}
],
)
print(r.status_code, r.json())Response 202
{
"code": 1,
"message": "Hello from NoodleVoice"
}Response fields (2)
| Field | Type | Notes |
|---|---|---|
code | integer | HTTP status code. |
message | string | What happened, in words. |
Update a participant
/domains/~/conferences/{conference}/participants/{participant}Changes an existing participant. Send the fields you want to set in the body.
Write Key Admin switch: Conference bridges, Write.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
conference required | path | string | The conference bridge ID. |
participant required | path | string | The conference participant ID. |
Example request
curl -X PUT "https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants/{participant_id}" \
-H "Authorization: Bearer $NOODLEVOICE_KEY"const res = await fetch("https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants/{participant_id}", {
method: "PUT",
headers: {
Authorization: "Bearer " + process.env.NOODLEVOICE_KEY,
},
});
const data = await res.json();import os, requests
r = requests.put(
"https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants/{participant_id}",
headers={"Authorization": "Bearer " + os.environ["NOODLEVOICE_KEY"]},
)
print(r.status_code, r.json())Response 202
{
"code": 1,
"message": "Hello from NoodleVoice"
}Response fields (2)
| Field | Type | Notes |
|---|---|---|
code | integer | HTTP status code. |
message | string | What happened, in words. |
Delete a conference bridge
/domains/~/conferences/{conference}Removes a conference bridge. This can't be undone.
Write Key Admin switch: Conference bridges, Write.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
conference required | path | string | The conference bridge ID. |
Example request
curl -X DELETE "https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000" \
-H "Authorization: Bearer $NOODLEVOICE_KEY"const res = await fetch("https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000", {
method: "DELETE",
headers: {
Authorization: "Bearer " + process.env.NOODLEVOICE_KEY,
},
});
const data = await res.json();import os, requests
r = requests.delete(
"https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000",
headers={"Authorization": "Bearer " + os.environ["NOODLEVOICE_KEY"]},
)
print(r.status_code, r.json())Response 202
{
"code": 1,
"message": "Hello from NoodleVoice"
}Response fields (2)
| Field | Type | Notes |
|---|---|---|
code | integer | HTTP status code. |
message | string | What happened, in words. |
Remove a participant from a conference
/domains/~/conferences/{conference}/participants/{participant}Removes a participant. This can't be undone.
Write Key Admin switch: Conference bridges, Write.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
conference required | path | number | The conference bridge ID. |
participant required | path | number | The conference participant ID. |
Example request
curl -X DELETE "https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants/{participant_id}" \
-H "Authorization: Bearer $NOODLEVOICE_KEY"const res = await fetch("https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants/{participant_id}", {
method: "DELETE",
headers: {
Authorization: "Bearer " + process.env.NOODLEVOICE_KEY,
},
});
const data = await res.json();import os, requests
r = requests.delete(
"https://api.noodlevoice.com/ns-api/v2/domains/~/conferences/3000/participants/{participant_id}",
headers={"Authorization": "Bearer " + os.environ["NOODLEVOICE_KEY"]},
)
print(r.status_code, r.json())Response 202
{
"code": 1,
"message": "Hello from NoodleVoice"
}Response fields (2)
| Field | Type | Notes |
|---|---|---|
code | integer | HTTP status code. |
message | string | What happened, in words. |