Get Developer app management API is not case insensitive

sujnana
Participant IV

There is one issue in Get developer app management service. In apigee, name is case insensitive. However the Get Developer App call is case sensitive.

For example I will create developer app with name test-app-demo.

curl -X POST --header "Content-Type: application/json" --header "Authorization: Basic <base64 cred>" -d "{
 \"name\" : \"test-app-demo\",
 \"apiProducts\": [ \"test-xml-to-json-api-product\" ],
 
 \"attributes\" : [ 
  {
   \"name\" : \"DisplayName\",
   \"value\" : \"test-app-demo\"
  }, 
  {
   \"name\" : \"testattr\",
   \"value\" : \"123\"
  }
  
 ]
}" "https://api.enterprise.apigee.com/v1/organizations/<org>/developers/helloworld@apigee.com/apps"

This creates developer app called test-app-demo. The get developer app call with same name is working.

curl -X GET --header "Authorization: Basic <base64 app>" "https://api.enterprise.apigee.com/v1/organizations/<org>/developers/helloworld@apigee.com/apps/test-app-demo"

The above call returns app details.

However, if I change the app name to upper case or partly upper case, the get developer app call is returning 404 error.

curl -X GET --header "Authorization: Basic <base64 app>" "https://api.enterprise.apigee.com/v1/organizations/<org>/developers/helloworld@apigee.com/apps/TEST-app-demo"

The above call is returning 404.

But, create developer is not allowing to create same name upper case or partially upper case.

curl -X POST --header "Content-Type: application/json" --header "Authorization: Basic <base64 cred>" -d "{
 \"name\" : \"TEST-app-demo\",
 \"apiProducts\": [ \"test-xml-to-json-api-product\" ],
 
 \"attributes\" : [ 
  {
   \"name\" : \"DisplayName\",
   \"value\" : \"TEST-app-demo\"
  }, 
  {
   \"name\" : \"testattr\",
   \"value\" : \"123\"
  }
  
 ]
}" "https://api.enterprise.apigee.com/v1/organizations/<org>/developers/helloworld@apigee.com/apps"

The above call returns response with 409 error code. Is this bug?

Note: Above curl commands are copied from postman

0 3 205
3 REPLIES 3

It may be a bug. It seems that there is inconsistent validation of the developer app names in different APIs.

Thanks for reporting it. To avoid the problem, use a name that is case-insensitively unique.

We have federated team structure. As there is no option to apply rules at apigee layer (like filter pattern) for configurations, enforcing this rule is difficult. We will raise a support ticket.

@Dino-at-Google, did you get the fix to this issue. we are also getting this issue in other management api when checking a user in a role

curl -X GET {{mgmtsvr}}/v1/organizations/{{org}}/userroles/Devops/users/<case-sensitive-user-email>