HTTP API

Lineage

POST/api/v1/lineage/breed
POST
/api/v1/lineage/breed

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/lineage/breed" \  -H "Content-Type: application/json" \  -d '{    "parents": [      "string"    ],    "species_id": "string"  }'
{  "created_at": "2019-08-24T14:15:22Z",  "mutations": [    "string"  ],  "offspring": [    {      "anchor_artifact_id": "string",      "anchor_hash": "string",      "entity_id": "string",      "generation": 0,      "inbreeding_coefficient": 0.1    }  ],  "parents": [    "string"  ],  "record_id": "string",  "requested_by": "string",  "seed": "string",  "species_id": "string",  "species_version": 0}
GET/api/v1/lineage/entities/{entity_id}/genome
GET
/api/v1/lineage/entities/{entity_id}/genome

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

entity_id*string

Query Parameters

full?boolean

Reveal hidden genes and raw alleles (admin only)

Response Body

application/json

curl -X GET "https://example.com/api/v1/lineage/entities/string/genome"
{  "breeding_count": 0,  "entity_id": "string",  "expressed": {    "property1": "string",    "property2": "string"  },  "flags": [    "string"  ],  "generation": 0,  "numeric": {    "property1": 0.1,    "property2": 0.1  },  "owner": "string",  "raw_alleles": {    "property1": {      "first": "string",      "second": "string"    },    "property2": {      "first": "string",      "second": "string"    }  },  "species_id": "string"}
GET/api/v1/lineage/entities/{entity_id}/pedigree
GET
/api/v1/lineage/entities/{entity_id}/pedigree

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

entity_id*string

Query Parameters

depth?integer

Ancestry depth to traverse

Formatint32
Range0 <= value

Response Body

application/json

curl -X GET "https://example.com/api/v1/lineage/entities/string/pedigree"
{  "ancestors": [    {      "distance": 0,      "entity_id": "string",      "generation": 0    }  ],  "entity_id": "string",  "generation": 0,  "inbreeding_coefficient": 0}
GET/api/v1/lineage/entities/{entity_id}/provenance
GET
/api/v1/lineage/entities/{entity_id}/provenance

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

entity_id*string

Response Body

application/json

curl -X GET "https://example.com/api/v1/lineage/entities/string/provenance"
{  "anchor_artifact_id": "string",  "anchor_hash": "string",  "chain_verified": true,  "entity_id": "string",  "generation": 0,  "owner": "string",  "parents": [    "string"  ],  "record_id": "string",  "seed": "string",  "species_id": "string"}
POST/api/v1/lineage/genomes
POST
/api/v1/lineage/genomes

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/lineage/genomes" \  -H "Content-Type: application/json" \  -d '{    "entity_id": "string",    "species_id": "string"  }'
{  "breeding_count": 0,  "entity_id": "string",  "expressed": {    "property1": "string",    "property2": "string"  },  "flags": [    "string"  ],  "generation": 0,  "numeric": {    "property1": 0.1,    "property2": 0.1  },  "owner": "string",  "raw_alleles": {    "property1": {      "first": "string",      "second": "string"    },    "property2": {      "first": "string",      "second": "string"    }  },  "species_id": "string"}
POST/api/v1/lineage/preview
POST
/api/v1/lineage/preview

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/lineage/preview" \  -H "Content-Type: application/json" \  -d '{    "parents": [      "string"    ],    "species_id": "string"  }'
{  "exact": true,  "inbreeding_coefficient": 0,  "mutation_hint": "string",  "species_id": "string",  "traits": [    {      "band": "string",      "exact": {        "property1": 0.1,        "property2": 0.1      },      "trait_id": "string"    }  ]}
GET/api/v1/lineage/records
GET
/api/v1/lineage/records

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Query Parameters

species_id?string

Filter by species id

parent?string

Filter by a parent entity id present in the breeding

requested_by?string

Filter by requester user id

page?integer

1-indexed page number

Formatint64
Range0 <= value
page_size?integer

Page size

Formatint64
Range0 <= value
sort_order?string

Sort order (asc or desc)

Value in

  • "asc"
  • "desc"

Response Body

application/json

curl -X GET "https://example.com/api/v1/lineage/records"
{  "pagination": {    "has_more": true,    "page": 0,    "page_size": 0,    "total": 0  },  "records": [    {      "created_at": "2019-08-24T14:15:22Z",      "mutations": [        "string"      ],      "offspring": [        {          "anchor_artifact_id": "string",          "anchor_hash": "string",          "entity_id": "string",          "generation": 0,          "inbreeding_coefficient": 0.1        }      ],      "parents": [        "string"      ],      "record_id": "string",      "requested_by": "string",      "species_id": "string",      "species_version": 0    }  ]}
GET/api/v1/lineage/species
GET
/api/v1/lineage/species

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Query Parameters

page?integer

1-indexed page number

Formatint64
Range0 <= value
page_size?integer

Page size

Formatint64
Range0 <= value
sort_by?string

Sort field

sort_order?string

Sort order (asc or desc)

Value in

  • "asc"
  • "desc"

Response Body

application/json

curl -X GET "https://example.com/api/v1/lineage/species"
{  "pagination": {    "has_more": true,    "page": 0,    "page_size": 0,    "total": 0  },  "species": [    {      "compatibility": {        "min_generation": 0,        "required_flags": [          "string"        ],        "self_compatible": true      },      "created_at": "2019-08-24T14:15:22Z",      "created_by": "string",      "lineage": {        "inbreeding": {          "compute": true,          "max_coefficient": 0.1,          "penalties_enabled": true        },        "track_generations": true      },      "max_lifetime_breedings": 0,      "name": "string",      "parent_count": {        "max": 0,        "min": 0      },      "preview_quantization": {        "bands": 0      },      "species_id": "string",      "traits": [        "string"      ],      "updated_at": "2019-08-24T14:15:22Z",      "version": 0    }  ]}
POST/api/v1/lineage/species
POST
/api/v1/lineage/species

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/lineage/species" \  -H "Content-Type: application/json" \  -d '{    "name": "string",    "parent_count": {      "max": 0,      "min": 0    }  }'
{  "compatibility": {    "min_generation": 0,    "required_flags": [      "string"    ],    "self_compatible": true  },  "created_at": "2019-08-24T14:15:22Z",  "created_by": "string",  "lineage": {    "inbreeding": {      "compute": true,      "max_coefficient": 0.1,      "penalties_enabled": true    },    "track_generations": true  },  "max_lifetime_breedings": 0,  "name": "string",  "parent_count": {    "max": 0,    "min": 0  },  "preview_quantization": {    "bands": 0  },  "species_id": "string",  "traits": [    "string"  ],  "updated_at": "2019-08-24T14:15:22Z",  "version": 0}
GET/api/v1/lineage/species/{species_id}
GET
/api/v1/lineage/species/{species_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

species_id*string

Response Body

application/json

curl -X GET "https://example.com/api/v1/lineage/species/string"
{  "compatibility": {    "min_generation": 0,    "required_flags": [      "string"    ],    "self_compatible": true  },  "created_at": "2019-08-24T14:15:22Z",  "created_by": "string",  "lineage": {    "inbreeding": {      "compute": true,      "max_coefficient": 0.1,      "penalties_enabled": true    },    "track_generations": true  },  "max_lifetime_breedings": 0,  "name": "string",  "parent_count": {    "max": 0,    "min": 0  },  "preview_quantization": {    "bands": 0  },  "species_id": "string",  "traits": [    "string"  ],  "updated_at": "2019-08-24T14:15:22Z",  "version": 0}
DELETE/api/v1/lineage/species/{species_id}
DELETE
/api/v1/lineage/species/{species_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

species_id*string

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/lineage/species/string"
{  "message": "string",  "species_id": "string"}
PUT/api/v1/lineage/species/{species_id}
PUT
/api/v1/lineage/species/{species_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

species_id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PUT "https://example.com/api/v1/lineage/species/string" \  -H "Content-Type: application/json" \  -d '{}'
{  "compatibility": {    "min_generation": 0,    "required_flags": [      "string"    ],    "self_compatible": true  },  "created_at": "2019-08-24T14:15:22Z",  "created_by": "string",  "lineage": {    "inbreeding": {      "compute": true,      "max_coefficient": 0.1,      "penalties_enabled": true    },    "track_generations": true  },  "max_lifetime_breedings": 0,  "name": "string",  "parent_count": {    "max": 0,    "min": 0  },  "preview_quantization": {    "bands": 0  },  "species_id": "string",  "traits": [    "string"  ],  "updated_at": "2019-08-24T14:15:22Z",  "version": 0}
GET/api/v1/lineage/traits
GET
/api/v1/lineage/traits

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Query Parameters

page?integer

1-indexed page number

Formatint64
Range0 <= value
page_size?integer

Page size

Formatint64
Range0 <= value
sort_by?string

Sort field

sort_order?string

Sort order (asc or desc)

Value in

  • "asc"
  • "desc"

Response Body

application/json

curl -X GET "https://example.com/api/v1/lineage/traits"
{  "pagination": {    "has_more": true,    "page": 0,    "page_size": 0,    "total": 0  },  "traits": [    {      "alleles": [        {          "carrier_only_visible": true,          "dominance": 0,          "id": "string",          "label": "string"        }      ],      "conflicts_with": [        "string"      ],      "created_at": "2019-08-24T14:15:22Z",      "created_by": "string",      "expression": "highest_dominance",      "hidden": true,      "inheritance": {        "parent_weighting": "equal",        "variance": {          "distribution": "none",          "stddev": 0.1        }      },      "kind": "mendelian",      "mutation": {        "offset_max": 0.1,        "offset_min": 0.1,        "rate": 0.1      },      "name": "string",      "range": null,      "trait_id": "string",      "updated_at": "2019-08-24T14:15:22Z"    }  ]}
POST/api/v1/lineage/traits
POST
/api/v1/lineage/traits

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/lineage/traits" \  -H "Content-Type: application/json" \  -d '{    "kind": "mendelian",    "name": "string"  }'
{  "alleles": [    {      "carrier_only_visible": true,      "dominance": 0,      "id": "string",      "label": "string"    }  ],  "conflicts_with": [    "string"  ],  "created_at": "2019-08-24T14:15:22Z",  "created_by": "string",  "expression": "highest_dominance",  "hidden": true,  "inheritance": {    "parent_weighting": "equal",    "variance": {      "distribution": "none",      "stddev": 0.1    }  },  "kind": "mendelian",  "mutation": {    "offset_max": 0.1,    "offset_min": 0.1,    "rate": 0.1  },  "name": "string",  "range": null,  "trait_id": "string",  "updated_at": "2019-08-24T14:15:22Z"}
GET/api/v1/lineage/traits/{trait_id}
GET
/api/v1/lineage/traits/{trait_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

trait_id*string

Response Body

application/json

curl -X GET "https://example.com/api/v1/lineage/traits/string"
{  "alleles": [    {      "carrier_only_visible": true,      "dominance": 0,      "id": "string",      "label": "string"    }  ],  "conflicts_with": [    "string"  ],  "created_at": "2019-08-24T14:15:22Z",  "created_by": "string",  "expression": "highest_dominance",  "hidden": true,  "inheritance": {    "parent_weighting": "equal",    "variance": {      "distribution": "none",      "stddev": 0.1    }  },  "kind": "mendelian",  "mutation": {    "offset_max": 0.1,    "offset_min": 0.1,    "rate": 0.1  },  "name": "string",  "range": null,  "trait_id": "string",  "updated_at": "2019-08-24T14:15:22Z"}
DELETE/api/v1/lineage/traits/{trait_id}
DELETE
/api/v1/lineage/traits/{trait_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

trait_id*string

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/lineage/traits/string"
{  "message": "string",  "trait_id": "string"}
PUT/api/v1/lineage/traits/{trait_id}
PUT
/api/v1/lineage/traits/{trait_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

trait_id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PUT "https://example.com/api/v1/lineage/traits/string" \  -H "Content-Type: application/json" \  -d '{}'
{  "alleles": [    {      "carrier_only_visible": true,      "dominance": 0,      "id": "string",      "label": "string"    }  ],  "conflicts_with": [    "string"  ],  "created_at": "2019-08-24T14:15:22Z",  "created_by": "string",  "expression": "highest_dominance",  "hidden": true,  "inheritance": {    "parent_weighting": "equal",    "variance": {      "distribution": "none",      "stddev": 0.1    }  },  "kind": "mendelian",  "mutation": {    "offset_max": 0.1,    "offset_min": 0.1,    "rate": 0.1  },  "name": "string",  "range": null,  "trait_id": "string",  "updated_at": "2019-08-24T14:15:22Z"}

On this page