Skip to main content

Root Cause Changes (RCC)

Use the Root Cause Changes REST API to connect your organization's change records to BigPanda.

Use the Changes REST API to push change feed updates into BigPanda. The change data is then ingested by BigPanda, where all the original change system's fields and active states are converted into BigPanda's Change object.

The resulting data is displayed in the Changes table. The data fields in the table can be customized using the Changes REST API.

To learn more about integrating tools using the BigPanda Changes API, see the Changes Integration Documentation.

RCC rate limitations

To maintain optimal system health, the BigPanda rate limitation for Root Cause Changes is capped at max. 400 changes per minute and 50K changes per week.

Additional requests will return a 429 response code and the request will need to be retried.

Root Cause Changes

Authentication

All BigPanda APIs require Bearer Token Authorization in the call headers.

This API uses the User API Key type of Authorization token.

BigPanda recommends adding Authentication headers only in the secure tool you use to make API calls.

Retrieve All Changes Results Limit

By default, the results limit is set to 200. The limit can be up to 999.

Example 16. Create or update a change
curl --request POST \
     --url https://api.bigpanda.io/data/changes \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <User API KEY>' \
     --header 'x-bp-app-key: <APP KEY>' \
     --data '{
   "identifier":"CNG-166146",
   "tags":{
      "sys_id":"system_123",
      "type":"risky"
   },
   "ticket_url":"https://jira.link.com/ticket?change=chng123",
   "summary":"Update to Contrail configuration for CAP to reduce network processing overhead",
   "end":1979723984,
   "start":1879723984,
   "status":"Done"
}'
curl --request POST \
     --url https://eu-api.bigpanda.io/data/changes \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <User API KEY>' \
     --header 'x-bp-app-key: <APP KEY>' \
     --data '{
   "identifier":"CNG-166146",
   "tags":{
      "sys_id":"system_123",
      "type":"risky"
   },
   "ticket_url":"https://jira.link.com/ticket?change=chng123",
   "summary":"Update to Contrail configuration for CAP to reduce network processing overhead",
   "end":1979723984,
   "start":1879723984,
   "status":"Done"
}'


Example 17. Retrieve a change
curl --request GET \
     --url https://api.bigpanda.io/resources/v2.0/changes/555bbb9e7 \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>'
curl --request GET \
     --url https://eu-api.bigpanda.io/resources/v2.0/changes/555bbb9e7 \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>'


Example 18. Retrieve all changes
curl --request GET \
     --url https://eu-api.bigpanda.io/resources/v2.0/changes?end_time_frame=1706717429&start_time_frame=1706716229&search="prod-1705811337" \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>'
curl --request GET \
     --url https://eu-api.bigpanda.io/resources/v2.0/changes?end_time_frame=1706717429&start_time_frame=1706716229&search="prod-1705811337" \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>'


Example 19. Example change response body
        {
            "_id": "67c717be4c7db0082da37293",
            "identifier": "CHS73462267",
            "created_at": 1741100990,
            "end": 1741101134,
            "maintenance_condition": null,
            "source_system": "changes.sd_plus",
            "start": 1741100769,
            "status": "In Progress",
            "summary": "Update payment processing service to return list of objects and not single object",
            "tags": {
                "Assignee": "Shunyun",
                "Change Location": "east-2a",
                "Instance": "claim-77.sfo.prd.feifeing.ai",
                "Approving Manager": "Bob Jack",
                "Environment": "Production",
                "Approval": "Approved",
                "Risk Impact": "Medium"
            },
            "ticket_url": "https://www.servicenow.com/CHS73462267",
            "updated_at": 1741100990,
            "id": "67c717be4c7db0082da37293"
        }


Example 20. Create an RCC relation
curl --request POST \
     --url https://api.bigpanda.io/resources/v2.0/rcc/ \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>' \
     --header ' x-bp-app-key: <APP_KEY>' \
     --data '{
"change_id": "5dcb27ccbc5b3e3",
"incident_id": "5e0b5de5d47a7fa",
"comment": "YourComment",
"match_certainty": "SUSPECT"
}'
curl --request POST \
     --url https://eu-api.bigpanda.io/resources/v2.0/rcc/ \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>' \
     --header ' x-bp-app-key: <APP_KEY>' \
     --data '{
"change_id": "5dcb27ccbc5b3e3",
"incident_id": "5e0b5de5d47a7fa",
"comment": "YourComment",
"match_certainty": "SUSPECT"
}'


Example 21. Retrieve an RCC relation
curl --request GET \
     --url  https://api.bigpanda.io/resources/v2.0/rcc/5550a97edd3aa \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>'
curl --request GET \
     --url  https://eu-api.bigpanda.io/resources/v2.0/rcc/5550a97edd3aa \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>'


Example 22. Retrieve all RCC relations for an incident
curl --request GET \
     --url https://api.bigpanda.io/resources/v2.0/rcc?incident_id={incident_id} \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>'
curl --request GET \
     --url https://eu-api.bigpanda.io/resources/v2.0/rcc?incident_id={incident_id} \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>'


Example 23. Retrieve all RCC relations for a change
curl --request GET \
     --url https://api.bigpanda.io/resources/v2.0/rcc?change_identifier=CHS48476739&include_history=true \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>'
curl --request GET \
     --url https://eu-api.bigpanda.io/resources/v2.0/rcc?change_identifier=CHS48476739&include_history=true \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>'


Example 24. Update an RCC relation
curl --request PUT \
     --url https://api.bigpanda.io/resources/v2.0/rcc/5e20dd3aa \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>' \
     --header 'x-bp-app-key: <your app key>' \
     --data '{
"comment": "YourComment",
"match_certainty": "SUSPECT"
}'
curl --request PUT \
     --url https://eu-api.bigpanda.io/resources/v2.0/rcc/5e20dd3aa \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <USER API KEY>' \
     --header 'x-bp-app-key: <your app key>' \
     --data '{
"comment": "YourComment",
"match_certainty": "SUSPECT"
}'