Skip to content

Commit 62f3a3b

Browse files
api-clients-generation-pipeline[bot]ci.datadog-api-spec
andauthored
Add API spec for AWS Integrations standard and resource collection IAM permissions (#3142)
Co-authored-by: ci.datadog-api-spec <packages@datadoghq.com>
1 parent a03189f commit 62f3a3b

12 files changed

+461
-0
lines changed

.generator/schemas/v2/openapi.yaml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59638,6 +59638,39 @@ paths:
5963859638
summary: Get AWS integration IAM permissions
5963959639
tags:
5964059640
- AWS Integration
59641+
/api/v2/integration/aws/iam_permissions/resource_collection:
59642+
get:
59643+
description: Get all resource collection AWS IAM permissions required for the
59644+
AWS integration.
59645+
operationId: GetAWSIntegrationIAMPermissionsResourceCollection
59646+
responses:
59647+
'200':
59648+
content:
59649+
application/json:
59650+
schema:
59651+
$ref: '#/components/schemas/AWSIntegrationIamPermissionsResponse'
59652+
description: AWS integration resource collection IAM permissions.
59653+
'429':
59654+
$ref: '#/components/responses/TooManyRequestsResponse'
59655+
summary: Get resource collection IAM permissions
59656+
tags:
59657+
- AWS Integration
59658+
/api/v2/integration/aws/iam_permissions/standard:
59659+
get:
59660+
description: Get all standard AWS IAM permissions required for the AWS integration.
59661+
operationId: GetAWSIntegrationIAMPermissionsStandard
59662+
responses:
59663+
'200':
59664+
content:
59665+
application/json:
59666+
schema:
59667+
$ref: '#/components/schemas/AWSIntegrationIamPermissionsResponse'
59668+
description: AWS integration standard IAM permissions.
59669+
'429':
59670+
$ref: '#/components/responses/TooManyRequestsResponse'
59671+
summary: Get AWS integration standard IAM permissions
59672+
tags:
59673+
- AWS Integration
5964159674
/api/v2/integration/aws/logs/services:
5964259675
get:
5964359676
description: Get a list of AWS services that can send logs to Datadog.
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// Get resource collection IAM permissions returns "AWS integration resource collection IAM
2+
// permissions." response
3+
4+
import com.datadog.api.client.ApiClient;
5+
import com.datadog.api.client.ApiException;
6+
import com.datadog.api.client.v2.api.AwsIntegrationApi;
7+
import com.datadog.api.client.v2.model.AWSIntegrationIamPermissionsResponse;
8+
9+
public class Example {
10+
public static void main(String[] args) {
11+
ApiClient defaultClient = ApiClient.getDefaultApiClient();
12+
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
13+
14+
try {
15+
AWSIntegrationIamPermissionsResponse result =
16+
apiInstance.getAWSIntegrationIAMPermissionsResourceCollection();
17+
System.out.println(result);
18+
} catch (ApiException e) {
19+
System.err.println(
20+
"Exception when calling"
21+
+ " AwsIntegrationApi#getAWSIntegrationIAMPermissionsResourceCollection");
22+
System.err.println("Status code: " + e.getCode());
23+
System.err.println("Reason: " + e.getResponseBody());
24+
System.err.println("Response headers: " + e.getResponseHeaders());
25+
e.printStackTrace();
26+
}
27+
}
28+
}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
// Get resource collection IAM permissions returns "AWS IAM Permissions object" response
2+
3+
import com.datadog.api.client.ApiClient;
4+
import com.datadog.api.client.ApiException;
5+
import com.datadog.api.client.v2.api.AwsIntegrationApi;
6+
import com.datadog.api.client.v2.model.AWSIntegrationIamPermissionsResponse;
7+
8+
public class Example {
9+
public static void main(String[] args) {
10+
ApiClient defaultClient = ApiClient.getDefaultApiClient();
11+
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
12+
13+
try {
14+
AWSIntegrationIamPermissionsResponse result =
15+
apiInstance.getAWSIntegrationIAMPermissionsResourceCollection();
16+
System.out.println(result);
17+
} catch (ApiException e) {
18+
System.err.println(
19+
"Exception when calling"
20+
+ " AwsIntegrationApi#getAWSIntegrationIAMPermissionsResourceCollection");
21+
System.err.println("Status code: " + e.getCode());
22+
System.err.println("Reason: " + e.getResponseBody());
23+
System.err.println("Response headers: " + e.getResponseHeaders());
24+
e.printStackTrace();
25+
}
26+
}
27+
}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
// Get AWS integration standard IAM permissions returns "AWS integration standard IAM permissions."
2+
// response
3+
4+
import com.datadog.api.client.ApiClient;
5+
import com.datadog.api.client.ApiException;
6+
import com.datadog.api.client.v2.api.AwsIntegrationApi;
7+
import com.datadog.api.client.v2.model.AWSIntegrationIamPermissionsResponse;
8+
9+
public class Example {
10+
public static void main(String[] args) {
11+
ApiClient defaultClient = ApiClient.getDefaultApiClient();
12+
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
13+
14+
try {
15+
AWSIntegrationIamPermissionsResponse result =
16+
apiInstance.getAWSIntegrationIAMPermissionsStandard();
17+
System.out.println(result);
18+
} catch (ApiException e) {
19+
System.err.println(
20+
"Exception when calling AwsIntegrationApi#getAWSIntegrationIAMPermissionsStandard");
21+
System.err.println("Status code: " + e.getCode());
22+
System.err.println("Reason: " + e.getResponseBody());
23+
System.err.println("Response headers: " + e.getResponseHeaders());
24+
e.printStackTrace();
25+
}
26+
}
27+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
// Get AWS integration standard IAM permissions returns "AWS IAM Permissions object" response
2+
3+
import com.datadog.api.client.ApiClient;
4+
import com.datadog.api.client.ApiException;
5+
import com.datadog.api.client.v2.api.AwsIntegrationApi;
6+
import com.datadog.api.client.v2.model.AWSIntegrationIamPermissionsResponse;
7+
8+
public class Example {
9+
public static void main(String[] args) {
10+
ApiClient defaultClient = ApiClient.getDefaultApiClient();
11+
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
12+
13+
try {
14+
AWSIntegrationIamPermissionsResponse result =
15+
apiInstance.getAWSIntegrationIAMPermissionsStandard();
16+
System.out.println(result);
17+
} catch (ApiException e) {
18+
System.err.println(
19+
"Exception when calling AwsIntegrationApi#getAWSIntegrationIAMPermissionsStandard");
20+
System.err.println("Status code: " + e.getCode());
21+
System.err.println("Reason: " + e.getResponseBody());
22+
System.err.println("Response headers: " + e.getResponseHeaders());
23+
e.printStackTrace();
24+
}
25+
}
26+
}

src/main/java/com/datadog/api/client/v2/api/AwsIntegrationApi.java

Lines changed: 226 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -711,6 +711,232 @@ public AWSIntegrationIamPermissionsResponse getAWSIntegrationIAMPermissions()
711711
new GenericType<AWSIntegrationIamPermissionsResponse>() {});
712712
}
713713

714+
/**
715+
* Get resource collection IAM permissions.
716+
*
717+
* <p>See {@link #getAWSIntegrationIAMPermissionsResourceCollectionWithHttpInfo}.
718+
*
719+
* @return AWSIntegrationIamPermissionsResponse
720+
* @throws ApiException if fails to make API call
721+
*/
722+
public AWSIntegrationIamPermissionsResponse getAWSIntegrationIAMPermissionsResourceCollection()
723+
throws ApiException {
724+
return getAWSIntegrationIAMPermissionsResourceCollectionWithHttpInfo().getData();
725+
}
726+
727+
/**
728+
* Get resource collection IAM permissions.
729+
*
730+
* <p>See {@link #getAWSIntegrationIAMPermissionsResourceCollectionWithHttpInfoAsync}.
731+
*
732+
* @return CompletableFuture&lt;AWSIntegrationIamPermissionsResponse&gt;
733+
*/
734+
public CompletableFuture<AWSIntegrationIamPermissionsResponse>
735+
getAWSIntegrationIAMPermissionsResourceCollectionAsync() {
736+
return getAWSIntegrationIAMPermissionsResourceCollectionWithHttpInfoAsync()
737+
.thenApply(
738+
response -> {
739+
return response.getData();
740+
});
741+
}
742+
743+
/**
744+
* Get all resource collection AWS IAM permissions required for the AWS integration.
745+
*
746+
* @return ApiResponse&lt;AWSIntegrationIamPermissionsResponse&gt;
747+
* @throws ApiException if fails to make API call
748+
* @http.response.details
749+
* <table border="1">
750+
* <caption>Response details</caption>
751+
* <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
752+
* <tr><td> 200 </td><td> AWS integration resource collection IAM permissions. </td><td> - </td></tr>
753+
* <tr><td> 429 </td><td> Too many requests </td><td> - </td></tr>
754+
* </table>
755+
*/
756+
public ApiResponse<AWSIntegrationIamPermissionsResponse>
757+
getAWSIntegrationIAMPermissionsResourceCollectionWithHttpInfo() throws ApiException {
758+
Object localVarPostBody = null;
759+
// create path and map variables
760+
String localVarPath = "/api/v2/integration/aws/iam_permissions/resource_collection";
761+
762+
Map<String, String> localVarHeaderParams = new HashMap<String, String>();
763+
764+
Invocation.Builder builder =
765+
apiClient.createBuilder(
766+
"v2.AwsIntegrationApi.getAWSIntegrationIAMPermissionsResourceCollection",
767+
localVarPath,
768+
new ArrayList<Pair>(),
769+
localVarHeaderParams,
770+
new HashMap<String, String>(),
771+
new String[] {"application/json"},
772+
new String[] {"apiKeyAuth", "appKeyAuth"});
773+
return apiClient.invokeAPI(
774+
"GET",
775+
builder,
776+
localVarHeaderParams,
777+
new String[] {},
778+
localVarPostBody,
779+
new HashMap<String, Object>(),
780+
false,
781+
new GenericType<AWSIntegrationIamPermissionsResponse>() {});
782+
}
783+
784+
/**
785+
* Get resource collection IAM permissions.
786+
*
787+
* <p>See {@link #getAWSIntegrationIAMPermissionsResourceCollectionWithHttpInfo}.
788+
*
789+
* @return CompletableFuture&lt;ApiResponse&lt;AWSIntegrationIamPermissionsResponse&gt;&gt;
790+
*/
791+
public CompletableFuture<ApiResponse<AWSIntegrationIamPermissionsResponse>>
792+
getAWSIntegrationIAMPermissionsResourceCollectionWithHttpInfoAsync() {
793+
Object localVarPostBody = null;
794+
// create path and map variables
795+
String localVarPath = "/api/v2/integration/aws/iam_permissions/resource_collection";
796+
797+
Map<String, String> localVarHeaderParams = new HashMap<String, String>();
798+
799+
Invocation.Builder builder;
800+
try {
801+
builder =
802+
apiClient.createBuilder(
803+
"v2.AwsIntegrationApi.getAWSIntegrationIAMPermissionsResourceCollection",
804+
localVarPath,
805+
new ArrayList<Pair>(),
806+
localVarHeaderParams,
807+
new HashMap<String, String>(),
808+
new String[] {"application/json"},
809+
new String[] {"apiKeyAuth", "appKeyAuth"});
810+
} catch (ApiException ex) {
811+
CompletableFuture<ApiResponse<AWSIntegrationIamPermissionsResponse>> result =
812+
new CompletableFuture<>();
813+
result.completeExceptionally(ex);
814+
return result;
815+
}
816+
return apiClient.invokeAPIAsync(
817+
"GET",
818+
builder,
819+
localVarHeaderParams,
820+
new String[] {},
821+
localVarPostBody,
822+
new HashMap<String, Object>(),
823+
false,
824+
new GenericType<AWSIntegrationIamPermissionsResponse>() {});
825+
}
826+
827+
/**
828+
* Get AWS integration standard IAM permissions.
829+
*
830+
* <p>See {@link #getAWSIntegrationIAMPermissionsStandardWithHttpInfo}.
831+
*
832+
* @return AWSIntegrationIamPermissionsResponse
833+
* @throws ApiException if fails to make API call
834+
*/
835+
public AWSIntegrationIamPermissionsResponse getAWSIntegrationIAMPermissionsStandard()
836+
throws ApiException {
837+
return getAWSIntegrationIAMPermissionsStandardWithHttpInfo().getData();
838+
}
839+
840+
/**
841+
* Get AWS integration standard IAM permissions.
842+
*
843+
* <p>See {@link #getAWSIntegrationIAMPermissionsStandardWithHttpInfoAsync}.
844+
*
845+
* @return CompletableFuture&lt;AWSIntegrationIamPermissionsResponse&gt;
846+
*/
847+
public CompletableFuture<AWSIntegrationIamPermissionsResponse>
848+
getAWSIntegrationIAMPermissionsStandardAsync() {
849+
return getAWSIntegrationIAMPermissionsStandardWithHttpInfoAsync()
850+
.thenApply(
851+
response -> {
852+
return response.getData();
853+
});
854+
}
855+
856+
/**
857+
* Get all standard AWS IAM permissions required for the AWS integration.
858+
*
859+
* @return ApiResponse&lt;AWSIntegrationIamPermissionsResponse&gt;
860+
* @throws ApiException if fails to make API call
861+
* @http.response.details
862+
* <table border="1">
863+
* <caption>Response details</caption>
864+
* <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
865+
* <tr><td> 200 </td><td> AWS integration standard IAM permissions. </td><td> - </td></tr>
866+
* <tr><td> 429 </td><td> Too many requests </td><td> - </td></tr>
867+
* </table>
868+
*/
869+
public ApiResponse<AWSIntegrationIamPermissionsResponse>
870+
getAWSIntegrationIAMPermissionsStandardWithHttpInfo() throws ApiException {
871+
Object localVarPostBody = null;
872+
// create path and map variables
873+
String localVarPath = "/api/v2/integration/aws/iam_permissions/standard";
874+
875+
Map<String, String> localVarHeaderParams = new HashMap<String, String>();
876+
877+
Invocation.Builder builder =
878+
apiClient.createBuilder(
879+
"v2.AwsIntegrationApi.getAWSIntegrationIAMPermissionsStandard",
880+
localVarPath,
881+
new ArrayList<Pair>(),
882+
localVarHeaderParams,
883+
new HashMap<String, String>(),
884+
new String[] {"application/json"},
885+
new String[] {"apiKeyAuth", "appKeyAuth"});
886+
return apiClient.invokeAPI(
887+
"GET",
888+
builder,
889+
localVarHeaderParams,
890+
new String[] {},
891+
localVarPostBody,
892+
new HashMap<String, Object>(),
893+
false,
894+
new GenericType<AWSIntegrationIamPermissionsResponse>() {});
895+
}
896+
897+
/**
898+
* Get AWS integration standard IAM permissions.
899+
*
900+
* <p>See {@link #getAWSIntegrationIAMPermissionsStandardWithHttpInfo}.
901+
*
902+
* @return CompletableFuture&lt;ApiResponse&lt;AWSIntegrationIamPermissionsResponse&gt;&gt;
903+
*/
904+
public CompletableFuture<ApiResponse<AWSIntegrationIamPermissionsResponse>>
905+
getAWSIntegrationIAMPermissionsStandardWithHttpInfoAsync() {
906+
Object localVarPostBody = null;
907+
// create path and map variables
908+
String localVarPath = "/api/v2/integration/aws/iam_permissions/standard";
909+
910+
Map<String, String> localVarHeaderParams = new HashMap<String, String>();
911+
912+
Invocation.Builder builder;
913+
try {
914+
builder =
915+
apiClient.createBuilder(
916+
"v2.AwsIntegrationApi.getAWSIntegrationIAMPermissionsStandard",
917+
localVarPath,
918+
new ArrayList<Pair>(),
919+
localVarHeaderParams,
920+
new HashMap<String, String>(),
921+
new String[] {"application/json"},
922+
new String[] {"apiKeyAuth", "appKeyAuth"});
923+
} catch (ApiException ex) {
924+
CompletableFuture<ApiResponse<AWSIntegrationIamPermissionsResponse>> result =
925+
new CompletableFuture<>();
926+
result.completeExceptionally(ex);
927+
return result;
928+
}
929+
return apiClient.invokeAPIAsync(
930+
"GET",
931+
builder,
932+
localVarHeaderParams,
933+
new String[] {},
934+
localVarPostBody,
935+
new HashMap<String, Object>(),
936+
false,
937+
new GenericType<AWSIntegrationIamPermissionsResponse>() {});
938+
}
939+
714940
/** Manage optional parameters to listAWSAccounts. */
715941
public static class ListAWSAccountsOptionalParameters {
716942
private String awsAccountId;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
2025-09-17T18:27:22.560Z

0 commit comments

Comments
 (0)