openapi: 3.2.0 info: title: SCG User API description: Synivere Communication Gateway API version: 1.0.0 servers: - url: https://api.syniverse.com/scg-external-api/api/v1 tags: - name: User paths: /applications/{Application_ID}/users: get: summary: Returns the list of Users tags: - User description: ' Returns the list of Users' parameters: - in: path name: Application_ID required: true description: The Application ID for this resource. schema: type: string - in: query name: id description: 'Customer Supplied User ID ' schema: type: string - in: query name: status description: 'The status of the MDN. The possible values are: INITIAL, VALIDATION PENDING, VALIDATED ' schema: type: string - in: query name: created_date description: 'The date the resource was created ' schema: type: string - in: query name: last_updated_date description: 'The data the resource was last changed ' schema: type: string responses: 200: description: Successful operation content: application/json: schema: type: object properties: list: type: array items: type: object properties: id: description: 'Customer Supplied User ID ' type: string user_address: description: 'human readable description of the sender address type ' type: string status: description: 'The status of the MDN. The possible values are: INITIAL, VALIDATION PENDING, VALIDATED ' type: string created_date: description: 'The date the resource was created ' type: string last_updated_date: description: 'The data the resource was last changed ' type: string version_number: description: 'An ascending version number of the resource. 1 upon creation, incremented by one for each modification done. Used to implement optimisitic locking ' type: integer 400: description: "Bad Request. The request could not be understood by the server.\n\n * **1023** - Indexed field too long - One of the values in the request exceeded the maximum allowed length\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 401: description: "Unauthorized. The request requires user authentication.\n\n * **401** - Unauthorized - Provided authentication data is invalid or insufficient\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 500: description: "Server Error. An error has been encountered while processing this request.\n\n * **500** - Server Error - Internal server error. Please report\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 402: description: "Payment Required.\n\n * **402** - Insufficient credit - The account does not have sufficeint funds for this operation\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 403: description: "Forbidden. The user does not have permission to access the specified resource.\n\n * **403** - Forbidden - Access to this resource is not allowed with the current application token\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 404: description: "Not found. The requested resource could not be found.\n\n * **404** - The Error message provides details about the missing resource - Requested resource not found\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 429: description: "Too Many Requests. The user has sent too many requests in a given amount of time.\n\n * **2004** - User sent too many requests - User sent too many requests.\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 409: description: "Conflict. The request could not be completed due to a conflict with the current state of the target resource.\n\n * **1001** - Stale data - Concurrent resource update. Refresh the resource and retry.\n * **1011** - The Error message provides details about the key being violated - Unique key constraint violated\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string /'applications/{Application_ID}/users/{User_ID}': get: summary: Returns the current version of the specified User. tags: - User description: ' Returns the current version of the specified User.' parameters: - in: path name: Application_ID required: true description: The Application ID for this resource. schema: type: string - in: path name: User_ID required: true description: The User ID for this resource. schema: type: string - in: query name: id description: 'Customer Supplied User ID ' schema: type: string - in: query name: status description: 'The status of the MDN. The possible values are: INITIAL, VALIDATION PENDING, VALIDATED ' schema: type: string - in: query name: created_date description: 'The date the resource was created ' schema: type: string - in: query name: last_updated_date description: 'The data the resource was last changed ' schema: type: string responses: 200: description: Successful operation content: application/json: schema: type: object properties: id: description: 'Customer Supplied User ID ' type: string user_address: description: 'human readable description of the sender address type ' type: string status: description: 'The status of the MDN. The possible values are: INITIAL, VALIDATION PENDING, VALIDATED ' type: string created_date: description: 'The date the resource was created ' type: string last_updated_date: description: 'The data the resource was last changed ' type: string version_number: description: 'An ascending version number of the resource. 1 upon creation, incremented by one for each modification done. Used to implement optimisitic locking ' type: integer 400: description: "Bad Request. The request could not be understood by the server.\n\n * **1023** - Indexed field too long - One of the values in the request exceeded the maximum allowed length\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 401: description: "Unauthorized. The request requires user authentication.\n\n * **401** - Unauthorized - Provided authentication data is invalid or insufficient\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 500: description: "Server Error. An error has been encountered while processing this request.\n\n * **500** - Server Error - Internal server error. Please report\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 402: description: "Payment Required.\n\n * **402** - Insufficient credit - The account does not have sufficeint funds for this operation\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 403: description: "Forbidden. The user does not have permission to access the specified resource.\n\n * **403** - Forbidden - Access to this resource is not allowed with the current application token\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 404: description: "Not found. The requested resource could not be found.\n\n * **404** - The Error message provides details about the missing resource - Requested resource not found\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 429: description: "Too Many Requests. The user has sent too many requests in a given amount of time.\n\n * **2004** - User sent too many requests - User sent too many requests.\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 409: description: "Conflict. The request could not be completed due to a conflict with the current state of the target resource.\n\n * **1001** - Stale data - Concurrent resource update. Refresh the resource and retry.\n * **1011** - The Error message provides details about the key being violated - Unique key constraint violated\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string delete: summary: Deletes the User resource with the specified ID tags: - User description: ' Deletes the User resource with the specified ID' parameters: - in: path name: Application_ID required: true description: The Application ID for this resource. schema: type: string - in: path name: User_ID required: true description: The User ID for this resource. schema: type: string responses: 204: description: Successful operation. No Content in reponse. 400: description: "Bad Request. The request could not be understood by the server.\n\n * **1023** - Indexed field too long - One of the values in the request exceeded the maximum allowed length\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 401: description: "Unauthorized. The request requires user authentication.\n\n * **401** - Unauthorized - Provided authentication data is invalid or insufficient\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 500: description: "Server Error. An error has been encountered while processing this request.\n\n * **500** - Server Error - Internal server error. Please report\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 402: description: "Payment Required.\n\n * **402** - Insufficient credit - The account does not have sufficeint funds for this operation\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 403: description: "Forbidden. The user does not have permission to access the specified resource.\n\n * **403** - Forbidden - Access to this resource is not allowed with the current application token\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 404: description: "Not found. The requested resource could not be found.\n\n * **404** - The Error message provides details about the missing resource - Requested resource not found\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 429: description: "Too Many Requests. The user has sent too many requests in a given amount of time.\n\n * **2004** - User sent too many requests - User sent too many requests.\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 409: description: "Conflict. The request could not be completed due to a conflict with the current state of the target resource.\n\n * **1001** - Stale data - Concurrent resource update. Refresh the resource and retry.\n * **1011** - The Error message provides details about the key being violated - Unique key constraint violated\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string /'applications/{Application_ID}/users/{User_ID}/associate': post: summary: Associates an user address (MDN or whatever) with the User. Also creates and sends a validation token to the end user. The post body will contain the user address (MDN, etc.). tags: - User description: ' Associates an user address (MDN or whatever) with the User. Also creates and sends a validation token to the end user. The post body will contain the user address (MDN, etc.).' parameters: - in: path name: Application_ID required: true description: The Application ID for this resource. schema: type: string - in: path name: User_ID required: true description: The User ID for this resource. schema: type: string responses: 204: description: Successful operation. No Content in reponse. 400: description: "Bad Request. The request could not be understood by the server.\n\n * **1023** - Indexed field too long - One of the values in the request exceeded the maximum allowed length\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 401: description: "Unauthorized. The request requires user authentication.\n\n * **401** - Unauthorized - Provided authentication data is invalid or insufficient\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 500: description: "Server Error. An error has been encountered while processing this request.\n\n * **500** - Server Error - Internal server error. Please report\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 402: description: "Payment Required.\n\n * **402** - Insufficient credit - The account does not have sufficeint funds for this operation\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 403: description: "Forbidden. The user does not have permission to access the specified resource.\n\n * **403** - Forbidden - Access to this resource is not allowed with the current application token\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 404: description: "Not found. The requested resource could not be found.\n\n * **404** - The Error message provides details about the missing resource - Requested resource not found\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 429: description: "Too Many Requests. The user has sent too many requests in a given amount of time.\n\n * **2004** - User sent too many requests - User sent too many requests.\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 409: description: "Conflict. The request could not be completed due to a conflict with the current state of the target resource.\n\n * **1001** - Stale data - Concurrent resource update. Refresh the resource and retry.\n * **1011** - The Error message provides details about the key being violated - Unique key constraint violated\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string requestBody: content: application/json: schema: type: object properties: display_name: description: 'If present overrides display_name in the application on per request basis. ' type: string delete: summary: Removes the association with this User. tags: - User description: ' Removes the association with this User.' parameters: - in: path name: Application_ID required: true description: The Application ID for this resource. schema: type: string - in: path name: User_ID required: true description: The User ID for this resource. schema: type: string responses: 204: description: Successful operation. No Content in reponse. 400: description: "Bad Request. The request could not be understood by the server.\n\n * **1023** - Indexed field too long - One of the values in the request exceeded the maximum allowed length\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 401: description: "Unauthorized. The request requires user authentication.\n\n * **401** - Unauthorized - Provided authentication data is invalid or insufficient\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 500: description: "Server Error. An error has been encountered while processing this request.\n\n * **500** - Server Error - Internal server error. Please report\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 402: description: "Payment Required.\n\n * **402** - Insufficient credit - The account does not have sufficeint funds for this operation\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 403: description: "Forbidden. The user does not have permission to access the specified resource.\n\n * **403** - Forbidden - Access to this resource is not allowed with the current application token\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 404: description: "Not found. The requested resource could not be found.\n\n * **404** - The Error message provides details about the missing resource - Requested resource not found\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 429: description: "Too Many Requests. The user has sent too many requests in a given amount of time.\n\n * **2004** - User sent too many requests - User sent too many requests.\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 409: description: "Conflict. The request could not be completed due to a conflict with the current state of the target resource.\n\n * **1001** - Stale data - Concurrent resource update. Refresh the resource and retry.\n * **1011** - The Error message provides details about the key being violated - Unique key constraint violated\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string /'applications/{Application_ID}/users/{User_ID}/validate': post: summary: Validates the association or login process using the last supplied validation code. The post body will contain the validation code. tags: - User description: ' Validates the association or login process using the last supplied validation code. The post body will contain the validation code.' parameters: - in: path name: Application_ID required: true description: The Application ID for this resource. schema: type: string - in: path name: User_ID required: true description: The User ID for this resource. schema: type: string responses: 204: description: Successful operation. No Content in reponse. 400: description: "Bad Request. The request could not be understood by the server.\n\n * **1023** - Indexed field too long - One of the values in the request exceeded the maximum allowed length\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 401: description: "Unauthorized. The request requires user authentication.\n\n * **401** - Unauthorized - Provided authentication data is invalid or insufficient\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 500: description: "Server Error. An error has been encountered while processing this request.\n\n * **500** - Server Error - Internal server error. Please report\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 402: description: "Payment Required.\n\n * **402** - Insufficient credit - The account does not have sufficeint funds for this operation\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 403: description: "Forbidden. The user does not have permission to access the specified resource.\n\n * **403** - Forbidden - Access to this resource is not allowed with the current application token\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 404: description: "Not found. The requested resource could not be found.\n\n * **404** - The Error message provides details about the missing resource - Requested resource not found\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 429: description: "Too Many Requests. The user has sent too many requests in a given amount of time.\n\n * **2004** - User sent too many requests - User sent too many requests.\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 409: description: "Conflict. The request could not be completed due to a conflict with the current state of the target resource.\n\n * **1001** - Stale data - Concurrent resource update. Refresh the resource and retry.\n * **1011** - The Error message provides details about the key being violated - Unique key constraint violated\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string /'applications/{Application_ID}/users/{User_ID}/login_start': post: summary: Creates and sends a MFA validation code to the end user. The POST body will contain the validation method with SMS as default. tags: - User description: ' Creates and sends a MFA validation code to the end user. The POST body will contain the validation method with SMS as default.' parameters: - in: path name: Application_ID required: true description: The Application ID for this resource. schema: type: string - in: path name: User_ID required: true description: The User ID for this resource. schema: type: string responses: 204: description: Successful operation. No Content in reponse. 400: description: "Bad Request. The request could not be understood by the server.\n\n * **1023** - Indexed field too long - One of the values in the request exceeded the maximum allowed length\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 401: description: "Unauthorized. The request requires user authentication.\n\n * **401** - Unauthorized - Provided authentication data is invalid or insufficient\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 500: description: "Server Error. An error has been encountered while processing this request.\n\n * **500** - Server Error - Internal server error. Please report\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 402: description: "Payment Required.\n\n * **402** - Insufficient credit - The account does not have sufficeint funds for this operation\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 403: description: "Forbidden. The user does not have permission to access the specified resource.\n\n * **403** - Forbidden - Access to this resource is not allowed with the current application token\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 404: description: "Not found. The requested resource could not be found.\n\n * **404** - The Error message provides details about the missing resource - Requested resource not found\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 429: description: "Too Many Requests. The user has sent too many requests in a given amount of time.\n\n * **2004** - User sent too many requests - User sent too many requests.\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string 409: description: "Conflict. The request could not be completed due to a conflict with the current state of the target resource.\n\n * **1001** - Stale data - Concurrent resource update. Refresh the resource and retry.\n * **1011** - The Error message provides details about the key being violated - Unique key constraint violated\n * **2003** - User MDN not validated - The user's MDN must have been validated. MDN should be validated before login.\n" content: application/json: schema: properties: error_code: description: The error code for this error. type: string error_description: description: A human readable description of the error. type: string requestBody: content: application/json: schema: type: object properties: display_name: description: 'If present overrides display_name in the application on per request basis. ' type: string