For Developers

Get Audit Log Event

This model is part of an upcoming API update which is currently in beta and therefore subject to change.

GET https://ed.link/api/v2/audit/events/:event_id

Retrieve a single recorded Event by its id.

You must provide your application secret key in order to access this endpoint. This authentication mechanism is a little bit different than most other requests in our API because it is not made in the "scope" of one particular integration or person. You can find your application secret on the Edlink dashboard.

Request Parameters

ParameterTypeDescription
event_idstringThe UUID of the desired Event.

Sample Request

axios.get('https://ed.link/api/v2/audit/events/00000000-0000-0000-0000-000000000000', {
    headers: {
        authorization: `Bearer ${application_secret_key}`
    }
});

Sample Response

The original data supplied when the Event was created will be returned in the $data field. action_type comes from the Schema for this action (other if none). schema is present when a Schema validated the Event. If before was empty, the stored payload is returned as data. If before was set, before and after are returned instead of data. Fields whose type is Edlink-preferred may include a matching Edlink model under a details property.

{
    "$request": "00000000-0000-0000-0000-000000000000",
    "$data": {
        "id": "00000000-0000-0000-0000-000000000000",
        "created_date": "2026-06-02T18:00:24.573Z",
        "schema": "00000000-0000-0000-0000-000000000000",
        "actor": {
            "identifiers": [
                { "value": "00000000-0000-0000-0000-000000000000", "issuer": "edlink" },
                { "value": "acme_user_42", "issuer": "acme" }
            ],
            "type": "person",
            "details": {
                "id": "00000000-0000-0000-0000-000000000000",
                "first_name": "George",
                "last_name": "Bluth",
                "display_name": "Gob Bluth",
                "roles": ["student"],
                "email": "gob.bluth@example.com"
            }
        },
        "action": "assignment.submit",
        "action_type": "create",
        "severity": "medium",
        "targets": [
            {
                "identifiers": [{ "value": "00000000-0000-0000-0000-000000000000", "issuer": "edlink", "name": "Midterm Essay" }],
                "type": "assignment",
                "details": {
                    ... filled in from Edlink's data set
                }
            },
            {
                "identifiers": [{ "value": "00000000-0000-0000-0000-000000000000", "issuer": "edlink" }],
                "type": "class",
                "details": {
                    ... filled in from Edlink's data set
                }
            }
        ],
        "scope": "acme-tenant-7f3a",
        "institution": "00000000-0000-0000-0000-000000000000",
        "context": {
            "user_agent": "Chrome/123"
        },
        "data": {}
    }
}

When the Event was recorded with before and after, those fields are returned instead of data:

{
    "$request": "00000000-0000-0000-0000-000000000000",
    "$data": {
        "id": "00000000-0000-0000-0000-000000000000",
        "action": "resource.update",
        "action_type": "update",
        "before": {
            "resource_name": "Draft"
        },
        "after": {
            "resource_name": "Published"
        }
    }
}