Fixie GraphQL Reference

This is the documentation for the Fixie GraphQL API, which you can use to build your own applications on top of the Fixie platform. You can also check out our Python SDK, which provides a thin wrapper on top of this API, at https://github.com/fixie-ai/fixie-sdk.

If you have questions, suggestions, or feedback, please file an issue on our GitHub project here: https://github.com/fixie-ai/fixie-sdk/issues

Contact

Fixie Support

support@fixie.ai

API Endpoints
# Fixie:
https://app.fixie.ai/graphql
Headers
# Your Fixie API token, which you can obtain from your profile page. Must be included in all API calls.
Authorization: Bearer <YOUR_TOKEN_HERE>

Queries

agentByHandle

Description

Return the Agent with the given handle owned by the current user.

Response

Returns an AgentType

Arguments
Name Description
handle - String!

Example

Query
query agentByHandle($handle: String!) {
  agentByHandle(handle: $handle) {
    handle
    name
    description
    moreInfoUrl
    created
    modified
    published
    refreshStatus
    owner {
      ... on UserType {
        ...UserTypeFragment
      }
      ... on OrganizationType {
        ...OrganizationTypeFragment
      }
    }
    agentId
    queries
    avatar
    queryUrl
    funcUrl
    hasManagedDeployment
    currentRevision {
      ...AgentRevisionFragment
    }
    allRevisions {
      ...AgentRevisionFragment
    }
  }
}
Variables
{"handle": "abc123"}
Response
{
  "data": {
    "agentByHandle": {
      "handle": "abc123",
      "name": "abc123",
      "description": "xyz789",
      "moreInfoUrl": "xyz789",
      "created": "2007-12-03T10:15:30Z",
      "modified": "2007-12-03T10:15:30Z",
      "published": false,
      "refreshStatus": "SUCCEEDED",
      "owner": UserType,
      "agentId": "xyz789",
      "queries": ["xyz789"],
      "avatar": "abc123",
      "queryUrl": "xyz789",
      "funcUrl": "xyz789",
      "hasManagedDeployment": false,
      "currentRevision": AgentRevision,
      "allRevisions": [AgentRevision]
    }
  }
}

agentById

Description

Return the Agent with the given agent ID.

Response

Returns an AgentType

Arguments
Name Description
agentId - String!

Example

Query
query agentById($agentId: String!) {
  agentById(agentId: $agentId) {
    handle
    name
    description
    moreInfoUrl
    created
    modified
    published
    refreshStatus
    owner {
      ... on UserType {
        ...UserTypeFragment
      }
      ... on OrganizationType {
        ...OrganizationTypeFragment
      }
    }
    agentId
    queries
    avatar
    queryUrl
    funcUrl
    hasManagedDeployment
    currentRevision {
      ...AgentRevisionFragment
    }
    allRevisions {
      ...AgentRevisionFragment
    }
  }
}
Variables
{"agentId": "xyz789"}
Response
{
  "data": {
    "agentById": {
      "handle": "abc123",
      "name": "abc123",
      "description": "abc123",
      "moreInfoUrl": "abc123",
      "created": "2007-12-03T10:15:30Z",
      "modified": "2007-12-03T10:15:30Z",
      "published": false,
      "refreshStatus": "SUCCEEDED",
      "owner": UserType,
      "agentId": "xyz789",
      "queries": ["xyz789"],
      "avatar": "abc123",
      "queryUrl": "abc123",
      "funcUrl": "xyz789",
      "hasManagedDeployment": true,
      "currentRevision": AgentRevision,
      "allRevisions": [AgentRevision]
    }
  }
}

allAgents

Description

List all Agents.

Response

Returns [AgentType]

Arguments
Name Description
search - String
first - Int
skip - Int

Example

Query
query allAgents(
  $search: String,
  $first: Int,
  $skip: Int
) {
  allAgents(
    search: $search,
    first: $first,
    skip: $skip
  ) {
    handle
    name
    description
    moreInfoUrl
    created
    modified
    published
    refreshStatus
    owner {
      ... on UserType {
        ...UserTypeFragment
      }
      ... on OrganizationType {
        ...OrganizationTypeFragment
      }
    }
    agentId
    queries
    avatar
    queryUrl
    funcUrl
    hasManagedDeployment
    currentRevision {
      ...AgentRevisionFragment
    }
    allRevisions {
      ...AgentRevisionFragment
    }
  }
}
Variables
{
  "search": "xyz789",
  "first": 123,
  "skip": 987
}
Response
{
  "data": {
    "allAgents": [
      {
        "handle": "abc123",
        "name": "abc123",
        "description": "abc123",
        "moreInfoUrl": "abc123",
        "created": "2007-12-03T10:15:30Z",
        "modified": "2007-12-03T10:15:30Z",
        "published": true,
        "refreshStatus": "SUCCEEDED",
        "owner": UserType,
        "agentId": "xyz789",
        "queries": ["abc123"],
        "avatar": "abc123",
        "queryUrl": "xyz789",
        "funcUrl": "abc123",
        "hasManagedDeployment": true,
        "currentRevision": AgentRevision,
        "allRevisions": [AgentRevision]
      }
    ]
  }
}

allAgentsForUser

Description

List all Agents owned by the current user

Response

Returns [AgentType]

Example

Query
query allAgentsForUser {
  allAgentsForUser {
    handle
    name
    description
    moreInfoUrl
    created
    modified
    published
    refreshStatus
    owner {
      ... on UserType {
        ...UserTypeFragment
      }
      ... on OrganizationType {
        ...OrganizationTypeFragment
      }
    }
    agentId
    queries
    avatar
    queryUrl
    funcUrl
    hasManagedDeployment
    currentRevision {
      ...AgentRevisionFragment
    }
    allRevisions {
      ...AgentRevisionFragment
    }
  }
}
Response
{
  "data": {
    "allAgentsForUser": [
      {
        "handle": "abc123",
        "name": "abc123",
        "description": "abc123",
        "moreInfoUrl": "xyz789",
        "created": "2007-12-03T10:15:30Z",
        "modified": "2007-12-03T10:15:30Z",
        "published": false,
        "refreshStatus": "SUCCEEDED",
        "owner": UserType,
        "agentId": "xyz789",
        "queries": ["xyz789"],
        "avatar": "abc123",
        "queryUrl": "abc123",
        "funcUrl": "xyz789",
        "hasManagedDeployment": false,
        "currentRevision": AgentRevision,
        "allRevisions": [AgentRevision]
      }
    ]
  }
}

allSessions

Description

List all Sessions.

Response

Returns [SessionType]

Arguments
Name Description
search - String
first - Int
skip - Int
starred - Boolean

Example

Query
query allSessions(
  $search: String,
  $first: Int,
  $skip: Int,
  $starred: Boolean
) {
  allSessions(
    search: $search,
    first: $first,
    skip: $skip,
    starred: $starred
  ) {
    handle
    name
    description
    created
    modified
    published
    messages {
      ...SessionMessageTypeFragment
    }
    embeds {
      ...SessionEmbedReferenceTypeFragment
    }
    owner {
      ...UserTypeFragment
    }
    isStarred
    frontendAgentId
    scope {
      ...AgentTypeFragment
    }
  }
}
Variables
{
  "search": "abc123",
  "first": 987,
  "skip": 987,
  "starred": true
}
Response
{
  "data": {
    "allSessions": [
      {
        "handle": "abc123",
        "name": "xyz789",
        "description": "xyz789",
        "created": "2007-12-03T10:15:30Z",
        "modified": "2007-12-03T10:15:30Z",
        "published": false,
        "messages": [SessionMessageType],
        "embeds": [SessionEmbedReferenceType],
        "owner": UserType,
        "isStarred": true,
        "frontendAgentId": "abc123",
        "scope": [AgentType]
      }
    ]
  }
}

sessionByHandle

Description

Return the Session with the given handle.

Response

Returns a SessionType

Arguments
Name Description
handle - String!

Example

Query
query sessionByHandle($handle: String!) {
  sessionByHandle(handle: $handle) {
    handle
    name
    description
    created
    modified
    published
    messages {
      ...SessionMessageTypeFragment
    }
    embeds {
      ...SessionEmbedReferenceTypeFragment
    }
    owner {
      ...UserTypeFragment
    }
    isStarred
    frontendAgentId
    scope {
      ...AgentTypeFragment
    }
  }
}
Variables
{"handle": "xyz789"}
Response
{
  "data": {
    "sessionByHandle": {
      "handle": "abc123",
      "name": "xyz789",
      "description": "abc123",
      "created": "2007-12-03T10:15:30Z",
      "modified": "2007-12-03T10:15:30Z",
      "published": false,
      "messages": [SessionMessageType],
      "embeds": [SessionEmbedReferenceType],
      "owner": UserType,
      "isStarred": true,
      "frontendAgentId": "abc123",
      "scope": [AgentType]
    }
  }
}

user

Description

Return the current user.

Response

Returns a UserType

Example

Query
query user {
  user {
    username
    email
    firstName
    lastName
    organization {
      ...OrganizationTypeFragment
    }
    avatar
    isStaff
    apiToken
    dailyUsedQueries
    dailyQueryLimit
    isAnonymous
  }
}
Response
{
  "data": {
    "user": {
      "username": "abc123",
      "email": "xyz789",
      "firstName": "xyz789",
      "lastName": "abc123",
      "organization": OrganizationType,
      "avatar": "abc123",
      "isStaff": true,
      "apiToken": "abc123",
      "dailyUsedQueries": 123,
      "dailyQueryLimit": 987,
      "isAnonymous": false
    }
  }
}

Mutations

addSessionEmbedReference

Description

Add an embed reference to a Session

Response

Returns an AddSessionEmbedReference

Arguments
Name Description
embedRefData - AddEmbedReferenceInput!

Example

Query
mutation addSessionEmbedReference($embedRefData: AddEmbedReferenceInput!) {
  addSessionEmbedReference(embedRefData: $embedRefData) {
    embedRef {
      ...SessionEmbedReferenceTypeFragment
    }
  }
}
Variables
{"embedRefData": AddEmbedReferenceInput}
Response
{
  "data": {
    "addSessionEmbedReference": {
      "embedRef": SessionEmbedReferenceType
    }
  }
}

createAgent

Description

Create a new agent

Response

Returns a CreateAgent

Arguments
Name Description
agentData - CreateAgentInput

Example

Query
mutation createAgent($agentData: CreateAgentInput) {
  createAgent(agentData: $agentData) {
    agent {
      ...AgentTypeFragment
    }
  }
}
Variables
{"agentData": CreateAgentInput}
Response
{"data": {"createAgent": {"agent": AgentType}}}

createAgentRevision

Description

Create an agent revision

Response

Returns a CreateAgentRevision

Arguments
Name Description
agentHandle - String! The agent handle
makeCurrent - Boolean! Whether to make the revision the default revision for the agent. Default = true
reindexCorpora - Boolean! Force a reindex of any corpora required by the agent. If this field isn't passed, and the revision created in this mutation has a corpus with new config, it will always be crawled. If the revision has a corpus whose config matches a previously-created revision, the previous crawl may be re-used. Default = false
revision - AgentRevisionInput! The revision to create.

Example

Query
mutation createAgentRevision(
  $agentHandle: String!,
  $makeCurrent: Boolean!,
  $reindexCorpora: Boolean!,
  $revision: AgentRevisionInput!
) {
  createAgentRevision(
    agentHandle: $agentHandle,
    makeCurrent: $makeCurrent,
    reindexCorpora: $reindexCorpora,
    revision: $revision
  ) {
    revision {
      ...AgentRevisionFragment
    }
  }
}
Variables
{
  "agentHandle": "xyz789",
  "makeCurrent": true,
  "reindexCorpora": false,
  "revision": AgentRevisionInput
}
Response
{
  "data": {
    "createAgentRevision": {"revision": AgentRevision}
  }
}

createSession

Description

Create a new session

Response

Returns a CreateSession

Arguments
Name Description
sessionData - CreateSessionInput

Example

Query
mutation createSession($sessionData: CreateSessionInput) {
  createSession(sessionData: $sessionData) {
    session {
      ...SessionTypeFragment
    }
  }
}
Variables
{"sessionData": CreateSessionInput}
Response
{"data": {"createSession": {"session": SessionType}}}

deleteAgent

Description

Delete an agent

Response

Returns a DeleteAgent

Arguments
Name Description
agentData - DeleteAgentInput!

Example

Query
mutation deleteAgent($agentData: DeleteAgentInput!) {
  deleteAgent(agentData: $agentData) {
    agent {
      ...AgentTypeFragment
    }
  }
}
Variables
{"agentData": DeleteAgentInput}
Response
{"data": {"deleteAgent": {"agent": AgentType}}}

deleteAgentRevision

Description

Delete an agent revision

Response

Returns a DeleteAgentRevision

Arguments
Name Description
agentHandle - String!
revisionId - ID!

Example

Query
mutation deleteAgentRevision(
  $agentHandle: String!,
  $revisionId: ID!
) {
  deleteAgentRevision(
    agentHandle: $agentHandle,
    revisionId: $revisionId
  ) {
    agent {
      ...AgentTypeFragment
    }
  }
}
Variables
{
  "agentHandle": "abc123",
  "revisionId": "4"
}
Response
{"data": {"deleteAgentRevision": {"agent": AgentType}}}

deleteSession

Description

Delete a session

Response

Returns a DeleteSession

Arguments
Name Description
handle - String!

Example

Query
mutation deleteSession($handle: String!) {
  deleteSession(handle: $handle) {
    session {
      ...SessionTypeFragment
    }
  }
}
Variables
{"handle": "abc123"}
Response
{"data": {"deleteSession": {"session": SessionType}}}

deleteSessionEmbedReference

Description

Delete an embed reference from a Session

Response

Returns a DeleteSessionEmbedReference

Arguments
Name Description
embedRefData - DeleteEmbedReferenceInput!

Example

Query
mutation deleteSessionEmbedReference($embedRefData: DeleteEmbedReferenceInput!) {
  deleteSessionEmbedReference(embedRefData: $embedRefData) {
    embedRef {
      ...SessionEmbedReferenceTypeFragment
    }
  }
}
Variables
{"embedRefData": DeleteEmbedReferenceInput}
Response
{
  "data": {
    "deleteSessionEmbedReference": {
      "embedRef": SessionEmbedReferenceType
    }
  }
}

sendSessionMessage

Description

Send a message to a Session

Response

Returns a SendSessionMessage

Arguments
Name Description
messageData - SendSessionMessageInput!

Example

Query
mutation sendSessionMessage($messageData: SendSessionMessageInput!) {
  sendSessionMessage(messageData: $messageData) {
    message {
      ...SessionMessageTypeFragment
    }
    response {
      ...SessionMessageTypeFragment
    }
  }
}
Variables
{"messageData": SendSessionMessageInput}
Response
{
  "data": {
    "sendSessionMessage": {
      "message": SessionMessageType,
      "response": SessionMessageType
    }
  }
}

updateAgent

Description

Update an agent

Response

Returns an UpdateAgent

Arguments
Name Description
agentData - UpdateAgentInput!

Example

Query
mutation updateAgent($agentData: UpdateAgentInput!) {
  updateAgent(agentData: $agentData) {
    agent {
      ...AgentTypeFragment
    }
  }
}
Variables
{"agentData": UpdateAgentInput}
Response
{"data": {"updateAgent": {"agent": AgentType}}}

updateSession

Description

Update a session

Response

Returns an UpdateSession

Arguments
Name Description
sessionData - UpdateSessionInput!

Example

Query
mutation updateSession($sessionData: UpdateSessionInput!) {
  updateSession(sessionData: $sessionData) {
    session {
      ...SessionTypeFragment
    }
  }
}
Variables
{"sessionData": UpdateSessionInput}
Response
{"data": {"updateSession": {"session": SessionType}}}

updateUser

Description

Update the current user profile

Response

Returns an UpdateUser

Arguments
Name Description
userData - UpdateUserInput!

Example

Query
mutation updateUser($userData: UpdateUserInput!) {
  updateUser(userData: $userData) {
    user {
      ...UserTypeFragment
    }
  }
}
Variables
{"userData": UpdateUserInput}
Response
{"data": {"updateUser": {"user": UserType}}}

Types

AddEmbedReferenceInput

Fields
Input Field Description
session - String!
embed - ID!
Example
{
  "session": "abc123",
  "embed": "4"
}

AddSessionEmbedReference

Fields
Field Name Description
embedRef - SessionEmbedReferenceType
Example
{"embedRef": SessionEmbedReferenceType}

AgentConfiguration

Description

Configuration that determines the Agent's behavior.

Types
Union Types

CodeShotAgent

StandaloneAgent

Example
CodeShotAgent

AgentDeployment

Description

An Agent deployment.

Example
ExternalDeployment

AgentExecutionEnvironment

Description

The execution environment for managed deployments.

Values
Enum Value Description

PYTHON

NODEJS

Example
"PYTHON"

AgentRefreshStatus

Values
Enum Value Description

SUCCEEDED

FAILED

RUNNING

Example
"SUCCEEDED"

AgentRevision

Description

A specific revision of an Agent's behavior.

Fields
Field Name Description
id - ID! The revision identifier.
created - DateTime! The datetime at which the revision was created.
agent - AgentType! The agent with which this revision is associated.
configuration - AgentConfiguration The configuration of the Agent's behavior.
deployment - AgentDeployment The deployment that implements the Agent's funcs.
metadata - [RevisionMetadataKeyValuePair!]! Client-provided metadata associated with the revision.
isCurrent - Boolean! A value that indicates whether this revision is the current revision.
indexedCorpora - [CorpusIndex!] The indexed corpora accessible to this agent.
Example
{
  "id": "4",
  "created": "2007-12-03T10:15:30Z",
  "agent": AgentType,
  "configuration": CodeShotAgent,
  "deployment": ExternalDeployment,
  "metadata": [RevisionMetadataKeyValuePair],
  "isCurrent": true,
  "indexedCorpora": [CorpusIndex]
}

AgentRevisionInput

Fields
Input Field Description
codeShot - CodeShotAgentInput The CodeShotAgent configuration, if creating a CodeShotAgent. Default = null
standalone - StandaloneAgentInput The StandaloneAgent configuration, if creating a StandaloneAgent. Default = null
metadata - [RevisionMetadataKeyValuePairInput]! Client-specified metadata to associate with the revision. Default = []
externalDeployment - ExternalDeploymentInput The deployment configuration, if hosted externally. Default = null
managedDeployment - ManagedDeploymentInput The deployment configuration, if managed by Fixie. Default = null
Example
{
  "codeShot": CodeShotAgentInput,
  "standalone": StandaloneAgentInput,
  "metadata": [RevisionMetadataKeyValuePairInput],
  "externalDeployment": ExternalDeploymentInput,
  "managedDeployment": ManagedDeploymentInput
}

AgentType

Fields
Field Name Description
handle - String! The human-readable, URL-friendly handle for this Agent.
name - String The human-readable name of this Agent.
description - String The long description of this Agent.
moreInfoUrl - String A URL with more information about this Agent.
created - DateTime! The Agent creation timestamp.
modified - DateTime! The Agent modification timestamp.
published - Boolean! Set to true if this Agent is published.
refreshStatus - AgentRefreshStatus
owner - PrincipalType! The owner of this Agent.
agentId - String! The Agent ID of this Agent.
queries - [String]
avatar - String The URL for the avatar image for this agent.
queryUrl - String Use currentRevision instead.
funcUrl - String Use currentRevision instead.
hasManagedDeployment - Boolean Use currentRevision instead.
currentRevision - AgentRevision The current revision of the agent. Accessible only to the Agent's owner.
allRevisions - [AgentRevision] All historical revisions of the agent. Accessible only to the Agent's owner.
Example
{
  "handle": "xyz789",
  "name": "xyz789",
  "description": "abc123",
  "moreInfoUrl": "abc123",
  "created": "2007-12-03T10:15:30Z",
  "modified": "2007-12-03T10:15:30Z",
  "published": true,
  "refreshStatus": "SUCCEEDED",
  "owner": UserType,
  "agentId": "abc123",
  "queries": ["xyz789"],
  "avatar": "xyz789",
  "queryUrl": "abc123",
  "funcUrl": "abc123",
  "hasManagedDeployment": true,
  "currentRevision": AgentRevision,
  "allRevisions": [AgentRevision]
}

Boolean

Description

The Boolean scalar type represents true or false.

CodeShotAgent

Description

An Agent type that can expose code to an LLM.

Fields
Field Name Description
basePrompt - String! The base prompt for the Agent.
fewShots - [String!]! The fewshots for the Agent.
conversational - Boolean! Whether the agent should consider the entire conversation for each response.
corpora - [CorpusInfo!]! Corpora to expose for document queries.
llmSettings - LLMSettings Settings to configure the LLM's behavior with this Agent.
Example
{
  "basePrompt": "xyz789",
  "fewShots": ["xyz789"],
  "conversational": false,
  "corpora": [UrlCorpusInfo],
  "llmSettings": LLMSettings
}

CodeShotAgentInput

Description

An Agent type that can expose code to an LLM.

Fields
Input Field Description
basePrompt - String! The base prompt for the Agent.
fewShots - [String]! The fewshots for the Agent. Default = []
conversational - Boolean Whether the agent should consider the entire conversation for each response. Default = null
corpora - [CorpusInfoInput] Corpora to expose for document queries. Default = null
llmSettings - LLMSettingsInput Settings to configure the LLM's behavior with this Agent. Default = null
Example
{
  "basePrompt": "abc123",
  "fewShots": ["abc123"],
  "conversational": true,
  "corpora": [CorpusInfoInput],
  "llmSettings": LLMSettingsInput
}

CorpusIndex

Description

Contains details about an indexed corpus.

Fields
Field Name Description
configuration - CorpusInfo!
status - IndexingStatus! The indexing status.
vectorCount - Int! The number of indexed vectors.
created - DateTime The timestamp at which indexing began.
modified - DateTime The timestamp at which the index was last modified.
corpusId - String The unique ID for this corpus.
Example
{
  "configuration": UrlCorpusInfo,
  "status": "NOT_STARTED",
  "vectorCount": 123,
  "created": "2007-12-03T10:15:30Z",
  "modified": "2007-12-03T10:15:30Z",
  "corpusId": "xyz789"
}

CorpusInfo

Description

Information for constructing a corpus, a collection of documents that can be used to ground an LLM's responses.

Types
Union Types

UrlCorpusInfo

CustomCorpusInfo

Example
UrlCorpusInfo

CorpusInfoInput

Description

Contains a list of URLs to retrieve for a corpus.

Fields
Input Field Description
urls - [String]! URLs to load documents from. A trailing wildcard (e.g., https://example.com/*), can be used to load all documents from a site.
excludePatterns - [String] A list of wildcard patterns to exclude from crawled URLs (e.g., /no_crawl/). Default = null
authTokenFunc - String An Agent func that can be invoked to retrieve an auth token that will be used for requests. Default = null
Example
{
  "urls": ["abc123"],
  "excludePatterns": ["abc123"],
  "authTokenFunc": "xyz789"
}

CreateAgent

Fields
Field Name Description
agent - AgentType
Example
{"agent": AgentType}

CreateAgentInput

Fields
Input Field Description
owner - String The user ID or organization ID of the Agent's owner. Must either be the current user ID, or the Organization ID to which the user belongs. If not specified, the current user ID is used.
handle - String! The Agent's handle.
name - String The Agent's display name.
description - String The Agent's description.
moreInfoUrl - String A URL where more info about the Agent can be found.
published - Boolean
Example
{
  "owner": "xyz789",
  "handle": "xyz789",
  "name": "xyz789",
  "description": "xyz789",
  "moreInfoUrl": "xyz789",
  "published": true
}

CreateAgentRevision

Fields
Field Name Description
revision - AgentRevision
Example
{"revision": AgentRevision}

CreateSession

Fields
Field Name Description
session - SessionType
Example
{"session": SessionType}

CreateSessionInput

Fields
Input Field Description
name - String The display name of the Session.
description - String Optional description for this Session.
frontendAgentId - String Optional agent ID to use as the frontend for queries to this Session.
scope - [String] Optional list of agent IDs that are in scope for this Session.
Example
{
  "name": "xyz789",
  "description": "xyz789",
  "frontendAgentId": "xyz789",
  "scope": ["xyz789"]
}

CustomCorpusInfo

Description

Contains info about a custom corpus.

Fields
Field Name Description
loadFunction - String The agent function invoked to load documents into the corpus.
Example
{"loadFunction": "xyz789"}

DateTime

Description

The DateTime scalar type represents a DateTime value as specified by iso8601.

Example
"2007-12-03T10:15:30Z"

DeleteAgent

Fields
Field Name Description
agent - AgentType
Example
{"agent": AgentType}

DeleteAgentInput

Fields
Input Field Description
owner - String The user ID or organization ID of the Agent's owner. Must either be the current user ID, or the Organization ID to which the user belongs. If not specified, the current user ID is used.
handle - String! The Agent's handle.
Example
{
  "owner": "abc123",
  "handle": "abc123"
}

DeleteAgentRevision

Fields
Field Name Description
agent - AgentType
Example
{"agent": AgentType}

DeleteEmbedReferenceInput

Fields
Input Field Description
session - String!
key - String!
Example
{
  "session": "xyz789",
  "key": "xyz789"
}

DeleteSession

Fields
Field Name Description
session - SessionType
Example
{"session": SessionType}

DeleteSessionEmbedReference

Fields
Field Name Description
embedRef - SessionEmbedReferenceType
Example
{"embedRef": SessionEmbedReferenceType}

EmbedType

Fields
Field Name Description
id - UUID! The UUID of this Embed.
contentType - String! The MIME content type for this Embed.
created - DateTime! The creation timestamp.
contentHash - String The SHA256 hash of the content of this Embed.
url - String
owner - UserType!
Example
{
  "id": "e1c7a17c-b3fa-4217-9152-db81d4071acd",
  "contentType": "abc123",
  "created": "2007-12-03T10:15:30Z",
  "contentHash": "abc123",
  "url": "abc123",
  "owner": UserType
}

ExternalDeployment

Description

An Agent deployment that is reachable via URL.

Fields
Field Name Description
url - String The URL at which the Agent can be reached.
Example
{"url": "xyz789"}

ExternalDeploymentInput

Description

An Agent deployment that is reachable via URL.

Fields
Input Field Description
url - String! The URL at which the Agent can be reached.
Example
{"url": "xyz789"}

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
123.45

ID

Description

The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.

Example
4

IndexingStatus

Values
Enum Value Description

NOT_STARTED

IN_PROGRESS

FAILED

COMPLETED

Example
"NOT_STARTED"

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
123

LLMSettings

Description

Settings to configure LLM behavior.

Fields
Field Name Description
model - Model The LLM model to use with this agent.
temperature - Float The LLM temperature to use with this agent.
maximumTokens - Int The maximum number of tokens to allow in responses.
Example
{"model": "OPENAI_GPT4", "temperature": 123.45, "maximumTokens": 987}

LLMSettingsInput

Description

Settings to configure LLM behavior.

Fields
Input Field Description
model - Model The LLM model to use with this agent. Default = null
temperature - Float The LLM temperature to use with this agent.
maximumTokens - Int The maximum number of tokens to allow in responses.
Example
{"model": "OPENAI_GPT4", "temperature": 123.45, "maximumTokens": 987}

ManagedDeployment

Description

An Agent deployment that is managed by Fixie.

Fields
Field Name Description
environment - AgentExecutionEnvironment The execution environment.
Example
{"environment": "PYTHON"}

ManagedDeploymentInput

Description

An Agent deployment that will be managed by Fixie.

Fields
Input Field Description
environment - AgentExecutionEnvironment! The execution environment. Default = PYTHON
codePackage - Upload! The code package to deploy.
Example
{"environment": "PYTHON", "codePackage": Upload}

Model

Description

A supported LLM for Agents.

Values
Enum Value Description

OPENAI_GPT4

OPENAI_GPT3

GOOSEAI_GPT_NEO_20B

AI21_J2_JUMBO

GOOSEAI_GPTJ_6B

OPENAI_GPT35

AI21_J2_GRANDE

Example
"OPENAI_GPT4"

OrganizationType

Description

Represents an Organization, which is a group of users that can also own Agents.

Fields
Field Name Description
handle - String! The unique handle for this Organization.
name - String The display name of this Organization.
created - DateTime! The creation timestamp.
modified - DateTime! The modification timestamp.
members - [String]
Example
{
  "handle": "xyz789",
  "name": "xyz789",
  "created": "2007-12-03T10:15:30Z",
  "modified": "2007-12-03T10:15:30Z",
  "members": ["xyz789"]
}

PrincipalType

Description

Represents a Principal, which is a User or an Organization.

Types
Union Types

UserType

OrganizationType

Example
UserType

RevisionMetadataKeyValuePair

Description

A client-specified metadata key/value pair for a deployment revision.

Fields
Field Name Description
key - String! The metadata key.
value - String! The metadata value.
Example
{
  "key": "abc123",
  "value": "xyz789"
}

RevisionMetadataKeyValuePairInput

Fields
Input Field Description
key - String! The metadata key.
value - String! The metadata value.
Example
{
  "key": "abc123",
  "value": "abc123"
}

SendSessionMessage

Fields
Field Name Description
message - SessionMessageType
response - SessionMessageType
Example
{
  "message": SessionMessageType,
  "response": SessionMessageType
}

SendSessionMessageInput

Fields
Input Field Description
session - String Handle of the Session to send a message to. If not specified, a new Session is created.
frontendAgentId - String If creating a new Session, the ID of the Agent to use with this Session.
text - String!
Example
{
  "session": "xyz789",
  "frontendAgentId": "abc123",
  "text": "abc123"
}

SessionEmbedReferenceType

Fields
Field Name Description
key - Int! The unique key for this Embed reference.
embed - EmbedType! The Embed that this reference points to.
session - SessionType
Example
{
  "key": 987,
  "embed": EmbedType,
  "session": SessionType
}

SessionMessageError

Fields
Field Name Description
agent - AgentType The agent that returned this error.
code - String! The error code.
errorMessage - String! The user-facing error message.
details - String
Example
{
  "agent": AgentType,
  "code": "abc123",
  "errorMessage": "xyz789",
  "details": "xyz789"
}

SessionMessageType

Fields
Field Name Description
id - ID!
text - String! The message text.
timestamp - DateTime! The timestamp of this message.
type - String! The type of message.
session - SessionType!
inReplyTo - SessionMessageType
sentBy - AgentType
error - SessionMessageError The error associated with this message, if any.
Example
{
  "id": 4,
  "text": "xyz789",
  "timestamp": "2007-12-03T10:15:30Z",
  "type": "abc123",
  "session": SessionType,
  "inReplyTo": SessionMessageType,
  "sentBy": AgentType,
  "error": SessionMessageError
}

SessionType

Description

A Session represents a conversation between the end user and one or more Agents. A Session consists of a list of Messages between Agents, and Embeds, which contain binary data that may be referenced by Messages.

Fields
Field Name Description
handle - String! The human-readable, URL-friendly handle for this Session.
name - String! The human-readable name of this Session.
description - String! The long description of this Session.
created - DateTime! The creation timestamp.
modified - DateTime! The modification timestamp.
published - Boolean! Set to true if this Session is published.
messages - [SessionMessageType!]!
embeds - [SessionEmbedReferenceType!]! The Session this reference belongs to.
owner - UserType!
isStarred - Boolean
frontendAgentId - String
scope - [AgentType]
Example
{
  "handle": "xyz789",
  "name": "xyz789",
  "description": "xyz789",
  "created": "2007-12-03T10:15:30Z",
  "modified": "2007-12-03T10:15:30Z",
  "published": false,
  "messages": [SessionMessageType],
  "embeds": [SessionEmbedReferenceType],
  "owner": UserType,
  "isStarred": false,
  "frontendAgentId": "xyz789",
  "scope": [AgentType]
}

StandaloneAgent

Description

An Agent type that directly handles user queries.

Fields
Field Name Description
sampleQueries - [String!]! Sample queries that this agent can handle.
Example
{"sampleQueries": ["abc123"]}

StandaloneAgentInput

Description

An Agent type that directly handles user queries.

Fields
Input Field Description
sampleQueries - [String] Sample queries that this agent can handle. Default = null
Example
{"sampleQueries": ["xyz789"]}

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Example
"xyz789"

UUID

Description

Leverages the internal Python implementation of UUID (uuid.UUID) to provide native UUID objects in fields, resolvers and input.

Example
"e1c7a17c-b3fa-4217-9152-db81d4071acd"

UpdateAgent

Fields
Field Name Description
agent - AgentType
Example
{"agent": AgentType}

UpdateAgentInput

Fields
Input Field Description
owner - String The user ID or organization ID of the Agent's owner. Must either be the current user ID, or the Organization ID to which the user belongs. If not specified, the current user ID is used.
newOwner - String The new owner for this Agent, either a User or Organization ID.
handle - String!
newHandle - String
name - String
description - String
moreInfoUrl - String
published - Boolean
currentRevisionId - ID The revision ID to make current.
Example
{
  "owner": "xyz789",
  "newOwner": "abc123",
  "handle": "abc123",
  "newHandle": "xyz789",
  "name": "abc123",
  "description": "xyz789",
  "moreInfoUrl": "xyz789",
  "published": false,
  "currentRevisionId": "4"
}

UpdateSession

Fields
Field Name Description
session - SessionType
Example
{"session": SessionType}

UpdateSessionInput

Fields
Input Field Description
handle - String!
name - String
description - String
published - Boolean
isStarred - Boolean
Example
{
  "handle": "abc123",
  "name": "xyz789",
  "description": "xyz789",
  "published": true,
  "isStarred": true
}

UpdateUser

Fields
Field Name Description
user - UserType
Example
{"user": UserType}

UpdateUserInput

Fields
Input Field Description
username - String
firstName - String
lastName - String
Example
{
  "username": "xyz789",
  "firstName": "xyz789",
  "lastName": "abc123"
}

Upload

Description

Create scalar that ignores normal serialization/deserialization, since that will be handled by the multipart request spec

Example
Upload

UrlCorpusInfo

Description

Contains a list of URLs to retrieve for a corpus.

Fields
Field Name Description
urls - [String] URLs to load documents from. A trailing wildcard (e.g., https://example.com/*), can be used to load all documents from a site.
excludePatterns - [String] A list of wildcard patterns to exclude from crawled URLs (e.g., /no_crawl/).
authTokenFunc - String An Agent func that can be invoked to retrieve an auth token that will be used for requests.
Example
{
  "urls": ["xyz789"],
  "excludePatterns": ["abc123"],
  "authTokenFunc": "abc123"
}

UserType

Description

Represents a single Fixie User.

Fields
Field Name Description
username - String
email - String
firstName - String
lastName - String
organization - OrganizationType
avatar - String
isStaff - Boolean
apiToken - String
dailyUsedQueries - Int
dailyQueryLimit - Int
isAnonymous - Boolean!
Example
{
  "username": "xyz789",
  "email": "xyz789",
  "firstName": "xyz789",
  "lastName": "abc123",
  "organization": OrganizationType,
  "avatar": "xyz789",
  "isStaff": false,
  "apiToken": "xyz789",
  "dailyUsedQueries": 123,
  "dailyQueryLimit": 987,
  "isAnonymous": false
}