Prerequisite You should have installed Python (version 3.7 or
higher).
Setup your development
Currently, we provide developer clients for Python and Typescript. You can install the client withpip:
npm:
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
This is a short tutorial on using the Coaxial Developer SDK
pip:
pip install coaxial-python
npm:
npm i coaxial-ts --save
import coaxial
import { CoaxialApi } from "coaxial-ts"
coaxial_api = coaxial.Api(api_key="YOUR_COAXIAL_API_KEY")
from coaxial.models import IntegrateOktaRequest
integrate_okta_request = IntegrateOktaRequest(
client_key="OKTA_API_KEY",
org_url="OKTA_ORGANIZATION_URL"
)
try:
coaxial_api.auth_integration.integrate_okta(integrate_okta_request)
except Exception as e:
print("Exception when Integrating Okta: %s\n" % e)
api_response = coaxial_api.auth_integration.list_users()
print(api_response)
#Here, we can save the User ID's for provisioning/de-provisioning later on
from coaxial.models import IntegratePineconeRequest
integrate_pinecone_request = IntegratePineconeRequest(
api_key="PINECONE_API_KEY",
environment="PINECONE_ENVIRONMENT"
)
try:
coaxial_api.data_integration.integrate_pinecone(
integrate_pinecone_request
)
except Exception as e:
print("Exception when Integrating Pinecone: %s\n" % e)
api_response = coaxial_api.data_integration.list_data_integrations()
print(api_response)
# Here, we can save the data integration Coaxial ID's
# for provisioning/de-provisioning later on
from coaxial.models import IntegrateOpenaiRequest
integrate_openai_request = IntegrateOpenaiRequest(openai_key="OPENAI_API_KEY")
try:
coaxial_api.model_integration.integrate_openai(integrate_openai_request)
except Exception as e:
print("Exception when Integrating OpenAI: %s\n" % e)
api_response = coaxial_api.model_integration.list_model_integrations()
print(api_response)
from coaxial.models import IntegrateFunctionRequest
integrate_function_request = IntegrateFunctionRequest(
function_name="summarize_chat_response",
description="This is an OpenAI function that gives a JSON Object summary of the chat response")
try:
coaxial_api.function.integrate_function(integrate_function_request)
except Exception as e:
print("Exception when Integrating Function: %s\n" % e)
api_response = coaxial_api.function.list_functions()
print(api_response)
from coaxial.models import GrantAccessRequest
resource_ids = [ #These IDs can also be found on the Coaxial Dashboard
"PINECONE_INDEX_1_COAXIAL_ID",
"PINECONE_INDEX_2_COAXIAL_ID",
"EMBEDDING_MODEL_COAXIAL_ID",
"CHAT_MODEL_COAXIAL_ID",
"FUNCTION_COAXIAL_ID"
]
try:
for resource in resource_ids:
grant_access_request = GrantAccessRequest(
user_id="EMPLOYEE_ID",
coaxial_id=resource
)
coaxial_api.provision.grant_access(grant_access_request)
except Exception as e:
print("Exception when granting access: %s\n" % e)
from coaxial.models import CheckAccessForAllRequest
def check_resources(user_id):
check_access_for_all_request = CheckAccessForAllRequest(
user_id=user_id,
tags=resource_ids
)
return coaxial_api.provision.check_access_for_all(
check_access_for_all_request
)
from coaxial.models import RevokeAccessRequest
revoke_ids = [
"PINECONE_INDEX_1_COAXIAL_ID",
"PINECONE_INDEX_2_COAXIAL_ID"
]
try:
for resource in revoke_ids:
revoke_access_request = RevokeAccessRequest(
user_id="EMPLOYEE_ID",
coaxial_id=resource
)
coaxial_api.provision.revoke_access(revoke_access_request)
except Exception as e:
print("Exception when revoking access: %s\n" % e)
print(check_resources("EMPLOYEE_ID")) #double-check access to resources