Return All Line Items for One Invoice by Invoice ID
Query the lineItems of the specified invoice and return the result JSON. A unique 24-hexadecimal digit string identifies the invoice.
Path parameters
-
Unique 24-hexadecimal digit string that identifies the organization that contains your projects. Use the /orgs endpoint to retrieve all organizations to which the authenticated user has access.
Format should match the following pattern:
^([a-f0-9]{24})$
. -
Unique 24-hexadecimal digit string that identifies the invoice submitted to the specified organization. Charges typically post the next day.
Format should match the following pattern:
^([a-f0-9]{24})$
.
Query parameters
-
Flag that indicates whether Application wraps the response in an
envelope
JSON object. Some API clients cannot access the HTTP response headers or status code. To remediate this, set envelope=true in the query. Endpoints that return a list of results use the results object as an envelope. Application adds the status parameter to the response body.Default value is
false
. -
Number of items that the response returns per page.
Minimum value is
1
, maximum value is500
. Default value is100
. -
Number of the page that displays the current set of the total objects that the response returns.
Minimum value is
1
. Default value is1
.
Body
Required
Filter parameters for the lineItems query. Send a request with an empty JSON body to retrieve all line items for a given invoiceID without applying any filters.
-
Request body which contains various fields to filter line items as part of certain Invoice Usage Details queries.
-
Specify the field used to specify how to sort query results. Default to bill date.
Values are
USAGE_DATES
,BILL_DATES
, orTOTAL_PRICE_CENTS
. -
Specify the sort order (ascending / descending) used to specify how to sort query results. Defaults to descending.
Values are
ASCENDING
orDESCENDING
.
atlas api queryLineItemsFromSingleInvoice --help
import (
"os"
"context"
"log"
sdk "go.mongodb.org/atlas-sdk/v20250312001/admin"
)
func main() {
ctx := context.Background()
clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")
client, err := sdk.NewClient(
sdk.UseOAuthAuth(clientID, clientSecret),
sdk.UseBaseURL(url))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.QueryLineItemsFromSingleInvoiceApiParams{}
sdkResp, httpResp, err := client.InvoicesApi.
QueryLineItemsFromSingleInvoiceWithParams(ctx, params).
Execute()
}
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/invoices/{invoiceId}/lineItems:search?pretty=true"
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/invoices/{invoiceId}/lineItems:search?pretty=true"
{
"filters": {
"billEndDate": "2025-05-04",
"billStartDate": "2025-05-04",
"clusterIds": [
"32b6e34b3d91647abb20e7b8"
],
"groupIds": [
"32b6e34b3d91647abb20e7b8"
],
"includeZeroCentLineItems": true,
"skuServices": [
"Atlas"
],
"usageEndDate": "2025-05-04",
"usageStartDate": "2025-05-04"
},
"sortField": "USAGE_DATES",
"sortOrder": "ASCENDING"
}
{
"links": [
{
"href": "https://cloud.mongodb.com/api/atlas",
"rel": "self"
}
],
"results": [
{
"billDate": "2025-05-04T09:42:00Z",
"clusterName": "string",
"description": "string",
"groupId": "32b6e34b3d91647abb20e7b8",
"quantity": 42.0,
"totalPriceCents": 42,
"unitPriceDollars": 42.0,
"usageDate": "2025-05-04T09:42:00Z"
}
],
"totalCount": 42
}
{
"error": 400,
"detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
"reason": "Bad Request",
"errorCode": "VALIDATION_ERROR"
}
{
"error": 401,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Unauthorized",
"errorCode": "NOT_ORG_GROUP_CREATOR"
}
{
"error": 403,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Forbidden",
"errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
{
"error": 404,
"detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
"reason": "Not Found",
"errorCode": "RESOURCE_NOT_FOUND"
}
{
"error": 500,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Internal Server Error",
"errorCode": "UNEXPECTED_ERROR"
}