|
1651 | 1651 | "security": [{ "bearer": [] }] |
1652 | 1652 | } |
1653 | 1653 | }, |
| 1654 | + "/v1/projects/{ref}/config/auth/signing-keys": { |
| 1655 | + "post": { |
| 1656 | + "operationId": "createSigningKeyForProject", |
| 1657 | + "summary": "[Alpha] Create a new signing key for the project in standby status", |
| 1658 | + "parameters": [ |
| 1659 | + { "name": "ref", "required": true, "in": "path", "schema": { "type": "string" } } |
| 1660 | + ], |
| 1661 | + "requestBody": { |
| 1662 | + "required": true, |
| 1663 | + "content": { |
| 1664 | + "application/json": { |
| 1665 | + "schema": { "$ref": "#/components/schemas/CreateSigningKeyBody" } |
| 1666 | + } |
| 1667 | + } |
| 1668 | + }, |
| 1669 | + "responses": { |
| 1670 | + "201": { |
| 1671 | + "description": "[Alpha] Create a new signing key for the project in standby status", |
| 1672 | + "content": { |
| 1673 | + "application/json": { |
| 1674 | + "schema": { "$ref": "#/components/schemas/CreateSigningKeyBody" } |
| 1675 | + } |
| 1676 | + } |
| 1677 | + }, |
| 1678 | + "403": { "description": "" } |
| 1679 | + }, |
| 1680 | + "tags": ["Auth"], |
| 1681 | + "security": [{ "bearer": [] }] |
| 1682 | + }, |
| 1683 | + "get": { |
| 1684 | + "operationId": "listSigningKeysForProject", |
| 1685 | + "summary": "[Alpha] List all signing keys for the project", |
| 1686 | + "parameters": [ |
| 1687 | + { "name": "ref", "required": true, "in": "path", "schema": { "type": "string" } } |
| 1688 | + ], |
| 1689 | + "responses": { |
| 1690 | + "200": { |
| 1691 | + "description": "", |
| 1692 | + "content": { |
| 1693 | + "application/json": { |
| 1694 | + "schema": { "$ref": "#/components/schemas/SigningKeysResponse" } |
| 1695 | + } |
| 1696 | + } |
| 1697 | + }, |
| 1698 | + "403": { "description": "" } |
| 1699 | + }, |
| 1700 | + "tags": ["Auth"], |
| 1701 | + "security": [{ "bearer": [] }] |
| 1702 | + } |
| 1703 | + }, |
| 1704 | + "/v1/projects/{ref}/config/auth/signing-keys/{id}": { |
| 1705 | + "get": { |
| 1706 | + "operationId": "getSigningKeyForProject", |
| 1707 | + "summary": "[Alpha] Get information about a signing key", |
| 1708 | + "parameters": [ |
| 1709 | + { "name": "id", "required": true, "in": "path", "schema": { "type": "string" } }, |
| 1710 | + { "name": "ref", "required": true, "in": "path", "schema": { "type": "string" } } |
| 1711 | + ], |
| 1712 | + "responses": { |
| 1713 | + "200": { |
| 1714 | + "description": "", |
| 1715 | + "content": { |
| 1716 | + "application/json": { |
| 1717 | + "schema": { "$ref": "#/components/schemas/SigningKeyResponse" } |
| 1718 | + } |
| 1719 | + } |
| 1720 | + } |
| 1721 | + }, |
| 1722 | + "tags": ["Auth"], |
| 1723 | + "security": [{ "bearer": [] }] |
| 1724 | + }, |
| 1725 | + "delete": { |
| 1726 | + "operationId": "deleteSigningKey", |
| 1727 | + "summary": "[Alpha] Remove a signing key from a project, where the status is previously_used", |
| 1728 | + "parameters": [ |
| 1729 | + { "name": "id", "required": true, "in": "path", "schema": { "type": "string" } }, |
| 1730 | + { "name": "ref", "required": true, "in": "path", "schema": { "type": "string" } } |
| 1731 | + ], |
| 1732 | + "responses": { |
| 1733 | + "200": { |
| 1734 | + "description": "", |
| 1735 | + "content": { |
| 1736 | + "application/json": { |
| 1737 | + "schema": { "$ref": "#/components/schemas/SigningKeyResponse" } |
| 1738 | + } |
| 1739 | + } |
| 1740 | + }, |
| 1741 | + "403": { "description": "" } |
| 1742 | + }, |
| 1743 | + "tags": ["Auth"], |
| 1744 | + "security": [{ "bearer": [] }] |
| 1745 | + }, |
| 1746 | + "patch": { |
| 1747 | + "operationId": "patchSigningKey", |
| 1748 | + "summary": "[Alpha] Update a signing key, mainly its status", |
| 1749 | + "parameters": [ |
| 1750 | + { "name": "id", "required": true, "in": "path", "schema": { "type": "string" } }, |
| 1751 | + { "name": "ref", "required": true, "in": "path", "schema": { "type": "string" } } |
| 1752 | + ], |
| 1753 | + "requestBody": { |
| 1754 | + "required": true, |
| 1755 | + "content": { |
| 1756 | + "application/json": { |
| 1757 | + "schema": { "$ref": "#/components/schemas/UpdateSigningKeyBody" } |
| 1758 | + } |
| 1759 | + } |
| 1760 | + }, |
| 1761 | + "responses": { |
| 1762 | + "200": { |
| 1763 | + "description": "", |
| 1764 | + "content": { |
| 1765 | + "application/json": { |
| 1766 | + "schema": { "$ref": "#/components/schemas/SigningKeyResponse" } |
| 1767 | + } |
| 1768 | + } |
| 1769 | + }, |
| 1770 | + "403": { "description": "" } |
| 1771 | + }, |
| 1772 | + "tags": ["Auth"], |
| 1773 | + "security": [{ "bearer": [] }] |
| 1774 | + } |
| 1775 | + }, |
1654 | 1776 | "/v1/projects/{ref}/config/storage": { |
1655 | 1777 | "get": { |
1656 | 1778 | "operationId": "v1-get-storage-config", |
|
3569 | 3691 | }, |
3570 | 3692 | "SecretResponse": { |
3571 | 3693 | "type": "object", |
3572 | | - "properties": { "name": { "type": "string" }, "value": { "type": "string" } }, |
| 3694 | + "properties": { |
| 3695 | + "name": { "type": "string" }, |
| 3696 | + "value": { "type": "string" }, |
| 3697 | + "updated_at": { "type": "string" } |
| 3698 | + }, |
3573 | 3699 | "required": ["name", "value"] |
3574 | 3700 | }, |
3575 | 3701 | "CreateSecretBody": { |
|
3806 | 3932 | }, |
3807 | 3933 | "required": ["name", "healthy", "status"] |
3808 | 3934 | }, |
| 3935 | + "CreateSigningKeyBody": { |
| 3936 | + "type": "object", |
| 3937 | + "properties": { |
| 3938 | + "algorithm": { "type": "string", "enum": ["EdDSA", "ES256", "RS256", "HS256"] }, |
| 3939 | + "status": { "type": "string", "enum": ["in_use", "standby"] } |
| 3940 | + }, |
| 3941 | + "required": ["algorithm"], |
| 3942 | + "additionalProperties": false |
| 3943 | + }, |
| 3944 | + "SigningKeysResponse": { |
| 3945 | + "type": "object", |
| 3946 | + "properties": { |
| 3947 | + "keys": { |
| 3948 | + "type": "array", |
| 3949 | + "items": { |
| 3950 | + "type": "object", |
| 3951 | + "properties": { |
| 3952 | + "id": { "type": "string", "format": "uuid" }, |
| 3953 | + "algorithm": { "type": "string", "enum": ["EdDSA", "ES256", "RS256", "HS256"] }, |
| 3954 | + "status": { |
| 3955 | + "type": "string", |
| 3956 | + "enum": ["in_use", "previously_used", "revoked", "standby"] |
| 3957 | + }, |
| 3958 | + "public_jwk": { "nullable": true }, |
| 3959 | + "created_at": { "type": "string", "format": "date-time" }, |
| 3960 | + "updated_at": { "type": "string", "format": "date-time" } |
| 3961 | + }, |
| 3962 | + "required": ["id", "algorithm", "status", "created_at", "updated_at"], |
| 3963 | + "additionalProperties": false |
| 3964 | + } |
| 3965 | + } |
| 3966 | + }, |
| 3967 | + "required": ["keys"], |
| 3968 | + "additionalProperties": false |
| 3969 | + }, |
| 3970 | + "SigningKeyResponse": { |
| 3971 | + "type": "object", |
| 3972 | + "properties": { |
| 3973 | + "id": { "type": "string", "format": "uuid" }, |
| 3974 | + "algorithm": { "type": "string", "enum": ["EdDSA", "ES256", "RS256", "HS256"] }, |
| 3975 | + "status": { |
| 3976 | + "type": "string", |
| 3977 | + "enum": ["in_use", "previously_used", "revoked", "standby"] |
| 3978 | + }, |
| 3979 | + "public_jwk": { "nullable": true }, |
| 3980 | + "created_at": { "type": "string", "format": "date-time" }, |
| 3981 | + "updated_at": { "type": "string", "format": "date-time" } |
| 3982 | + }, |
| 3983 | + "required": ["id", "algorithm", "status", "created_at", "updated_at"], |
| 3984 | + "additionalProperties": false |
| 3985 | + }, |
| 3986 | + "UpdateSigningKeyBody": { |
| 3987 | + "type": "object", |
| 3988 | + "properties": { |
| 3989 | + "status": { |
| 3990 | + "type": "string", |
| 3991 | + "enum": ["in_use", "previously_used", "revoked", "standby"] |
| 3992 | + } |
| 3993 | + }, |
| 3994 | + "required": ["status"], |
| 3995 | + "additionalProperties": false |
| 3996 | + }, |
3809 | 3997 | "StorageFeatureImageTransformation": { |
3810 | 3998 | "type": "object", |
3811 | 3999 | "properties": { "enabled": { "type": "boolean" } }, |
|
0 commit comments