|
1 |
| - |
2 |
| - |
| 1 | + |
| 2 | + |
3 | 3 | [](https://gitter.im/oasgraph/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
4 | 4 |
|
| 5 | +# Please note: OASGraph has been renamed to [OpenAPI-to-GraphQL](https://github.com/IBM/openapi-to-graphql). |
5 | 6 |
|
6 | 7 | # OASGraph
|
7 | 8 | Translate APIs described by [OpenAPI Specifications (OAS)](https://github.com/OAI/OpenAPI-Specification) into [GraphQL](https://graphql.org/).
|
8 | 9 |
|
9 |
| -<img src="https://raw.githubusercontent.com/strongloop/oasgraph/master/docs/translation.png" alt="Overview of translation" width="600"> |
| 10 | +<img src="https://raw.githubusercontent.com/ibm/openapi-to-graphql/master/docs/translation.png" alt="Overview of translation" width="600"> |
10 | 11 |
|
11 | 12 |
|
12 | 13 | ## Getting started
|
@@ -58,32 +59,32 @@ Here are some guides to further help you get started:
|
58 | 59 | * **Data-centric**
|
59 | 60 | The GraphQL interface is created around the data definitions in the given OAS, not around the endpoints, leading to a natural use of GraphQL.
|
60 | 61 |
|
61 |
| - <img src="https://raw.githubusercontent.com/strongloop/oasgraph/master/docs/data-centric.png" alt="Example of data-centric design" width="600"> |
| 62 | + <img src="https://raw.githubusercontent.com/ibm/openapi-to-graphql/master/docs/data-centric.png" alt="Example of data-centric design" width="600"> |
62 | 63 |
|
63 | 64 | * **Nested data**
|
64 | 65 | [Links](https://github.com/OAI/OpenAPI-Specification/blob/OpenAPI.next/versions/3.0.md#linksObject) defined in the OAS are used to compose data definitions. Furthermore, hierarchical path structures can be used to nest data via the [`addSubOperations`](./packages/oasgraph/README.md#options-addsuboperations) option.
|
65 | 66 |
|
66 |
| - <img src="https://raw.githubusercontent.com/strongloop/oasgraph/master/docs/links.png" alt="Example of links resolution" width="600"> |
| 67 | + <img src="https://raw.githubusercontent.com/ibm/openapi-to-graphql/master/docs/links.png" alt="Example of links resolution" width="600"> |
67 | 68 |
|
68 | 69 | * **Automatic query resolution**
|
69 | 70 | Automatically generated resolvers translate (nested) GraphQL queries to API requests. Request results are translated back to GraphQL responses.
|
70 | 71 |
|
71 |
| - <img src="https://raw.githubusercontent.com/strongloop/oasgraph/master/docs/resolution.png" alt="Example of query resolution" width="600"> |
| 72 | + <img src="https://raw.githubusercontent.com/ibm/openapi-to-graphql/master/docs/resolution.png" alt="Example of query resolution" width="600"> |
72 | 73 |
|
73 | 74 | * **Mutations**
|
74 | 75 | Non-safe, non-idempotent API operations (e.g., `POST`, `PUT`, `DELETE`) are translated to GraphQL [mutations](http://graphql.org/learn/queries/#mutations). Input payload is type-checked.
|
75 | 76 |
|
76 |
| - <img src="https://raw.githubusercontent.com/strongloop/oasgraph/master/docs/mutations.png" alt="Example of mutation" width="600"> |
| 77 | + <img src="https://raw.githubusercontent.com/ibm/openapi-to-graphql/master/docs/mutations.png" alt="Example of mutation" width="600"> |
77 | 78 |
|
78 | 79 | * **Authentication**
|
79 | 80 | OASGraph currently supports authentication via API Key and basic auth. OASGraph wraps secured endpoints into a `viewer`, which takes the API key / credentials as input.
|
80 | 81 |
|
81 |
| - <img src="https://raw.githubusercontent.com/strongloop/oasgraph/master/docs/auth.png" alt="Example of authentication" width="600"> |
| 82 | + <img src="https://raw.githubusercontent.com/ibm/openapi-to-graphql/master/docs/auth.png" alt="Example of authentication" width="600"> |
82 | 83 |
|
83 | 84 | * **API Sanitation**
|
84 | 85 | Parts of an API that not compatible with GraphQL are automatically sanitized. For example, API parameters and data definition names with unsupported characters (e.g., `-`, `.`, `,`, `:`, `;`...) are removed. GraphQL queries are desanitized to correctly invoke the REST API and the responses are resanitized to create GraphQL-compliant results.
|
85 | 86 |
|
86 |
| - <img src="https://raw.githubusercontent.com/strongloop/oasgraph/master/docs/sanitization.png" alt="Example of sanitation" width="300"> |
| 87 | + <img src="https://raw.githubusercontent.com/ibm/openapi-to-graphql/master/docs/sanitization.png" alt="Example of sanitation" width="300"> |
87 | 88 |
|
88 | 89 | * **Custom request options** Provide headers and query parameters to send with every API request. This allows, for example, to handle authentication or tag requests from GraphQL.
|
89 | 90 |
|
|
0 commit comments