What are some best practices for the api proxies and products?

Not applicable

After playing with Apigee a bit more, it seems that there's quite a bit of freedom for naming and configuring products, urls and proxies. What are some best practices for Apigee Edge? Do you use lower or upper case for naming proxies and products? What best practices do you have for using proxy policies? Do you tend to use pre-flow / post-flow or proxy vs target endpoints? Do you always have a public proxy that all developers can register, but require approval for the other products? What are some design patterns that you use when working with Apigee Edge? Do you try to use the API to keep track of changes and store things in revision control?

Solved Solved
0 1 1,446
1 ACCEPTED SOLUTION

Dear @José Cedeño ,

What are some best practices for Apigee Edge ?

Do you use lower or upper case for naming proxies and products ?

  • I would suggest camelcase or lowercase with underscores.
  • Remember, API Proxies & Products are case sensitive
  • I have seen many implemented same using underscores, lower case, upper case, camel cases
  • What ever you choose, be consistent. If you are naming using camel case then name all of them in camel case.

Do you tend to use pre-flow / post-flow or proxy / target endpoints?

  • It depends on what is your requirement and what kind of policies you are attaching to flows.
  • Remember, Some of the policies are attached only to certain flows and endpoints.
  • Check Policy documentation to figure out where exactly to use them.

Do you always have a public proxy that all developers can register, but require approval for the other products ?

  • If i understand correctly, You might be talking about sandbox & live products where sandbox access can be given to all developers. Yes, It's a typical way how everyone offers their API service if you see any monetisation value associated with your APIs.

What are some design patterns that you use when working with Apigee Edge?

Do you try to use the API to keep track of changes and store things in revision control ?

  • Yes, It's always good to track revisions of APIs so that you can rollback if anything goes wrong.
  • Use Inbuilt Revision System in Apigee Edge UI
  • You can also deploy proxies from local to Apigee Edge so that you can gain much control when it comes to revision control. You can use version control tools like git or svn. For more details check here.

Cheers,

Anil Sagar

View solution in original post

1 REPLY 1

Dear @José Cedeño ,

What are some best practices for Apigee Edge ?

Do you use lower or upper case for naming proxies and products ?

  • I would suggest camelcase or lowercase with underscores.
  • Remember, API Proxies & Products are case sensitive
  • I have seen many implemented same using underscores, lower case, upper case, camel cases
  • What ever you choose, be consistent. If you are naming using camel case then name all of them in camel case.

Do you tend to use pre-flow / post-flow or proxy / target endpoints?

  • It depends on what is your requirement and what kind of policies you are attaching to flows.
  • Remember, Some of the policies are attached only to certain flows and endpoints.
  • Check Policy documentation to figure out where exactly to use them.

Do you always have a public proxy that all developers can register, but require approval for the other products ?

  • If i understand correctly, You might be talking about sandbox & live products where sandbox access can be given to all developers. Yes, It's a typical way how everyone offers their API service if you see any monetisation value associated with your APIs.

What are some design patterns that you use when working with Apigee Edge?

Do you try to use the API to keep track of changes and store things in revision control ?

  • Yes, It's always good to track revisions of APIs so that you can rollback if anything goes wrong.
  • Use Inbuilt Revision System in Apigee Edge UI
  • You can also deploy proxies from local to Apigee Edge so that you can gain much control when it comes to revision control. You can use version control tools like git or svn. For more details check here.

Cheers,

Anil Sagar