Skip to content
Get started

Pull and convert OCI image

client.Images.New(ctx, body) (*Image, error)
post/images

Pull and convert OCI image

ParametersExpand Collapse
body ImageNewParams
Name param.Field[string]

OCI image reference (e.g., docker.io/library/nginx:latest)

ReturnsExpand Collapse
type Image struct{…}
CreatedAt Time

Creation timestamp (RFC3339)

formatdate-time
Digest string

Resolved manifest digest

Name string

Normalized OCI image reference (tag or digest)

Status ImageStatus

Build status

Accepts one of the following:
const ImageStatusPending ImageStatus = "pending"
const ImageStatusPulling ImageStatus = "pulling"
const ImageStatusConverting ImageStatus = "converting"
const ImageStatusReady ImageStatus = "ready"
const ImageStatusFailed ImageStatus = "failed"
Cmd []stringoptional

CMD from container metadata

Entrypoint []stringoptional

Entrypoint from container metadata

Env map[string, string]optional

Environment variables from container metadata

Error stringoptional

Error message if status is failed

QueuePosition int64optional

Position in build queue (null if not queued)

SizeBytes int64optional

Disk size in bytes (null until ready)

formatint64
WorkingDir stringoptional

Working directory from container metadata

Pull and convert OCI image
package main

import (
  "context"
  "fmt"

  "github.com/onkernel/hypeman-go"
  "github.com/onkernel/hypeman-go/option"
)

func main() {
  client := hypeman.NewClient(
    option.WithAPIKey("My API Key"),
  )
  image, err := client.Images.New(context.TODO(), hypeman.ImageNewParams{
    Name: "docker.io/library/nginx:latest",
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", image.CreatedAt)
}
{
  "created_at": "2025-01-15T10:00:00Z",
  "digest": "sha256:abc123def456...",
  "name": "docker.io/library/nginx:latest",
  "status": "ready",
  "cmd": [
    "nginx",
    "-g",
    "daemon off;"
  ],
  "entrypoint": [
    "/docker-entrypoint.sh"
  ],
  "env": {
    "PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
  },
  "error": "pull failed: connection timeout",
  "queue_position": 2,
  "size_bytes": 536870912,
  "working_dir": "/app"
}
Returns Examples
{
  "created_at": "2025-01-15T10:00:00Z",
  "digest": "sha256:abc123def456...",
  "name": "docker.io/library/nginx:latest",
  "status": "ready",
  "cmd": [
    "nginx",
    "-g",
    "daemon off;"
  ],
  "entrypoint": [
    "/docker-entrypoint.sh"
  ],
  "env": {
    "PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
  },
  "error": "pull failed: connection timeout",
  "queue_position": 2,
  "size_bytes": 536870912,
  "working_dir": "/app"
}