Appointments Extension

It’s an API extension to facilitate the creation of appointments


Parameters

Name In Type Required Description
org path string true tenant name
body body CreateAppointment true create appointment request.

Request body - instance of CreateAppointment

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
  "workOrderId": "MYSIM_391588",
  "category": "installation",
  "sellChannel": "mysim",
  "userRole": 10,
  "userCode": 12,
  "segment": "Residencial",
  "tenantId": 16,
  "customer": {
    "firstName": "Carmen",
    "middleName": "Pérez Medina",
    "documentNumber": "12345678T",
    "email": "test@pe.es",
    "phoneNumber": 686201221,
    "zipcode": 28036,
    "language": "es_ES"
  },
  "scoringResult": "RISK",
  "scoringLevel": 1,
  "validFor": {
    "endDateTime": "2020-08-18T15:00:00Z",
    "startDateTime": "2020-08-18T13:00:00Z"
  },
  "gescalId": "01000500059400011 001B",
  "duration": 80,
  "ctoPoleDB": "POSTE",
  "orderType": "Alta FTTH + VOIP",
  "connectionInstallationFlow": "INSTALA MM",
  "donorOperator": 833,
  "linkState": "V"
}
Name Type Required Description
workOrderId string true work order identifier. When the value is known for yoigo It is necessary to add letter “Y” in the orderWorkId, in entry parameters of iframe for example Y360852 for other CRM as MYSIM or HEOS (pepephone), the curent prefix already used as MYSIM_ , WD_ or PP.
category string true used to categorize the order from a business perspective that can be useful for the OM system.
sellChannel string true seller chanel.
userRole string true role played by the user.
userCode string false user code.
segment string true segment.
tenantId string false tenant identifier.
customer Customer true none
scoringResult string true it is the overall risk value of customer fraud. This value for TMS-YOIGO comes from ROVE interface, other CRM have differents fraud systems.
scoringLevel string true it is the risk level of customer fraud. This value for TMS-YOIGO comes from ROVE interface, other CRM have differents fraud systems.
validFor RangePeriod true RangePeriod reference
gescalId string false gescal 37 identifier.
duration string true calculation duration.
ctoPoleDB string false cto database response.
orderType string false order type.
connectionInstallationFlow string false connection installation flow.
donorOperator string false donor operator.
linkState string false link state.
Property Values
scoringResult one of [OK, RELEASE, RISK, A, R]
ctoPoleDB one of [POSTE, POSTE H, NO POSTE]

Request example

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37

curl -X POST https://appointments.sta.masstack.com/v1/orgs/{org}/ext/appointments \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: API_KEY" \
 --data-raw "{
  'workOrderId': 'MYSIM_391588',
  'category': 'installation',
  'sellChannel': 'mysim',
  'userRole': 10,
  'userCode': 12,
  'segment': 'Residencial',
  'tenantId': 16,
  'customer': {
    'firstName': 'Carmen',
    'middleName': 'Pérez Medina',
    'documentNumber': '12345678T',
    'email': 'test@pe.es',
    'phoneNumber': 686201221,
    'zipcode': 28036,
    'language': 'es_ES'
  },
  'scoringResult': 'RISK',
  'scoringLevel': 1,
  'validFor': {
    'endDateTime': '2020-08-18T15:00:00Z',
    'startDateTime': '2020-08-18T13:00:00Z'
  },
  'gescalId': '01000500059400011 001B',
  'duration': 80,
  'ctoPoleDB': 'POSTE',
  'orderType': 'Alta FTTH + VOIP',
  'connectionInstallationFlow': 'INSTALA MM',
  'donorOperator': 833,
  'linkState': 'V'
}" 

Responses

Code Meaning Description Schema
201 Created appointment created successfully. AppointmentResponse
400 Bad Request bad request BackendException
409 Conflict conflict BackendException

Parameters

Name In Type Required Description
org path string true tenant name
body body UpdateAppointment true update appointment request

Request body - instance of UpdateAppointment

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{
  "tenantId": 16,
  "workOrderId": "MYSIM_391588",
  "scoringResult": "RISK",
  "scoringLevel": 1,
  "sellChannel": "mysim",
  "userRole": 10,
  "userCode": 12,
  "segment": "RESIDENTIAL",
  "duration": 80,
  "customer": {
    "firstName": "Carmen",
    "middleName": "Pérez Medina",
    "documentNumber": "12345678T",
    "email": "test@pe.es",
    "phoneNumber": 686201221,
    "zipcode": 28036,
    "language": "es_ES"
  },
  "validFor": {
    "endDateTime": "2020-08-18T15:00:00Z",
    "startDateTime": "2020-08-18T13:00:00Z"
  },
  "ctoPoleDB": "POSTE",
  "orderType": "Alta FTTH + VOIP",
  "connectionInstallationFlow": "INSTALA MM",
  "donorOperator": 833,
  "linkState": "V"
}
Name Type Required Description
tenantId string false tenant identifier.
workOrderId string true work order identifier. When the value is known for yoigo It is necessary to add letter “Y” in the orderWorkId, in entry parameters of iframe for example Y360852 for other CRM as MYSIM or HEOS (pepephone), the curent prefix already used as MYSIM_ , WD_ or PP.
scoringResult string false scoring result.
scoringLevel string false it is the risk level of customer fraud. This value for TMS-YOIGO comes from ROVE interface, other CRM have differents fraud systems.
sellChannel string false sell channel.
userRole string false user role.
userCode string false user code.
segment string false apointment segment.
duration string true calculation duration.
customer Customer false none
validFor RangePeriod true RangePeriod reference
ctoPoleDB string false cto database response.
orderType string false order type.
connectionInstallationFlow string false connection installation flow.
donorOperator string false donor operator.
linkState string false link state.
Property Values
scoringResult one of [OK, RELEASE, RISK, A, R]
ctoPoleDB one of [POSTE, POSTE H, NO POSTE]

Request example

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

curl -X PUT https://appointments.sta.masstack.com/v1/orgs/{org}/ext/appointments \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: API_KEY" \
 --data-raw "{
  'tenantId': 16,
  'workOrderId': 'MYSIM_391588',
  'scoringResult': 'RISK',
  'scoringLevel': 1,
  'sellChannel': 'mysim',
  'userRole': 10,
  'userCode': 12,
  'segment': 'RESIDENTIAL',
  'duration': 80,
  'customer': {
    'firstName': 'Carmen',
    'middleName': 'Pérez Medina',
    'documentNumber': '12345678T',
    'email': 'test@pe.es',
    'phoneNumber': 686201221,
    'zipcode': 28036,
    'language': 'es_ES'
  },
  'validFor': {
    'endDateTime': '2020-08-18T15:00:00Z',
    'startDateTime': '2020-08-18T13:00:00Z'
  },
  'ctoPoleDB': 'POSTE',
  'orderType': 'Alta FTTH + VOIP',
  'connectionInstallationFlow': 'INSTALA MM',
  'donorOperator': 833,
  'linkState': 'V'
}" 

Responses

Code Meaning Description Schema
200 OK appointment updated successfully. AppointmentResponse
400 Bad Request bad request BackendException
404 Not Found Not found. None

Parameters

Name In Type Required Description
org path string true tenant name
body body SearchTimeSlots true send to search time slots request

Request body - instance of SearchTimeSlots

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
{
  "action": "MODIFICARCITA",
  "scoringLevel": 0,
  "scoringResult": "OK",
  "segment": "RESIDENTIAL",
  "gescal": "28000010025000026         002D",
  "category": "installation",
  "orderWorkId": "MYSIM_123456",
  "accessToken": "147hytr",
  "relatedParty": {
    "tenant": "masmovil",
    "donorOperator": "00008",
    "creationDate": "2019-08-24T14:15:22Z",
    "territoryOwner": "BIDOR01",
    "connectionInstallationFlow": "INSTALA_TESA",
    "linkState": "V",
    "userCode": "Code01",
    "userProfile": "Profile01",
    "originAccessIsExternal": false
  },
  "productSpecification": {
    "schema": "id:Alta FTTH + VOIP__AGILETV"
  },
  "contact": {
    "emailAddress": "joao.parreira@rupeal.com",
    "postCode": 28033,
    "contactNumber": 666666444
  },
  "customer": {
    "firstName": "Carmen",
    "midName": "María",
    "documentId": "11111111H",
    "documentIdCif": "11111111H",
    "language": "es_ES"
  }
}
Name Type Required Description
action string false the two actions that the component allows are NUEVACITA
scoringLevel string false It is the risk level of customer fraud
scoringResult string false It is the overall risk value of customer fraud. Allowed values are: OK, RELEASE, RISK, A, R
segment string false apointment segment.
gescal string false gescal 37.
category string true used to categorize the order from a business perspective that can be useful for the OM system.
orderWorkId string true order work identifier.
accessToken string false access token.
relatedParty RelatedPartyExt false none
productSpecification Product false none
contact Contact false none
customer CustomerExt false none

Request example

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42

curl -X POST https://appointments.sta.masstack.com/v1/orgs/{org}/ext/searchTimeSlots \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: API_KEY" \
 --data-raw "{
  'action': 'MODIFICARCITA',
  'scoringLevel': 0,
  'scoringResult': 'OK',
  'segment': 'RESIDENTIAL',
  'gescal': '28000010025000026         002D',
  'category': 'installation',
  'orderWorkId': 'MYSIM_123456',
  'accessToken': '147hytr',
  'relatedParty': {
    'tenant': 'masmovil',
    'donorOperator': '00008',
    'creationDate': '2019-08-24T14:15:22Z',
    'territoryOwner': 'BIDOR01',
    'connectionInstallationFlow': 'INSTALA_TESA',
    'linkState': 'V',
    'userCode': 'Code01',
    'userProfile': 'Profile01',
    'originAccessIsExternal': false
  },
  'productSpecification': {
    'schema': 'id:Alta FTTH + VOIP__AGILETV'
  },
  'contact': {
    'emailAddress': 'joao.parreira@rupeal.com',
    'postCode': 28033,
    'contactNumber': 666666444
  },
  'customer': {
    'firstName': 'Carmen',
    'midName': 'María',
    'documentId': '11111111H',
    'documentIdCif': '11111111H',
    'language': 'es_ES'
  }
}" 

Responses

Code Meaning Description Schema
200 OK search time slots response SearchsTimeSlotsResponse
400 Bad Request bad request BackendException

Parameters

Name In Type Required Description
org path string true tenant name
body body CreateTaskAppointment true create task appointment request

Request body - instance of CreateTaskAppointment

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
{
  "workOrderId": "MYSIM_391588",
  "sellChannel": "mysim",
  "userRole": 10,
  "segment": "Residencial",
  "tenantId": 16,
  "customer": {
    "firstName": "Carmen",
    "middleName": "Pérez Medina",
    "documentNumber": "12345678T",
    "email": "test@pe.es",
    "phoneNumber": 686201221,
    "zipcode": 28036,
    "language": "es_ES"
  },
  "scoringResult": "RISK",
  "scoringLevel": 1,
  "startDate": "2019-08-24",
  "endDate": "2019-08-24",
  "timeZone": "TIME_ZONE_1",
  "gescalId": "01000500059400011 001B",
  "note": [
    {
      "author": "string",
      "date": "2019-08-24T14:15:22Z",
      "id": "string",
      "text": "string"
    }
  ],
  "duration": 80,
  "ctoPoleDB": "POSTE",
  "orderType": "Alta FTTH + VOIP",
  "connectionInstallationFlow": "INSTALA MM",
  "donorOperator": 833,
  "linkState": "V"
}
Name Type Required Description
workOrderId string true work order identifier. When the value is known for yoigo It is necessary to add letter “Y” in the orderWorkId, in entry parameters of iframe for example Y360852 for other CRM as MYSIM or HEOS (pepephone), the curent prefix already used as MYSIM_ , WD_ or PP
sellChannel string true sell channel.
userRole string true user role.
segment string true segment.
tenantId string false tenant identifier.
customer Customer true none
scoringResult string true scoring result.
scoringLevel string true it is the risk level of customer fraud. This value for TMS-YOIGO comes from ROVE interface, other CRM have differents fraud systems.
startDate string(date) false start date. The format is yyyy-MM-dd.
endDate string(date) false end date. The format is yyyy-MM-dd.
timeZone string false time zone.
gescalId string false gescal 37 identifier.
note [Note] true item to highlight certain aspects of the appointment.
duration string false calculation duration.
ctoPoleDB string false cto database response.
orderType string false order type.
connectionInstallationFlow string false connection installation flow.
donorOperator string false donor operator.
linkState string false link state.
Property Values
scoringResult one of [OK, RELEASE, RISK, A, R]
timeZone one of [TIME_ZONE_1, TIME_ZONE_2, TIME_ZONE_3, TIME_ZONE_4]
ctoPoleDB one of [POSTE, POSTE H, NO POSTE]

Request example

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42

curl -X POST https://appointments.sta.masstack.com/v1/orgs/{org}/ext/task \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: API_KEY" \
 --data-raw "{
  'workOrderId': 'MYSIM_391588',
  'sellChannel': 'mysim',
  'userRole': 10,
  'segment': 'Residencial',
  'tenantId': 16,
  'customer': {
    'firstName': 'Carmen',
    'middleName': 'Pérez Medina',
    'documentNumber': '12345678T',
    'email': 'test@pe.es',
    'phoneNumber': 686201221,
    'zipcode': 28036,
    'language': 'es_ES'
  },
  'scoringResult': 'RISK',
  'scoringLevel': 1,
  'startDate': '2019-08-24',
  'endDate': '2019-08-24',
  'timeZone': 'TIME_ZONE_1',
  'gescalId': '01000500059400011 001B',
  'note': [
    {
      'author': 'string',
      'date': '2019-08-24T14:15:22Z',
      'id': 'string',
      'text': 'string'
    }
  ],
  'duration': 80,
  'ctoPoleDB': 'POSTE',
  'orderType': 'Alta FTTH + VOIP',
  'connectionInstallationFlow': 'INSTALA MM',
  'donorOperator': 833,
  'linkState': 'V'
}" 

Responses

Code Meaning Description Schema
200 OK Deployment province response AppointmentResponse
400 Bad Request bad request BackendException

Endpoints

Appointments

    Appointments Extension