From e6c7c2f3d683a5c15e2be15563e2f52d8aed91ed Mon Sep 17 00:00:00 2001 From: turret Date: Thu, 18 Jan 2024 18:52:27 -0600 Subject: api: extensify api api --- include/api.h | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 include/api.h (limited to 'include') diff --git a/include/api.h b/include/api.h new file mode 100644 index 0000000..a70d447 --- /dev/null +++ b/include/api.h @@ -0,0 +1,35 @@ +#ifndef __API_H +#define __API_H +#define _Nullable + +typedef enum { + HTTP_GET, + HTTP_POST, + HTTP_PUT, + HTTP_DELETE, + HTTP_PATCH +} HTTPMethod; + +#ifndef __API_INTERNAL + +int http_request(HTTPMethod method, char *url, + struct curl_slist *_Nullable headers, char *writebuf, size_t bufsiz); + +int api_request(HTTPMethod method, char * url, + struct curl_slist *_Nullable headers, char *writebuf, size_t bufsiz); + +#endif + +#define http_get(...) http_request(HTTP_GET, __VA_ARGS__) +#define http_post(...) http_request(HTTP_POST, __VA_ARGS__) +#define http_put(...) http_request(HTTP_PUT, __VA_ARGS__) +#define http_delete(...) http_request(HTTP_DELETE, __VA_ARGS__) +#define http_patch(...) http_request(HTTP_PATCH, __VA_ARGS__) + +#define api_get(...) api_request(HTTP_GET, __VA_ARGS__) +#define api_post(...) api_request(HTTP_POST, __VA_ARGS__) +#define api_put(...) api_request(HTTP_PUT, __VA_ARGS__) +#define api_delete(...) api_request(HTTP_DELETE, __VA_ARGS__) +#define api_patch(...) api_request(HTTP_PATCH, __VA_ARGS__) + +#endif -- cgit v1.2.3