{"id":22933079,"url":"https://github.com/giuseppemp/sap-cloud-integration-odata-api-v2-clients","last_synced_at":"2025-08-12T16:32:38.019Z","repository":{"id":255089224,"uuid":"841592593","full_name":"GiuseppeMP/sap-cloud-integration-odata-api-v2-clients","owner":"GiuseppeMP","description":"A simple Typescript collection of API Clients for SAP Cloud ODATA powered by @sap-cloud-sdk","archived":false,"fork":false,"pushed_at":"2024-09-03T17:48:54.000Z","size":176,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-12T22:45:52.081Z","etag":null,"topics":["cpi","javacript","sap","sap-cloud-platform","sap-cloud-sdk","sapcloudplatform","typescript"],"latest_commit_sha":null,"homepage":"https://api.sap.com/package/CloudIntegrationAPI/odata","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GiuseppeMP.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-08-12T18:02:31.000Z","updated_at":"2024-09-03T17:48:57.000Z","dependencies_parsed_at":"2024-08-27T23:56:53.584Z","dependency_job_id":"1a4f136a-78b5-4f39-9d1d-0a8261177a43","html_url":"https://github.com/GiuseppeMP/sap-cloud-integration-odata-api-v2-clients","commit_stats":null,"previous_names":["giuseppemp/sap-cloud-integration-odata-api-v2-clients"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GiuseppeMP%2Fsap-cloud-integration-odata-api-v2-clients","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GiuseppeMP%2Fsap-cloud-integration-odata-api-v2-clients/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GiuseppeMP%2Fsap-cloud-integration-odata-api-v2-clients/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GiuseppeMP%2Fsap-cloud-integration-odata-api-v2-clients/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GiuseppeMP","download_url":"https://codeload.github.com/GiuseppeMP/sap-cloud-integration-odata-api-v2-clients/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229696082,"owners_count":18109173,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["cpi","javacript","sap","sap-cloud-platform","sap-cloud-sdk","sapcloudplatform","typescript"],"created_at":"2024-12-14T11:19:48.072Z","updated_at":"2024-12-14T11:19:49.311Z","avatar_url":"https://github.com/GiuseppeMP.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eWelcome to SAP Cloud Integration OData API Clients 👋\u003c/h1\u003e\n\n## TL;DR\n\nTo consume the SAP Cloud Integration APIs, you must install the SAP Cloud SDK and utilize the generated clients. It is necessary to properly configure tsconfig when using Typescript, which can be challenging as it may not always be compatible with your project.\n\nAdditionally, these files begin to appear in every project, leading to unnecessary boilerplate in many repositories within SAP projects.\n\nNow you can simply run `npm install ts-sap-cloud-odata-api-v2-client` and start using the generated clients immediately without any stress.\n\nRead more: https://sap.github.io/cloud-sdk/docs/js/getting-started\n\nProcess followed: https://sap.github.io/cloud-sdk/docs/js/features/odata/generate-client\n\n## !! Disclaimer !!\n\nDo not use the npm-package in a production environment as it is still in beta. The APIs and features covered have not changed in about two years, making them very stable.\n\nThe intention here is not to centralize all SAP CPI clients and maintain them into a micro-node module.\n\nRegarding the npm package, you do not need to use it if it does not suit your needs. You can use the files in this repository as examples and copy the entire repository to your versioning system if you wish to make changes and tweaks. Any pull requests attempting to modify the generated code will not be accepted.\n\nIt's just a code that can be used as quick start, example and to be copied.\n\nUse it wisely and do not rely on maintenance, just fork or clone it. So you can clone, open the project in any IDE and start playing with\nthe sap-cloud-sdk-generator models.\n\n\n## Why\n\nThis code was created with the help of the SAP Cloud SDK, there's no custom code or layers added to it. It's exactly the same output of\nusing sap-cloud-sdk and generating clients from the odata package.\n\nThe benefits of this package depends on the use case, right now I'm using it to, so pay attention to the Disclaimer section above.\n1. Automate the ingestion of logs from OData into DataLog automatically.\n2. Write xslts in external IDEs like VSCode using unit tests for mappings, them using the api in CD pipeline to push these artifacts to\n   low environment IFlows well tested and covered.\n4. Make it possible to create Pipeline for CI/CD that runs e2e automated and assert odata logs and also keep the IFlows external parameters\n   commited using GitOps approach.\n5. Internaly, it's easy to apply security scans and fixes in a centralized generated code them a distribuided approach across all teams. If you don't scan generated code for issues you may ignore this item.\n\n## Features\n\nClients were generated for the following APIs in [Cloud Integration](https://api.sap.com/package/CloudIntegrationAPI/odata):\n\n\n| Name | Version | Generated |\n| ---- | ---- | --------- |\n| [IntegrationContent](https://api.sap.com/api/IntegrationContent/resource/Integration_Package_Discover) | 1.0.0 | Yes |\n| [LogFiles](https://api.sap.com/api/LogFiles/resource/Log_Files) | 1.0.0 | Yes |\n| [MessageProcessingLogs](https://api.sap.com/api/MessageProcessingLogs/resource/Logs) | 1.0.0 | Yes |\n| [MessageStore](https://api.sap.com/api/MessageStore/resource/Entries) | 1.0.0 | Yes |\n| [PartnerDirectory](https://api.sap.com/api/PartnerDirectory/resource/Alternative_Partners) | 1.0.0 | Yes |\n| [SecurityContent](https://api.sap.com/api/SecurityContent/resource/Certificate) | 1.0.0 | Yes |\n\n\n## Install\n\n```sh\nnpm i ts-sap-cloud-odata-api-v2-client\n```\n\n## Dependencies\n```sh\nnpm i @sap-cloud-sdk/connectivity #required\nnpm i @sap-cloud-sdk/odata-v2 #optional\n```\n\n## Usage\n\nNow you can simply use the generated clients in your code. The entire interface was kept from the SDK, and you can refer to the [documentation](https://sap.github.io/cloud-sdk/docs/js/getting-started) to learn more.\n\n[How to execute a request](https://sap.github.io/cloud-sdk/docs/js/features/odata/execute-request)\n\n\nEach client is isolated in a module that can be imported using `'ts-sap-cloud-odata-api-v2-client/{APINAME}'`.\nThis is necessary to avoid conflicts with other modules as they are all generated separately.\n\n*Example**\n\n```js\nimport { registerDestination } from '@sap-cloud-sdk/connectivity'\nimport { messageProcessingLogs, MessageProcessingLogsType } from \"ts-sap-cloud-odata-api-v2-client/MessageProcessingLogsClient\";\n\nasync function example(name: string, url: string) {\n\n    await registerDestination(\n        {\n            name: name, // choose name\n            url: url // add url to your tenant\n        },\n    );\n\n    const basePath = \"/api/v1\" // change if needed\n    \n    const requestBuilder = messageProcessingLogs\u003cMessageProcessingLogsType\u003e().messageProcessingLogsApi.requestBuilder().getAll()\n\n    const getAll = requestBuilder.setBasePath(basePath).addCustomHeaders({ 'authorization': `Bearer ...` })\n\n    return getAll.execute({ destinationName: name })\n}\n```\n\n## Known issues\n\nThis library is still in beta. Please report any bugs or feature requests to the GitHub issue tracker.\n\nPlease use the version `1.4.x` or above. This library is compiled to es6 with commonjs to increase compatibility.\n\n\n## Show your support\n\nGive a ⭐️ if this project helped you!\n\nIf you would like to ask about features, other API clients, report bugs, or seek help, please feel free to create an issue in the GitHub repository.\n[Github Issues](https://github.com/GiuseppeMP/sap-cloud-integration-odata-api-v2-clients/issues/new)\n\n***\n_This README was generated with ❤️ by [readme-md-generator](https://github.com/kefranabg/readme-md-generator)_\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiuseppemp%2Fsap-cloud-integration-odata-api-v2-clients","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgiuseppemp%2Fsap-cloud-integration-odata-api-v2-clients","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiuseppemp%2Fsap-cloud-integration-odata-api-v2-clients/lists"}