Api >

Service Portal REST API

GET returns requested Conference Service's conference options
Given I am authenticated as customer K0002
and there is a Conference Service with:
  • Id 123
  • display name Conference Service
  • extension 35
  • language de
  • musicIfSingleUser false
When I send /api/customers/K0002/targets/conference-services/123
Then I should receive HTTP/1.1 200 OK with following body:
{
  "href": "/api/customers/K0002/targets/conference-services/123",
  "links": [{
    "rel": "inboundTrunkNumbers",
    "href": "/api/customers/K0002/targets/conference-services/123/inbound-trunk-numbers"
  }],
  "data": [{
    "name": "displayName",
    "value": "Conference Service"
  }, {
    "name": "extensionNumber",
    "value": "35"
  }, {
    "name": "language",
    "value": "de"
  }, {
    "name": "musicIfSingleUser",
    "value": false
  }]
}
GET returns requested Conference Service's user options
Given I am authenticated as customer K0002
and there is a Conference Service with:
  • Id 123
  • userPIN 3535
  • userSignalJoinLeave false
  • userAnnounceJoinsLeaves false
  • userAnnounceUserCount true
  • permanentlyMute false
When I send /api/customers/K0002/targets/conference-services/123
Then I should receive HTTP/1.1 200 OK with following body:
{
  "href": "/api/customers/K0002/targets/conference-services/123",
  "data": [{
    "name": "userPIN",
    "value": "3535"
  }, {
    "name": "userSignalJoinLeave",
    "value": false
  }, {
    "name": "userAnnounceJoinsLeaves",
    "value": false
  }, {
    "name": "userAnnounceUserCount",
    "value": true
  }, {
    "name": "permanentlyMute",
    "value": false
  }]
}
GET returns requested Conference Service's admin options
Given I am authenticated as customer K0002
and there is a Conference Service with:
  • Id 123
  • adminPIN 3737
  • adminSignalJoinLeave false
  • adminAnnounceJoinsLeaves false
  • adminAnnounceUserCount false
  • closeAtExit true
  • lockUntilEntry true
When I send /api/customers/K0002/targets/conference-services/123
Then I should receive HTTP/1.1 200 OK with following body:
{
  "href": "/api/customers/K0002/targets/conference-services/123",
  "data": [{
    "name": "adminPIN",
    "value": "3737"
  }, {
    "name": "adminSignalJoinLeave",
    "value": false
  }, {
    "name": "adminAnnounceJoinsLeaves",
    "value": false
  }, {
    "name": "adminAnnounceUserCount",
    "value": false
  }, {
    "name": "closeAtExit",
    "value": true
  }, {
    "name": "lockUntilEntry",
    "value": true
  }]
}
GET returns 404 if requested Conference Service does not exist
Given I am authenticated as customer K0002
and there is no Conference Service with Id 404
When I send /api/customers/K0002/targets/conference-services/404 Then I should receive HTTP/1.1 404 Not Found with following body:
{
  "title": "Conference Service not found",
  "detail": "Conference Service with Id 404 not found",
  "described_by": "http://api.nfon.net/probs/conference-service-not-found"
}
Missing Customer
Given I am authenticated as Admin
When I send /api/customers/K404/targets/conference-services/123
Then I should receive HTTP/1.1 404 Not Found
And Content-Type header should be application/api-problem+json
with following body:
{
  "title": "Customer not found",
  "detail": "Customer with identifier K404 has not been found",
  "described_by": "http://api.nfon.net/probs/customer-not-found"
}
GET returns 403 if Customer is trying to retrieve other Customer's Conference Service
Given I am authenticated as K0003
and there is a Conference Service with Id 123 When I send /api/customers/K0002/targets/conference-services/123 Then I should receive HTTP/1.1 403 Forbidden with following body:
{
  "title": "Access forbidden",
  "detail": "Access denied to [Customer] with id [K0002]",
  "described_by": "http://api.nfon.net/probs/invalid-authorization"
}
System Integrator cannot access Conference Service of Customer that does not belong to him
Given I am authenticated as System Integrator S0002
When I send /api/customers/K0003/targets/conference-services/123
Then I should receive HTTP/1.1 403 Forbidden
with following body
{
  "title": "Access forbidden",
  "detail": "Access denied to [Customer] with id [K0003]",
  "described_by": "http://api.nfon.net/probs/invalid-authorization"
}
Operator cannot access Conference Service of Customer that does not belong to him
Given I am authenticated as Operator C0002
When I send /api/customers/K0003/targets/conference-services/123
Then I should receive HTTP/1.1 403 Forbidden
with following body
{
  "title": "Access forbidden",
  "detail": "Access denied to [Customer] with id [K0003]",
  "described_by": "http://api.nfon.net/probs/invalid-authorization"
}