Worlds

The Worlds service manages virtual environments, each defined by World Builder content with custom runtime settings (map selection, session duration, etc.).

Get worlds for an organization

get

Retrieves and returns all worlds that belong to the given Organization. Can also additionally filter by project if a project ID is passed in the headers.

Authorizations
Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringOptional

The ID of a project

Responses
200
Lists all worlds for an organization or project (if specified)
application/json
get
GET /api/worlds/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
Accept: */*
200

Lists all worlds for an organization or project (if specified)

[
  {
    "documentId": "text",
    "name": "text",
    "description": "text",
    "pictureUrl": "https://example.com",
    "transient": true,
    "metadata": {
      "annotations": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "labels": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      }
    },
    "compute": {
      "group": "production",
      "region": "Europe",
      "version": "text"
    },
    "networking": {
      "strategy": "Default",
      "scaling": {
        "profile": "Tiny",
        "configuration": null
      }
    },
    "runtime": {
      "build": {
        "channelId": "text",
        "tag": "text",
        "content": {
          "id": "text"
        }
      },
      "mapName": "text",
      "durationMinutes": 1,
      "capacity": 1,
      "admissionPolicy": "Open"
    },
    "status": {
      "phase": "Inactive",
      "message": "text",
      "startedAt": "text",
      "resolvedBuild": {
        "channelId": "text",
        "tag": "text",
        "organizationId": "text",
        "id": "text"
      },
      "runId": "text"
    },
    "manifest": {
      "serverPermissions": [
        "text"
      ],
      "clientPermissions": [
        "text"
      ]
    },
    "admission": {
      "policy": "Open",
      "capacity": 1
    },
    "sessions": {
      "controlPolicy": "Unlimited",
      "streamingTicketPredicate": "text",
      "flags": {
        "ignoreExpiry": false,
        "ignoreSlotRenewalErrors": false,
        "ignoreParentMissing": false,
        "useImmediateMode": false
      },
      "forceTravelWorldId": "text"
    },
    "organizationId": "text",
    "projectId": "text",
    "launchContext": {
      "launchContextId": "text",
      "name": "text",
      "isActive": true,
      "publicDownload": {
        "enabled": true,
        "enforceAntiCheat": true,
        "allowMac": true,
        "allowIos": true
      },
      "isWorldTravelOnly": true,
      "worldId": "text",
      "description": "text",
      "errorPageUrl": "text",
      "okPageUrl": "text",
      "gdnStreaming": {
        "cmsId": "text",
        "authorizationId": "text",
        "launchMode": "same-tab",
        "useCustomClient": true,
        "useWindowedMode": true
      },
      "ubitusStreaming": {
        "gameLabel": "text",
        "gameChannel": "text"
      },
      "streamManager": {
        "streamContextId": "text",
        "allowForceProvider": true,
        "showProviderOptions": true,
        "useBuildVersion": true
      },
      "bypassBrowserRestrictions": true,
      "enableQueue": true,
      "capacity": 1,
      "buildInfo": {
        "buildChannelId": "text",
        "buildTag": "text",
        "buildType": "client"
      },
      "splashScreenUrl": "text",
      "deployment": {
        "region": "text",
        "labels": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "version": "text"
      },
      "useWorldSessions": true,
      "pictureUrl": "text",
      "isPublic": true,
      "organizationId": "text",
      "projectId": "text",
      "artifactUrl": "text",
      "permissionVerb": "*"
    },
    "queueState": null
  }
]

Create a world

post

Creates a world in the given Organization and Project. Checks if the user can create a world with the given size.

Authorizations
Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Body

The new world's details

namestring · min: 1 · max: 64Required

The name of a world

Pattern: ^.+\S.*$
descriptionstring · max: 256Optional

The description of a world

pictureUrlstring · uriOptional

The picture URL of a world

transientbooleanRequired

Describes whether the world is transient. Transient worlds are automatically deleted once their duration expires and they are fully stopped.

Responses
200
The world's ID, if created successfully
application/json
post
POST /api/worlds/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Content-Type: application/json
Accept: */*
Content-Length: 1136

{
  "streaming": {
    "gdn": {
      "cmsId": "text",
      "authorizationId": "text",
      "launchMode": "same-tab",
      "useCustomClient": true,
      "useWindowedMode": true
    },
    "streamManager": {
      "streamContextId": "text",
      "allowForceProvider": true,
      "showProviderOptions": true,
      "useBuildVersion": true
    },
    "ubitus": {
      "gameLabel": "text",
      "gameChannel": "text"
    }
  },
  "compute": {
    "group": "production",
    "region": "Europe",
    "version": "text"
  },
  "networking": {
    "strategy": "Default",
    "scaling": {
      "profile": "Tiny",
      "configuration": null
    }
  },
  "name": "text",
  "description": "text",
  "pictureUrl": "https://example.com",
  "transient": true,
  "metadata": {
    "annotations": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "labels": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    }
  },
  "runtime": {
    "build": {
      "channelId": "text",
      "tag": "text",
      "content": {
        "id": "text"
      }
    },
    "mapName": "text",
    "durationMinutes": 1,
    "capacity": 1,
    "admissionPolicy": "Open"
  },
  "manifest": {
    "serverPermissions": [
      "text"
    ],
    "clientPermissions": [
      "text"
    ]
  },
  "admission": {
    "policy": "Open",
    "capacity": 1
  },
  "sessions": {
    "controlPolicy": "Unlimited",
    "streamingTicketPredicate": "text",
    "flags": {
      "ignoreExpiry": false,
      "ignoreSlotRenewalErrors": false,
      "ignoreParentMissing": false,
      "useImmediateMode": false
    },
    "forceTravelWorldId": "text"
  }
}
200

The world's ID, if created successfully

{
  "worldId": "text",
  "launchContextId": "text"
}

Returns a list of worlds that the client can launch in to

get
Authorizations
Responses
200
List of worlds that the client can launch into
application/json
get
GET /api/worlds/travel/locations/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
Accept: */*
{
  "worlds": [
    {
      "deployment": "text",
      "map": "text",
      "buildId": "text",
      "organizationId": "text",
      "projectId": "text",
      "launchContextId": "text",
      "launchContextName": "text",
      "worldId": "text",
      "worldName": "text",
      "liveConfigUrl": "text",
      "contentId": "text"
    }
  ]
}

Get the details of a world

get

Retrieves and returns the specified world and linked launch context.

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Responses
200
The details for a world
application/json
get
GET /api/worlds/{worldId}/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Accept: */*
{
  "documentId": "text",
  "name": "text",
  "description": "text",
  "pictureUrl": "https://example.com",
  "transient": true,
  "metadata": {
    "annotations": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "labels": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    }
  },
  "compute": {
    "group": "production",
    "region": "Europe",
    "version": "text"
  },
  "networking": {
    "strategy": "Default",
    "scaling": {
      "profile": "Tiny",
      "configuration": null
    }
  },
  "runtime": {
    "build": {
      "channelId": "text",
      "tag": "text",
      "content": {
        "id": "text"
      }
    },
    "mapName": "text",
    "durationMinutes": 1,
    "capacity": 1,
    "admissionPolicy": "Open"
  },
  "status": {
    "phase": "Inactive",
    "message": "text",
    "startedAt": "text",
    "resolvedBuild": {
      "channelId": "text",
      "tag": "text",
      "organizationId": "text",
      "id": "text"
    },
    "runId": "text"
  },
  "manifest": {
    "serverPermissions": [
      "text"
    ],
    "clientPermissions": [
      "text"
    ]
  },
  "admission": {
    "policy": "Open",
    "capacity": 1
  },
  "sessions": {
    "controlPolicy": "Unlimited",
    "streamingTicketPredicate": "text",
    "flags": {
      "ignoreExpiry": false,
      "ignoreSlotRenewalErrors": false,
      "ignoreParentMissing": false,
      "useImmediateMode": false
    },
    "forceTravelWorldId": "text"
  },
  "organizationId": "text",
  "projectId": "text",
  "launchContext": {
    "launchContextId": "text",
    "name": "text",
    "isActive": true,
    "publicDownload": {
      "enabled": true,
      "enforceAntiCheat": true,
      "allowMac": true,
      "allowIos": true
    },
    "isWorldTravelOnly": true,
    "worldId": "text",
    "description": "text",
    "errorPageUrl": "text",
    "okPageUrl": "text",
    "gdnStreaming": {
      "cmsId": "text",
      "authorizationId": "text",
      "launchMode": "same-tab",
      "useCustomClient": true,
      "useWindowedMode": true
    },
    "ubitusStreaming": {
      "gameLabel": "text",
      "gameChannel": "text"
    },
    "streamManager": {
      "streamContextId": "text",
      "allowForceProvider": true,
      "showProviderOptions": true,
      "useBuildVersion": true
    },
    "bypassBrowserRestrictions": true,
    "enableQueue": true,
    "capacity": 1,
    "buildInfo": {
      "buildChannelId": "text",
      "buildTag": "text",
      "buildType": "client"
    },
    "splashScreenUrl": "text",
    "deployment": {
      "region": "text",
      "labels": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "version": "text"
    },
    "useWorldSessions": true,
    "pictureUrl": "text",
    "isPublic": true,
    "organizationId": "text",
    "projectId": "text",
    "artifactUrl": "text",
    "permissionVerb": "*"
  }
}

Update the details of a world

patch

Updates the specified world and returns the resulting new world data if successful.

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Body

The world details to update. Partial updates of object fields are not allowed. All nested fields must be provided and optional fields will be reset to default.

namestring · min: 1 · max: 64Optional

The name of a world

Pattern: ^.+\S.*$
descriptionstring · max: 256Optional

The description of a world

pictureUrlstring · uriOptional
Responses
200
The updated world details
application/json
patch
PATCH /api/worlds/{worldId}/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Content-Type: application/json
Accept: */*
Content-Length: 900

{
  "streaming": {
    "gdn": {
      "cmsId": "text",
      "authorizationId": "text",
      "launchMode": "same-tab",
      "useCustomClient": true,
      "useWindowedMode": true
    },
    "streamManager": {
      "streamContextId": "text",
      "allowForceProvider": true,
      "showProviderOptions": true,
      "useBuildVersion": true
    },
    "ubitus": {
      "gameLabel": "text",
      "gameChannel": "text"
    }
  },
  "name": "text",
  "description": "text",
  "pictureUrl": "https://example.com",
  "metadata": {
    "annotations": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "labels": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    }
  },
  "compute": {
    "group": "production",
    "region": "Europe",
    "version": "text"
  },
  "networking": {
    "strategy": "Default",
    "scaling": {
      "profile": "Tiny",
      "configuration": null
    }
  },
  "runtime": {
    "build": {
      "channelId": "text",
      "tag": "text",
      "content": {
        "id": "text"
      }
    },
    "mapName": "text",
    "durationMinutes": 1,
    "capacity": 1,
    "admissionPolicy": "Open"
  },
  "manifest": {
    "serverPermissions": [
      "text"
    ],
    "clientPermissions": [
      "text"
    ]
  },
  "admission": {
    "policy": "Open",
    "capacity": 1
  }
}
{
  "documentId": "text",
  "name": "text",
  "description": "text",
  "pictureUrl": "https://example.com",
  "transient": true,
  "metadata": {
    "annotations": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "labels": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    }
  },
  "compute": {
    "group": "production",
    "region": "Europe",
    "version": "text"
  },
  "networking": {
    "strategy": "Default",
    "scaling": {
      "profile": "Tiny",
      "configuration": null
    }
  },
  "runtime": {
    "build": {
      "channelId": "text",
      "tag": "text",
      "content": {
        "id": "text"
      }
    },
    "mapName": "text",
    "durationMinutes": 1,
    "capacity": 1,
    "admissionPolicy": "Open"
  },
  "status": {
    "phase": "Inactive",
    "message": "text",
    "startedAt": "text",
    "resolvedBuild": {
      "channelId": "text",
      "tag": "text",
      "organizationId": "text",
      "id": "text"
    },
    "runId": "text"
  },
  "manifest": {
    "serverPermissions": [
      "text"
    ],
    "clientPermissions": [
      "text"
    ]
  },
  "admission": {
    "policy": "Open",
    "capacity": 1
  },
  "sessions": {
    "controlPolicy": "Unlimited",
    "streamingTicketPredicate": "text",
    "flags": {
      "ignoreExpiry": false,
      "ignoreSlotRenewalErrors": false,
      "ignoreParentMissing": false,
      "useImmediateMode": false
    },
    "forceTravelWorldId": "text"
  }
}

Delete a world

delete

Deletes the specified world.

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Responses
200
Empty response
application/json
Responsenot

Empty response

delete
DELETE /api/worlds/{worldId}/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Accept: */*

No content

Get world bot deployments

get

Get all bot deployments for the specified world

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Responses
200
All bot deployments for a world
application/json
get
GET /api/worlds/{worldId}/bots/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Accept: */*
[
  {
    "documentId": "text",
    "description": "text",
    "configuration": {
      "count": 1,
      "cpu": "/[a-z]/",
      "memory": "/[a-z]/",
      "args": [
        "text"
      ],
      "durationMinutes": 1
    },
    "status": {
      "phase": "Pending",
      "message": "text",
      "startedAt": 1,
      "worldStartedAt": "text",
      "cluster": {
        "name": "text",
        "computeGroup": "text"
      }
    },
    "metadata": {
      "annotations": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "labels": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      }
    },
    "organizationId": "text",
    "projectId": "text",
    "worldId": "text"
  }
]

Create world bot deployment

post

Create a bot deployment for the specified world with the provided bot count

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Body

Create a bot deployment

descriptionstring · max: 2048Optional
countnumberRequired
cpustring · regexOptionalPattern: ^\d+(m|\.\d\d?\d?)?$
memorystring · regexOptionalPattern: ^\d+(\.\d+)?(m|k|Ki|M|Mi|G|Gi)?$
argsstring[]Optional
durationMinutesnumberOptional
Responses
200
Default Response
post
POST /api/worlds/{worldId}/bots/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Content-Type: application/json
Accept: */*
Content-Length: 209

{
  "description": "text",
  "metadata": {
    "annotations": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "labels": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    }
  },
  "count": 1,
  "cpu": "/[a-z]/",
  "memory": "/[a-z]/",
  "args": [
    "text"
  ],
  "durationMinutes": 1
}
200

Default Response

No content

Get world bot deployment

get

Get the details for a specific bot deployment for the specified world.

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

botDeploymentIdstringRequired

The ID of a bot deployment

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Responses
200
The details for a bot deployment
application/json
get
GET /api/worlds/{worldId}/bots/{botDeploymentId}/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Accept: */*
{
  "documentId": "text",
  "description": "text",
  "configuration": {
    "count": 1,
    "cpu": "/[a-z]/",
    "memory": "/[a-z]/",
    "args": [
      "text"
    ],
    "durationMinutes": 1
  },
  "status": {
    "phase": "Pending",
    "message": "text",
    "startedAt": 1,
    "worldStartedAt": "text",
    "cluster": {
      "name": "text",
      "computeGroup": "text"
    }
  },
  "metadata": {
    "annotations": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "labels": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    }
  },
  "organizationId": "text",
  "projectId": "text",
  "worldId": "text"
}

Update world bot deployment

patch

Update a bot deployment for the specified world. This can be used to alter the bot count in a bot deployment.

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

botDeploymentIdstringRequired

The ID of a bot deployment

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Body

Patch a bot deployment

countnumberRequired
cpustring · regexOptionalPattern: ^\d+(m|\.\d\d?\d?)?$
memorystring · regexOptionalPattern: ^\d+(\.\d+)?(m|k|Ki|M|Mi|G|Gi)?$
argsstring[]Optional
durationMinutesnumberOptional
Responses
200
Default Response
patch
PATCH /api/worlds/{worldId}/bots/{botDeploymentId}/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Content-Type: application/json
Accept: */*
Content-Length: 188

{
  "count": 1,
  "cpu": "/[a-z]/",
  "memory": "/[a-z]/",
  "args": [
    "text"
  ],
  "durationMinutes": 1,
  "metadata": {
    "annotations": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "labels": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    }
  }
}
200

Default Response

No content

Delete world bot deployment

delete

Stop a bot deployment for the specified world

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

botDeploymentIdstringRequired

The ID of a bot deployment

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Responses
200
Default Response
delete
DELETE /api/worlds/{worldId}/bots/{botDeploymentId}/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Accept: */*
200

Default Response

No content

Get world deployments

get

Returns the specified world's deployments. Optionally can be filtered by status, provided in the query string.

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

Query parameters
Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Responses
200
Details for the World's deployments
application/json
get
GET /api/worlds/{worldId}/deployments/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Accept: */*
[
  {
    "organizationId": "text",
    "projectId": "text",
    "worldId": "text",
    "runId": "text",
    "createdAt": "text",
    "id": "text",
    "networking": {
      "scaling": {
        "profile": "Tiny"
      }
    },
    "externalId": "text",
    "compute": {
      "clusterName": "text",
      "group": "production",
      "region": "Europe",
      "version": "text"
    },
    "runtime": {
      "build": {
        "channelId": "text",
        "id": "text",
        "content": {
          "id": "text"
        }
      },
      "mapName": "text",
      "liveConfigUrl": "text",
      "durationMinute": 1,
      "args": [
        "text"
      ]
    },
    "status": "Unknown"
  }
]

World update picture URL

patch

Update the picture URL of a world

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Responses
200
The updated world details
application/json
patch
PATCH /api/worlds/{worldId}/pictureUrl/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Accept: */*
{
  "documentId": "text",
  "name": "text",
  "description": "text",
  "pictureUrl": "https://example.com",
  "transient": true,
  "metadata": {
    "annotations": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "labels": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    }
  },
  "compute": {
    "group": "production",
    "region": "Europe",
    "version": "text"
  },
  "networking": {
    "strategy": "Default",
    "scaling": {
      "profile": "Tiny",
      "configuration": null
    }
  },
  "runtime": {
    "build": {
      "channelId": "text",
      "tag": "text",
      "content": {
        "id": "text"
      }
    },
    "mapName": "text",
    "durationMinutes": 1,
    "capacity": 1,
    "admissionPolicy": "Open"
  },
  "status": {
    "phase": "Inactive",
    "message": "text",
    "startedAt": "text",
    "resolvedBuild": {
      "channelId": "text",
      "tag": "text",
      "organizationId": "text",
      "id": "text"
    },
    "runId": "text"
  },
  "manifest": {
    "serverPermissions": [
      "text"
    ],
    "clientPermissions": [
      "text"
    ]
  },
  "admission": {
    "policy": "Open",
    "capacity": 1
  },
  "sessions": {
    "controlPolicy": "Unlimited",
    "streamingTicketPredicate": "text",
    "flags": {
      "ignoreExpiry": false,
      "ignoreSlotRenewalErrors": false,
      "ignoreParentMissing": false,
      "useImmediateMode": false
    },
    "forceTravelWorldId": "text"
  }
}

Get a list of all active roles for a world

get

Returns a list of all active roles for a world. Could be used to get all possible conditions that allow a user to access a world.

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Responses
200
The roles that can access a world
application/json
get
GET /api/worlds/{worldId}/roles/ HTTP/1.1
Host: your-organization-id.m2worlds.io
Authorization: Bearer YOUR_SECRET_TOKEN
x-m2-organization-id: text
x-m2-project-id: text
Accept: */*
200

The roles that can access a world

[
  {
    "roleId": "text",
    "name": "text",
    "groupCondition": {
      "identifiers": [
        "text"
      ],
      "conditionType": "allUsers",
      "isActive": true,
      "expiryDate": {
        "to": "text",
        "from": "text"
      },
      "capacity": 1,
      "guestToken": "text",
      "chainId": "1"
    }
  }
]

Start a world

post

Transitions the phase of the world to Starting, which will subsequently launch the underlying deployments. With this transition, the world run ID and startedAt timestamp are reset.

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Responses
200
Empty response
application/json
Responsenot

Empty response

post
POST /api/worlds/{worldId}/start/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Accept: */*

No content

Stop a world

post

Transition the world phase to Stopped, which subsequently stops underlying deployments.

Authorizations
Path parameters
worldIdstringRequired

The ID of a world

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Responses
200
Empty response
application/json
Responsenot

Empty response

post
POST /api/worlds/{worldId}/stop/ HTTP/1.1
Host: your-organization-id.m2worlds.io
x-api-key: YOUR_API_KEY
x-m2-organization-id: text
x-m2-project-id: text
Accept: */*

No content

Check if a user has access to a world

get
Authorizations
Path parameters
worldIdstringRequired

The ID of a world

userIdstringRequired

The ID of a user

Header parameters
x-m2-organization-idstringRequired

The ID of an organization

x-m2-project-idstringRequired

The ID of a project

Responses
200
Indicates if a user has access to a world
application/json
get
GET /api/worlds/{worldId}/users/{userId}/access/ HTTP/1.1
Host: your-organization-id.m2worlds.io
Authorization: Bearer YOUR_SECRET_TOKEN
x-m2-organization-id: text
x-m2-project-id: text
Accept: */*
{
  "userId": "text",
  "hasAccess": true
}

Last updated

Was this helpful?