Skip to main content
GET
/
app
/
v1
/
organizations
/
{organizationId}
/
projects
/
{projectId}
/
packages
/
{version}
/
resolved
Get Resolved Package
curl --request GET \
  --url https://api.example.com/app/v1/organizations/{organizationId}/projects/{projectId}/packages/{version}/resolved
{
  "id": "<string>",
  "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)

Query Parameters

includeDependencies
boolean
default:"false"
Set to true to include resolved dependencies in the response

Response

id
string
Package ID
version
string
Package version
components
object
Map of component names to compiled JavaScript code
assets
object
Map of component names to their asset arrays
dependencies
object
Map of dependency identifiers to their resolved content (only present if includeDependencies=true)

Example Response

{
  "id": "pkg123",
  "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": {
    "proj456@2.0.0": {
      "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" }
        ]
      }
    }
  }
}

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.components["ProductCard"]
let buttonFromDep = resolved.dependencies?["proj456@2.0.0"]?.components["Button"]

Web Rendering

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

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

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

Code Examples

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