Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions gc/v1/gc.proto
Original file line number Diff line number Diff line change
Expand Up @@ -406,6 +406,15 @@ rpc ListAzureIntegrations(ListAzureIntegrationsRequest) returns (ListAzureIntegr
};
}

// USED FOR RIPPLE ONLY

// WORK-IN-PROGRESS: Removes an Azure integration from Archera and clears the local record for the given onboardingId.
rpc DeleteAzureIntegration(DeleteAzureIntegrationRequest) returns (DeleteAzureIntegrationResponse) {
option (google.api.http) = {
delete: "/v1/onboarding/azure/integration/{onboardingId}"
};
}

// ------------------------ TERMS OF SERVICE ------------------------

// Returns the evaluated Terms of Service consent status for the authenticated
Expand Down Expand Up @@ -1084,6 +1093,16 @@ message ListAzureIntegrationsRequest {
string gcOrgId = 1;
}

// DeleteAzureIntegrationRequest identifies which Azure integration to remove.
// integrationId is intentionally not a request field — it is resolved
// server-side from onboardingId.
message DeleteAzureIntegrationRequest {
// Required. Archera org ID.
string gcOrgId = 1;
// Required. Identifies which onboarding's integration to delete.
string onboardingId = 2;
}


// ####################### RESPONSE MESSAGES #######################

Expand Down Expand Up @@ -2355,4 +2374,17 @@ message CreateAzureIntegrationResponse {
// ListAzureIntegrationsResponse contains all Azure integrations for the org (Step 9).
message ListAzureIntegrationsResponse {
repeated AzureIntegration integrations = 1;
}

// DeleteAzureIntegrationResponse is returned after removing the Azure integration.
// A "not_found" errorCode is treated as success
message DeleteAzureIntegrationResponse {
// True only when the operation is fully complete: the integration was
// removed from Archera AND
// all local data for the given onboardingId was cleared.
bool success = 1;
// Set on failure, or on the "not_found"-as-success case
string errorCode = 2;
string errorMessage = 3;
string integrationId = 4;
}
59 changes: 59 additions & 0 deletions openapiv2/apidocs.swagger.json
Original file line number Diff line number Diff line change
Expand Up @@ -13121,6 +13121,45 @@
]
}
},
"/v1/onboarding/azure/integration/{onboardingId}": {
"delete": {
"summary": "WORK-IN-PROGRESS: Removes an Azure integration from Archera and clears the local record for the given onboardingId.",
"operationId": "GuaranteedCommitments_DeleteAzureIntegration",
"responses": {
"200": {
"description": "A successful response.",
"schema": {
"$ref": "#/definitions/v1DeleteAzureIntegrationResponse"
}
},
"default": {
"description": "An unexpected error response.",
"schema": {
"$ref": "#/definitions/rpcStatus"
}
}
},
"parameters": [
{
"name": "onboardingId",
"description": "Required. Identifies which onboarding's integration to delete.",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "gcOrgId",
"description": "Required. Archera org ID.",
"in": "query",
"required": false,
"type": "string"
}
],
"tags": [
"GuaranteedCommitments"
]
}
},
"/v1/onboarding/azure/integrations": {
"get": {
"summary": "WORK-IN-PROGRESS: Lists Azure integrations to verify onboarding completion.",
Expand Down Expand Up @@ -40449,6 +40488,26 @@
},
"title": "Response message for DeleteAlert"
},
"v1DeleteAzureIntegrationResponse": {
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "True only when the operation is fully complete: the integration was\nremoved from Archera AND\nall local data for the given onboardingId was cleared."
},
"errorCode": {
"type": "string",
"title": "Set on failure, or on the \"not_found\"-as-success case"
},
"errorMessage": {
"type": "string"
},
"integrationId": {
"type": "string"
}
},
"title": "DeleteAzureIntegrationResponse is returned after removing the Azure integration.\nA \"not_found\" errorCode is treated as success"
},
"v1DeleteBudgetResponse": {
"type": "object",
"properties": {
Expand Down
Loading