Skip to content

GraphQL API

Nexaa’s public GraphQL API gives you control over your Serverless Containers and Cloud Databases. You can perform CRUD operations on resources such as containers and container jobs — all through a modern, flexible interface.

Endpoint: https://graphql.tilaa.com/graphql/platform
Include a valid authorization token and a GraphQL query or mutation in each request.


Getting Started

All GraphQL requests require Bearer Authentication.

Do not use your main Nexaa account credentials.
Instead, create an API user with a unique email address.

The email address must be:

  • Unique and verified
  • Able to receive important updates (deprecation notices, feature releases, maintenance alerts)

Try It Out

Danger

All operations are executed against the live environment. Changes are actually applied.

You can explore test and use the API using our interactive GraphQL:

Explor the GraphQL API

This tool lets you:

  • Browse the full schema
  • Build and run queries
  • View live responses

Queries and Mutations

GraphQL supports two main operation types:

Query

Retrieves data from the server. The response includes only the requested fields.

1
2
3
4
5
6
7
8
query MyQuery($name: String = "example") {
  namespace(name: $name) {
    privateRegistries {
      id
      name
    }
  }
}

Mutation

Modifies data (create, update, delete) and returns the updated results.

mutation MyMutation {
  containerCreate(
    containerInput: {
      name: "mycontainer", 
      namespace: "namespacename", 
      resources: CPU_250_RAM_500, 
      image: "myregistry/mycontainer:v1.0"}
  ) {
    name
    state
  }
}

Responses

Success – Query

1
2
3
4
5
6
7
{
  "data": {
    "namespace": {
      "containerJobs": []
    }
  }
}
Failure – Query
1
2
3
4
5
6
7
{
  "errors": [
    {
      "message": "Not found."
    }
  ]
}
Success – Mutation
1
2
3
4
5
{
  "data": {
    "createContainer": true
  }
}

Failure – Mutation

{
  "errors": [
    {
      "message": "Variable \"$name\" of required type \"String!\" was not provided.",
      "locations": [
        {
          "line": 2,
          "column": 42
        }
      ]
    }
  ]
}

You can view all required and optional fields directly in the API schema explorer.

What's Next?