{"openapi":"3.1.0","info":{"title":"Jira Assets (BYOK) API","version":"0.1.0","description":"Jira Assets (BYOK) lets an AI assistant read your own Jira Assets data through the Jira Assets API with a key you supply (Atlassian account email). Read-only: 12 tools (list_object_schemas, get_object_schema, list_object_types, list_object_type_attributes, search_objects, count_objects, get_object, get_object_history, list_object_connected_tickets, list_status_types, list_reference_types,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-jira-assets.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-jira-assets/docs"},"termsOfService":"https://connectorbay.com/byok-jira-assets/terms"},"servers":[{"url":"https://byok-jira-assets.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-jira-assets/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_object_schemas":{"post":{"operationId":"list_object_schemas","summary":"List Assets object schemas (asset catalogues) with key, name, status, object and object type counts. Paging uses startAt","description":"List Assets object schemas (asset catalogues) with key, name, status, object and object type counts. Paging uses startAt and maxResults. Use for \"Which Assets schemas do we have in Jira\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"},"query":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Case-insensitive text to match in the schema name.","title":"Query"},"include_counts":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to include object and object type counts (slower).","title":"Include Counts"},"start_at":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Index of the first item to return, starting at 0.","title":"Start At"},"max_results":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":25,"description":"How many items to return (1 to 100, default 25).","title":"Max Results"}},"required":["workspace_id"],"title":"list_object_schemasArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_object_schema":{"post":{"operationId":"get_object_schema","summary":"Get one Assets object schema: key, name, description, status and counts. Use for \"Show Assets schema 1\".","description":"Get one Assets object schema: key, name, description, status and counts. Use for \"Show Assets schema 1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"},"schema_id":{"description":"Id of the object schema (see list_object_schemas).","maxLength":20,"title":"Schema Id","type":"string"}},"required":["workspace_id","schema_id"],"title":"get_object_schemaArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_object_types":{"post":{"operationId":"list_object_types","summary":"List the object types of a schema (Laptop, Licence, Office ...) with id, name, description, object count and parent type","description":"List the object types of a schema (Laptop, Licence, Office ...) with id, name, description, object count and parent type. Use for \"Which asset types are in Assets schema 1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"},"schema_id":{"description":"Id of the object schema.","maxLength":20,"title":"Schema Id","type":"string"},"exclude_abstract":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to leave out abstract object types.","title":"Exclude Abstract"}},"required":["workspace_id","schema_id"],"title":"list_object_typesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_object_type_attributes":{"post":{"operationId":"list_object_type_attributes","summary":"List the attributes (fields) defined on an object type: name, kind of value, whether it is the label, and description. U","description":"List the attributes (fields) defined on an object type: name, kind of value, whether it is the label, and description. Use for \"Which attributes does Assets object type 5 have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"},"object_type_id":{"description":"Id of the object type (see list_object_types).","maxLength":20,"title":"Object Type Id","type":"string"},"query":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Comma-separated name prefixes to keep.","title":"Query"},"order_by_name":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to sort by attribute name.","title":"Order By Name"}},"required":["workspace_id","object_type_id"],"title":"list_object_type_attributesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/search_objects":{"post":{"operationId":"search_objects","summary":"Find Assets objects with an AQL query such as 'objectType = Laptop AND Status = Active'; returns key, label, type and ti","description":"Find Assets objects with an AQL query such as 'objectType = Laptop AND Status = Active'; returns key, label, type and times (attribute values are left out unless asked). Use for \"Which laptops are in our Jira Assets\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"},"ql_query":{"description":"AQL query, for example 'objectType = \"Laptop\"'. An empty query matches all objects.","maxLength":500,"title":"Ql Query","type":"string"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"},"result_per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":25,"description":"How many objects per page (1 to 100, default 25).","title":"Result Per Page"},"include_attributes":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"True to include every attribute value of each object (larger answer).","title":"Include Attributes"}},"required":["workspace_id","ql_query"],"title":"search_objectsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/count_objects":{"post":{"operationId":"count_objects","summary":"Count the Assets objects matching an AQL query without returning them. Use for \"How many active laptops are in Jira Asse","description":"Count the Assets objects matching an AQL query without returning them. Use for \"How many active laptops are in Jira Assets\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"},"ql_query":{"description":"AQL query, for example 'objectType = \"Laptop\" AND Status = Active'.","maxLength":500,"title":"Ql Query","type":"string"}},"required":["workspace_id","ql_query"],"title":"count_objectsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_object":{"post":{"operationId":"get_object","summary":"Get one Assets object: key, label, type, creation and update time. Use for \"Show Assets object 88\".","description":"Get one Assets object: key, label, type, creation and update time. Use for \"Show Assets object 88\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"},"object_id":{"description":"Id of the Assets object (see search_objects).","maxLength":20,"title":"Object Id","type":"string"}},"required":["workspace_id","object_id"],"title":"get_objectArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_object_history":{"post":{"operationId":"get_object_history","summary":"List the change history of an Assets object: which attribute changed, old and new value, when and by whom. Use for \"What","description":"List the change history of an Assets object: which attribute changed, old and new value, when and by whom. Use for \"What changed on Assets object 88\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"},"object_id":{"description":"Id of the Assets object (see search_objects).","maxLength":20,"title":"Object Id","type":"string"},"asc":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True for oldest first.","title":"Asc"}},"required":["workspace_id","object_id"],"title":"get_object_historyArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_object_connected_tickets":{"post":{"operationId":"list_object_connected_tickets","summary":"List the Jira issues linked to an Assets object with key, title, status, type, priority and reporter. Use for \"Which tic","description":"List the Jira issues linked to an Assets object with key, title, status, type, priority and reporter. Use for \"Which tickets are linked to Assets object 88\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"},"object_id":{"description":"Id of the Assets object (see search_objects).","maxLength":20,"title":"Object Id","type":"string"}},"required":["workspace_id","object_id"],"title":"list_object_connected_ticketsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_status_types":{"post":{"operationId":"list_status_types","summary":"List the Assets status types (Active, Retired ...) with category; optionally for one schema. Use for \"Which statuses can","description":"List the Assets status types (Active, Retired ...) with category; optionally for one schema. Use for \"Which statuses can Assets objects have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"},"object_schema_id":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"Only statuses of this schema id.","title":"Object Schema Id"}},"required":["workspace_id"],"title":"list_status_typesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_reference_types":{"post":{"operationId":"list_reference_types","summary":"List the Assets reference types (kinds of links between objects such as Installed, Owned) with color; optionally for one","description":"List the Assets reference types (kinds of links between objects such as Installed, Owned) with color; optionally for one schema. Use for \"Which relationship types does Assets define\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"},"object_schema_id":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"Only reference types of this schema id.","title":"Object Schema Id"}},"required":["workspace_id"],"title":"list_reference_typesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_assets_usage":{"post":{"operationId":"get_assets_usage","summary":"Get the total number of Assets objects on the site and the count per schema. Use for \"How many Assets objects do we have","description":"Get the total number of Assets objects on the site and the count per schema. Use for \"How many Assets objects do we have in total\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"workspace_id":{"description":"Id of the Assets workspace (a UUID). Find it with the Jira Service Management connector's list_assets_workspaces tool.","maxLength":60,"title":"Workspace Id","type":"string"}},"required":["workspace_id"],"title":"get_assets_usageArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}