Skip to content

Commit aafcf1c

Browse files
Today, AWS announces the general availability of ListBillingViews API in the AWS SDKs, to enable AWS Billing Conductor (ABC) users to create proforma Cost and Usage Reports (CUR) programmatically.
1 parent 913ee3a commit aafcf1c

File tree

69 files changed

+6673
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+6673
-0
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,8 @@ Protocol tests can be found in the `sdk/test/ProtocolTests` directory. Protocol
190190
* This release introduces Agents for Amazon Bedrock Runtime
191191
* [AWSSDK.BedrockRuntime](https://www.nuget.org/packages/AWSSDK.BedrockRuntime/)
192192
* Run Inference: Added support to run the inference on models. Includes set of APIs for running inference in streaming and non-streaming mode.
193+
* [AWSSDK.Billing](https://www.nuget.org/packages/AWSSDK.Billing/)
194+
* Today, AWS announces the general availability of ListBillingViews API in the AWS SDKs, to enable AWS Billing Conductor (ABC) users to create proforma Cost and Usage Reports (CUR) programmatically.
193195
* [AWSSDK.BillingConductor](https://www.nuget.org/packages/AWSSDK.BillingConductor/)
194196
* This is the initial SDK release for AWS Billing Conductor. The AWS Billing Conductor is a customizable billing service, allowing you to customize your billing data to match your desired business structure.
195197
* [AWSSDK.Braket](https://www.nuget.org/packages/AWSSDK.Braket/)
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<docs>
3+
<doc>
4+
<members>
5+
<member name="M:Amazon.Billing.IAmazonBilling.ListBillingViews(Amazon.Billing.Model.ListBillingViewsRequest)" />
6+
<member name="M:Amazon.Billing.AmazonBillingClient.ListBillingViews(Amazon.Billing.Model.ListBillingViewsRequest)" />
7+
<member name="T:Amazon.Billing.Model.ListBillingViewsRequest" />
8+
<member name="T:Amazon.Billing.Model.ListBillingViewsResponse" />
9+
</members>
10+
<value>
11+
<example>
12+
<para>
13+
14+
</para>
15+
<code
16+
title="Invoke ListBillingViews"
17+
source=".\AWSSDKDocSamples\Billing\Billing.GeneratedSamples.cs"
18+
region="example-1" />
19+
</example>
20+
</value>
21+
</doc>
22+
<doc>
23+
<members>
24+
<member name="M:Amazon.Billing.IAmazonBilling.ListBillingViews(Amazon.Billing.Model.ListBillingViewsRequest)" />
25+
<member name="M:Amazon.Billing.AmazonBillingClient.ListBillingViews(Amazon.Billing.Model.ListBillingViewsRequest)" />
26+
<member name="T:Amazon.Billing.Model.ListBillingViewsRequest" />
27+
<member name="T:Amazon.Billing.Model.ListBillingViewsResponse" />
28+
</members>
29+
<value>
30+
<example>
31+
<para>
32+
33+
</para>
34+
<code
35+
title="Error example for ListBillingViews"
36+
source=".\AWSSDKDocSamples\Billing\Billing.GeneratedSamples.cs"
37+
region="example-2" />
38+
</example>
39+
</value>
40+
</doc>
41+
</docs>
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Linq;
4+
using System.Text;
5+
using System.Threading.Tasks;
6+
7+
using Amazon.Billing;
8+
using Amazon.Billing.Model;
9+
10+
namespace AWSSDKDocSamples.Amazon.Billing.Generated
11+
{
12+
class BillingSamples : ISample
13+
{
14+
public void BillingListBillingViews()
15+
{
16+
#region example-1
17+
18+
var client = new AmazonBillingClient();
19+
var response = client.ListBillingViews(new ListBillingViewsRequest
20+
{
21+
ActiveTimeRange = new ActiveTimeRange {
22+
ActiveAfterInclusive = DateTime.UtcNow,
23+
ActiveBeforeInclusive = DateTime.UtcNow
24+
}
25+
});
26+
27+
List<BillingViewListElement> billingViews = response.BillingViews;
28+
29+
#endregion
30+
}
31+
32+
public void BillingListBillingViews()
33+
{
34+
#region example-2
35+
36+
var client = new AmazonBillingClient();
37+
var response = client.ListBillingViews(new ListBillingViewsRequest
38+
{
39+
ActiveTimeRange = new ActiveTimeRange {
40+
ActiveAfterInclusive = DateTime.UtcNow,
41+
ActiveBeforeInclusive = DateTime.UtcNow
42+
}
43+
});
44+
45+
46+
#endregion
47+
}
48+
49+
50+
# region ISample Members
51+
public virtual void Run()
52+
{
53+
54+
}
55+
# endregion
56+
57+
}
58+
}
Lines changed: 181 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,181 @@
1+
{
2+
"version":"2.0",
3+
"metadata":{
4+
"apiVersion":"2023-09-07",
5+
"auth":["aws.auth#sigv4"],
6+
"endpointPrefix":"billing",
7+
"jsonVersion":"1.0",
8+
"protocol":"json",
9+
"protocols":["json"],
10+
"serviceFullName":"AWS Billing",
11+
"serviceId":"Billing",
12+
"signatureVersion":"v4",
13+
"signingName":"billing",
14+
"targetPrefix":"AWSBilling",
15+
"uid":"billing-2023-09-07"
16+
},
17+
"operations":{
18+
"ListBillingViews":{
19+
"name":"ListBillingViews",
20+
"http":{
21+
"method":"POST",
22+
"requestUri":"/"
23+
},
24+
"input":{"shape":"ListBillingViewsRequest"},
25+
"output":{"shape":"ListBillingViewsResponse"},
26+
"errors":[
27+
{"shape":"ThrottlingException"},
28+
{"shape":"AccessDeniedException"},
29+
{"shape":"ValidationException"},
30+
{"shape":"InternalServerException"}
31+
]
32+
}
33+
},
34+
"shapes":{
35+
"AccessDeniedException":{
36+
"type":"structure",
37+
"required":["message"],
38+
"members":{
39+
"message":{"shape":"ErrorMessage"}
40+
},
41+
"exception":true
42+
},
43+
"AccountId":{
44+
"type":"string",
45+
"pattern":"[0-9]{12}"
46+
},
47+
"ActiveTimeRange":{
48+
"type":"structure",
49+
"required":[
50+
"activeAfterInclusive",
51+
"activeBeforeInclusive"
52+
],
53+
"members":{
54+
"activeAfterInclusive":{"shape":"Timestamp"},
55+
"activeBeforeInclusive":{"shape":"Timestamp"}
56+
}
57+
},
58+
"BillingViewArn":{
59+
"type":"string",
60+
"pattern":"arn:aws[a-z-]*:(billing)::[0-9]{12}:billingview/[a-zA-Z0-9_\\+=\\.\\-@]{1,43}"
61+
},
62+
"BillingViewList":{
63+
"type":"list",
64+
"member":{"shape":"BillingViewListElement"}
65+
},
66+
"BillingViewListElement":{
67+
"type":"structure",
68+
"members":{
69+
"arn":{"shape":"BillingViewArn"},
70+
"name":{"shape":"BillingViewName"},
71+
"ownerAccountId":{"shape":"AccountId"},
72+
"billingViewType":{"shape":"BillingViewType"}
73+
}
74+
},
75+
"BillingViewName":{
76+
"type":"string",
77+
"pattern":"[ a-zA-Z0-9_\\+=\\.\\-@]+",
78+
"sensitive":true
79+
},
80+
"BillingViewType":{
81+
"type":"string",
82+
"enum":[
83+
"PRIMARY",
84+
"BILLING_GROUP"
85+
]
86+
},
87+
"BillingViewsMaxResults":{
88+
"type":"integer",
89+
"box":true,
90+
"max":100,
91+
"min":1
92+
},
93+
"ErrorMessage":{
94+
"type":"string",
95+
"max":1024,
96+
"min":0
97+
},
98+
"FieldName":{
99+
"type":"string",
100+
"max":100,
101+
"min":0
102+
},
103+
"InternalServerException":{
104+
"type":"structure",
105+
"required":["message"],
106+
"members":{
107+
"message":{"shape":"ErrorMessage"}
108+
},
109+
"exception":true,
110+
"fault":true
111+
},
112+
"ListBillingViewsRequest":{
113+
"type":"structure",
114+
"required":["activeTimeRange"],
115+
"members":{
116+
"activeTimeRange":{"shape":"ActiveTimeRange"},
117+
"maxResults":{"shape":"BillingViewsMaxResults"},
118+
"nextToken":{"shape":"PageToken"}
119+
}
120+
},
121+
"ListBillingViewsResponse":{
122+
"type":"structure",
123+
"required":["billingViews"],
124+
"members":{
125+
"billingViews":{"shape":"BillingViewList"},
126+
"nextToken":{"shape":"PageToken"}
127+
}
128+
},
129+
"PageToken":{
130+
"type":"string",
131+
"max":2047,
132+
"min":1
133+
},
134+
"ThrottlingException":{
135+
"type":"structure",
136+
"required":["message"],
137+
"members":{
138+
"message":{"shape":"ErrorMessage"}
139+
},
140+
"exception":true
141+
},
142+
"Timestamp":{"type":"timestamp"},
143+
"ValidationException":{
144+
"type":"structure",
145+
"required":[
146+
"message",
147+
"reason"
148+
],
149+
"members":{
150+
"message":{"shape":"ErrorMessage"},
151+
"reason":{"shape":"ValidationExceptionReason"},
152+
"fieldList":{"shape":"ValidationExceptionFieldList"}
153+
},
154+
"exception":true
155+
},
156+
"ValidationExceptionField":{
157+
"type":"structure",
158+
"required":[
159+
"name",
160+
"message"
161+
],
162+
"members":{
163+
"name":{"shape":"FieldName"},
164+
"message":{"shape":"ErrorMessage"}
165+
}
166+
},
167+
"ValidationExceptionFieldList":{
168+
"type":"list",
169+
"member":{"shape":"ValidationExceptionField"}
170+
},
171+
"ValidationExceptionReason":{
172+
"type":"string",
173+
"enum":[
174+
"unknownOperation",
175+
"cannotParse",
176+
"fieldValidationFailed",
177+
"other"
178+
]
179+
}
180+
}
181+
}

0 commit comments

Comments
 (0)