Skip to main content
GET
/
v1
/
organizations
/
{organizationId}
/
projects
/
{projectId}
/
packages
/
{version}
/
resolved
Get Resolved Package
curl --request GET \
  --url https://api.example.com/v1/organizations/{organizationId}/projects/{projectId}/packages/{version}/resolved
{
  "package": {
    "version": "<string>",
    "components": {},
    "assets": {}
  },
  "dependencies": {}
}
The resolved package endpoint returns the complete package with all compiled components, assets, and resolved dependencies in a format ready for runtime execution. This is the format used by client SDKs to render content.

Path Parameters

organizationId
string
required
Organization ID
projectId
string
required
Project ID
version
string
required
Package version (e.g., 1.0.0)

Response

package
object
The main package content
dependencies
object
Map of dependency identifiers to their resolved content

Example Response

{
  "package": {
    "version": "1.0.0",
    "components": {
      "ProductCard": "const body = (props, children) => { return VStack([...]); }",
      "ArticleLayout": "const body = (props, children) => { return VStack([Header(props), ...children]); }",
      "Button": "const body = (props, children) => { return Button(props.label); }"
    },
    "assets": {
      "ProductCard": [
        { "name": "logo-primary", "url": "https://cdn.metabind.ai/assets/logo-2x.png" }
      ],
      "ArticleLayout": [
        { "name": "hero-background", "url": "https://cdn.metabind.ai/assets/hero-image.jpg" }
      ]
    }
  },
  "dependencies": {
    "[email protected]": {
      "components": {
        "Button": "const body = (props, children) => { ... }",
        "Card": "const body = (props, children) => { ... }"
      },
      "assets": {
        "Button": [
          { "name": "default-icon", "url": "https://cdn.metabind.ai/assets/default-icon.svg" }
        ]
      }
    },
    "[email protected]": {
      "components": {
        "Typography": "const body = (props, children) => { ... }",
        "Spacer": "const body = () => { ... }"
      },
      "assets": {}
    }
  }
}

Dependency Resolution

Dependencies are recursively resolved and flattened into the dependencies object. Each dependency is keyed by {projectId}@{version}. All transitive dependencies are included in the response, deduplicated by version.

Use Cases

Mobile SDK Integration

The resolved format is optimized for client SDKs:
// iOS Swift example
let resolved = try await metabind.getResolvedPackage(version: "1.0.0")

// All components are immediately available
let productCard = resolved.package.components["ProductCard"]
let buttonFromDep = resolved.dependencies["[email protected]"]?.components["Button"]

Web Rendering

const resolved = await metabind.getResolvedPackage('1.0.0');

// Execute component code
const componentCode = resolved.package.components['ProductCard'];
const component = eval(componentCode);

// Access assets
const assets = resolved.package.assets['ProductCard'];

Code Examples

curl -X GET "https://api.metabind.ai/v1/organizations/org123/projects/proj456/packages/1.0.0/resolved" \
  -H "Authorization: Bearer YOUR_API_KEY"