How to Delete Routing Destination

Warning: Beta software This API is in beta stage and may be subject to change. Therefore, we do not recommend using this in production.

Interested in this feature? Please reach out to mobility-services-developer@cisco.com

DeleteRoutingDestination is a method that allows you to delete a routing destination.

This method is part of the Number Portability API and belongs to the RoutingDestinatinService.

Prerequisites

  1. An OAuth 2.0 client
  2. A client access token

Code Dependencies

curl -sL https://github.com/working-group-two/wgtwoapis/releases/latest/download/mobility.binpb --output mobility.binpb
<dependency>
  <groupId>com.wgtwo.api.v1.grpc</groupId>
  <artifactId>number_portability</artifactId>
  <version>1.10.1</version>
</dependency>

Code

The examples below demonstrate how to use the DeleteRoutingDestination function.

You can test our APIs without authorization by targeting sandbox.api.shamrock.wgtwo.com instead of api.{region}.wgtwo.com and removing any authorization from the request/code sample.


#!/usr/bin/env bash
grpcurl \
  --protoset mobility.binpb \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -d '
  {
      "destinationId": "f8f31775-c245-4d0b-9f18-3e74eea9d430"
  }
  ' \
  sandbox.api.shamrock.wgtwo.com:443 \
  wgtwo.number_portability.v1.RoutingDestinationService/DeleteDestination

package com.example.numberPortability

import com.wgtwo.api.v1.number_portability.RoutingDestinationServiceGrpcKt
import com.wgtwo.api.v1.number_portability.deleteDestinationRequest
import io.grpc.ManagedChannelBuilder
import io.grpc.Status
import io.grpc.StatusException
import kotlinx.coroutines.runBlocking
import kotlin.test.assertFailsWith

private val channel = ManagedChannelBuilder.forAddress("sandbox.api.shamrock.wgtwo.com", 443).build()
private val stub = RoutingDestinationServiceGrpcKt.RoutingDestinationServiceCoroutineStub(channel)

fun main() = runBlocking {
    val deleteDestinationRequest = deleteDestinationRequest {
        destinationId = "f8f31775-c245-4d0b-9f18-3e74eea9d430"
    }
    println("deleteDestinationRequest:
$deleteDestinationRequest")

    val deleteDestinationResponse = stub.deleteDestination(deleteDestinationRequest)
    println("deleteDestinationResponse:
$deleteDestinationResponse")

    val deleteDestinationRequestWithoutId = deleteDestinationRequest {
        // id not set
    }
    println("deleteDestinationRequestWithoutId:
$deleteDestinationRequestWithoutId")

    val exception = assertFailsWith<StatusException>("exception is not a StatusException") {
        stub.deleteDestination(deleteDestinationRequestWithoutId)
    }

    assert(exception.status.code == Status.INVALID_ARGUMENT.code) {
        "status code is not INVALID_ARGUMENT: ${exception.status.code}"
    }
}

Example Results Success

{}

Example Results Error

ERROR:
  Code: InvalidArgument
  Message: Missing destination id
Status code: INVALID_ARGUMENT
Status description: Missing destination id

Read More