Kuadrant / Kuadrant/developer-portal-controller
Add reference documentation for APIKeyRequest CRD
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 2
- Forks
- 12
- Avg merge
- 13h 37m
- Merged PRs (30d)
- 5
Description
Summary
Add a reference documentation page for the APIKeyRequest custom resource definition (CRD).
Background
APIKeyRequest is the shadow resource created by the APIKeyReconciler in the API owner's namespace, mirroring the consumer's APIKey. It enables namespace-based RBAC: owners discover and review access requests in their own namespace without seeing consumer namespaces.
Currently there is no reference documentation for this resource. Users and integrators must read the source code to understand its schema and behavior.
Lifecycle / Ownership
- Created and deleted by the controller (owners do not create these manually)
- Deleted automatically when the originating
APIKeyis deleted - Owner interacts by creating an
APIKeyApprovalreferencing this resource
RBAC Notes
- Owners have
get/list/watchonAPIKeyRequestin their namespace - Owners do NOT have access to
APIKeyin consumer namespaces (namespace isolation) - API key secret values are never projected into
APIKeyRequest(only intoAPIKeystatus)
Example
apiVersion: devportal.kuadrant.io/v1alpha1
kind: APIKeyRequest
metadata:
name: my-api-key-request
namespace: owner-namespace # same namespace as the APIProduct
spec:
apiProductRef:
name: my-api-product
planTier: basic
useCase: "Internal integration for payment processing service"
requestedBy:
userId: "user-123"
email: "developer@example.com"
apiKeyRef:
name: my-api-key
namespace: consumer-namespace
status:
conditions:
- type: Pending
status: "True"
lastTransitionTime: "2026-06-12T10:00:00Z"
Related
APIKeyCRD (api/v1alpha1/apikey_types.go)APIKeyApprovalCRD (api/v1alpha1/apikeyapproval_types.go)- RBAC design: https://github.com/Kuadrant/kuadrant-console-plugin/blob/main/docs/designs/2026-03-26-api-management-rbac-design.md
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the APIKey and APIKeyApproval definitions in api/v1alpha1/apikey_types.go and api/v1alpha1/apikeyapproval_types.go, then locate the existing reference-documentation structure. Document the APIKeyRequest schema, lifecycle, ownership, RBAC boundaries, and example shown in the issue; done means users can understand the resource without reading source code.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 2/5
- Estimated time
- Half a day
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 74/100