Get hands-on experience with 20+ free Google Cloud products and $300 in free credit for new customers.

Apigee X deployment fails when using custom formats for String in Open API spec

Hello,

Context - In our enterprise, we have built a CI/CD pipeline based on Gitlab to read the OAS file and create a proxy bundle and deploy to Apigee X using Apigeelint. We push the OAS file into /resources folder.

One of the Open API Specs had a custom format "number" for type "string" like below.

properties:
    amount:
      type: string
      format: number

While deploying, I'm getting the below error. 

"details": [ { "@type": "type.googleapis.com/edge.configstore.bundle.BadBundle", "violations": [ { "filename": "apiproxy/resources/oas/tenant_oas.yaml", "description": "invalid components: unsupported 'format' value \"number\"" } ] },

For now, I have temporarily changed the OAS file to remove the offending format. Our tenants are arguing that the format for a string type has the flexibility to be any user-defined value as per the Spec and they are right! Any idea when this will be fixed?

0 1 61
1 REPLY 1

I think you should open a support ticket. This is a known issue.  You can reference b/299466321 . 

The workaround for now is to remove that format from your OAS document. (as you have done)

I agree with your tenants!