On This Page:
Application Server REST Endpoints
MC2 exposes a set of REST Endpoints. The REST endpoints are exposed directly on the Application Server on baseport + 207. For more information about calculating the REST endpoint port number, see Calculate MC2 Endpoints Port Numbers.
The baseport is 20000 + 220 = 20220 and the REST API port is 20427.
- You can access the page with the list of available Swagger definitions at http://appserverhostname:20427/eagle/v2/api-doc. This link provides a JSON document with the list of all available APIs grouped by resources.
- You can retrieve the full extract SWAGGER definition at http://appserverhostname:20427/eagle/v2/extract/api-doc.
- You can retrieve the SWAGGER for a Warehouse group that you can use at: http://xn--http-4b7a//appserverhostname:20427/eagle/v2/extract/api-doc.
Web Server REST Endpoints
After 2017R2, you can execute the requests listed above directly from the Eagle Web Server. After providing Eagle supported authentication credentials, you can access the web server using a web browser or a command-line tool, such as curl, to gain access. https://webserver/eagle/v2/api-doc.
Swagger UI REST Endpoint
The Swagger UI can be used to navigate the exposed REST endpoints and execute sample requests.
The Swagger UI REST Endpoint is exposed on 2017R2 and later environments at https://webserver/mc2/swagger-ui.html.
Execute Extract Service REST Requests
To execute an extract, you can use the SWAGGER definition to see all resource endpoints and parameters supported to build the URL. You can use either a Web Browser or a command line tool, such as curl, to execute REST requests.
For example, to retrieve an extract with one entity in JSON you can use either a HTTP GET or POST request.
In case of a GET request, you can pass filter parameters as a query parameter as shown below:
http://appserverhostname:20427/eagle/v2/entities?maxrows=1
Similarly, with a POST request, you can pass filter parameters within a JSON body with multiple parameters separated by a comma:
http://appserverhostname:20427/eagle/v2/entities { "maxrows": "1" }
In 2017R2, this is the format:
http://webserver/eagle/v2/entities?maxrows=1
To retrieve the result in EagleML, you can specify the output format as:
http://appserverhostname:20427/eagle/v2/entities?maxrows=1&outputformat=eagleml
To retrieve the extract compressed, you can specify the output format by appending +gzip:
http://appserverhostname:20427/eagle/v2/entities?maxrows=1&outputformat=eagleml+gzip
or
http://appserverhostname:20427/eagle/v2/entities?maxrows=1&outputformat=json+gzip
For a list of supported endpoints for EagleML extracts and their parameters/swagger files, see REST API Extracts.
The Eagle Extract Service REST requests return different results depending on the Force Empty Extract File parameter setting as described in Force Empty Extract File Generation.
Eagle Data Services REST Requests
You can execute the Eagle Data Services extracts through the EQL endpoint http://webserver/eagle/v2/eql/api-doc
or through the Generic Extract REST API http://webserver/eagle/v2/generic/extract/api-doc
See Run Data Services Extracts Using REST Requests for an example of execution.