Repos
Create, manage and query Repos.
Last updated
Was this helpful?
Create, manage and query Repos.
Last updated
Was this helpful?
Repo entities describe a software source code repository, as defined by . Repos are specified by their name and URI.
Repos are not unique by name, across the Graphlit project.
The createRepo
mutation enables the creation of a repo by accepting the repo name
and uri
. It returns essential details, including the ID and name of the newly generated repo.
Mutation:
mutation CreateRepo($repo: RepoInput!) {
createRepo(repo: $repo) {
id
name
}
}
Variables:
{
"repo": {
"uri": "https://github.com/openai/openai-cookbook",
"name": "OpenAI Cookbook"
}
}
Response:
{
"id": "f5fc4c17-3d46-4e3b-85a7-f72542a8cab3",
"name": "OpenAI Cookbook"
}
The updateRepo
mutation enables the updating of a repo by accepting the repo name
and other optional fields like uri
.
Mutation:
mutation UpdateRepo($repo: RepoUpdateInput!) {
updateRepo(repo: $repo) {
id
name
}
}
Variables:
{
"repo": {
"uri": "https://github.com/openai/openai-cookbook",
"description": "Example code and guides for accomplishing common tasks with the OpenAI API.",
"id": "f5fc4c17-3d46-4e3b-85a7-f72542a8cab3",
"name": "OpenAI Cookbook"
}
}
Response:
{
"id": "f5fc4c17-3d46-4e3b-85a7-f72542a8cab3",
"name": "OpenAI Cookbook"
}
The deleteRepo
mutation allows the deletion of a repo by utilizing the id
parameter, and it returns the ID and state of the deleted repo.
Mutation:
mutation DeleteRepo($id: ID!) {
deleteRepo(id: $id) {
id
state
}
}
Variables:
{
"id": "f5fc4c17-3d46-4e3b-85a7-f72542a8cab3"
}
Response:
{
"id": "f5fc4c17-3d46-4e3b-85a7-f72542a8cab3",
"state": "DELETED"
}
The deleteRepos
mutation allows the deletion of multiple repos, as specified by the ids
array parameter, and it returns the ID and state of the deleted repos.
Mutation:
mutation DeleteRepos($ids: [ID!]!) {
deleteRepos(ids: $ids) {
id
state
}
}
Variables:
{
"ids": [
"39fcf408p-15ca-4cc2-9476-622d64aa38f3",
"93476a0c-d567-4624-9d5e-df43dfff92ea"
]
}
Response:
[
{
"id": "93476a0c-d567-4624-9d5e-df43dfff92ea",
"state": "DELETED"
},
{
"id": "39fcf408-15ca-4cc2-9476-622d64aa38f3",
"state": "DELETED"
}
]
The repo
query allows you to retrieve specific details of a repo by providing the id
parameter.
Query:
query GetRepo($id: ID!) {
repo(id: $id) {
id
name
}
}
Variables:
{
"id": "f5fc4c17-3d46-4e3b-85a7-f72542a8cab3"
}
Response:
{
"id": "f5fc4c17-3d46-4e3b-85a7-f72542a8cab3",
"name": "OpenAI Cookbook"
}
Query Repos
The repos
query allows you to retrieve all repos. It returns a list of repo results, including the ID and name for each repo.
Query:
query QueryRepos($filter: RepoFilter!) {
repos(filter: $filter) {
results {
id
name
}
}
}
Variables:
{
"filter": {
"offset": 0,
"limit": 100
}
}
Response:
{
"results": [
{
"id": "f5fc4c17-3d46-4e3b-85a7-f72542a8cab3",
"name": "OpenAI Cookbook"
}
]
}
Query Repos By Name
The repos
query allows you to retrieve repos based on a specific filter criteria, via the name
parameter. In this example, the name
is set to "OpenAI." It returns a list of repo results containing the ID and name for each matching repo.
Query:
query QueryRepos($filter: RepoFilter!) {
repos(filter: $filter) {
results {
id
name
}
}
}
Variables:
{
"filter": {
"name": "OpenAI",
"offset": 0,
"limit": 100
}
}
Response:
{
"results": [
{
"id": "f5fc4c17-3d46-4e3b-85a7-f72542a8cab3",
"name": "OpenAI Cookbook"
}
]
}
Queries
Mutations
Objects