CentralCSP
APIInventory Scripts

List inventory scripts

Lists every script seen on this website's payment pages, with its review status, justification, current hash, origin, and tags. This is the inventory PCI DSS 6.4.3 asks you to keep. Scripts appear here through reconciliation and are never created through the API. Filter by status, origin, or tags, use requiresAction to show only what still needs a decision, and search to match part of a script URL.

Requires the viewer role on the website and the compliance plan feature.

GET
/v1/workspaces/{workspaceId}/websites/{websiteId}/compliance/scripts

Authorization

AuthorizationBearer <token>

An OpenID Connect access token issued by Keycloak, acting as the signed-in user.

In: header

Path Parameters

workspaceId*string
websiteId*string

Query Parameters

cursor?string

The nextCursor of the previous page. Omit it to start from the beginning. A cursor encodes a position and is not meant to be built by hand.

limit*|

How many items to return, from 1 to 200.

Range1 <= value <= 200
Default50
status?|||

unreviewed means nobody has looked at it yet. justified means it is authorized at its current hash. needs_review means it was justified but its contents have since changed. unauthorized means it was judged not to belong on a payment page.

requiresAction?boolean

true returns only scripts still waiting for a decision, which is the review queue.

search?string

Match part of the script URL.

Lengthlength <= 255
originId?string

Only scripts served by this origin.

Lengthlength <= 36
tagIds?string

Comma-separated tag identifiers. A script matches if it carries any of them.

Lengthlength <= 2048
includeRetired?boolean

Also return scripts that have left the PCI scope. Off by default, so the list describes the live inventory.

Response Body

application/json

curl -X GET "https://api-next.centralcsp.com/v1/workspaces/string/websites/string/compliance/scripts?limit=50"
{  "data": [    {      "id": "string",      "websiteId": "string",      "subresourceUrl": "https://js.stripe.com/v3/",      "status": "unreviewed",      "justification": "string",      "originId": "string",      "origin": "https://js.stripe.com",      "tags": [        {          "id": "string",          "name": "string",          "color": "slate"        }      ],      "justifiedHash": "string",      "currentHash": "string",      "ruleId": "string",      "justifiedBy": "string",      "justifiedByUser": {        "id": "string",        "email": "string",        "firstName": "string",        "lastName": "string",        "picture": "string"      },      "justifiedAt": "2019-08-24T14:15:22Z",      "unauthorizedReason": "string",      "unauthorizedBy": "string",      "unauthorizedByUser": {        "id": "string",        "email": "string",        "firstName": "string",        "lastName": "string",        "picture": "string"      },      "unauthorizedAt": "2019-08-24T14:15:22Z",      "retiredAt": "2019-08-24T14:15:22Z",      "firstSeen": "2019-08-24T14:15:22Z",      "lastSeen": "2019-08-24T14:15:22Z",      "createdAt": "2019-08-24T14:15:22Z",      "updatedAt": "2019-08-24T14:15:22Z"    }  ],  "pagination": {    "nextCursor": "string",    "hasMore": true,    "total": 0  }}