# Product Nouns, API Key to Issue: every operation

URL: /code/interfaces/product · Id: `page:code/interfaces/product`

> Each operation on the product Nouns, API Key to Issue as an API route, SDK method, CLI command and MCP call, with its webhook.

Every operation on the product [Nouns](/business/nouns/noun), [API Key](/business/nouns/api-key) to [Issue](/business/nouns/issue) as an API route, SDK method, CLI command and MCP call, with its webhook. [Every group](/code/interfaces#every-operation).

| Operation | API | SDK | CLI | MCP | Webhooks |
| --- | --- | --- | --- | --- | --- |
| [APIKey.get](/business/nouns/api-key/get) | `GET /{namespace}/api-keys/{id}` | `$.APIKey.get` | `do APIKey.get` | `do · APIKey.get` | None. |
| [APIKey.list](/business/nouns/api-key/list) | `GET /{namespace}/api-keys` | `$.APIKey.list` | `do APIKey.list` | `do · APIKey.list` | None. |
| [APIKey.issue](/business/nouns/api-key/issue) | `POST /{namespace}/api-keys/issue` | `$.APIKey.issue` | `do APIKey.issue` | `do · APIKey.issue` | [`APIKey.issued`](/business/events/APIKey.issued) |
| [APIKey.revoke](/business/nouns/api-key/revoke) | `POST /{namespace}/api-keys/{apiKey}/revoke` | `$.APIKey.revoke` | `do APIKey.revoke` | `do · APIKey.revoke` | [`APIKey.revoked`](/business/events/APIKey.revoked) |
| [APIKey.roll](/business/nouns/api-key/roll) | `POST /{namespace}/api-keys/{apiKey}/roll` | `$.APIKey.roll` | `do APIKey.roll` | `do · APIKey.roll` | [`APIKey.rolled`](/business/events/APIKey.rolled) |
| [App.publish](/business/nouns/app/publish) | `POST /{namespace}/apps/{app}/publish` | `$.App.publish` | `do App.publish` | `do · App.publish` | [`App.published`](/business/events/App.published) |
| [Brand.create](/business/nouns/brand/create) | `POST /{namespace}/brands` | `$.Brand.create` | `do Brand.create` | `do · Brand.create` | `Brand.created` |
| [Brand.get](/business/nouns/brand/get) | `GET /{namespace}/brands/{id}` | `$.Brand.get` | `do Brand.get` | `do · Brand.get` | None. |
| [Brand.list](/business/nouns/brand/list) | `GET /{namespace}/brands` | `$.Brand.list` | `do Brand.list` | `do · Brand.list` | None. |
| [Brand.update](/business/nouns/brand/update) | `PATCH /{namespace}/brands/{id}` | `$.Brand.update` | `do Brand.update` | `do · Brand.update` | `Brand.updated` |
| [Brand.delete](/business/nouns/brand/delete) | `DELETE /{namespace}/brands/{id}` | `$.Brand.delete` | `do Brand.delete` | `do · Brand.delete` | `Brand.deleted` |
| [Brand.clear](/business/nouns/brand/clear) | `POST /{namespace}/brands/{brand}/clear` | `$.Brand.clear` | `do Brand.clear` | `do · Brand.clear` | [`Brand.cleared`](/business/events/Brand.cleared) |
| [Change.create](/business/nouns/change/create) | `POST /{namespace}/changes` | `$.Change.create` | `do Change.create` | `do · Change.create` | `Change.created` |
| [Change.get](/business/nouns/change/get) | `GET /{namespace}/changes/{id}` | `$.Change.get` | `do Change.get` | `do · Change.get` | None. |
| [Change.list](/business/nouns/change/list) | `GET /{namespace}/changes` | `$.Change.list` | `do Change.list` | `do · Change.list` | None. |
| [Change.merge](/business/nouns/change/merge) | `POST /{namespace}/changes/{change}/merge` | `$.Change.merge` | `do Change.merge` | `do · Change.merge` | [`Change.merged`](/business/events/Change.merged) |
| [Change.revert](/business/nouns/change/revert) | `POST /{namespace}/changes/{change}/revert` | `$.Change.revert` | `do Change.revert` | `do · Change.revert` | [`Change.reverted`](/business/events/Change.reverted) |
| [Change.review](/business/nouns/change/review) | `POST /{namespace}/changes/{change}/review` | `$.Change.review` | `do Change.review` | `do · Change.review` | [`Change.reviewed`](/business/events/Change.reviewed) |
| [Dashboard.create](/business/nouns/dashboard/create) | `POST /{namespace}/dashboards` | `$.Dashboard.create` | `do Dashboard.create` | `do · Dashboard.create` | `Dashboard.created` |
| [Dashboard.get](/business/nouns/dashboard/get) | `GET /{namespace}/dashboards/{id}` | `$.Dashboard.get` | `do Dashboard.get` | `do · Dashboard.get` | None. |
| [Dashboard.list](/business/nouns/dashboard/list) | `GET /{namespace}/dashboards` | `$.Dashboard.list` | `do Dashboard.list` | `do · Dashboard.list` | None. |
| [Dashboard.update](/business/nouns/dashboard/update) | `PATCH /{namespace}/dashboards/{id}` | `$.Dashboard.update` | `do Dashboard.update` | `do · Dashboard.update` | `Dashboard.updated` |
| [Dashboard.delete](/business/nouns/dashboard/delete) | `DELETE /{namespace}/dashboards/{id}` | `$.Dashboard.delete` | `do Dashboard.delete` | `do · Dashboard.delete` | `Dashboard.deleted` |
| [Dashboard.ask](/business/nouns/dashboard/ask) | `POST /{namespace}/dashboards/ask` | `$.Dashboard.ask` | `do Dashboard.ask` | `do · Dashboard.ask` | [`Dashboard.asked`](/business/events/Dashboard.asked) |
| [Dashboard.schedule](/business/nouns/dashboard/schedule) | `POST /{namespace}/dashboards/{dashboard}/schedule` | `$.Dashboard.schedule` | `do Dashboard.schedule` | `do · Dashboard.schedule` | [`Dashboard.scheduled`](/business/events/Dashboard.scheduled) |
| [Dataset.create](/business/nouns/dataset/create) | `POST /{namespace}/datasets` | `$.Dataset.create` | `do Dataset.create` | `do · Dataset.create` | `Dataset.created` |
| [Dataset.get](/business/nouns/dataset/get) | `GET /{namespace}/datasets/{id}` | `$.Dataset.get` | `do Dataset.get` | `do · Dataset.get` | None. |
| [Dataset.list](/business/nouns/dataset/list) | `GET /{namespace}/datasets` | `$.Dataset.list` | `do Dataset.list` | `do · Dataset.list` | None. |
| [Dataset.update](/business/nouns/dataset/update) | `PATCH /{namespace}/datasets/{id}` | `$.Dataset.update` | `do Dataset.update` | `do · Dataset.update` | `Dataset.updated` |
| [Dataset.delete](/business/nouns/dataset/delete) | `DELETE /{namespace}/datasets/{id}` | `$.Dataset.delete` | `do Dataset.delete` | `do · Dataset.delete` | `Dataset.deleted` |
| [DNSRecord.get](/business/nouns/dns-record/get) | `GET /{namespace}/dns-records/{id}` | `$.DNSRecord.get` | `do DNSRecord.get` | `do · DNSRecord.get` | None. |
| [DNSRecord.list](/business/nouns/dns-record/list) | `GET /{namespace}/dns-records` | `$.DNSRecord.list` | `do DNSRecord.list` | `do · DNSRecord.list` | None. |
| [DNSRecord.remove](/business/nouns/dns-record/remove) | `POST /{namespace}/dns-records/{record}/remove` | `$.DNSRecord.remove` | `do DNSRecord.remove` | `do · DNSRecord.remove` | [`DNSRecord.removed`](/business/events/DNSRecord.removed) |
| [DNSRecord.set](/business/nouns/dns-record/set) | `POST /{namespace}/dns-records/set` | `$.DNSRecord.set` | `do DNSRecord.set` | `do · DNSRecord.set` | [`DNSRecord.set`](/business/events/DNSRecord.set) |
| [Domain.create](/business/nouns/domain/create) | `POST /{namespace}/domains` | `$.Domain.create` | `do Domain.create` | `do · Domain.create` | `Domain.created` |
| [Domain.get](/business/nouns/domain/get) | `GET /{namespace}/domains/{id}` | `$.Domain.get` | `do Domain.get` | `do · Domain.get` | None. |
| [Domain.list](/business/nouns/domain/list) | `GET /{namespace}/domains` | `$.Domain.list` | `do Domain.list` | `do · Domain.list` | None. |
| [Domain.update](/business/nouns/domain/update) | `PATCH /{namespace}/domains/{id}` | `$.Domain.update` | `do Domain.update` | `do · Domain.update` | `Domain.updated` |
| [Domain.delete](/business/nouns/domain/delete) | `DELETE /{namespace}/domains/{id}` | `$.Domain.delete` | `do Domain.delete` | `do · Domain.delete` | `Domain.deleted` |
| [Domain.authenticate](/business/nouns/domain/authenticate) | `POST /{namespace}/domains/{domain}/authenticate` | `$.Domain.authenticate` | `do Domain.authenticate` | `do · Domain.authenticate` | [`Domain.authenticated`](/business/events/Domain.authenticated) |
| [Domain.benchmark](/business/nouns/domain/benchmark) | `POST /{namespace}/domains/benchmark` | `$.Domain.benchmark` | `do Domain.benchmark` | `do · Domain.benchmark` | [`Domain.benchmarked`](/business/events/Domain.benchmarked) |
| [Domain.claim](/business/nouns/domain/claim) | `POST /{namespace}/domains/claim` | `$.Domain.claim` | `do Domain.claim` | `do · Domain.claim` | [`Domain.claimed`](/business/events/Domain.claimed) |
| [Domain.connect](/business/nouns/domain/connect) | `POST /{namespace}/domains/connect` | `$.Domain.connect` | `do Domain.connect` | `do · Domain.connect` | [`Domain.connected`](/business/events/Domain.connected) |
| [Domain.register](/business/nouns/domain/register) | `POST /{namespace}/domains/register` | `$.Domain.register` | `do Domain.register` | `do · Domain.register` | [`Domain.registered`](/business/events/Domain.registered) |
| [Domain.release](/business/nouns/domain/release) | `POST /{namespace}/domains/{domain}/release` | `$.Domain.release` | `do Domain.release` | `do · Domain.release` | [`Domain.released`](/business/events/Domain.released) |
| [Domain.renew](/business/nouns/domain/renew) | `POST /{namespace}/domains/{domain}/renew` | `$.Domain.renew` | `do Domain.renew` | `do · Domain.renew` | [`Domain.renewed`](/business/events/Domain.renewed) |
| [Domain.search](/business/nouns/domain/search) | `POST /{namespace}/domains/search` | `$.Domain.search` | `do Domain.search` | `do · Domain.search` | [`Domain.searched`](/business/events/Domain.searched) |
| [Domain.transfer](/business/nouns/domain/transfer) | `POST /{namespace}/domains/{domain}/transfer` | `$.Domain.transfer` | `do Domain.transfer` | `do · Domain.transfer` | [`Domain.transferred`](/business/events/Domain.transferred) |
| [Domain.verify](/business/nouns/domain/verify) | `POST /{namespace}/domains/{domain}/verify` | `$.Domain.verify` | `do Domain.verify` | `do · Domain.verify` | [`Domain.verified`](/business/events/Domain.verified) |
| [Flag.create](/business/nouns/flag/create) | `POST /{namespace}/flags` | `$.Flag.create` | `do Flag.create` | `do · Flag.create` | `Flag.created` |
| [Flag.get](/business/nouns/flag/get) | `GET /{namespace}/flags/{id}` | `$.Flag.get` | `do Flag.get` | `do · Flag.get` | None. |
| [Flag.list](/business/nouns/flag/list) | `GET /{namespace}/flags` | `$.Flag.list` | `do Flag.list` | `do · Flag.list` | None. |
| [Flag.update](/business/nouns/flag/update) | `PATCH /{namespace}/flags/{id}` | `$.Flag.update` | `do Flag.update` | `do · Flag.update` | `Flag.updated` |
| [Flag.delete](/business/nouns/flag/delete) | `DELETE /{namespace}/flags/{id}` | `$.Flag.delete` | `do Flag.delete` | `do · Flag.delete` | `Flag.deleted` |
| [Flag.evaluate](/business/nouns/flag/evaluate) | `POST /{namespace}/flags/{flag}/evaluate` | `$.Flag.evaluate` | `do Flag.evaluate` | `do · Flag.evaluate` | [`Flag.evaluated`](/business/events/Flag.evaluated) |
| [Flow.create](/business/nouns/flow/create) | `POST /{namespace}/flows` | `$.Flow.create` | `do Flow.create` | `do · Flow.create` | `Flow.created` |
| [Flow.get](/business/nouns/flow/get) | `GET /{namespace}/flows/{id}` | `$.Flow.get` | `do Flow.get` | `do · Flow.get` | None. |
| [Flow.list](/business/nouns/flow/list) | `GET /{namespace}/flows` | `$.Flow.list` | `do Flow.list` | `do · Flow.list` | None. |
| [Flow.update](/business/nouns/flow/update) | `PATCH /{namespace}/flows/{id}` | `$.Flow.update` | `do Flow.update` | `do · Flow.update` | `Flow.updated` |
| [Flow.delete](/business/nouns/flow/delete) | `DELETE /{namespace}/flows/{id}` | `$.Flow.delete` | `do Flow.delete` | `do · Flow.delete` | `Flow.deleted` |
| [Form.create](/business/nouns/form/create) | `POST /{namespace}/forms` | `$.Form.create` | `do Form.create` | `do · Form.create` | `Form.created` |
| [Form.get](/business/nouns/form/get) | `GET /{namespace}/forms/{id}` | `$.Form.get` | `do Form.get` | `do · Form.get` | None. |
| [Form.list](/business/nouns/form/list) | `GET /{namespace}/forms` | `$.Form.list` | `do Form.list` | `do · Form.list` | None. |
| [Form.update](/business/nouns/form/update) | `PATCH /{namespace}/forms/{id}` | `$.Form.update` | `do Form.update` | `do · Form.update` | `Form.updated` |
| [Form.delete](/business/nouns/form/delete) | `DELETE /{namespace}/forms/{id}` | `$.Form.delete` | `do Form.delete` | `do · Form.delete` | `Form.deleted` |
| [Implementation.create](/business/nouns/implementation/create) | `POST /{namespace}/implementations` | `$.Implementation.create` | `do Implementation.create` | `do · Implementation.create` | `Implementation.created` |
| [Implementation.get](/business/nouns/implementation/get) | `GET /{namespace}/implementations/{id}` | `$.Implementation.get` | `do Implementation.get` | `do · Implementation.get` | None. |
| [Implementation.list](/business/nouns/implementation/list) | `GET /{namespace}/implementations` | `$.Implementation.list` | `do Implementation.list` | `do · Implementation.list` | None. |
| [Implementation.update](/business/nouns/implementation/update) | `PATCH /{namespace}/implementations/{id}` | `$.Implementation.update` | `do Implementation.update` | `do · Implementation.update` | `Implementation.updated` |
| [Implementation.delete](/business/nouns/implementation/delete) | `DELETE /{namespace}/implementations/{id}` | `$.Implementation.delete` | `do Implementation.delete` | `do · Implementation.delete` | `Implementation.deleted` |
| [Incident.create](/business/nouns/incident/create) | `POST /{namespace}/incidents` | `$.Incident.create` | `do Incident.create` | `do · Incident.create` | `Incident.created` |
| [Incident.get](/business/nouns/incident/get) | `GET /{namespace}/incidents/{id}` | `$.Incident.get` | `do Incident.get` | `do · Incident.get` | None. |
| [Incident.list](/business/nouns/incident/list) | `GET /{namespace}/incidents` | `$.Incident.list` | `do Incident.list` | `do · Incident.list` | None. |
| [Incident.update](/business/nouns/incident/update) | `PATCH /{namespace}/incidents/{id}` | `$.Incident.update` | `do Incident.update` | `do · Incident.update` | `Incident.updated` |
| [Incident.delete](/business/nouns/incident/delete) | `DELETE /{namespace}/incidents/{id}` | `$.Incident.delete` | `do Incident.delete` | `do · Incident.delete` | `Incident.deleted` |
| [Incident.acknowledge](/business/nouns/incident/acknowledge) | `POST /{namespace}/incidents/{incident}/acknowledge` | `$.Incident.acknowledge` | `do Incident.acknowledge` | `do · Incident.acknowledge` | [`Incident.acknowledged`](/business/events/Incident.acknowledged) |
| [Incident.open](/business/nouns/incident/open) | `POST /{namespace}/incidents/open` | `$.Incident.open` | `do Incident.open` | `do · Incident.open` | [`Incident.opened`](/business/events/Incident.opened) |
| [Incident.resolve](/business/nouns/incident/resolve) | `POST /{namespace}/incidents/{incident}/resolve` | `$.Incident.resolve` | `do Incident.resolve` | `do · Incident.resolve` | [`Incident.resolved`](/business/events/Incident.resolved) |
| [Issue.create](/business/nouns/issue/create) | `POST /{namespace}/issues` | `$.Issue.create` | `do Issue.create` | `do · Issue.create` | `Issue.created` |
| [Issue.get](/business/nouns/issue/get) | `GET /{namespace}/issues/{id}` | `$.Issue.get` | `do Issue.get` | `do · Issue.get` | None. |
| [Issue.list](/business/nouns/issue/list) | `GET /{namespace}/issues` | `$.Issue.list` | `do Issue.list` | `do · Issue.list` | None. |
| [Issue.update](/business/nouns/issue/update) | `PATCH /{namespace}/issues/{id}` | `$.Issue.update` | `do Issue.update` | `do · Issue.update` | `Issue.updated` |
| [Issue.delete](/business/nouns/issue/delete) | `DELETE /{namespace}/issues/{id}` | `$.Issue.delete` | `do Issue.delete` | `do · Issue.delete` | `Issue.deleted` |
| [Issue.estimate](/business/nouns/issue/estimate) | `POST /{namespace}/issues/{issue}/estimate` | `$.Issue.estimate` | `do Issue.estimate` | `do · Issue.estimate` | [`Issue.estimated`](/business/events/Issue.estimated) |
| [Issue.reopen](/business/nouns/issue/reopen) | `POST /{namespace}/issues/{issue}/reopen` | `$.Issue.reopen` | `do Issue.reopen` | `do · Issue.reopen` | [`Issue.reopened`](/business/events/Issue.reopened) |
| [Issue.resolve](/business/nouns/issue/resolve) | `POST /{namespace}/issues/{issue}/resolve` | `$.Issue.resolve` | `do Issue.resolve` | `do · Issue.resolve` | [`Issue.resolved`](/business/events/Issue.resolved) |
| [Issue.schedule](/business/nouns/issue/schedule) | `POST /{namespace}/issues/{issue}/schedule` | `$.Issue.schedule` | `do Issue.schedule` | `do · Issue.schedule` | [`Issue.scheduled`](/business/events/Issue.scheduled) |
| [Issue.triage](/business/nouns/issue/triage) | `POST /{namespace}/issues/{issue}/triage` | `$.Issue.triage` | `do Issue.triage` | `do · Issue.triage` | [`Issue.triaged`](/business/events/Issue.triaged) |