Submit a single job
Submit a job using an available tool. Protein Solubilization delegates to Jobs and requires submitId; retain it and the unchanged body for retries. Its JSON results contain pipeline run IDs.
This is also how you RUN INFERENCE WITH A FINETUNED MODEL — there is no separate inference endpoint. List your models with GET /finetuned-models; each row's inferenceType is the tool to submit here as type, and its id goes in modelId (or its name in modelName). You can run a model you trained (personalModels) or one a teammate has shared with your organization (organizationModels), and only as its own inferenceType. A name always means your own model when you have one by that name, so send the id to run a teammate's. settings are that inference tool's own inputs, from GET /tools/{name}/schema. For example, a chemprop-finetune model runs as {"jobName": "my-predictions", "type": "chemprop-inference", "modelId": "<id>", "settings": {"smiles": ["CCO"]}}. Training a model is POST /finetune.
Request
- Base URL: https://app.tamarind.bio
- URL: https://app.tamarind.bio/api/submit-job
- Auth: API key in header x-api-key
Request body
Example request
{
"jobName": "my-protein-analysis",
"type": "alphafold",
"settings": {
"sequence": "MKTAYIAKQRQISFVKSHFSRQLEERLGLIEVQ"
},
"modelId": "3f6c2a9e-8d41-4b7a-9c55-0e2d7f1a6b90",
"modelName": "my-solubility-model",
"projectTag": "8f1c2b64-9a3e-4c77-b0d1-4a2f6e5d8c90"
}Response
For Protein Solubilization, the JSON body contains success, startedVia="pipeline", and results with each run's Id and handoff. Inspect each handoff; HTTP 200 can be partial. For ordinary tools, the body is PLAIN TEXT, not JSON, and carries no job id — literally <jobName> submitted to queue. A generated client that calls .json() on this response throws on the HAPPY path. POLL THE NAME ECHOED IN THIS BODY, not the one you sent. jobName is NORMALIZED rather than validated: characters outside [A-Za-z0-9_.-] are stripped and whitespace becomes _, so submitting my run! stores my_run and polling my run! afterwards reports an unknown job. Parse the name out of this response and use that as the handle, or pre-normalize before submitting so the two cannot differ.
Changes
No recorded changes to this operation across all 1 revision of this API.