Get started
Authentication
To use the Build Management API, you need to authenticate with an access token with specific scopes.
Before you begin
If you use the Build Management API for the first time:
- Decide which scopes you need.
- Register the API in Guidewire Hub. For details on how to register the API, see Access Cloud Platform APIs in the Cloud Platform documentation.
If you already registered the Build Management API and obtained the necessary credentials:
- Get an access token with the supported scopes.
- Use the generated token to make an authorized call.
Supported scopes
The Build Management API supports the following read and write scopes:
| Scope | Description |
|---|---|
buildmanagementservice.builds.read | With this scope you can: - Get a list of build definitions, parameters, branches, and builds. - Get a build by a specific build ID or build number. - Access a list of artifacts. - Download individual artifacts. - Get build logs for troubleshooting or audit actions. |
buildmanagementservice.builds.write | With this scope you can run and cancel builds. |
The above scopes need to be combined with one of the following additional scopes:
| Scope | Description |
|---|---|
[tenant.{TENANT_ID} + any.project] | With this scope you can access a specific tenant and any star within this tenant. |
[tenant.{TENANT_ID} + project.{STAR_ID}] | With this scope you can access a specific tenant and a specific star within this tenant. |
Get an access token with supported scopes
To get an access token with scopes, you must authenticate with Guidewire Hub using your scopes, client ID, and client secret. Send the following POST request:
curl -s --location --request POST ${GWHUB_URL} \
--data-urlencode "grant_type=client_credentials" \
--data-urlencode "scope=tenant.${TENANT_ID} project.${STAR_ID} ${SCOPES}" \
--data-urlencode "client_id=${GWHUB_CLIENT_ID}" \
--data-urlencode "client_secret=${GWHUB_CLIENT_SECRET}" | jq -r '.access_token'
Where:
-
${GWHUB_URL}depends on your region. Use one of the following:Region URL AMER https://guidewire-hub.okta.com/oauth2/aus11vix3uKEpIfSI357/v1/tokenBRAZIL https://guidewire-hub.okta.com/oauth2/aus11vix3uKEpIfSI357/v1/tokenCANADA https://guidewire-hub.okta.com/oauth2/aus11vix3uKEpIfSI357/v1/tokenEMEA https://guidewire-hub-eu.okta.com/oauth2/ausc2q01c40dNZII0416/v1/tokenSWITZERLAND https://guidewire-hub-eu.okta.com/oauth2/ausc2q01c40dNZII0416/v1/tokenAPAC https://guidewire-hub-apac.okta.com/oauth2/ausbg05gfcTZQ7bpH3l6/v1/tokenJAPAN https://guidewire-hub-apac.okta.com/oauth2/ausbg05gfcTZQ7bpH3l6/v1/token -
${SCOPES}can contain thebuildmanagementservice.builds.readorbuildmanagementservice.builds.writescope or both scopes. For details on how to get or extend scopes, see Access Cloud Platform APIs. -
${GWHUB_CLIENT_ID}is a unique identifier for the application that you use to obtain a token from Guidewire Hub. For details on how to get the client ID, see Access Cloud Platform APIs. -
${GWHUB_CLIENT_SECRET}is a secret for the application that you use to obtain a token from Guidewire Hub. For details on how to get the client secret, see Access Cloud Platform APIs.
The response contains a JSON object with the requested access token:
{
"token_type": "Bearer",
"expires_in": 3600,
"access_token": "xxxxxxxx",
"scope": "buildmanagementservice.builds.read tenant.${TENANT_ID} project.${STAR_ID}"
}
Make an authorized call
To authorize the API requests, add the obtained access token to an Authorization header:
Authorization: Bearer ${ACCESS_TOKEN}
For example:
curl -s --location --request GET "${BUILD_MANAGEMENT_SERVICE_URL}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${ACCESS_TOKEN}"
Base URLs
Depending on your region, use one of the following base URLs:
| Region | URL |
|---|---|
| AMER | https://buildmanagementservice.api.omega2-andromeda.guidewire.net |
| BRAZIL | https://buildmanagementservice.api.omega2-sculptor.guidewire.net |
| CANADA | https://buildmanagementservice.api.omega2-butterfly.guidewire.net |
| EMEA | https://buildmanagementservice.api.omega2-cartwheel.guidewire.net |
| SWITZERLAND | https://buildmanagementservice.api.omega2-whirlpool.guidewire.net |
| APAC | https://buildmanagementservice.api.omega2-circinus.guidewire.net |
| JAPAN | https://buildmanagementservice.api.omega2-milkyway.guidewire.net |
When the documentation refers to {baseUrl}, replace it with the correct URL for your region.