Create OCI registry
const url = 'http://localhost:3000/api/v1/registries/oci';const options = { method: 'POST', headers: {'X-API-Key': '<X-API-Key>', 'Content-Type': 'application/json'}, body: '{"name":"my-container-registry","description":"Production container images","url":"https://registry.example.com","registryType":"GENERIC","authType":"NONE","credential":"username:password","verifyTls":true,"enabled":true,"repositories":["library/nginx","team/app"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url http://localhost:3000/api/v1/registries/oci \ --header 'Content-Type: application/json' \ --header 'X-API-Key: <X-API-Key>' \ --data '{ "name": "my-container-registry", "description": "Production container images", "url": "https://registry.example.com", "registryType": "GENERIC", "authType": "NONE", "credential": "username:password", "verifyTls": true, "enabled": true, "repositories": [ "library/nginx", "team/app" ] }'Creates a new OCI registry for the current organization.
Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ”object
Unique name for the registry within the organization
Example
my-container-registryDescription of the registry
Example
Production container imagesOCI registry URL
Example
https://registry.example.comRegistry type
Example
GENERICAuthentication type
Example
NONECredential for authentication. Will be encrypted at rest. For BASIC auth this MUST be “username:password”. For TOKEN auth it is the raw token.
Example
username:passwordWhether to verify TLS certificates
Example
trueWhether the registry is enabled
Example
trueRepositories to sync, e.g. library/nginx. Registry-side catalog enumeration is not used (FM-839): an empty list syncs nothing.
Example
[ "library/nginx", "team/app"]Responses
Section titled “ Responses ”OCI registry created successfully
object
Unique identifier
Organization ID that owns this registry
Registry name
Registry description
OCI registry URL
Registry type
Authentication type
Whether credentials are configured
Whether TLS verification is enabled
Last health check timestamp
Health status (healthy, unhealthy, unknown)
Last sync timestamp
Last sync error message
Sync interval in minutes
Whether the registry is enabled
Repositories this registry syncs, e.g. library/nginx. Registry-side catalog enumeration is not used (FM-839): an empty list syncs nothing.
Creation timestamp
Last update timestamp
Example
{ "id": "550e8400-e29b-41d4-a716-446655440000", "organizationId": "550e8400-e29b-41d4-a716-446655440001", "name": "my-container-registry", "description": "Production container images", "url": "https://registry.example.com", "registryType": "GENERIC", "authType": "NONE", "hasCredentials": false, "verifyTls": true, "lastHealthCheck": "2024-01-15T10:30:00Z", "healthStatus": "healthy", "lastSyncAt": "2024-01-15T10:30:00Z", "syncIntervalMinutes": 60, "enabled": true, "repositories": [], "createdAt": "2024-01-01T00:00:00Z", "updatedAt": "2024-01-15T10:30:00Z"}Invalid input data
Unauthorized
Forbidden
Registry with this name already exists