Am I doing this correctly? If I do a bulk campaign mutate and there are errors it throws an ApiException (see below). Each one of these is obviously relating to each campaign that failed but how do I get those details e.g. accountLimitType and enclosingId I need to know what campaign ids have failed.
ApiException: {
"message": "Request contains an invalid argument.",
"code": 3,
"status": "INVALID_ARGUMENT",
"details": [
{
"@type": 0,
"data": "type.googleapis.com\/google.ads.googleads.v2.errors.GoogleAdsFailure"
},
{
"@type": 0,
"data": [
{
"errorCode": {
"resourceCountLimitExceededError": "CAMPAIGN_LIMIT"
},
"message": "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.",
"trigger": {
"stringValue": ""
},
"location": {
"fieldPathElements": [
{
"fieldName": "operations",
"index": "0"
}
]
}
},
{
"errorCode": {
"resourceCountLimitExceededError": "CAMPAIGN_LIMIT"
},
"message": "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.",
"trigger": {
"stringValue": ""
},
"location": {
"fieldPathElements": [
{
"fieldName": "operations",
"index": "1"
}
]
}
},
{
"errorCode": {
"resourceCountLimitExceededError": "CAMPAIGN_LIMIT"
},
"message": "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.",
"trigger": {
"stringValue": ""
},
"location": {
"fieldPathElements": [
{
"fieldName": "operations",
"index": "2"
}
]
}
},
{
"errorCode": {
"resourceCountLimitExceededError": "CAMPAIGN_LIMIT"
},
"message": "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.",
"trigger": {
"stringValue": ""
},
"location": {
"fieldPathElements": [
{
"fieldName": "operations",
"index": "3"
}
]
}
},
{
"errorCode": {
"resourceCountLimitExceededError": "CAMPAIGN_LIMIT"
},
"message": "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.",
"trigger": {
"stringValue": ""
},
"location": {
"fieldPathElements": [
{
"fieldName": "operations",
"index": "4"
}
]
}
},
{
"errorCode": {
"resourceCountLimitExceededError": "CAMPAIGN_LIMIT"
},
"message": "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.",
"trigger": {
"stringValue": ""
},
"location": {
"fieldPathElements": [
{
"fieldName": "operations",
"index": "5"
}
]
}
},
{
"errorCode": {
"resourceCountLimitExceededError": "CAMPAIGN_LIMIT"
},
"message": "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.",
"trigger": {
"stringValue": ""
},
"location": {
"fieldPathElements": [
{
"fieldName": "operations",
"index": "6"
}
]
}
},
{
"errorCode": {
"resourceCountLimitExceededError": "CAMPAIGN_LIMIT"
},
"message": "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.",
"trigger": {
"stringValue": ""
},
"location": {
"fieldPathElements": [
{
"fieldName": "operations",
"index": "7"
}
]
}
},
{
"errorCode": {
"resourceCountLimitExceededError": "CAMPAIGN_LIMIT"
},
"message": "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.",
"trigger": {
"stringValue": ""
},
"location": {
"fieldPathElements": [
{
"fieldName": "operations",
"index": "8"
}
]
}
},
{
"errorCode": {
"resourceCountLimitExceededError": "CAMPAIGN_LIMIT"
},
"message": "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.",
"trigger": {
"stringValue": ""
},
"location": {
"fieldPathElements": [
{
"fieldName": "operations",
"index": "9"
}
]
}
},
{
"errorCode": {
"resourceCountLimitExceededError": "CAMPAIGN_LIMIT"
},
"message": "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.",
"trigger": {
"stringValue": ""
},
"location": {
"fieldPathElements": [
{
"fieldName": "operations",
"index": "10"
}
]
}
},