Required. Immutable. The analysis note associated with this occurrence, in
the form ofprojects/[PROVIDER_ID]/notes/[NOTE_ID]. This field can be
used as a filter in list requests.
Required. Immutable. A URI that represents the resource for which the
occurrence applies. For example,https://gcr.io/project/image@sha256:123abcfor a Docker image.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThe latest version of the Grafeas V1 API class Occurrence is 3.7.0, with previous versions ranging from 3.6.0 down to 2.2.0 available for reference.\u003c/p\u003e\n"],["\u003cp\u003eThe Occurrence class represents an instance of an analysis type found on a resource and implements several interfaces including IMessage, IEquatable, IDeepCloneable, and IBufferMessage.\u003c/p\u003e\n"],["\u003cp\u003eThis class allows for managing various types of occurrences related to an analysis note, such as attestations, builds, compliance, deployments, discoveries, images, packages, upgrades, vulnerabilities and more.\u003c/p\u003e\n"],["\u003cp\u003eThe Occurrence class includes properties for tracking the creation and update times, as well as associating the occurrence with a specific resource and note via ResourceUri and NoteName respectively.\u003c/p\u003e\n"],["\u003cp\u003eThe class provides properties for details on specific types of occurrences, such as Attestation, Build, Compliance, Deployment, and Vulnerability, each referencing their corresponding Occurrence types.\u003c/p\u003e\n"]]],[],null,["# Grafeas v1 API - Class Occurrence (3.10.0)\n\nVersion latestkeyboard_arrow_down\n\n- [3.10.0 (latest)](/dotnet/docs/reference/Grafeas.V1/latest/Grafeas.V1.Occurrence)\n- [3.8.0](/dotnet/docs/reference/Grafeas.V1/3.8.0/Grafeas.V1.Occurrence)\n- [3.7.0](/dotnet/docs/reference/Grafeas.V1/3.7.0/Grafeas.V1.Occurrence)\n- [3.6.0](/dotnet/docs/reference/Grafeas.V1/3.6.0/Grafeas.V1.Occurrence)\n- [3.5.0](/dotnet/docs/reference/Grafeas.V1/3.5.0/Grafeas.V1.Occurrence)\n- [3.4.0](/dotnet/docs/reference/Grafeas.V1/3.4.0/Grafeas.V1.Occurrence)\n- [3.3.0](/dotnet/docs/reference/Grafeas.V1/3.3.0/Grafeas.V1.Occurrence)\n- [3.2.0](/dotnet/docs/reference/Grafeas.V1/3.2.0/Grafeas.V1.Occurrence)\n- [3.1.0](/dotnet/docs/reference/Grafeas.V1/3.1.0/Grafeas.V1.Occurrence)\n- [3.0.0](/dotnet/docs/reference/Grafeas.V1/3.0.0/Grafeas.V1.Occurrence)\n- [2.4.0](/dotnet/docs/reference/Grafeas.V1/2.4.0/Grafeas.V1.Occurrence)\n- [2.3.0](/dotnet/docs/reference/Grafeas.V1/2.3.0/Grafeas.V1.Occurrence)\n- [2.2.0](/dotnet/docs/reference/Grafeas.V1/2.2.0/Grafeas.V1.Occurrence) \n\n public sealed class Occurrence : IMessage\u003cOccurrence\u003e, IEquatable\u003cOccurrence\u003e, IDeepCloneable\u003cOccurrence\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Grafeas v1 API class Occurrence.\n\nAn instance of an analysis type that has been found on a resource. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e Occurrence \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[Occurrence](/dotnet/docs/reference/Grafeas.V1/latest/Grafeas.V1.Occurrence), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[Occurrence](/dotnet/docs/reference/Grafeas.V1/latest/Grafeas.V1.Occurrence), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[Occurrence](/dotnet/docs/reference/Grafeas.V1/latest/Grafeas.V1.Occurrence), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Grafeas.V1](/dotnet/docs/reference/Grafeas.V1/latest/Grafeas.V1)\n\nAssembly\n--------\n\nGrafeas.V1.dll\n\nConstructors\n------------\n\n### Occurrence()\n\n public Occurrence()\n\n### Occurrence(Occurrence)\n\n public Occurrence(Occurrence other)\n\nProperties\n----------\n\n### Attestation\n\n public AttestationOccurrence Attestation { get; set; }\n\nDescribes an attestation of an artifact.\n\n### Build\n\n public BuildOccurrence Build { get; set; }\n\nDescribes a verifiable build.\n\n### Compliance\n\n public ComplianceOccurrence Compliance { get; set; }\n\nDescribes a compliance violation on a linked resource.\n\n### CreateTime\n\n public Timestamp CreateTime { get; set; }\n\nOutput only. The time this occurrence was created.\n\n### Deployment\n\n public DeploymentOccurrence Deployment { get; set; }\n\nDescribes the deployment of an artifact on a runtime.\n\n### DetailsCase\n\n public Occurrence.DetailsOneofCase DetailsCase { get; }\n\n### Discovery\n\n public DiscoveryOccurrence Discovery { get; set; }\n\nDescribes when a resource was discovered.\n\n### DsseAttestation\n\n public DSSEAttestationOccurrence DsseAttestation { get; set; }\n\nDescribes an attestation of an artifact using dsse.\n\n### Envelope\n\n public Envelope Envelope { get; set; }\n\n\u003chttps://github.com/secure-systems-lab/dsse\u003e\n\n### Image\n\n public ImageOccurrence Image { get; set; }\n\nDescribes how this resource derives from the basis in the associated\nnote.\n\n### Kind\n\n public NoteKind Kind { get; set; }\n\nOutput only. This explicitly denotes which of the occurrence details are\nspecified. This field can be used as a filter in list requests.\n\n### Name\n\n public string Name { get; set; }\n\nOutput only. The name of the occurrence in the form of\n`projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.\n\n### NoteName\n\n public string NoteName { get; set; }\n\nRequired. Immutable. The analysis note associated with this occurrence, in\nthe form of `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. This field can be\nused as a filter in list requests.\n\n### OccurrenceName\n\n public OccurrenceName OccurrenceName { get; set; }\n\n[OccurrenceName](/dotnet/docs/reference/Grafeas.V1/latest/Grafeas.V1.OccurrenceName)-typed view over the [Name](/dotnet/docs/reference/Grafeas.V1/latest/Grafeas.V1.Occurrence#Grafeas_V1_Occurrence_Name) resource name property.\n\n### Package\n\n public PackageOccurrence Package { get; set; }\n\nDescribes the installation of a package on the linked resource.\n\n### Remediation\n\n public string Remediation { get; set; }\n\nA description of actions that can be taken to remedy the note.\n\n### ResourceUri\n\n public string ResourceUri { get; set; }\n\nRequired. Immutable. A URI that represents the resource for which the\noccurrence applies. For example,\n`https://gcr.io/project/image@sha256:123abc` for a Docker image.\n\n### SbomReference\n\n public SBOMReferenceOccurrence SbomReference { get; set; }\n\nDescribes a specific SBOM reference occurrences.\n\n### Secret\n\n public SecretOccurrence Secret { get; set; }\n\nDescribes a secret.\n\n### UpdateTime\n\n public Timestamp UpdateTime { get; set; }\n\nOutput only. The time this occurrence was last updated.\n\n### Upgrade\n\n public UpgradeOccurrence Upgrade { get; set; }\n\nDescribes an available package upgrade on the linked resource.\n\n### Vulnerability\n\n public VulnerabilityOccurrence Vulnerability { get; set; }\n\nDescribes a security vulnerability."]]