Skip to content

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

filter?

Conditions as filter[][]=. Conditions on different fields all apply. in (any of) and all (every one of, on fields holding several values) take a comma-separated list (\, for a literal comma). exists takes true or false. Datetimes are RFC 3339, now, or a time before now such as -30m, -6h or -7d.

sort?string

Comma-separated sort keys, - for descending, at most 1. Keys: species_version, created_at. Default: -created_at.

limit?integer

Rows per page, 1 to 100 (default 25).

Range1 <= value <= 100
cursor?string

The page.next_cursor of the previous page. Cannot be combined with page.

page?integer

A 1-based page number, for jumping. Cannot be combined with cursor.

Range1 <= value
total?boolean

Set to true to include the number of matching rows in page.total.

Response Body

application/json

curl -X GET "https://example.com/api/v1/lineage/records"
{  "page": {    "has_more": true,    "next_cursor": "string",    "page": 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

filter?

Conditions as filter[][]=. Conditions on different fields all apply. in (any of) and all (every one of, on fields holding several values) take a comma-separated list (\, for a literal comma). exists takes true or false. Datetimes are RFC 3339, now, or a time before now such as -30m, -6h or -7d.

q?string

Full-text search over this list's searchable fields.

Length1 <= length <= 200
sort?string

Comma-separated sort keys, - for descending, at most 1. Keys: name, version, created_at. Default: -created_at.

limit?integer

Rows per page, 1 to 100 (default 25).

Range1 <= value <= 100
cursor?string

The page.next_cursor of the previous page. Cannot be combined with page.

page?integer

A 1-based page number, for jumping. Cannot be combined with cursor.

Range1 <= value
total?boolean

Set to true to include the number of matching rows in page.total.

Response Body

application/json

curl -X GET "https://example.com/api/v1/lineage/species"
{  "page": {    "has_more": true,    "next_cursor": "string",    "page": 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

filter?

Conditions as filter[][]=. Conditions on different fields all apply. in (any of) and all (every one of, on fields holding several values) take a comma-separated list (\, for a literal comma). exists takes true or false. Datetimes are RFC 3339, now, or a time before now such as -30m, -6h or -7d.

q?string

Full-text search over this list's searchable fields.

Length1 <= length <= 200
sort?string

Comma-separated sort keys, - for descending, at most 1. Keys: name, created_at. Default: -created_at.

limit?integer

Rows per page, 1 to 100 (default 25).

Range1 <= value <= 100
cursor?string

The page.next_cursor of the previous page. Cannot be combined with page.

page?integer

A 1-based page number, for jumping. Cannot be combined with cursor.

Range1 <= value
total?boolean

Set to true to include the number of matching rows in page.total.

Response Body

application/json

curl -X GET "https://example.com/api/v1/lineage/traits"
{  "page": {    "has_more": true,    "next_cursor": "string",    "page": 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"}