---
title: "Changes to Read Badge Assertion"
method: GET
path: "/v1/badge_assertion/{badge_assertion_id}"
---

# Changes to Read Badge Assertion

`GET /v1/badge_assertion/{badge_assertion_id}`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 9 of 12 revisions.

- **2026-11-06** `04bf6727d360`: 2 info
- **2026-10-22** `5b575d75af2b`: 28 info
- **2026-10-06** `d2127ead6e50`: 2 warning, 3 info
- **2026-09-29** `88bdee3363ad`: 2 info
- **2026-09-24** `2e7136176810`: 10 info
- **2026-09-16** `db80baab3a0d`: 10 info
- **2026-09-11** `01172499a398`: 6 warning, 4 info
- **2026-08-06** `4039d06e340b`: 3 breaking, 34 warning, 4 info
- **2025-11-20** `6eb631bcc695`: 38 breaking, 111 warning, 9 info

## Changes

- **2026-11-06** `04bf6727d360`: 2 info
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/quality_assured_at` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/quality_assured_at` to the response with the `200` status
- **2026-10-22** `5b575d75af2b`: 28 info
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/credits_available` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/credits_unit` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/field_of_study` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/field_of_study_id` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/grade` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/qualification_code` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/qualification_framework` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/qualification_level` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/qualification_type` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/credits_earned` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/grade` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/provider/anyOf[subschema #1: Provider_Public]/email` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/provider/anyOf[subschema #1: Provider_Public]/enable_analytics` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/credits_available` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/credits_unit` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/field_of_study` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/field_of_study_id` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/grade` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/qualification_code` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/qualification_framework` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/qualification_level` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/qualification_type` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/credits_earned` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/grade` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/provider/anyOf[subschema #1: Provider_Public]/email` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/provider/anyOf[subschema #1: Provider_Public]/enable_analytics` to the response with the `200` status
  - added the required property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/display_level` to the response with the `200` status
  - added the required property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/display_level` to the response with the `200` status
- **2026-10-06** `d2127ead6e50`: 2 warning, 3 info
  - removed the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/qa_required` from the response with the `200` status
  - removed the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/qa_required` from the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/qa_locked` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/restorable_until` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/qa_locked` to the response with the `200` status
- **2026-09-29** `88bdee3363ad`: 2 info
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/certificates_enabled` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/certificates_enabled` to the response with the `200` status
- **2026-09-24** `2e7136176810`: 10 info
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/created_by/anyOf[subschema #1: User_Detail_Public]/visibility` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/published_by/anyOf[subschema #1: User_Detail_Public]/visibility` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/submitted_by/anyOf[subschema #1: User_Detail_Public]/visibility` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/updated_by/anyOf[subschema #1: User_Detail_Public]/visibility` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/recipient/anyOf[subschema #1: User_Detail_Public]/visibility` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/created_by/anyOf[subschema #1: User_Detail_Public]/visibility` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/published_by/anyOf[subschema #1: User_Detail_Public]/visibility` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/submitted_by/anyOf[subschema #1: User_Detail_Public]/visibility` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/updated_by/anyOf[subschema #1: User_Detail_Public]/visibility` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/recipient/anyOf[subschema #1: Badge_Assertion_Recipient_Public]/visibility` to the response with the `200` status
- **2026-09-16** `db80baab3a0d`: 10 info
  - the `noindex_enabled` response's property default value changed from `false` to `true` for the status `200`
  - the `noindex_enabled` response's property default value changed from `false` to `true` for the status `200`
  - the `noindex_enabled` response's property default value changed from `false` to `true` for the status `200`
  - the `noindex_enabled` response's property default value changed from `false` to `true` for the status `200`
  - the `noindex_enabled` response's property default value changed from `false` to `true` for the status `200`
  - the `noindex_enabled` response's property default value changed from `false` to `true` for the status `200`
  - the `noindex_enabled` response's property default value changed from `false` to `true` for the status `200`
  - the `noindex_enabled` response's property default value changed from `false` to `true` for the status `200`
  - the `noindex_enabled` response's property default value changed from `false` to `true` for the status `200`
  - the `noindex_enabled` response's property default value changed from `false` to `true` for the status `200`
- **2026-09-11** `01172499a398`: 6 warning, 4 info
  - removed the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/job_feed_companies` from the response with the `200` status
  - removed the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/job_feed_enabled` from the response with the `200` status
  - removed the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/job_feed_levels` from the response with the `200` status
  - removed the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/job_feed_companies` from the response with the `200` status
  - removed the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/job_feed_enabled` from the response with the `200` status
  - removed the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/job_feed_levels` from the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/specialized_occupations` to the response with the `200` status
  - added the optional property `anyOf[subschema #1: Badge_Assertion]/badge/anyOf[subschema #1: Badge]/title_names` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/specialized_occupations` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: Badge_Assertion_Public]/badge/anyOf[subschema #1: Badge]/title_names` to the response with the `200` status
- **2026-08-06** `4039d06e340b`: 3 breaking, 34 warning, 4 info
  - the response's body type changed from `object` to no type for status `200`
  - removed the required property `evidence` from the response with the `200` status
  - removed the required property `reject_code` from the response with the `200` status
  - removed the optional property `badge` from the response with the `200` status
  - removed the optional property `badge_id` from the response with the `200` status
  - removed the optional property `badge_issuer_id` from the response with the `200` status
  - removed the optional property `created_by_id` from the response with the `200` status
  - removed the optional property `end_date` from the response with the `200` status
  - removed the optional property `external_id` from the response with the `200` status
  - removed the optional property `external_url` from the response with the `200` status
  - removed the optional property `id` from the response with the `200` status
  - removed the optional property `image_url` from the response with the `200` status
  - removed the optional property `image_url_2x` from the response with the `200` status
  - removed the optional property `image_url_original` from the response with the `200` status
  - removed the optional property `issue_date` from the response with the `200` status
  - removed the optional property `issuer` from the response with the `200` status
  - removed the optional property `issuing_method` from the response with the `200` status
  - removed the optional property `narrative` from the response with the `200` status
  - removed the optional property `provider` from the response with the `200` status
  - removed the optional property `provider_id` from the response with the `200` status
  - removed the optional property `recipient` from the response with the `200` status
  - removed the optional property `recipient_email` from the response with the `200` status
  - removed the optional property `recipient_firstname` from the response with the `200` status
  - removed the optional property `recipient_id` from the response with the `200` status
  - removed the optional property `recipient_lastname` from the response with the `200` status
  - removed the optional property `recipient_organisation` from the response with the `200` status
  - removed the optional property `reminder_emails_sent` from the response with the `200` status
  - removed the optional property `revocation_reason` from the response with the `200` status
  - removed the optional property `seo_description` from the response with the `200` status
  - removed the optional property `seo_keywords` from the response with the `200` status
  - removed the optional property `seo_title` from the response with the `200` status
  - removed the optional property `source` from the response with the `200` status
  - removed the optional property `status` from the response with the `200` status
  - removed the optional property `time_created` from the response with the `200` status
  - removed the optional property `time_updated` from the response with the `200` status
  - removed the optional property `updated_by_id` from the response with the `200` status
  - removed the optional property `url` from the response with the `200` status
  - api operation id `read_badge_assertion_v1_badge_assertion__badge_assertion_id__get` removed and replaced with `badge_assertion_read_badge_assertion`
  - added the new optional `header` request parameter `X-Access-Token`
  - added `#/components/schemas/Badge_Assertion, #/components/schemas/Badge_Assertion_Public` to the response body `anyOf` list for the response status `200`
  - …1 more
- **2025-11-20** `6eb631bcc695`: 38 breaking, 111 warning, 9 info
  - response property `badge_id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `badge_issuer_id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `created_by_id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `end_date` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `evidence` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `external_id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `external_url` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `image_url` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `image_url_2x` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `image_url_original` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `issue_date` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `narrative` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `provider_id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `recipient_email` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `recipient_firstname` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `recipient_id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `recipient_lastname` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `recipient_organisation` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `reject_code` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `reminder_emails_sent` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `revocation_reason` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `seo_description` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `seo_keywords` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `seo_title` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `time_updated` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `updated_by_id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `url` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - the `external_url` response property's maxLength was unset from `65536` for the response status `200`
  - the `image_url` response property's maxLength was unset from `65536` for the response status `200`
  - the `image_url_2x` response property's maxLength was unset from `65536` for the response status `200`
  - the `image_url_original` response property's maxLength was unset from `65536` for the response status `200`
  - the `external_url` response property's minLength was decreased from `1` to `0` for the response status `200`
  - the `image_url` response property's minLength was decreased from `1` to `0` for the response status `200`
  - the `image_url_2x` response property's minLength was decreased from `1` to `0` for the response status `200`
  - the `image_url_original` response property's minLength was decreased from `1` to `0` for the response status `200`
  - the `badge` response's property type changed from `object` to no type for status `200`
  - the `provider` response's property type changed from `object` to no type for status `200`
  - the `recipient` response's property type changed from `object` to no type for status `200`
  - removed the optional property `badge/address` from the response with the `200` status
  - removed the optional property `badge/ai_generated` from the response with the `200` status
  - …118 more

---

[Operation](https://skmtc.dev/navigatr/apis/navigatr-api/docs/v1/badge_assertion/:badge_assertion_id/get.md) - [API](https://skmtc.dev/navigatr/apis/navigatr-api.md) - [Page](https://skmtc.dev/navigatr/apis/navigatr-api/changes/v1/badge_assertion/:badge_assertion_id/get)
