Apigee API . organizations . environments . queries

Instance Methods

create(parent, body=None, x__xgafv=None)

Submit a query to be processed in the background.

get(name, x__xgafv=None)

Get query status

getResult(name, x__xgafv=None)

After the query is completed, use this API to retrieve the results.

list(parent, from=None, to=None, dataset=None, inclQueriesWithoutReport=None, submittedBy=None, status=None, x__xgafv=None)

Return a list of Asynchronous Queries

Method Details

create(parent, body=None, x__xgafv=None)
Submit a query to be processed in the background.
If the submission of the query succeeds, the API returns a 201 status and
an ID that refer to the query. In addition to the HTTP status 201, the
`state` of "enqueued" means that the request succeeded.

Args:
  parent: string, Required. The parent organization and environment names.
Must be of the form `organizations/{org}/environments/{env}`. (required)
  body: object, The request body.
    The object takes the form of:

{
    "groupByTimeUnit": "A String", # Time unit used to group the result set.
        # Valid values include: second, minute, hour, day, week, or month.
        # If a query includes groupByTimeUnit, then the result is an aggregation
        # based on the specified time unit and the resultant timestamp does not
        # include milliseconds precision.
        # If a query omits groupByTimeUnit, then the resultant timestamp includes
        # milliseconds precision.
    "outputFormat": "A String", # Valid values include: `csv` or `json`. Defaults to `json`.
        # Note: Configure the delimiter for CSV output using the csvDelimiter
        # property.
    "name": "A String", # Asynchronous Query Name.
    "filter": "A String", # Boolean expression that can be used to filter data.
        # Filter expressions can be combined using AND/OR terms and should be fully
        # parenthesized to avoid ambiguity. See Analytics metrics, dimensions, and
        # filters reference
        # https://docs.apigee.com/api-platform/analytics/analytics-reference
        # for more information on the fields available to filter
        # on. For more information on the tokens that you use to build filter
        # expressions, see Filter expression syntax.
        # https://docs.apigee.com/api-platform/analytics/asynch-reports-api#filter-expression-syntax
    "dimensions": [ # A list of dimensions
        # https://docs.apigee.com/api-platform/analytics/analytics-reference#dimensions
      "A String",
    ],
    "limit": 42, # Maximum number of rows that can be returned in the result.
    "csvDelimiter": "A String", # Delimiter used in the CSV file, if `outputFormat` is set
        # to `csv`. Defaults to the `,` (comma) character.
        # Supported delimiter characters include comma (`,`), pipe (`|`),
        # and tab (`\t`).
    "reportDefinitionId": "A String", # Asynchronous Report ID.
    "metrics": [ # A list of Metrics
      { # More info about Metric:
          # https://docs.apigee.com/api-platform/analytics/analytics-reference#metrics
        "function": "A String", # Aggregation function: avg, min, max, or sum
        "name": "A String", # Required. Metric name
        "alias": "A String", # Alias for the metric. Alias will be used to replace metric name
            # in query results.
        "operator": "A String", # One of `+`, `-`, `/`, `%`, `*`
        "value": "A String", # Operand value should be provided when operator is set.
      },
    ],
    "timeRange": "", # Required. Time range for the query.
        # Can use the following predefined strings to specify the time range:
        #   `last60minutes`
        #   `last24hours`
        #   `last7days`
        # Or, specify the timeRange as a structure describing start and end
        # timestamps in the ISO format: yyyy-mm-ddThh:mm:ssZ.
        # 
        # Example:
        #   "timeRange": {
        #     "start": "2018-07-29T00:13:00Z",
        #     "end": "2018-08-01T00:18:00Z"
        #   }
  }

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    {
    "executionTime": "A String", # ExecutionTime is available only after the query is completed
    "created": "A String", # Creation time of the query
    "result": { # Result is available only after the query is completed
      "self": "A String", # Self link of the query results
          #
          # Example:
          # `/organizations/myorg/environments/myenv/queries/9cfc0d85-0f30-46d6-ae6f-318d0cb961bd/result`
      "expires": "A String", # Query result will be unaccessable after this time.
    },
    "error": "A String", # Error is set when query fails
    "resultFileSize": "A String", # ResultFileSize is available only after the query is completed
    "resultRows": "A String", # ResultRows is available only after the query is completed
    "reportDefinitionId": "A String", # Asynchronous Report ID.
    "state": "A String", # Query state could be "enqueued", "running", "completed",
        # "failed"
    "updated": "A String", # Last updated timestamp for the query
    "self": "A String", # Self link of the query
        #
        # Example:
        # `/organizations/myorg/environments/myenv/queries/9cfc0d85-0f30-46d6-ae6f-318d0cb961bd`
    "name": "A String", # Asynchronous Query Name.
    "queryParams": { # Contains information like metrics, dimenstions etc
        # of the AsyncQuery
      "startTimestamp": "A String", # Start timestamp of the query range.
      "outputFormat": "A String", # Output format.
      "endTimestamp": "A String", # End timestamp of the query range.
      "timeUnit": "A String", # Query GroupBy time unit.
      "dimensions": [ # Dimensions of the AsyncQuery.
        "A String",
      ],
      "metrics": [ # Metrics of the AsyncQuery.
          #
          # Example: ["name:message_count,func:sum,alias:sum_message_count"]
        "A String",
      ],
    },
  }
get(name, x__xgafv=None)
Get query status
If the query is still in progress, the `state` is set to "running"
After the query has completed successfully, `state` is set to "completed"

Args:
  name: string, Required. Name of the asynchronous query to get. Must be of the form
`organizations/{org}/environments/{env}/queries/{queryId}`. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    {
    "executionTime": "A String", # ExecutionTime is available only after the query is completed
    "created": "A String", # Creation time of the query
    "result": { # Result is available only after the query is completed
      "self": "A String", # Self link of the query results
          #
          # Example:
          # `/organizations/myorg/environments/myenv/queries/9cfc0d85-0f30-46d6-ae6f-318d0cb961bd/result`
      "expires": "A String", # Query result will be unaccessable after this time.
    },
    "error": "A String", # Error is set when query fails
    "resultFileSize": "A String", # ResultFileSize is available only after the query is completed
    "resultRows": "A String", # ResultRows is available only after the query is completed
    "reportDefinitionId": "A String", # Asynchronous Report ID.
    "state": "A String", # Query state could be "enqueued", "running", "completed",
        # "failed"
    "updated": "A String", # Last updated timestamp for the query
    "self": "A String", # Self link of the query
        #
        # Example:
        # `/organizations/myorg/environments/myenv/queries/9cfc0d85-0f30-46d6-ae6f-318d0cb961bd`
    "name": "A String", # Asynchronous Query Name.
    "queryParams": { # Contains information like metrics, dimenstions etc
        # of the AsyncQuery
      "startTimestamp": "A String", # Start timestamp of the query range.
      "outputFormat": "A String", # Output format.
      "endTimestamp": "A String", # End timestamp of the query range.
      "timeUnit": "A String", # Query GroupBy time unit.
      "dimensions": [ # Dimensions of the AsyncQuery.
        "A String",
      ],
      "metrics": [ # Metrics of the AsyncQuery.
          #
          # Example: ["name:message_count,func:sum,alias:sum_message_count"]
        "A String",
      ],
    },
  }
getResult(name, x__xgafv=None)
After the query is completed, use this API to retrieve the results.
If the request succeeds, and there is a non-zero result set, the result is
downloaded to the client as a zipped JSON file.
The name of the downloaded file will be:
  OfflineQueryResult-<query-id>.zip

Example: `OfflineQueryResult-9cfc0d85-0f30-46d6-ae6f-318d0cb961bd.zip`

Args:
  name: string, Required. Name of the asynchronous query result to get. Must be of the
form `organizations/{org}/environments/{env}/queries/{queryId}/result`. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Message that represents an arbitrary HTTP body. It should only be used for
        # payload formats that can't be represented as JSON, such as raw binary or
        # an HTML page.
        #
        #
        # This message can be used both in streaming and non-streaming API methods in
        # the request as well as the response.
        #
        # It can be used as a top-level request field, which is convenient if one
        # wants to extract parameters from either the URL or HTTP template into the
        # request fields and also want access to the raw HTTP body.
        #
        # Example:
        #
        #     message GetResourceRequest {
        #       // A unique request id.
        #       string request_id = 1;
        #
        #       // The raw HTTP body is bound to this field.
        #       google.api.HttpBody http_body = 2;
        #     }
        #
        #     service ResourceService {
        #       rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);
        #       rpc UpdateResource(google.api.HttpBody) returns
        #       (google.protobuf.Empty);
        #     }
        #
        # Example with streaming methods:
        #
        #     service CaldavService {
        #       rpc GetCalendar(stream google.api.HttpBody)
        #         returns (stream google.api.HttpBody);
        #       rpc UpdateCalendar(stream google.api.HttpBody)
        #         returns (stream google.api.HttpBody);
        #     }
        #
        # Use of this type only changes how the request and response bodies are
        # handled, all other features will continue to work unchanged.
      "extensions": [ # Application specific response metadata. Must be set in the first response
          # for streaming APIs.
        {
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      ],
      "contentType": "A String", # The HTTP Content-Type header value specifying the content type of the body.
      "data": "A String", # The HTTP request/response body as raw binary.
    }
list(parent, from=None, to=None, dataset=None, inclQueriesWithoutReport=None, submittedBy=None, status=None, x__xgafv=None)
Return a list of Asynchronous Queries

Args:
  parent: string, Required. The parent organization and environment names.
Must be of the form `organizations/{org}/environments/{env}`. (required)
  from: string, Filter response list by returning asynchronous queries that
created after this date time.
Time must be in ISO date-time format like '2011-12-03T10:15:30Z'.
  to: string, Filter response list by returning asynchronous queries that
created before this date time.
Time must be in ISO date-time format like '2011-12-03T10:16:30Z'.
  dataset: string, Filter response list by dataset.

Example: `api`, `mint`
  inclQueriesWithoutReport: string, Flag to include asynchronous queries that don't have a report
denifition.
  submittedBy: string, Filter response list by user who submitted queries
  status: string, Filter response list by asynchronous query status
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The response for ListAsyncQueries
    "queries": [ # The asynchronous queries belong to requested organization and environment
      {
        "executionTime": "A String", # ExecutionTime is available only after the query is completed
        "created": "A String", # Creation time of the query
        "result": { # Result is available only after the query is completed
          "self": "A String", # Self link of the query results
              #
              # Example:
              # `/organizations/myorg/environments/myenv/queries/9cfc0d85-0f30-46d6-ae6f-318d0cb961bd/result`
          "expires": "A String", # Query result will be unaccessable after this time.
        },
        "error": "A String", # Error is set when query fails
        "resultFileSize": "A String", # ResultFileSize is available only after the query is completed
        "resultRows": "A String", # ResultRows is available only after the query is completed
        "reportDefinitionId": "A String", # Asynchronous Report ID.
        "state": "A String", # Query state could be "enqueued", "running", "completed",
            # "failed"
        "updated": "A String", # Last updated timestamp for the query
        "self": "A String", # Self link of the query
            #
            # Example:
            # `/organizations/myorg/environments/myenv/queries/9cfc0d85-0f30-46d6-ae6f-318d0cb961bd`
        "name": "A String", # Asynchronous Query Name.
        "queryParams": { # Contains information like metrics, dimenstions etc
            # of the AsyncQuery
          "startTimestamp": "A String", # Start timestamp of the query range.
          "outputFormat": "A String", # Output format.
          "endTimestamp": "A String", # End timestamp of the query range.
          "timeUnit": "A String", # Query GroupBy time unit.
          "dimensions": [ # Dimensions of the AsyncQuery.
            "A String",
          ],
          "metrics": [ # Metrics of the AsyncQuery.
              #
              # Example: ["name:message_count,func:sum,alias:sum_message_count"]
            "A String",
          ],
        },
      },
    ],
  }