openapi: 3.0.0 info: description: | This product confirms an outbound call is going to its intended number, and isn't being diverted to a potentially fraudulent one - giving customers more security and greater peace of mind. # Introduction This API lets API Consumers to check the status of the following attributes for the specified number: - call forward status when busy - call forward when no answer - call forward status when not reachable - forwarded To Voice mail version: 1.0.0 title: Call Divert Status Inquiry API servers: - url: https://apigw.omantel.om variables: apiRoot: default: https://apigw.omantel.om description: API root basePath: default: /call-divert/v1 description: Base path for the Call Divert Status inquiry service tags: - name: Call Divert/Forward Status Inquiry description: Operations to check Status for Call Divert/Forward paths: /call-divert/v1/call-divert-status/{mobileNumber}: get: security: - oAuth2ClientCredentials: [] tags: - Call Divert Status Inquiry summary: Get Call Divert status of the customer operationId: getCallDivertStatus description: Get Call Divert status of the customer parameters: - name: mobileNumber in: path description: Mobile number of Omantel customer with or without country code. example: 9250xxxx required: true schema: type: string responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/CallDivertStatus" example: { "conditionalSettings": [ { "callForwardType": "call-forward-when-busy", "forwardedToVoicemail": true, "registered": "yes", "status": "active" }, { "callForwardType": "call-forward-when-no-answer", "forwardedToVoicemail": true, "registered": "yes", "status": "active" }, { "callForwardType": "call-forward-when-not-reachable", "forwardedToVoicemail": false, "registered": "no", "status": "inactive" } ], "unconditionalSettings": { "forwardedToVoicemail": true, "registered": "yes", "status": "active" } } 401: $ref: "#/components/responses/Generic401" 403: $ref: "#/components/responses/Generic403" 404: $ref: "#/components/responses/Generic404" 500: $ref: "#/components/responses/Generic500" 503: $ref: "#/components/responses/Generic503" 504: $ref: "#/components/responses/Generic504" components: schemas: CallDivertStatus: type: object required: - conditionalSettings properties: conditionalSettings: $ref: "#/components/schemas/CallForwardSettingArray" unconditionalSettings: $ref: "#/components/schemas/UnconditionalCallForwardSetting" CallForwardSettingArray: description: A list of Call Forward Settings type: array items: $ref: "#/components/schemas/ConditionalCallForwardSetting" ConditionalCallForwardSetting: description: Call Forward/Divert setting type: object required: - callForwardType - registered - status - forwardedToVoicemail properties: callForwardType: type: string description: The type of call forward setting. enum: - call-forward-when-busy - call-forward-when-no-answer - call-forward-when-not-reachable registered: type: string description: Indicates whether the setting is registered or not. enum: - yes - no status: type: string description: Indicates whether the setting is active or not. enum: - active - inactive forwardedToVoicemail: type: boolean description: Indicates whether the call will be forwarded to voicemail, if not answered. UnconditionalCallForwardSetting: description: Unconditional Call Forward/Divert setting type: object required: - registered - status - forwardedToVoicemail properties: registered: type: string description: Indicates whether the setting is registered or not. enum: - yes - no status: type: string description: Indicates whether the setting is active or not. enum: - active - inactive forwardedToVoicemail: type: boolean description: Indicates whether the call will be forwarded to voicemail, if not answered. ErrorInfo: type: object required: - code - message - status properties: code: type: string description: Code given to this error status: type: string description: HTTP response status code message: type: string description: Detailed error description responses: Generic400: description: Invalid input content: application/json: schema: $ref: "#/components/schemas/ErrorInfo" example: code: INVALID_ARGUMENT status: 400 message: "Schema validation failed at ..." Generic401: description: Unauthorized content: application/json: schema: $ref: "#/components/schemas/ErrorInfo" example: code: UNAUTHORIZED status: 401 message: "Authorization failed: ..." Generic403: description: Forbidden content: application/json: schema: $ref: "#/components/schemas/ErrorInfo" example: code: FORBIDDEN status: 403 message: "Operation not allowed: ..." Generic404: description: Customer Not Found - check if specified mobile number is a valid Omantel customer content: application/json: schema: $ref: "#/components/schemas/ErrorInfo" example: code: NOT_FOUND status: 404 message: "The specified mobile number is not found" Generic409: description: Conflict content: application/json: schema: $ref: "#/components/schemas/ErrorInfo" example: status: 409 code: ALREADY_EXISTS message: "A specified resource duplicate entry found" Generic500: description: Server error content: application/json: schema: $ref: "#/components/schemas/ErrorInfo" example: code: SERVER_ERROR status: 500 message: "Server Error" Generic503: description: Service unavailable content: application/json: schema: $ref: "#/components/schemas/ErrorInfo" example: code: SERVICE_UNAVAILABLE status: 503 message: "Service unavailable" Generic504: description: Request timeout exceeded content: application/json: schema: $ref: "#/components/schemas/ErrorInfo" example: code: REQUEST_TIMEOUT_EXCEEDED status: 504 message: "Request timeout exceeded" securitySchemes: oAuth2ClientCredentials: type: oauth2 flows: clientCredentials: tokenUrl: https://apigw.omantel.om/oauth2/accesstoken scopes: {}