---
description: This section covers updating the CR status in your operator code.
---

# Writing to the Status Subresource

{% hint style="info" %}
For more information on how to build a Go operator: [Guide to building a Go-based Operator using Operator SDK. ](https://sdk.operatorframework.io/docs/building-operators/golang/)
{% endhint %}

If you're building an operator in Go (using the SDK) or using some other language or framework, you'll need to make certain that you're updating the Status field of the CR with relevant info regarding the running state of the Custom Resource. When certifying your operator, the metadata scan will run the `operator-sdk scorecard` test against your metadata bundle.\
\
This test currently only checks that _something_  (can't be a null value) gets written to the `status` field of the CR by the operator before the default 60 second timeout of the `operator-sdk scorecard` test. So, if the operator takes longer than 60s to write the current status to the CR `status` field, then it will fail the scorecard and thus the metadata scan.\
\
To populate the status, the operator must write to the "/status" API endpoint of the CR, since updates posted to the API endpoint of the CR itself will ignore changes to the status field. Please note that this isn't a developer guide, so we don't go into code examples here, but the topic is covered in depth by both the upstream [Kubernetes Documentation](https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/#status-subresource) and the [Operator SDK Documentation](https://sdk.operatorframework.io/docs/building-operators/golang/advanced-topics/#manage-cr-status-conditions).

{% hint style="warning" %}
For more information please consult the [OpenShift Golang Operator Documentation](https://docs.openshift.com/container-platform/4.7/operators/operator_sdk/golang/osdk-golang-quickstart.html)
{% endhint %}





