/** * This file was auto-generated by openapi-typescript. * Do not make direct changes to the file. */ export interface paths { "/nrn": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Create an NRN * @description Creates a new NRN or replaces an existing one. **This operation overwrites any previous value.** * * > * > ⚠️ **Deprecation notice** * > * > This operation might be removed in the future. We recommend using [Providers](/docs/providers/overview) instead. */ post: operations["nrn:create"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/nrn/{nrn}": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Read an NRN * @description Read an NRN by ID. * * > * > ⚠️ **Deprecation notice** * > * > This operation might be removed in the future. We recommend using [Providers](/docs/providers/overview) instead. */ get: operations["nrn:read"]; /** * Replace an NRN * @description Replaces an NRN. This operation overwrites any previous value. * * > * > ⚠️ **Deprecation notice** * > * > This operation might be removed in the future. We recommend using [Providers](/docs/providers/overview) instead. */ put: operations["nrn:write"]; post?: never; /** * Delete namespaces or profiles * @description Removes all keys within a specified set of namespaces and/or profiles. By default, this endpoint acts on a single NRN entry and does not affect the entire hierarchy. Use the `include_parents` query parameter to modify this behavior. * * > * > ⚠️ **Deprecation notice** * > * > This operation might be removed in the future. We recommend using [Providers](/docs/providers/overview) instead. */ delete: operations["nrn:delete"]; options?: never; head?: never; /** * Update a value within an NRN * @description Updates a value within an NRN. If the NRN does not exist, it will be created. * * > * > ⚠️ **Deprecation notice** * > * > This operation might be removed in the future. We recommend using [Providers](/docs/providers/overview) instead. */ patch: operations["nrn:update"]; trace?: never; }; } export type webhooks = Record; export interface components { schemas: { nrn: { /** * @description A system-wide unique ID for resource. * @example organization=1:account=2 */ nrn: string; /** * @description An object where each key represents a namespace, and its value is an object containing key-value pairs. * @example { * "namespaces": { * "global": { * "some-key": "some-value" * } * } * } */ namespaces: Record; /** * @description An object containing the profiles available for this NRN. * @example { * "profiles": { * "development": { * "some-namespace": { * "some-key": "some-value" * }, * "production": { * "some-namespace": { * "some-key": "another-value" * } * } * } * } * } */ profiles: Record; }; /** * @description An object where keys represent NRN values or profiles. * @example { * "aws.lambdaFunctionName": "MyFunction", * "development::aws.log_reader_role": "dev_role", * "production::aws.log_reader_role": "prod_role" * } */ NrnCreate: Record; /** * @description An object where keys represent NRN values or profiles * @example { * "aws.lambdaFunctionName": "NewFunctionValue" * } */ NrnWrite: Record; }; responses: { /** @description Client error responses due to invalid input or missing parameters. */ "4XX": { headers: { [name: string]: unknown; }; content: { "application/json": { /** * @description HTTP status code representing the specific client error (e.g., 400, 401, 403, 404). * @example 400 */ statusCode: number; /** * @description A machine-readable error code that categorizes the server failure. * @example bad_request */ code?: string; /** * @description A brief, human-readable description of the error type (e.g., "Bad Request", "Unauthorized"). * @example Bad Request */ error: string; /** * @description Additional details about the error. * @example The request was malformed or contained invalid parameters. */ message: string; }; }; }; /** @description Server error responses indicating an issue on the API side. */ "5XX": { headers: { [name: string]: unknown; }; content: { "application/json": { /** * @description HTTP status code representing the specific server error (e.g., 500, 502, 503). * @example 500 */ statusCode: number; /** * @description A machine-readable error code that categorizes the server failure. * @example internal_server_error */ code?: string; /** * @description A brief, human-readable description of the error type (e.g., "Internal Server Error", "Service Unavailable"). * @example Internal Server Error */ error: string; /** * @description Additional details about the error. * @example An unexpected error occurred. Please try again later. */ message: string; }; }; }; }; parameters: never; requestBodies: never; headers: never; pathItems: never; } export type $defs = Record; export interface operations { "nrn:create": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: { content: { "application/json": components["schemas"]["NrnCreate"]; }; }; responses: { /** @description The operation was successful. */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["nrn"]; }; }; "4XX": components["responses"]["4XX"]; "5XX": components["responses"]["5XX"]; }; }; "nrn:read": { parameters: { query: { /** * @description A comma-separated list of elements to retrieve, following the `${namespace}.${key}` convention. * - The `namespace` can be omitted for the global namespace. * - This convention also allows retrieving values inside profiles. * @example https://..../nrn/organization=1?ids=aws.log_group_name,aws.lambdaFunctionName */ ids: string; /** * @description A comma-separated list of profiles. * @example https://..../nrn/organization=1?profile=environment_development,country_argentina */ profile?: string; /** * @description If true, the API parses the values and represents them as JSON objects. * @example true */ output_json_values?: boolean; /** * @description If true, results are not merged with parent nodes in the hierarchy. * @example true */ "no-merge"?: boolean; /** * @description Whether JSON arrays should be merged or overridden. * @example merge */ array_merge_strategy?: "merge" | "no_merge"; }; header?: never; path: { /** * @description The NRN to read. Format: organization=1:account=2:namespace=3:application=4:scope=5 (trailing levels optional). Read one from an entity's nrn field, e.g. 'np application read --id --query .nrn'. * @example 123 */ nrn: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description The operation was successful. */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["nrn"]; }; }; "4XX": components["responses"]["4XX"]; "5XX": components["responses"]["5XX"]; }; }; "nrn:write": { parameters: { query?: never; header?: never; path: { /** * @description The NRN to update. Format: organization=1:account=2:namespace=3:application=4:scope=5 (trailing levels optional). Read one from an entity's nrn field, e.g. 'np application read --id --query .nrn'. * @example 123 */ nrn: string; }; cookie?: never; }; requestBody?: { content: { "application/json": components["schemas"]["NrnCreate"]; }; }; responses: { /** @description The operation was successful. */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["nrn"]; }; }; "4XX": components["responses"]["4XX"]; "5XX": components["responses"]["5XX"]; }; }; "nrn:delete": { parameters: { query?: { /** * @description A comma-separated list of namespaces to be deleted. * @example /nrn/organization=1:account=2?namespaces=something,anotherthing */ namespaces?: string; /** * @description A comma-separated list of profiles to be deleted. * @example /nrn/organization=1:account=2?profiles=development,testing */ profiles?: string; /** * @description - If `false`, removes the namespace only on this node. * - If `true`, removes the namespace from the entire branch of the hierarchy. * @example /nrn/organization=1:account=2?profiles=development,testing&include_parents=true */ include_parents?: boolean; }; header?: never; path: { /** * @description The NRN to delete. Format: organization=1:account=2:namespace=3:application=4:scope=5 (trailing levels optional). Read one from an entity's nrn field, e.g. 'np application read --id --query .nrn'. * @example 123 */ nrn: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description The operation was successful. */ 204: { headers: { [name: string]: unknown; }; content?: never; }; "4XX": components["responses"]["4XX"]; "5XX": components["responses"]["5XX"]; }; }; "nrn:update": { parameters: { query?: never; header?: never; path: { /** * @description The NRN to update. Format: organization=1:account=2:namespace=3:application=4:scope=5 (trailing levels optional). Read one from an entity's nrn field, e.g. 'np application read --id --query .nrn'. * @example organization=1:account=2:namespace=3:application=4 */ nrn: string; }; cookie?: never; }; requestBody?: { content: { "application/json": components["schemas"]["NrnWrite"]; }; }; responses: { /** @description The operation was successful. */ 204: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["nrn"]; }; }; "4XX": components["responses"]["4XX"]; "5XX": components["responses"]["5XX"]; }; }; }