Greatest practices for CodeIgniter API improvement

Trendy internet functions in-built CodeIgniter require API help. This text touches on these finest practices for API improvement in CodeIgniter. These are normal pointers and maintain true for all variations of CodeIgniter framework.

Use Standing Codes

you should use standing codes in responses of request. This may helpfull for customers to identified whether or not the request is successfull or fail. A very good API ought to at all times return the correct HTTP error code that appropriately explains the character of the precise error that has occurred. For instance:

"status_code": "401 Unauthorized",
"error": "invalid_token",
"error_description": "Entry token expired: fhsgjfgs777868sdf868."

Use nouns as an alternative of verbs

Naming conventation in apis are essential and may save a variety of confusion. Use noun on the finish of api path it’s because our HTTP request technique already has the verb.

DO: http://www.instance.com/prospects/create

DON’T: http://www.instance.com/createcustomers

Use filtering, looking and Pagination

Someday API response information is giant. Then retrieving information from database could be very sluggish. For this goal we use pagination. In filtering use a singular question parameter for retrieve the outcome. Generally primary filters aren’t adequate and also you want the ability of full textual content search then use looking in APIs. For instance:

DO: http://localhost:8080/relaxation/api

DON’T: http://localhost:8080/relaxation/api?restrict=20&offset=0

As an alternative of restrict primarily based pagination, Its a finest follow to implement cursor-based pagination. All the great corporations are transferring in direction of cursor-based pagination for giant datasets the place its essential to not lose any information throughout updates. Test the hyperlink on the finish of this text to be taught cursor-based pagination.

Safety

Safety is essential if you construct apis. For API administration and safety use api_key that could be a single token string. Fundamental Authentication that could be a two token string resolution (username and password) Essential to validate the enter fields. Set up trusted identities after which management entry to providers and assets by utilizing tokens assigned to these identities. At the least implement the precept of privilege. Individuals shouldn’t be capable to entry extra info that they requested. For instance a standard consumer shouldn’t be in a position to entry info of one other consumer. In addition they shouldn’t be in a position to entry information of admins.

Use charge limiting

Setting a threshold/throttling for an api. Different requests will likely be rejected. For instance 30 requests per minute per account. Throttling can stop denial of service assaults. A leaky bucket algorithm will be carried out to this impact.

Optimizing for Human Readers

APIs have to be simple to know and use. Make the most of clear and straightforward naming programs with no abbreviation.
Make the most of nouns fairly than verbs in HTTP strategies. Have simple to understood and easy descriptions for error administration together with standardized error codes.

API Documentation

API documentation ought to present details about the authorization, request/response examples, attainable response standing codes, pagination and out there limits or throttling. It needs to be right, up-to-date and straightforward to know.

Working with Specialists

Lastly, it helps in case you work with individuals who have performed this a number of dozen time and know find out how to develop CodeIgniter APIs with finest practices in-built. Allow us to make the additional effort for you.

Helpful Hyperlinks