{"id":18494574,"url":"https://github.com/madeiradata/generic-api-platform","last_synced_at":"2026-04-24T12:02:47.455Z","repository":{"id":72813859,"uuid":"167813675","full_name":"MadeiraData/generic-api-platform","owner":"MadeiraData","description":"Generic SQL Server platform for configuring and running API requests via HTTP","archived":false,"fork":false,"pushed_at":"2019-02-05T14:46:33.000Z","size":7626,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-02T13:52:24.960Z","etag":null,"topics":["api-rest","api-wrapper","httpwebrequest","sql-clr","sql-server","sqlserver"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MadeiraData.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-01-27T13:45:45.000Z","updated_at":"2020-07-22T10:06:45.000Z","dependencies_parsed_at":"2023-02-26T17:15:30.203Z","dependency_job_id":null,"html_url":"https://github.com/MadeiraData/generic-api-platform","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MadeiraData/generic-api-platform","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MadeiraData%2Fgeneric-api-platform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MadeiraData%2Fgeneric-api-platform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MadeiraData%2Fgeneric-api-platform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MadeiraData%2Fgeneric-api-platform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MadeiraData","download_url":"https://codeload.github.com/MadeiraData/generic-api-platform/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MadeiraData%2Fgeneric-api-platform/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32222483,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T10:26:35.452Z","status":"ssl_error","status_checked_at":"2026-04-24T10:25:27.643Z","response_time":64,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api-rest","api-wrapper","httpwebrequest","sql-clr","sql-server","sqlserver"],"created_at":"2024-11-06T13:20:39.690Z","updated_at":"2026-04-24T12:02:47.423Z","avatar_url":"https://github.com/MadeiraData.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# generic-api-platform\nGeneric SQL Server platform for configuring and running API requests via HTTP\n\n## Tables\nA set of tables will be used to save data needed for communicating with external APIs:\n\n* **api_Type** (name, icon, enabled)\n    * **api_Headers** (name, value, allow API field placeholders)\n    * **api_Fields** (name, API type, data type, default value)\n    * *api_Targets* (name, description, API type, enabled)\n        * *api_TargetFieldValues* (API target, field, value)\n\nEach `api_Type` record will also have the following (static) generic fields:\n\n* TargetURI\n* Payload\n* Method (GET/POST/PUT/DELETE)\n* Alt_TargetURI\n* Alt_Payload\n* Alt_Method (GET/POST/PUT/DELETE)\n\nEach of the above fields would also support placeholders that would be replaced by the user-specified target field values.\n\nSomething like `@(parameter[fieldname])` or whatever generic like that.\nFor example: `@(parameter[authToken])`\n\n`api_Type`, `api_Headers` and `api_Fields` are non-changeable \"system\" tables.\n\n`api_Targets` and `api_TargetFieldValues` are user managed.\n\n## Programmability Modules\n\n* Scalar function: `api_GetFieldValue(api_target_id, field_name)`\n* Table function: `api_GetAPIType(api_type_id)`\n* Procedure: `api_RunTarget(api_target_id, response OUTPUT, debug)`\n* Scalar function: `api_FillPlaceholders(text_template, api_target_id)`\n* Procedure: `api_SetFieldValue(api_target_id, field_name, field_value)`\n\n## Design\n\n`api_Headers` will be used for specifying headers for the `clr_http_request` function (such as Content-Type, Authentication settings, etc). Their values will support placeholders from the API target field values.\n\nAPI targets are user-created instances of API plugins, with specific configuration values entered in the API fields (you can create multiple targets per API type, each with their own settings).\n\nThese fields will then be used when communicating with the various APIs (such as username, access tokens, API keys, various custom settings, etc.)\n\nIn an easy-to-use portal, we'll be able to manage and configure the various API targets.\n\nWhen configuring a new API target, there would also be a way to **test** the new target API by manually entering values for the API fields, and inspecting the response.\n\nThis whole module is as generic as possible and easy to use, as well as extendable with more plugins.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmadeiradata%2Fgeneric-api-platform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmadeiradata%2Fgeneric-api-platform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmadeiradata%2Fgeneric-api-platform/lists"}