diff --git a/airbyte-api/src/main/openapi/config.yaml b/airbyte-api/src/main/openapi/config.yaml index 85bba6ecb340..88d8b36531ef 100644 --- a/airbyte-api/src/main/openapi/config.yaml +++ b/airbyte-api/src/main/openapi/config.yaml @@ -763,6 +763,48 @@ paths: application/json: schema: $ref: "#/components/schemas/DestinationDefinitionOptInReadList" + /v1/destination_definitions/grant_definition: + post: + tags: + - destination_definition + summary: Opt in to a non-public, non-custom destinationDefinition + operationId: createDestinationDefinitionOptIn + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/DestinationDefinitionOptInUpdate" + required: true + responses: + "200": + description: Successful operation + content: + application/json: + schema: + $ref: "#/components/schemas/DestinationDefinitionOptInRead" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + $ref: "#/components/responses/InvalidInputResponse" + /v1/destination_definitions/revoke_definition: + post: + tags: + - destination_definition + summary: Opt out of a non-public, non-custom destinationDefinition + operationId: deleteDestinationDefinitionOptIn + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/DestinationDefinitionOptInUpdate" + required: true + responses: + "204": + description: The resource was deleted successfully. + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + $ref: "#/components/responses/InvalidInputResponse" /v1/destination_definitions/get: post: tags: @@ -2603,6 +2645,16 @@ components: type: array items: $ref: "#/components/schemas/DestinationDefinitionOptInRead" + DestinationDefinitionOptInUpdate: + type: object + required: + - destinationDefinitionId + - workspaceId + properties: + destinationDefinitionId: + $ref: "#/components/schemas/DestinationDefinitionId" + workspaceId: + $ref: "#/components/schemas/WorkspaceId" # DESTINATION DEFINITION SPECIFICATION DestinationDefinitionSpecification: description: The specification for what values are required to configure the destinationDefinition. diff --git a/airbyte-server/src/main/java/io/airbyte/server/apis/ConfigurationApi.java b/airbyte-server/src/main/java/io/airbyte/server/apis/ConfigurationApi.java index 9ac8bb6db81d..56b4e874632f 100644 --- a/airbyte-server/src/main/java/io/airbyte/server/apis/ConfigurationApi.java +++ b/airbyte-server/src/main/java/io/airbyte/server/apis/ConfigurationApi.java @@ -23,7 +23,9 @@ import io.airbyte.api.model.DestinationCreate; import io.airbyte.api.model.DestinationDefinitionCreate; import io.airbyte.api.model.DestinationDefinitionIdRequestBody; +import io.airbyte.api.model.DestinationDefinitionOptInRead; import io.airbyte.api.model.DestinationDefinitionOptInReadList; +import io.airbyte.api.model.DestinationDefinitionOptInUpdate; import io.airbyte.api.model.DestinationDefinitionRead; import io.airbyte.api.model.DestinationDefinitionReadList; import io.airbyte.api.model.DestinationDefinitionSpecificationRead; @@ -495,6 +497,11 @@ public DestinationDefinitionRead createDestinationDefinition(final DestinationDe return execute(() -> destinationDefinitionsHandler.createCustomDestinationDefinition(destinationDefinitionCreate)); } + @Override + public DestinationDefinitionOptInRead createDestinationDefinitionOptIn(final DestinationDefinitionOptInUpdate destinationDefinitionOptInUpdate) { + return null; + } + @Override public DestinationDefinitionRead updateDestinationDefinition(final DestinationDefinitionUpdate destinationDefinitionUpdate) { return execute(() -> destinationDefinitionsHandler.updateDestinationDefinition(destinationDefinitionUpdate)); @@ -508,6 +515,11 @@ public void deleteDestinationDefinition(final DestinationDefinitionIdRequestBody }); } + @Override + public void deleteDestinationDefinitionOptIn(final DestinationDefinitionOptInUpdate destinationDefinitionOptInUpdate) { + + } + // DESTINATION SPECIFICATION @Override diff --git a/docs/reference/api/generated-api-html/index.html b/docs/reference/api/generated-api-html/index.html index a8e265d45e89..2f1ce6141d65 100644 --- a/docs/reference/api/generated-api-html/index.html +++ b/docs/reference/api/generated-api-html/index.html @@ -260,7 +260,9 @@
post /v1/destination_definitions/create
post /v1/destination_definitions/grant_definition
post /v1/destination_definitions/delete
post /v1/destination_definitions/revoke_definition
post /v1/destination_definitions/get
post /v1/destination_definitions/list_opt_in
post /v1/destination_definitions/list
post /v1/destination_definitions/grant_definition
application/json
{
+ "optIn" : true,
+ "destinationDefinition" : {
+ "resourceRequirements" : {
+ "default" : {
+ "cpu_limit" : "cpu_limit",
+ "memory_request" : "memory_request",
+ "memory_limit" : "memory_limit",
+ "cpu_request" : "cpu_request"
+ },
+ "jobSpecific" : [ {
+ "resourceRequirements" : {
+ "cpu_limit" : "cpu_limit",
+ "memory_request" : "memory_request",
+ "memory_limit" : "memory_limit",
+ "cpu_request" : "cpu_request"
+ }
+ }, {
+ "resourceRequirements" : {
+ "cpu_limit" : "cpu_limit",
+ "memory_request" : "memory_request",
+ "memory_limit" : "memory_limit",
+ "cpu_request" : "cpu_request"
+ }
+ } ]
+ },
+ "documentationUrl" : "https://openapi-generator.tech",
+ "dockerImageTag" : "dockerImageTag",
+ "releaseDate" : "2000-01-23",
+ "dockerRepository" : "dockerRepository",
+ "name" : "name",
+ "icon" : "icon",
+ "destinationDefinitionId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
+ }
+}
+
+ application/json
application/json
post /v1/destination_definitions/revoke_definition
application/json
DestinationDefinitionIdRequestBody
- DestinationDefinitionOptInRead
- DestinationDefinitionOptInReadList
- DestinationDefinitionOptInUpdate
- DestinationDefinitionRead
- DestinationDefinitionReadList
- DestinationDefinitionSpecificationRead
- DestinationDefinitionOptI
destinationDefinitionOptIns
DestinationDefinitionOptInUpdate
- Up