{"id":15023873,"url":"https://github.com/sap/openapi-specification","last_synced_at":"2025-10-19T18:30:49.981Z","repository":{"id":66263105,"uuid":"572105191","full_name":"SAP/openapi-specification","owner":"SAP","description":"The SAP's extension to OpenAPI Specification defines a standard for describing HTTP APIs at SAP.","archived":false,"fork":false,"pushed_at":"2024-11-18T14:39:18.000Z","size":144,"stargazers_count":8,"open_issues_count":1,"forks_count":2,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-01-30T00:51:10.817Z","etag":null,"topics":["api","documentation","extension","openapi"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SAP.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2022-11-29T15:06:36.000Z","updated_at":"2024-11-18T14:36:44.000Z","dependencies_parsed_at":"2023-11-16T12:27:42.778Z","dependency_job_id":"caa10c4f-9341-46db-94fc-15cb8d3fca05","html_url":"https://github.com/SAP/openapi-specification","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":"SAP/repository-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP%2Fopenapi-specification","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP%2Fopenapi-specification/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP%2Fopenapi-specification/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP%2Fopenapi-specification/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SAP","download_url":"https://codeload.github.com/SAP/openapi-specification/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237191397,"owners_count":19269708,"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":["api","documentation","extension","openapi"],"created_at":"2024-09-24T19:59:33.670Z","updated_at":"2025-10-19T18:30:44.667Z","avatar_url":"https://github.com/SAP.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![REUSE status](https://api.reuse.software/badge/github.com/SAP/openapi-specification)](https://api.reuse.software/info/github.com/SAP/openapi-specification)\n\n# OpenAPI Specification for SAP Ecosystem\n\nThis repository contains extensions to the original [OpenAPI Specification](https://github.com/OAI/OpenAPI-Specification) which are relevant for SAP Ecosystem and corresponding tooling. Additionally, it provides a compiled \"ready to use\" version of schema files which includes the original schemas with SAP-specific changes on top.\n\nThe following versions of OpenAPI Specification are supported:\n\n- [OpenAPI Specification v2.0 for SAP Ecosystem](./sap-schemas/v2.0) (based on [OpenAPI v2.0](https://spec.openapis.org/oas/v2.0), also known as Swagger 2.0)\n- [OpenAPI Specification v3.0 for SAP Ecosystem](./sap-schemas/v3.0) (based on [OpenAPI v3.0.3](https://spec.openapis.org/oas/v3.0.3))\n\nEvery OpenAPI Specification for SAP Ecosystem document is also a valid OpenAPI document of a corresponding version.\n\nThe goal of these specification is to describe SAP's extensions to OpenAPI Specifications in a standardized way. The specification are used by [SAP API Business Hub](https://api.sap.com) and other tooling in SAP Ecosystem.\n\n## Requirements\n\nEach schema in this repository is described using JSON format.\n\nNo specific tools are needed to use these schema files.\n\nContributors to this repository will need to run the generator, which requires Node.js to be installed.\n\n## Known Issues\n\nNo known issues.\n\n## Primitive Type Mapping\n\nOpenAPI is based on the JSON type system and uses the `format` keyword for differentiating JSON types, and in some cases additional keywords:\n\n| [ABAP][abap]                | [CAP][cap]          | Java                 | [OData][odata]     | [SQL][hana]                              | OpenAPI type    | [OpenAPI format][formats] | OpenAPI keywords                   | JSON example                                 |\n| --------------------------- | ------------------- | -------------------- | ------------------ | ---------------------------------------- | --------------- | ------------------------- | ---------------------------------- | -------------------------------------------- |\n| RAW16, CHAR32               | UUID                | java.lang.String     | Edm.Guid           | VARBINARY(16), VARCHAR(32), NVARCHAR(36) | string          | uuid                      | -                                  | `\"1e4c3ce2-452b-4a0f-9ce4-985edc35b4d7\"`     |\n| ABAP_BOOL                   | Boolean             | boolean              | Edm.Boolean        | BOOLEAN                                  | boolean         | -                         | -                                  | `true`                                       |\n| b                           | UInt8               | short                | Edm.Byte           | TINYINT                                  | integer         | uint8                     | -                                  | `255`                                        |\n| -                           | -                   | short                | Edm.SByte          | TINYINT                                  | integer         | int8                      | -                                  | `-128`                                       |\n| s                           | Int16               | short                | Edm.Int16          | SMALLINT                                 | integer         | int16                     | -                                  | `32767`                                      |\n| i                           | Int32, Integer      | int                  | Edm.Int32          | INTEGER                                  | integer         | int32                     | -                                  | `2147483647`                                 |\n| int8                        | Int64, Integer64    | long                 | Edm.Int64          | BIGINT                                   | string, integer | int64                     | -                                  | `\"9223372036854775807\"`                      |\n| decfloat34                  | Decimal             | java.math.BigDecimal | Edm.Decimal        | DECIMAL                                  | string, number  | decimal128                | -                                  | `\"9.999999999999999999999999999999999e6144\"` |\n| p                           | Decimal(p,s)        | java.math.BigDecimal | Edm.Decimal        | DECIMAL(p,s)                             | string, number  | decimal                   | [x-sap-precision, x-sap-scale][ps] | `\"12556.33\"`                                 |\n| f                           | Double              | double               | Edm.Double         | DOUBLE                                   | number          | double                    |                                    | `3.141592653589793`                          |\n| d                           | Date                | java.time.LocalDate  | Edm.Date           | DATE                                     | string          | date                      | -                                  | `\"2024-12-31\"`                               |\n| /IWBEP/V4_EDM_TYPE_DURATION | -                   | java.time.Duration   | Edm.Duration       | -                                        | string          | duration                  | -                                  | `\"27DT7H43M40.8S\"`                           |\n| t                           | Time                | java.time.LocalTime  | Edm.TimeOfDay      | TIME                                     | string          | (time)                    | -                                  | `\"23:59:59\"`                                 |\n| utclong                     | DateTime, Timestamp | java.time.Instant    | Edm.DateTimeOffset | TIMESTAMP                                | string          | date-time                 | -                                  | `\"1969-07-20T20:17:00Z\"`                     |\n| string                      | String              | java.lang.String     | Edm.String         | NVARCHAR                                 | string          | -                         | -                                  | `\"Hello\\nWorld\"`                             |\n| c, n                        | String(m)           | java.lang.String     | Edm.String         | NVARCHAR(m)                              | string          | -                         | maxLength: m                       | `\"Hôtel de Ville\"`                           |\n| xstring                     | Binary              | byte[]               | Edm.Binary         | VARBINARY                                | string          | base64url                 | -                                  | `\"T0RhdGE\"`                                  |\n| x                           | Binary(m)           | byte[]               | Edm.Binary         | VARBINARY(m)                             | string          | base64url                 | maxLength: m                       | `\"T3BlbkFQSQ==\"`                             |\n| xstring                     | LargeBinary         | byte[]               | Edm.Binary         | BLOB                                     | string          | base64url                 | -                                  | `\"R3JhcGhRTA==\"`                             |\n| string                      | LargeString         | java.lang.String     | Edm.String         | NCLOB                                    | string          | -                         | -                                  | `\"Once upon a time...\"`                      |\n\n[abap]: https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abendata_types.htm\n[cap]: https://cap.cloud.sap/docs/cds/types\n[hana]: https://help.sap.com/docs/SAP_HANA_PLATFORM/4fe29514fd584807ac9f2a04f6754767/20a1569875191014b507cf392724b7eb.html\n[odata]: https://docs.oasis-open.org/odata/odata-csdl-json/v4.01/odata-csdl-json-v4.01.html#sec_PrimitiveTypes\n[formats]: https://spec.openapis.org/registry/format/index.html\n[ps]: https://github.com/SAP/openapi-specification/tree/main/sap-schemas/v3.0#x-sap-precision\n\n## How to obtain support\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## Code of Conduct\n\nWe as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone. By participating in this project, you agree to abide by its [Code of Conduct](CODE_OF_CONDUCT.md) at all times.\n\n## Licensing\n\nPlease see our [LICENSE](LICENSE) for copyright and license information. Detailed information including third-party components and their licensing/copyright information is available [via the REUSE tool](https://api.reuse.software/info/github.com/SAP/openapi-specification).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsap%2Fopenapi-specification","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsap%2Fopenapi-specification","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsap%2Fopenapi-specification/lists"}