Skip to content

Delete a MarketplaceEntry

DELETE
/apis/nodus.dev/v1/marketplaceentries/{name}
curl --request DELETE \
--url https://example.com/apis/nodus.dev/v1/marketplaceentries/example
name
required
string

The object’s name.

dryRun
string
fieldValidation
string
fieldManager
string
propagationPolicy
string
Idempotency-Key
string
If-Match
string

OK

Media type application/json

MarketplaceEntry is a private capacity request or supply submission. It never reserves or starts compute.

object
apiVersion
string
kind
string
metadata
object
annotations
object
key
additional properties
string
creationTimestamp
string
deletionGracePeriodSeconds
integer format: int64
deletionTimestamp
string
finalizers
Array<string>
nullable
generateName
string
generation
integer format: int64
labels
object
key
additional properties
string
managedFields
Array<object>
nullable
object
apiVersion
string
fieldsType
string
fieldsV1
object
key
additional properties
manager
string
operation
string
subresource
string
time
string
name
string
namespace
string
ownerReferences
Array<object>
nullable
object
apiVersion
required
string
blockOwnerDeletion
boolean
controller
boolean
kind
required
string
name
required
string
uid
required
string
resourceVersion
string
selfLink
string
uid
string
spec
required

MarketplaceEntrySpec is a non-binding request or listing.

object
authorityConfirmed

AuthorityConfirmed attests authority to offer capacity; required for supply.

boolean
company
required

Company is the display name; published only with the owner’s explicit consent and operator review.

string
contactEmail
required

ContactEmail is private to the owning organization and Nodus operators.

string
endsAt
required

EndsAt is the exclusive end of that interval.

string
hardware
required

Hardware is a concrete model or CPU configuration.

string
intent
required

Intent is Demand or Supply; immutable.

string
memoryGiB
required

MemoryGiB is accelerator memory per unit, or system memory for CPU configurations; zero means unspecified on demand.

integer format: int32
minimumHours
required

MinimumHours is the minimum billable duration per allocation, or a buyer’s shortest acceptable term.

integer format: int32
network
required

Network describes interconnect and connectivity requirements.

string
notes

Notes are private requirements and commercial context; never credentials.

string
publish

Publish permits an operator to publish the reviewed supply fields. Never valid on demand.

boolean
quantity
required

Quantity counts complete units of the configuration described in Hardware.

integer format: int32
rateUSDPerUnitHour
required

RateUSDPerUnitHour is a buyer’s ceiling or a seller’s asking rate. Empty demand requests seek a quote and cannot authorize a contract; supplied rates are positive decimal strings.

string
region
required

Region is the required or offered geographic region.

string
sourcing

MarketplaceSourcing describes GPU node and cluster requirements; omission preserves older requests.

object
alternatives

Alternatives describes acceptable hardware substitutions or quantity flexibility (at most 1000 bytes).

string
contactName

ContactName is the private sourcing contact (at most 120 bytes).

string
contactRole

ContactRole describes the contact’s responsibility in the purchase (at most 120 bytes).

string
cpu

CPU describes per-server CPU and system RAM requirements (at most 500 bytes).

string
desiredHours

DesiredHours is the preferred contract duration, distinct from minimumHours, and must fit the requested interval.

integer format: int32
gpusPerServer

GPUsPerServer optionally specifies server layout. GPU quantities must divide into whole servers.

integer format: int32
legalName

LegalName is the entity expected to sign the contract (at most 160 bytes).

string
procurementStage

ProcurementStage is Exploring, BudgetApproved or ReadyToSign, when known.

string
registration

Registration is the registration number and jurisdiction, when known (at most 240 bytes).

string
security

Security describes residency, isolation, compliance and other non-negotiable requirements (at most 1000 bytes).

string
software

Software describes OS, orchestration, drivers and access requirements (at most 1000 bytes).

string
startTiming

StartTiming is ASAP, SpecificDate or Flexible; omitted on older briefs.

string
storage

Storage describes local/shared storage, capacity and throughput (at most 1000 bytes).

string
timingFlexibility

TimingFlexibility describes start-date tolerance, extensions and phased delivery (at most 500 bytes).

string
topology
required

Topology is Servers (independent machines) or Cluster (connected machines).

string
unit
required

Unit is GPU: quantity counts GPUs and the hourly budget is per GPU.

string
website

Website is the claimed company website, an HTTPS origin without a path, credentials or query.

string
workload

Workload describes the model, task, scale and performance target (at most 2000 bytes).

string
startsAt
required

StartsAt is the beginning of the requested or available UTC interval.

string
state
required

State is Open or Withdrawn. Withdrawal immediately removes catalog visibility.

string
title
required

Title describes the request or offered configuration.

string
status

MarketplaceEntryStatus records operator-reviewed details without exposing operator identity.

object
buyer

MarketplaceBuyerVerification separates mailbox proof, human checks and advisory research. Only the server writes these fields; identity changes invalidate their fingerprint.

object
authority

MarketplaceBuyerCheck records an operator’s independently corroborated evidence; the audit records the actor.

object
checkedAt
required

CheckedAt starts the thirty-day lifetime of this check.

string
evidence
required

Evidence identifies the independent source and corroboration.

string
company

MarketplaceBuyerCheck records an operator’s independently corroborated evidence; the audit records the actor.

object
checkedAt
required

CheckedAt starts the thirty-day lifetime of this check.

string
evidence
required

Evidence identifies the independent source and corroboration.

string
emailVerifiedAt

EmailVerifiedAt records single-use confirmation of the submitted mailbox.

string
fingerprint
required

Fingerprint binds proof to the current identity claims.

string
generation
required

Generation is the request generation observed by the server.

integer format: int64
research

MarketplaceBuyerResearch is an advisory report for one request generation, never proof of identity or authority.

object
completedAt

CompletedAt records when bounded research finished.

string
findings

Findings contain qualified observations with source numbers.

Array<string>
nullable
generation
required

Generation is the request generation observed by the server.

integer format: int64
questions

Questions identify gaps for independent follow-up.

Array<string>
nullable
sources

Sources list fetched publisher claims, not registry verification.

Array<object>
nullable

MarketplaceBuyerSource identifies retrieved public evidence; Website content remains a publisher’s claim.

object
kind
required

Kind identifies the evidence class; company pages are CompanyWebsiteClaim.

string
retrievedAt
required

RetrievedAt records the source retrieval time.

string
url
required

URL is the fetched public HTTPS page after safe redirects.

string
startedAt
required

StartedAt records the durable research claim.

string
state
required

State describes research execution, not buyer trustworthiness.

string
summary

Summary contains an advisory synthesis or manual-review guidance.

string
researchAttempts

ResearchAttempts bounds automatic analysis for this request identity.

integer format: int32
costAllowanceUSDPerUnitHour

CostAllowanceUSDPerUnitHour covers estimated variable costs beyond the asking rate.

string
customerRateUSDPerUnitHour

CustomerRateUSDPerUnitHour is an indicative reviewed customer rate, not a confirmed order.

string
intake

MarketplaceIntake is an operator-recorded update for the owning buyer.

object
generation
required

Generation identifies the requirements this update describes; edits return the request to Received.

integer format: int64
message

Message is a customer-visible update of at most 1000 bytes.

string
outcome

Outcome is Won or Lost when Closed, and empty otherwise. It does not record payment or provision capacity.

string
stage
required

Stage is Received, Sourcing, OfferSent or Closed.

string
updatedAt
required

UpdatedAt is when Nodus last updated the sourcing progress.

string
lastReservation

LastReservation is the last confirmed proposal, serializing capacity claims.

string
message

Message is an operator-written update visible to the owner.

string
notifiedGeneration

NotifiedGeneration is the latest request generation durably queued for the Nodus inbox.

integer format: int64
observedGeneration

ObservedGeneration is the exact spec generation reviewed. Any later edit needs another review.

integer format: int64
review

Review is the operator’s decision.

string
reviewedAt

ReviewedAt is the last review time.

string
validUntil

ValidUntil expires a published listing even when its available interval is longer.

string
Example generated
{
"apiVersion": "example",
"kind": "example",
"metadata": {
"annotations": {
"additionalProperty": "example"
},
"creationTimestamp": "example",
"deletionGracePeriodSeconds": 1,
"deletionTimestamp": "example",
"finalizers": [
"example"
],
"generateName": "example",
"generation": 1,
"labels": {
"additionalProperty": "example"
},
"managedFields": [
{
"apiVersion": "example",
"fieldsType": "example",
"fieldsV1": {
"additionalProperty": "example"
},
"manager": "example",
"operation": "example",
"subresource": "example",
"time": "example"
}
],
"name": "example",
"namespace": "example",
"ownerReferences": [
{
"apiVersion": "example",
"blockOwnerDeletion": true,
"controller": true,
"kind": "example",
"name": "example",
"uid": "example"
}
],
"resourceVersion": "example",
"selfLink": "example",
"uid": "example"
},
"spec": {
"authorityConfirmed": true,
"company": "example",
"contactEmail": "example",
"endsAt": "example",
"hardware": "example",
"intent": "example",
"memoryGiB": 1,
"minimumHours": 1,
"network": "example",
"notes": "example",
"publish": true,
"quantity": 1,
"rateUSDPerUnitHour": "example",
"region": "example",
"sourcing": {
"alternatives": "example",
"contactName": "example",
"contactRole": "example",
"cpu": "example",
"desiredHours": 1,
"gpusPerServer": 1,
"legalName": "example",
"procurementStage": "example",
"registration": "example",
"security": "example",
"software": "example",
"startTiming": "example",
"storage": "example",
"timingFlexibility": "example",
"topology": "example",
"unit": "example",
"website": "example",
"workload": "example"
},
"startsAt": "example",
"state": "example",
"title": "example"
},
"status": {
"buyer": {
"authority": {
"checkedAt": "example",
"evidence": "example"
},
"company": {
"checkedAt": "example",
"evidence": "example"
},
"emailVerifiedAt": "example",
"fingerprint": "example",
"generation": 1,
"research": {
"completedAt": "example",
"findings": [
"example"
],
"generation": 1,
"questions": [
"example"
],
"sources": [
{
"kind": "example",
"retrievedAt": "example",
"url": "example"
}
],
"startedAt": "example",
"state": "example",
"summary": "example"
},
"researchAttempts": 1
},
"costAllowanceUSDPerUnitHour": "example",
"customerRateUSDPerUnitHour": "example",
"intake": {
"generation": 1,
"message": "example",
"outcome": "example",
"stage": "example",
"updatedAt": "example"
},
"lastReservation": "example",
"message": "example",
"notifiedGeneration": 1,
"observedGeneration": 1,
"review": "example",
"reviewedAt": "example",
"validUntil": "example"
}
}

An error: a metav1.Status whose reason is a registered code.

Media type application/json

Status is the error body of every API response: a Kubernetes metav1.Status (so kubectl and client-go understand it) plus three top-level extensions that those clients ignore (ADR-028).

object
apiVersion
string
code
integer format: int32
details
object
causes
Array<object>
nullable
object
field
string
message
string
reason
string
group
string
kind
string
name
string
retryAfterSeconds
integer format: int32
uid
string
docs

Docs is the URL of the code’s docs page.

string
fix

Fix says what to do next, for example a CLI command or the field to change.

string
kind
string
message
string
metadata
object
continue
string
remainingItemCount
integer format: int64
resourceVersion
string
selfLink
string
shardInfo
object
selector
required
string
reason
string
requestId

RequestID identifies the request in logs and support tickets.

string
status
string
Example generated
{
"apiVersion": "example",
"code": 1,
"details": {
"causes": [
{
"field": "example",
"message": "example",
"reason": "example"
}
],
"group": "example",
"kind": "example",
"name": "example",
"retryAfterSeconds": 1,
"uid": "example"
},
"docs": "example",
"fix": "example",
"kind": "example",
"message": "example",
"metadata": {
"continue": "example",
"remainingItemCount": 1,
"resourceVersion": "example",
"selfLink": "example",
"shardInfo": {
"selector": "example"
}
},
"reason": "example",
"requestId": "example",
"status": "example"
}